<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def ansible_inventory( self, keys=['vm-type', 'groups', 'vm-provider'], ):
 """ Get an Ansible inventory as a string, ``keys`` should be list on which to group the hosts by. You can use any key defined in LagoInitFile. Examples of possible `keys`: `keys=['disks/0/metadata/arch']`, would group the hosts by the architecture. `keys=['/disks/0/metadata/distro', 'disks/0/metadata/arch']`, would create groups by architecture and also by distro. `keys=['groups']` - would group hosts by the groups defined for each VM in the LagoInitFile, i.e.: domains: vm-01: groups: web-server .. vm-02: .. groups: db-server Args: keys (list of str):
 Path to the keys that will be used to create groups. Returns: str: INI-like Ansible inventory """


        lansible = LagoAnsible(self._prefix)
        return lansible.get_inventory_str(keys=keys)