composabl_core.agent.skill.skill
The fundamental block an agent is composed out of is named a Skill. These skills can have a different purpose (type) and can be used in various ways to create a complex agent (=implementation). Within the Composabl SDK, we provide the following types of skills:
Skill Types
SkillType | Description |
---|---|
Skill | A normal skill, reflecting a user its experience (e.g., Pick Up, Place, ...) |
Selector | A selector that defines which skill to take in which situation |
Coordinated | A skill that coaches skills to work together for a common strategy |
Group | A skill that groups multiple skills together and pipes the output from one to the other |
Implementation Techniques
These skills can be implemented in different ways that can be seen as "Directors" performing certain actions:
Implementation Technique | Description |
---|---|
Controller | A skill that is programmed to determine which action to take based on the observation space |
Teacher | A skill that uses a Teacher to learn which action to take based on the observation space |
Coach | A skill that uses a Coach to learn how skills can work together based on the observation space |
class
Skill:
Attributes:
- id (str): A unique identifier for the skill.
- name (str): The name of the skill.
- config (SkillOptions): The configuration of the skill.
- impl_cls (Union[SkillTeacher, SkillController]): The implementation class of the skill.
- impl_cls_module (Union[None, object]): The module of the implementation class.
- is_initialized (bool): Whether the skill is initialized.