Skip to main content

Visão Geral

O CrewAI integra-se com múltiplos provedores de LLM através do LiteLLM, oferecendo flexibilidade para você escolher o modelo certo para o seu caso de uso específico. Este guia irá ajudá-lo a entender como configurar e usar diferentes provedores de LLM em seus projetos CrewAI.

O que são LLMs?

Modelos de Linguagem de Grande Escala (LLMs) são a inteligência central por trás dos agentes CrewAI. Eles permitem que os agentes compreendam o contexto, tomem decisões e gerem respostas semelhantes às humanas. Veja o que você precisa saber:

Noções Básicas de LLM

Modelos de Linguagem de Grande Escala são sistemas de IA treinados em grandes volumes de dados textuais. Eles potencializam a inteligência dos agentes CrewAI, permitindo compreender e gerar textos de voz humana.

Janela de Contexto

A janela de contexto determina quanto texto um LLM pode processar de uma só vez. Janelas maiores (por exemplo, 128K tokens) permitem mais contexto, porém podem ser mais caras e lentas.

Temperatura

A temperatura é um controle de amostragem compatível com alguns modelos. Valores mais baixos geralmente tornam a amostragem mais focada, enquanto valores mais altos aumentam a variabilidade. Alguns modelos de raciocínio mais recentes ignoram, desaconselham ou rejeitam esse parâmetro; consulte a documentação do modelo escolhido antes de defini-lo.

Seleção de Provedor

Cada provedor de LLM (ex.: OpenAI, Anthropic, Google) oferece modelos diferentes, com capacidades, preços e recursos variados. Escolha conforme suas necessidades de precisão, velocidade e custo.

Configurando seu LLM

Existem diferentes locais no código do CrewAI onde você pode especificar o modelo a ser utilizado. Após definir o modelo usado, será necessário fornecer a configuração (como uma chave de API) para cada provedor de modelo. Veja a seção de exemplos de configuração de provedores para seu provedor.
A maneira mais simples de começar. Defina o modelo diretamente em seu ambiente, usando um arquivo .env ou no código do seu aplicativo. Se você utilizou crewai create para iniciar seu projeto, já estará configurado.
.env
Nunca envie chaves de API para controle de versão. Use arquivos de ambiente (.env) ou o gerenciamento de segredos do seu sistema.
O CrewAI oferece integrações nativas via SDK para OpenAI, Anthropic, Google (Gemini API), Azure, AWS Bedrock e Snowflake Cortex — sem necessidade de instalação extra além dos extras específicos do provedor (ex.: uv add "crewai[openai]").Todos os outros provedores são alimentados pelo LiteLLM. Se você planeja usar algum deles, adicione-o como dependência ao seu projeto:

Exemplos de Configuração de Provedores

O CrewAI suporta uma grande variedade de provedores de LLM, cada um com recursos, métodos de autenticação e capacidades de modelo únicos. Nesta seção, você encontrará exemplos detalhados que ajudam a selecionar, configurar e otimizar o LLM que melhor atende às necessidades do seu projeto.
A disponibilidade dos modelos muda com frequência e pode variar por conta, região e plataforma de nuvem. Os exemplos abaixo usam modelos atuais no momento da redação, mas não são listas completas de suporte. Antes de implantar, confirme o ID e o estado do ciclo de vida do modelo no catálogo vinculado do provedor.
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
A OpenAI adiciona modelos e desativa snapshots antigos regularmente. Consulte o catálogo de modelos da OpenAI para obter IDs atuais, janelas de contexto, compatibilidade com endpoints e informações de ciclo de vida.Responses API:A OpenAI oferece duas APIs: Chat Completions (padrão) e a nova Responses API. A Responses API foi projetada desde o início com suporte multimodal nativo—texto, imagens, áudio e chamadas de função são todos cidadãos de primeira classe. Ela oferece melhor performance com modelos de raciocínio e suporta recursos adicionais como auto-encadeamento e ferramentas integradas.
Code
Parâmetros da Responses API:
  • api: Defina como "responses" para usar a Responses API (padrão: "completions")
  • instructions: Instruções de nível de sistema (apenas Responses API)
  • store: Se deve armazenar respostas para conversas multi-turno
  • previous_response_id: ID da resposta anterior para multi-turno
  • include: Dados adicionais para incluir na resposta (ex: ["reasoning.encrypted_content"])
  • builtin_tools: Lista de ferramentas integradas da OpenAI: "web_search", "file_search", "code_interpreter", "computer_use"
  • parse_tool_outputs: Retornar ResponsesAPIResult estruturado com saídas de ferramentas integradas parseadas
  • auto_chain: Rastrear e usar automaticamente IDs de resposta para conversas multi-turno
  • auto_chain_reasoning: Rastrear itens de raciocínio criptografados para conformidade ZDR (Zero Data Retention)
Use a Responses API para novos projetos, especialmente ao trabalhar com modelos de raciocínio (o1, o3, o4) ou quando precisar de suporte multimodal nativo para arquivos.
A API Llama da Meta fornece acesso à família de modelos de linguagem de grande escala da Meta. A API está disponível através da Meta Llama API. Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Consulte a visão geral dos modelos Meta Llama para conhecer as famílias de modelos, modalidades e orientações de contexto atuais.Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
O CrewAI oferece integração nativa com a API REST do Snowflake Cortex pelo endpoint Chat Completions compatível com OpenAI. Isso evita fallback para LiteLLM em modelos snowflake/.... Atualmente, o Snowflake Cortex no CrewAI oferece suporte apenas a Chat Completions, então use o modo api padrão e não defina api="responses".
Code
Uso básico:
Code
Modelos Claude no Cortex:
Code
Variáveis de ambiente suportadas:
  • SNOWFLAKE_PAT, SNOWFLAKE_TOKEN ou SNOWFLAKE_JWT: token usado como credencial Bearer
  • SNOWFLAKE_ACCOUNT_URL: URL completa da conta Snowflake
  • SNOWFLAKE_ACCOUNT, SNOWFLAKE_ACCOUNT_ID ou SNOWFLAKE_ACCOUNT_IDENTIFIER: identificador da conta usado para montar a URL
As requisições REST do Snowflake usam a role padrão do usuário. Garanta que essa role tenha SNOWFLAKE.CORTEX_USER ou SNOWFLAKE.CORTEX_REST_API_USER. Parâmetros de banco de dados, schema, warehouse e role explícita não são exigidos pelo endpoint Cortex REST Chat Completions.Recursos:
  • Seleção nativa com model="snowflake/<model-name>"
  • Chat Completions com e sem streaming apenas; api="responses" não é compatível
  • Rastreamento de uso de tokens
  • Chamadas de função para modelos OpenAI e Claude hospedados no Snowflake
  • Remoção automática de prefill final de assistant inválido para modelos Claude no Snowflake
Code
Exemplo de uso em seu projeto CrewAI:
Code
Consulte a visão geral dos modelos da Anthropic para obter IDs e capacidades atuais e revise a tabela de descontinuação antes de fixar um modelo em produção.
Defina sua chave de API no seu arquivo .env. Se precisar de uma chave, ou encontrar uma existente, verifique o AI Studio.
.env
Uso Básico:
Code
Vertex AI Express Mode (Autenticação por Chave de API):O Vertex AI Express mode permite usar o Vertex AI com autenticação simples por chave de API, em vez de credenciais de conta de serviço. Esta é a maneira mais rápida de começar com o Vertex AI.Para habilitar o Express mode, defina ambas as variáveis de ambiente no seu arquivo .env:
.env
Em seguida, use o LLM normalmente:
Code
Para obter uma chave de API do Express mode:Para mais detalhes, consulte a documentação do Vertex AI Express mode.
O Google publica IDs atuais, capacidades e estágios do ciclo de vida no catálogo de modelos Gemini. Consulte o cronograma de descontinuação antes de escolher um modelo estável ou preview. A API Gemini também hospeda modelos Gemma.
Autentique-se com as Credenciais Padrão do Aplicativo e configure o provedor Gemini nativo para usar o Vertex AI:
.env
Exemplo de uso em seu projeto CrewAI:
Code
Consulte as informações de modelos do Vertex AI para verificar modelos e regiões disponíveis.Nota: Esta configuração usa a integração Gemini nativa do CrewAI. Adicione-a como dependência ao seu projeto:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Code
Exemplo de uso em seu projeto CrewAI:
Code
Antes de usar o Amazon Bedrock, certifique-se de ter o boto3 instalado em seu ambienteAmazon Bedrock é um serviço gerenciado que fornece acesso a múltiplos modelos fundamentais dos principais provedores de IA através de uma API unificada, permitindo o desenvolvimento seguro e responsável de aplicações de IA.
Code
Exemplo de uso em seu projeto CrewAI:
Code
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
O catálogo hospedado do NVIDIA NIM muda com frequência. Use o catálogo de modelos NVIDIA NIM para escolher um endpoint atual e confirmar o ID, as modalidades e os limites de contexto.Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
O NVIDIA NIM permite rodar LLMs potentes localmente em máquinas Windows usando WSL2 (Windows Subsystem for Linux). Este método aproveita o GPU NVIDIA para inferência privativa, segura e econômica, sem depender de serviços em nuvem. Perfeito para desenvolvimento, testes ou produção onde privacidade ou funcionalidades offline são necessárias.Aqui está um guia passo a passo para configurar um modelo local NVIDIA NIM:
  1. Siga as instruções de instalação no site da NVIDIA
  2. Instale o modelo local. Para Llama 3.1-8b siga as instruções
  3. Configure seus modelos locais crewai:
Code
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
A Groq diferencia modelos production e preview e desativa IDs regularmente. Consulte o catálogo de modelos da Groq e a página de descontinuações antes de escolher um modelo para produção.Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
  1. Instale o Ollama: ollama.ai
  2. Rode um modelo: ollama run llama3
  3. Configure:
Code
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Consulte o catálogo de modelos da Perplexity e o changelog para obter IDs atuais e avisos de descontinuação.Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Os modelos hospedados no SambaNova Cloud podem mudar independentemente do CrewAI. Consulte o endpoint de modelos e o guia de descontinuação antes de implantar.Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Recursos do Cerebras:
  • Altas velocidades de inferência
  • Preços competitivos
  • Equilíbrio entre velocidade e qualidade
  • Suporte a longas janelas de contexto
Consulte o catálogo de modelos Cerebras e os avisos de descontinuação para obter os IDs atuais dos endpoints públicos.Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:
Defina as seguintes variáveis de ambiente no seu arquivo .env:
Code
Exemplo de uso em seu projeto CrewAI:
Code
Modelos do Open Router:
  • openrouter/deepseek/deepseek-r1
  • openrouter/deepseek/deepseek-chat
Nota: Este provedor usa o LiteLLM. Adicione-o como dependência ao seu projeto:

Respostas em streaming

O CrewAI suporta respostas em streaming de LLMs, permitindo que sua aplicação receba e processe saídas em tempo real assim que são geradas.
Ative o streaming definindo o parâmetro stream como True ao inicializar seu LLM:
Quando o streaming está ativado, as respostas são entregues em partes à medida que vão sendo geradas, criando uma experiência mais responsiva para o usuário.

Chamada Estruturada de LLM

O CrewAI suporta respostas estruturadas de LLMs permitindo que você defina um response_format usando um modelo Pydantic. Isso permite que o framework automaticamente faça o parsing e valide a saída, facilitando a integração da resposta em sua aplicação sem pós-processamento manual. O suporte a saídas estruturadas varia de acordo com o provedor e o modelo. Teste o modelo escolhido antes de depender de respostas estruturadas em produção. Por exemplo, é possível definir um modelo Pydantic para representar a resposta esperada e passá-lo como response_format ao instanciar o LLM. O modelo será utilizado para converter a resposta do LLM em um objeto Python estruturado.
Code

Recursos Avançados e Otimização

Saiba como obter o máximo da configuração do seu LLM:
O CrewAI inclui recursos inteligentes para gerenciamento de contexto:
Boas práticas para o gerenciamento de contexto:
  1. Prefira modelos com janelas apropriadas
  2. Pré-processe entradas muito longas
  3. Utilize divisão para documentos grandes
  4. Monitore tokens para otimizar custos
1

Otimização do Uso de Tokens

Escolha a janela de contexto certa para sua tarefa:
  • Tarefas pequenas (até 4K tokens): Modelos padrão
  • Tarefas médias (entre 4K-32K): Modelos aprimorados
  • Tarefas grandes (acima de 32K): Modelos com contexto expandido
Use os controles compatíveis com o modelo escolhido. Dependendo do provedor, isso pode ser temperature, um nível de reasoning ou thinking, ou instruções no prompt que definam o estilo e a variabilidade desejados.
2

Boas Práticas

  1. Monitore o uso de tokens
  2. Implemente limites de taxa (rate limiting)
  3. Use cache quando possível
  4. Defina limites apropriados para max_tokens
Lembre-se de monitorar regularmente o uso de tokens e ajustar suas configurações para otimizar custos e desempenho.
O CrewAI usa Litellm internamente para chamadas LLM, permitindo descartar parâmetros adicionais desnecessários para seu caso de uso. Isso pode simplificar seu código e reduzir a complexidade da configuração do LLM. Por exemplo, se não precisar enviar o parâmetro stop, basta omiti-lo na chamada do LLM:

Problemas Comuns e Soluções

A maioria dos problemas de autenticação pode ser resolvida verificando o formato da chave da API e os nomes das variáveis de ambiente.