--- title: FAQs description: "Perguntas frequentes sobre CrewAI AMP" icon: "circle-question" mode: "wide" --- No processo hierárquico, um agente gerente é criado automaticamente e coordena o fluxo de trabalho, delegando tarefas e validando resultados para uma execução eficiente e simplificada. O agente gerente utiliza ferramentas para facilitar a delegação e execução de tarefas por agentes sob sua orientação. O LLM do gerente é fundamental para o processo hierárquico e deve ser configurado corretamente para funcionar adequadamente. A documentação mais atualizada da CrewAI está disponível em nosso site oficial de documentação: https://docs.crewai.com/ CrewAI Docs #### Processo Hierárquico: - As tarefas são delegadas e executadas com base em uma cadeia de comando estruturada - Um modelo de linguagem do gerente (`manager_llm`) deve ser especificado para o agente gerente - O agente gerente supervisiona a execução de tarefas, planejamento, delegação e validação - As tarefas não são pré-atribuídas; o gerente aloca tarefas para os agentes com base em suas capacidades #### Processo Sequencial: - As tarefas são executadas uma após a outra, garantindo uma progressão ordenada - O resultado de uma tarefa serve como contexto para a próxima - A execução das tarefas segue a ordem predefinida na lista de tarefas #### Qual Processo é Melhor para Projetos Complexos? O processo hierárquico é mais adequado para projetos complexos porque permite: - **Alocação e delegação dinâmica de tarefas**: O agente gerente pode atribuir tarefas de acordo com as capacidades dos agentes - **Validação e supervisão estruturadas**: O agente gerente revisa os resultados das tarefas e garante a conclusão - **Gestão de tarefas complexas**: Controle preciso da disponibilidade de ferramentas por agente - **Aprendizado adaptativo**: As crews tornam-se mais eficientes ao longo do tempo, adaptando-se a novas informações e aprimorando sua abordagem às tarefas - **Personalização aprimorada**: A memória permite que os agentes recordem preferências do usuário e interações anteriores, possibilitando experiências personalizadas - **Resolução aprimorada de problemas**: O acesso a um repositório rico em memória auxilia os agentes a tomarem decisões mais informadas, baseando-se em aprendizados anteriores e insights contextuais Definir um limite máximo de RPM para um agente evita que ele faça solicitações excessivas a serviços externos, o que pode ajudar a evitar limites de taxa e melhorar o desempenho. A entrada humana permite que os agentes solicitem informações adicionais ou esclarecimentos quando necessário. Este recurso é fundamental em processos de tomada de decisão complexos ou quando os agentes precisam de mais detalhes para concluir uma tarefa com eficácia. Para integrar a entrada humana na execução do agente, defina a flag `human_input` na definição da tarefa. Quando habilitada, o agente solicitará a entrada do usuário antes de entregar sua resposta final. Essa entrada pode fornecer contexto extra, esclarecer ambiguidades ou validar a saída do agente. Para orientações detalhadas de implementação, veja nosso [guia Human-in-the-Loop](/pt-BR/enterprise/guides/human-in-the-loop). A CrewAI oferece diversas opções avançadas de customização: - **Customização de Modelo de Linguagem**: Os agentes podem ser personalizados com modelos de linguagem específicos (`llm`) e modelos de linguagem para chamadas de função (`function_calling_llm`) - **Configurações de Desempenho e Debug**: Ajuste o desempenho do agente e monitore suas operações - **Modo Verbose**: Habilita registros detalhados das ações do agente, útil para depuração e otimização - **Limite de RPM**: Define o número máximo de solicitações por minuto (`max_rpm`) - **Máximo de Iterações**: O atributo `max_iter` permite definir o número máximo de iterações que um agente pode executar para uma única tarefa - **Delegação e Autonomia**: Controle a capacidade do agente de delegar ou fazer perguntas com o atributo `allow_delegation` (padrão: True) - **Integração de Entrada Humana**: Os agentes podem solicitar informações adicionais ou esclarecimentos quando necessário A entrada humana é especialmente útil quando: - **Os agentes precisam de informações adicionais ou esclarecimentos**: Quando se deparam com ambiguidade ou dados incompletos - **Os agentes precisam tomar decisões complexas ou sensíveis**: A entrada humana pode auxiliar em decisões éticas ou de nuances - **Supervisão e validação da saída do agente**: A entrada humana pode ajudar a validar resultados e prevenir erros - **Personalização do comportamento do agente**: Entradas humanas podem fornecer feedback para aprimorar respostas dos agentes ao longo do tempo - **Identificação e resolução de erros ou limitações**: A entrada humana auxilia a suprir lacunas de capacidade dos agentes Os diferentes tipos de memória disponíveis na CrewAI são: - **Memória de curto prazo**: Armazenamento temporário para contexto imediato - **Memória de longo prazo**: Armazenamento persistente para padrões aprendidos e informações - **Memória de entidade**: Armazenamento focado em entidades específicas e seus atributos - **Memória contextual**: Memória que mantém o contexto ao longo das interações Saiba mais sobre os diferentes tipos de memória: CrewAI Memory Para usar Output Pydantic em uma tarefa, você precisa definir a saída esperada da tarefa como um modelo Pydantic. Veja um exemplo rápido: ```python from pydantic import BaseModel class User(BaseModel): name: str age: int ``` ```python from crewai import Task, Crew, Agent from my_models import User task = Task( description="Create a user with the provided name and age", expected_output=User, # This is the Pydantic model agent=agent, tools=[tool1, tool2] ) ``` ```python from crewai import Agent from my_models import User agent = Agent( role='User Creator', goal='Create users', backstory='I am skilled in creating user accounts', tools=[tool1, tool2], output_pydantic=User ) ``` Aqui está um tutorial de como obter saídas estruturadas de forma consistente dos seus agentes: Você pode criar ferramentas personalizadas herdando da classe `BaseTool` fornecida pela CrewAI ou usando o decorador de ferramenta. Herdar envolve definir uma nova classe que herda de `BaseTool`, especificando o nome, a descrição e o método `_run` para a lógica operacional. O decorador de ferramenta permite criar um objeto `Tool` diretamente com os atributos necessários e uma lógica funcional. CrewAI Tools Guide O atributo `max_rpm` define o número máximo de solicitações por minuto que a crew pode realizar para evitar limites de taxa, e irá sobrescrever as definições de `max_rpm` dos agentes individuais se você defini-lo.