CrewAI
CrewAI 是用于构建多 Agent 系统的框架,涵盖 Agent、任务、团队、流程、工具和记忆。AISIX 位于模型请求边界,而 CrewAI 继续负责 Agent 协作和任务执行。
CrewAI 文档中适合网关的路径是使用带自定义 base_url 的 LLM 配置。当 CrewAI 应用需要通过 AISIX 发送兼容 OpenAI 的聊天请求时,请使用此设置。
本指南使用带自定义 LLM 的 CrewAI。你将使用 AISIX 代理 URL、调用方 API Key 和模型别名配置 LLM。
前置条件
开始前,请准备以下内容:
- 一个受 CrewAI 支持的 Python 环境。
- 一个代理监听器可用的运行中 AISIX 网关。
- 一个 AISIX 调用方 API Key。
- 一个调用方 API Key 可通过兼容 OpenAI 的 API访问的模型别名。
配置 CrewAI
如果应用尚未包含 CrewAI,请先安装:
pip install crewai
设置 CrewAI 应用要使用的值:
# Replace with your values
export AISIX_BASE_URL="http://127.0.0.1:3000/v1"
export AISIX_API_KEY="YOUR_CALLER_API_KEY"
export AISIX_MODEL="gpt-4o-prod"
使用 AISIX 值创建 CrewAI LLM,并将其传递给 Agent:
import os
from crewai import Agent, Crew, LLM, Task
llm = LLM(
model=os.environ["AISIX_MODEL"],
provider="openai",
api_key=os.environ["AISIX_API_KEY"],
base_url=os.environ["AISIX_BASE_URL"],
)
writer = Agent(
role="Writer",
goal="Write concise explanations.",
backstory="You explain technical systems clearly.",
llm=llm,
)
task = Task(
description="Write one sentence about governed multi-agent systems.",
expected_output="One concise sentence.",
agent=writer,
)
crew = Crew(
agents=[writer],
tasks=[task],
)
print(crew.kickoff())
模型值应填写 AISIX 模型别名,而不是上游服务提供方模型 ID。provider 值告诉 CrewAI 使用其兼容 OpenAI 的客户端访问自定义端点。AISIX 管理模型请求路径,而 CrewAI 继续负责 Agent、任务、团队、流程、记忆和工具编排。
验证集成
在已设置 AISIX 环境变量的 Shell 中运行脚本。
请求成功后,请确认以下结果:
- 脚本输出团队结果。
- AISIX 为所选模型别名记录一条或多条成功的
POST /v1/chat/completions请求。
如果使用 AISIX Cloud 或私有化部署的托管控制面,请在托管网关日志中验证请求。对于自托 管网关,请使用已配置的日志、指标或上游服务提供方日志。
如果请求失败,请先确认调用方 API Key 可以访问所选模型别名,且 base_url 指向包含 /v1 的 AISIX 代理 API 根路径。
多 Agent 工作流可能因规划、委派、工具使用、记忆和任务执行而发起多次模型调用。为每个应使用 AISIX 的 Agent 或团队级 LLM 配置 AISIX,并在配置预算、限流和用量审查时考虑额外请求。
CrewAI 当前没有与此处 base_url 路径等价的稳定原生 OpenAI Responses API 配置。除非你的 CrewAI 版本公开并记录了 Responses API 客户端路径,否则请继续使用 AISIX 的兼容 OpenAI 路由。如果切换,请先验证实际的 Agent、工具和记忆工作流。
后续步骤
- 兼容 OpenAI 的 API:查看面向网关的请求行为。
- 工具调用:在启用 CrewAI 工具前确认工具调用行为。
- 预算:在支出控制中考虑多 Agent 请求扇出。