> ## Documentation Index
> Fetch the complete documentation index at: https://docs.camel-ai.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Camel.agents.role assignment agent

<a id="camel.agents.role_assignment_agent" />

<a id="camel.agents.role_assignment_agent.RoleAssignmentAgent" />

## RoleAssignmentAgent

```python theme={"system"}
class RoleAssignmentAgent(ChatAgent):
```

An agent that generates role names based on the task prompt.

**Parameters:**

* **role\_assignment\_prompt** (TextPrompt): A prompt for the agent to generate role names.

<a id="camel.agents.role_assignment_agent.RoleAssignmentAgent.__init__" />

### **init**

```python theme={"system"}
def __init__(self, model: Optional[BaseModelBackend] = None):
```

<a id="camel.agents.role_assignment_agent.RoleAssignmentAgent.run" />

### run

```python theme={"system"}
def run(self, task_prompt: Union[str, TextPrompt], num_roles: int = 2):
```

Generate role names based on the input task prompt.

**Parameters:**

* **task\_prompt** (Union\[str, TextPrompt]): The prompt for the task based on which the roles are to be generated.
* **num\_roles** (int, optional): The number of roles to generate. (default: :obj:`2`)

**Returns:**

Dict\[str, str]: A dictionary mapping role names to their
descriptions.
