跳转到主要内容

文档索引

获取完整文档索引: https://docs.crewai.com.cn/llms.txt

在深入了解之前,请使用此文件来浏览所有可用页面。

将 CrewAI 连接到 LLM

CrewAI 通过针对最流行提供商(OpenAI、Anthropic、Google Gemini、Azure 和 AWS Bedrock)的原生 SDK 集成连接到 LLM,并使用 LiteLLM 作为所有其他提供商的灵活后备方案。
默认情况下,CrewAI 使用 gpt-4o-mini 模型。这由 OPENAI_MODEL_NAME 环境变量决定,如果不设置,则默认为“gpt-4o-mini”。您可以按照本指南轻松配置您的智能体以使用不同的模型或提供商。

支持的提供商

LiteLLM 支持广泛的提供商,包括但不限于
  • OpenAI
  • Anthropic
  • Google (Vertex AI, Gemini)
  • Azure OpenAI
  • AWS (Bedrock, SageMaker)
  • Cohere
  • VoyageAI
  • Hugging Face
  • Ollama
  • Mistral AI
  • Replicate
  • Together AI
  • AI21
  • Cloudflare Workers AI
  • DeepInfra
  • Groq
  • SambaNova
  • Nebius AI Studio
  • NVIDIA NIMs
  • 以及更多!
有关受支持提供商的完整且最新的列表,请参阅 LiteLLM 提供商文档
要使用任何原生集成未涵盖的提供商,请将 LiteLLM 添加为您项目的依赖项
uv add 'crewai[litellm]'
原生提供商(OpenAI、Anthropic、Google Gemini、Azure、AWS Bedrock)使用其各自的 SDK 扩展——请参阅 提供商配置示例

更改 LLM

要为您的 CrewAI 智能体使用不同的 LLM,您有多种选择
在初始化智能体时将模型名称作为字符串传递
from crewai import Agent

# Using OpenAI's GPT-4
openai_agent = Agent(
    role='OpenAI Expert',
    goal='Provide insights using GPT-4',
    backstory="An AI assistant powered by OpenAI's latest model.",
    llm='gpt-4'
)

# Using Anthropic's Claude
claude_agent = Agent(
    role='Anthropic Expert',
    goal='Analyze data using Claude',
    backstory="An AI assistant leveraging Anthropic's language model.",
    llm='claude-2'
)

配置选项

在为智能体配置 LLM 时,您可以访问多种参数
参数类型描述
modelstr要使用的模型名称(例如,“gpt-4”、“claude-2”)
temperaturefloat控制输出的随机性(0.0 到 1.0)
max_tokensint生成的最大 Token 数
top_pfloat控制输出的多样性(0.0 到 1.0)
frequency_penaltyfloat根据 Token 在文本中已出现的频率对其进行惩罚
presence_penaltyfloat根据 Token 在文本中是否出现对其进行惩罚
stopstr, List[str]停止生成的序列
base_urlstrAPI 端点的基础 URL
api_keystr用于身份验证的 API 密钥
有关参数及其描述的完整列表,请参阅 LLM 类文档。

连接到兼容 OpenAI 的 LLM

您可以通过设置环境变量或在 LLM 类上设置特定属性来连接到兼容 OpenAI 的 LLM
import os

os.environ["OPENAI_API_KEY"] = "your-api-key"
os.environ["OPENAI_API_BASE"] = "https://api.your-provider.com/v1"
os.environ["OPENAI_MODEL_NAME"] = "your-model-name"

使用 Ollama 的本地模型

对于 Ollama 提供的本地模型
1
2

拉取所需模型

例如,运行 ollama pull llama3.2 下载模型。
3

配置您的智能体

    agent = Agent(
        role='Local AI Expert',
        goal='Process information using a local model',
        backstory="An AI assistant running on local hardware.",
        llm=LLM(model="ollama/llama3.2", base_url="https://:11434")
    )

更改基础 API URL

您可以通过设置 base_url 参数来更改任何 LLM 提供商的基础 API URL
代码
llm = LLM(
    model="custom-model-name",
    base_url="https://api.your-provider.com/v1",
    api_key="your-api-key"
)
agent = Agent(llm=llm, ...)
这在使用兼容 OpenAI 的 API 或需要为您选择的提供商指定不同端点时特别有用。

结论

通过利用 LiteLLM,CrewAI 提供了与大量 LLM 的无缝集成。这种灵活性使您可以根据特定需求选择最合适的模型,无论您是优先考虑性能、成本效益还是本地部署。请务必查阅 LiteLLM 文档,获取有关受支持模型和配置选项的最新信息。