Loading...

文章背景图

CrewAI:角色、任务与流程编排的多 Agent 协作框架|部署与使用全指南

2026-10-26
0
- 字
- 分钟
|

图1 CrewAI 官方标识(README 官方素材)

CrewAI · 角色化多 Agent 团队与事件驱动流程编排框架 · 原理学习与本地运行全指南

项目仓库: https://github.com/crewAIInc/crewAI

开源协议:MIT · 主语言:Python(要求 >=3.10 且 <3.14) · 依赖管理:UV · 运行形态:crewai 命令行 + Python 库 · 常驻服务端口:无(CLI 项目运行,无内置 Web 控制台) · 分支:main(命令、配置项以官方仓库最新说明为准)


1 项目简介

CrewAI 是一个开源的 Python 多智能体自动化框架,官方定位为“面向生产就绪多 Agent 工作流的高层抽象与低层 API”。它提供两套互补的核心抽象:

  • Crews(团队):由具备角色(role)、目标(goal)、背景故事(backstory)、工具与任务的 Agent 组成,强调自主协作与动态分工,适合需要 Agent 之间自然决策、委派与协作的场景。
  • Flows(流程):事件驱动的确定性工作流,用 @start、@listen、@router 等装饰器编排执行路径,配合结构化状态(Pydantic 模型)、条件分支与路由,把自主 Agent 包裹在可控的业务流程里。

框架的设计目标是让开发者在“Agent 自主协作”与“代码精确控制”之间自由切换:简单任务可以直接组建 Crew 跑通,复杂生产流程可以用 Flow 管理状态、分支、人工介入与检查点。官方 README 同时说明,CrewAI 提供工具、记忆、知识库、检查点、异步执行以及 MCP / A2A 支持等生产化能力。

定位说明:CrewAI 是框架与 CLI 工具,本身不内置大模型权重,默认通过 OpenAI API 调用模型,也支持接入本地模型(如 Ollama、LM Studio,见官方 LLM 连接文档)。本文侧重 Crew 与 Flow 的编排原理、最小可运行项目结构与本地安装运行方式,属于 Agent / 框架原理学习类内容。官方另有商业产品 CrewAI AMP Suite(控制平面、可观测性、企业支持),与开源框架本体相互独立,不在本文部署范围内。

1.1 核心信息一览

项目项 内容
项目名称 CrewAI
仓库地址 github.com/crewAIInc/crewAI
项目定位 角色化多 Agent 团队(Crews)+ 事件驱动流程(Flows)编排框架
开源协议 MIT(见仓库 LICENSE)
主语言 / 运行时 Python,要求 >=3.10 且 <3.14
依赖管理 UV(官方推荐用于依赖与 CLI 安装)
安装方式 uv tool install crewai;项目内 crewai install 安装依赖
项目脚手架 crewai create crew <project_name>(JSON-first 结构);--classic 生成旧版 Python/YAML 结构
运行命令 crewai run;库模式 Crew(...).kickoff(inputs=...)、Flow 子类实例化
常驻服务端口 无;框架不提供内置 Web 控制台
模型接入 默认 OpenAI API;支持 Anthropic、Google Gemini、Azure、本地 Ollama / LM Studio 等,以官方 LLM 文档为准
官方文档 docs.crewai.com

1.2 适用场景

  • 学习多 Agent 系统的两种主流编排思路:自主角色团队(Crew)与事件驱动流程(Flow)的区别与配合方式。
  • 把研究、写作、数据分析、行程规划、岗位描述生成等多步任务拆成若干专职 Agent,按顺序或层级协作产出结构化结果。
  • 在确定性业务代码中嵌入 Agent 步骤:用 Flow 管理状态、条件分支、人工审核节点与检查点,把 Crew 作为流程中的一个可调用环节。
  • 为 Agent 配置工具(网页搜索、自定义 Python 工具、MCP 服务)、记忆、知识库与结构化输出(output_pydantic / output_json)。
  • 从实验原型平滑过渡到生产代码:保留 Python 原生定制能力,在框架之上扩展提示词、工具、执行路径与集成。

1.3 能力边界(官方口径)

  • CrewAI 不提供模型本身,也不附带模型 API Key;Agent 的推理质量取决于所接入的模型。
  • 框架聚焦 Agent 编排与工作流控制;可观测性、集中管理、企业级安全审计与 7×24 支持属于商业 AMP Suite 能力,开源框架本体不包含对应控制平面。
  • 官方 README 明确:Crew 适合需要自主决策与动态交互的任务,Flow 适合需要精确执行路径与状态管理的任务;二者应按场景选择,而不是互相替代。
  • 框架默认开启匿名遥测(版本、Python 版本、操作系统、Agent / 任务数量、流程类型、模型类型、工具名等),不收集提示词、任务描述、Agent 背景故事、工具调用、API 响应或密钥;开启 share_crew 后才会上报更详细的任务执行数据。可通过环境变量 OTEL_SDK_DISABLED=true 关闭遥测。
  • 框架不支持微调或训练基础模型;自定义领域能力通过接入已训练模型、知识库、工具与提示词实现。

2 功能特性

2.1 Crew:角色化自主团队

  • 每个 Agent 由 role(角色)、goal(目标)、backstory(背景故事)、llm、tools、settings 等字段定义,职责边界清晰。
  • 任务(Task)包含 description、expected_output、agent、context(依赖其他任务的产物)、output_file、markdown、结构化输出等配置。
  • 团队流程支持 sequential(顺序执行,任务按定义顺序流转)与 hierarchical(层级流程,自动指派一名经理 Agent 负责规划、委派与结果校验)两种模式,详见官方 Process 文档。

2.2 Flow:事件驱动的精确控制

  • 用 @start() 标记流程起点,@listen(...) 监听上游方法或事件触发,@router(...) 根据状态做条件路由。
  • 支持 or_()、and_() 组合多个触发条件;流程状态由泛型 Flow[StateModel] 绑定的 Pydantic 模型管理。
  • Flow 内可以直接实例化并调用 Crew,把自主团队作为确定性流程中的一个步骤。

2.3 工具、记忆与知识库

  • Agent 可挂载官方工具与自定义工具(项目 tools/ 目录,以 "custom:<name>" 引用);支持 MCP 与 A2A 集成。
  • 支持记忆(memory)、知识库文件(knowledge/)、技能(skills/)、检查点(checkpointing)、异步执行与人工介入(human input on execution)。
  • 任务可声明 output_pydantic / output_json 获得结构化输出,并支持 output_file 落盘。

2.4 模型灵活接入、无厂商锁定

  • 默认使用 OpenAI API;官方 LLM 连接文档覆盖 Anthropic、Google Gemini、Azure、Groq、本地 Ollama、LM Studio 等多种接入方式,可在 Agent 级别或全局切换模型而不改动架构。

2.5 项目脚手架与 CLI 工程化

  • crewai create crew 生成 JSON-first 项目结构:agents/*.jsonc 定义 Agent,crew.jsonc 定义任务、流程与输入默认值;旧版 Python/YAML 脚手架通过 --classic 生成。
  • 内置 crewai install、crewai run、crewai install 之外的依赖追加(uv add <package>)等工程命令。

2.6 社区示例与课程

  • 官方示例仓库 crewAIInc/crewAI-examples 提供落地页生成、行程规划、股票分析、岗位描述生成等案例;官方与 DeepLearning.AI 合作提供多 Agent 系统入门与进阶课程。

3 官方界面预览

CrewAI 本体没有图形控制台;官方 README 提供了 Crew 与 Flows 两套抽象的结构对比图:左侧 Crew 以 Agent + LLM + 工具 + 记忆组成团队,任务依次汇聚到 Final Outcome;右侧 Flows 以代码、Crew 与共享 State 构成事件驱动流水线。

图2 Crew 与 Flows 结构对比官方示意图(README 官方素材)

上图对应官方口径:Crew 提供更强的自主性(more agency),Flow 提供更细的流程控制(finer precision);两者可以组合在同一个应用中使用。

4 官方跳转链接汇总

下表列出项目相关的官方入口,均可直接点击访问。

类别 链接 说明
仓库主页 https://github.com/crewAIInc/crewAI 框架源码、README、脚手架与示例
官方文档 docs.crewai.com 安装、Agent、Task、Crew、Flow、记忆、工具、模型接入
安装指南 docs.crewai.com/en/installation UV 安装与 CLI 配置说明
模型接入 docs.crewai.com/en/concepts/llms 各厂商 API Key 与本地模型配置
流程模式 docs.crewai.com/en/concepts/processes Sequential 与 Hierarchical 流程说明
快速上手 docs.crewai.com/en/quickstart Flow-first 入门示例
官方示例仓库 github.com/crewAIInc/crewAI-examples 行程规划、股票分析、落地页生成等案例
官方网站 crewai.com 项目主页与开源入口
商业产品 CrewAI AMP Suite 企业控制平面(独立商业产品,非开源框架)
云试用入口 app.crewai.com Crew Control Plane 免费试用入口
社区论坛 community.crewai.com 使用问题与经验交流
学习平台 learn.crewai.com 官方认证课程入口
Issues 反馈 github.com/crewAIInc/crewAI/issues Bug 反馈与功能建议
README 原文 raw README.md 本指南整理所依据的官方说明

5 前置要求与服务器配置

5.1 软件前提

  • Python >=3.10 且 <3.14:用 python3 --version 检查版本区间;不在区间内时先切换或新建 Python 环境。

  • UV:官方推荐的依赖管理与 CLI 安装工具。macOS / Linux 安装:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    # 没有 curl 时使用 wget
    wget -qO- https://astral.sh/uv/install.sh | sh

    Windows:

    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

    安装后若出现 PATH 提示,执行 uv tool update-shell 刷新当前 shell 配置。

  • 模型服务凭据:在项目 .env 中配置模型提供商 API Key;使用网页搜索工具时需要 Serper.dev 的 SERPER_API_KEY。

  • 网络访问:需要能访问所选模型接口;接入本地模型时则需要本机模型服务已启动。

  • Windows 附加提示:若安装中遇到 chroma-hnswlib==0.7.6 构建错误(fatal error C1083: Cannot open include file: 'float.h'),需安装 Visual Studio Build Tools 并勾选“使用 C++ 的桌面开发”,按官方安装指南处理。

5.2 硬件与系统建议(官方口径)

项目 说明
GPU 框架本身不在本机跑模型,无独立显卡硬性要求;接入本地模型时再按模型运行环境准备 GPU / 显存
CPU / 内存 普通开发机即可,占用取决于 Agent 数量、并发任务与所选工具
存储 预留数百 MB 至数 GB 用于项目虚拟环境、依赖与产物文件
操作系统 Linux、macOS、Windows 均可;Windows 构建原生扩展时需配备 C++ 构建工具链

5.3 目录与端口说明

项 默认路径 / 取值 用途
项目配置 项目根目录 .env 模型 Key、搜索 Key 等环境变量
Agent 定义 agents/*.jsonc 各 Agent 的 role、goal、backstory、llm、tools、settings
团队与任务定义 crew.jsonc Agent 列表、任务列表、流程模式、输入默认值、verbose
自定义工具 tools/ 项目私有工具,在 Agent 配置中以 "custom:<name>" 引用
知识库 / 技能 knowledge/、skills/ 知识文件与技能文件目录
产物输出 任务 output_file 指定路径(示例 output/report.md) 任务结果落盘位置
常驻端口 无 框架不启动监听端口;人工介入、对外服务由使用者自行搭建

6 方式一:CLI 快速安装与项目运行(推荐入门)

本方式对应官方 README 的 Getting Started 流程,适合新建项目、学习编排与本地实验。框架类项目无常驻服务端,官方未提供 Docker Compose 部署文件,故本章不编造 Compose 编排,以官方 CLI 流程为准。

6.1 安装 CrewAI CLI

# 安装全局 crewai CLI
uv tool install crewai

# 若 PATH 未刷新,执行一次 shell 配置更新
uv tool update-shell

# 验证安装(输出示例:crewai v0.102.0 - crewai,版本号以实际安装为准)
uv tool list

后续升级全局 CLI:

uv tool install crewai --upgrade

注意:上述命令只升级全局 crewai CLI;项目虚拟环境内的 crewai 包版本需按官方“Upgrading CrewAI in a project”指南单独升级。

6.2 创建 Crew 项目

# JSON-first 项目(官方当前默认脚手架)
crewai create crew latest-ai-development
cd latest_ai_development

生成的目录结构:

my_project/
├── .gitignore
├── .env
├── agents/
│   └── researcher.jsonc
├── crew.jsonc
├── knowledge/
├── pyproject.toml
├── README.md
├── skills/
└── tools/

需要旧版 Python/YAML 脚手架(crew.py、config/agents.yaml、config/tasks.yaml)时:

crewai create crew <project_name> --classic

6.3 编写 Agent 与团队配置

agents/researcher.jsonc:

{
  "role": "{topic} Senior Data Researcher",
  "goal": "Uncover cutting-edge developments in {topic}",
  "backstory": "You're a seasoned researcher who finds relevant information and presents it clearly.",
  "llm": "openai/gpt-4o",
  "tools": ["SerperDevTool"],
  "settings": {
    "verbose": true
  }
}

agents/reporting_analyst.jsonc:

{
  "role": "{topic} Reporting Analyst",
  "goal": "Create detailed reports based on {topic} data analysis and research findings",
  "backstory": "You're a meticulous analyst who turns complex data into clear, concise reports.",
  "llm": "openai/gpt-4o",
  "settings": {
    "verbose": true
  }
}

crew.jsonc:

{
  "name": "Latest AI Development",
  "agents": ["researcher", "reporting_analyst"],
  "tasks": [
    {
      "name": "research_task",
      "description": "Conduct thorough research about {topic}. Find recent, relevant information.",
      "expected_output": "A list with 10 bullet points of the most relevant information about {topic}.",
      "agent": "researcher"
    },
    {
      "name": "reporting_task",
      "description": "Review the research and expand each topic into a full section for a report.",
      "expected_output": "A markdown report with the main topics, each with a full section of information. No fenced code blocks around the whole document.",
      "agent": "reporting_analyst",
      "context": ["research_task"],
      "output_file": "output/report.md",
      "markdown": true
    }
  ],
  "process": "sequential",
  "verbose": true,
  "inputs": {
    "topic": "AI Agents"
  }
}

6.4 填写环境变量并运行

在 .env 中填写模型提供商 API Key;使用网页搜索工具时填写 SERPER_API_KEY:

OPENAI_API_KEY=sk-你的密钥
# SERPER_API_KEY=你的 Serper 密钥(需要网页搜索时填写)

在项目目录内安装依赖并运行:

crewai install
crewai run

运行过程中控制台输出执行日志;任务完成后在项目根目录生成 output/report.md。配置中的 {placeholder} 占位符未在 inputs 中给默认值时,crewai run 会在命令行提示输入。

7 方式二:源码克隆与库模式本地开发

7.1 克隆仓库并安装开发依赖

面向阅读框架源码、二次开发或向官方贡献代码:

git clone https://github.com/crewAIInc/crewAI.git
cd crewAI

# 安装全部分组与附加依赖
uv sync --all-groups --all-extras

# 安装提交钩子
uv run pre-commit install

常用开发命令(官方 README):

# 运行测试
uv run pytest lib/crewai/tests/ -x -q

# 类型检查
uv run mypy lib/

7.2 库模式最小 Crew 示例

在自己的 Python 项目中安装 crewai 包后,可直接用代码定义 Agent、Task 与 Crew:

from crewai import Agent, Crew, Task, Process

researcher = Agent(
    role="Senior Data Researcher",
    goal="Uncover cutting-edge developments in AI Agents",
    backstory="You're a seasoned researcher who finds relevant information and presents it clearly.",
    verbose=True,
)

analyst = Agent(
    role="Reporting Analyst",
    goal="Create detailed reports based on research findings",
    backstory="You're a meticulous analyst who turns complex data into clear, concise reports.",
    verbose=True,
)

research_task = Task(
    description="Research recent developments in AI Agents.",
    expected_output="A list with 10 bullet points of the most relevant information.",
    agent=researcher,
)

report_task = Task(
    description="Review the research and expand each topic into a full section for a report.",
    expected_output="A markdown report with a full section of information for each topic.",
    agent=analyst,
    context=[research_task],
    output_file="output/report.md",
)

crew = Crew(
    agents=[researcher, analyst],
    tasks=[research_task, report_task],
    process=Process.sequential,
    verbose=True,
)

result = crew.kickoff(inputs={"topic": "AI Agents"})
print(result)

7.3 库模式 Crew + Flow 组合示例

官方 README 给出了在 Flow 中实例化 Crew、用 @router 按置信度分流的完整示例,体现“确定性流程包裹自主团队”的典型模式:

from crewai.flow.flow import Flow, listen, start, router, or_
from crewai import Crew, Agent, Task, Process
from pydantic import BaseModel

class MarketState(BaseModel):
    sentiment: str = "neutral"
    confidence: float = 0.0
    recommendations: list = []

class AdvancedAnalysisFlow(Flow[MarketState]):
    @start()
    def fetch_market_data(self):
        self.state.sentiment = "analyzing"
        return {"sector": "tech", "timeframe": "1W"}

    @listen(fetch_market_data)
    def analyze_with_crew(self, market_data):
        analyst = Agent(
            role="Senior Market Analyst",
            goal="Conduct deep market analysis with expert insight",
            backstory="You're a veteran analyst known for identifying subtle market patterns",
        )
        researcher = Agent(
            role="Data Researcher",
            goal="Gather and validate supporting market data",
            backstory="You excel at finding and correlating multiple data sources",
        )
        analysis_task = Task(
            description="Analyze {sector} sector data for the past {timeframe}",
            expected_output="Detailed market analysis with confidence score",
            agent=analyst,
        )
        research_task = Task(
            description="Find supporting data to validate the analysis",
            expected_output="Corroborating evidence and potential contradictions",
            agent=researcher,
        )
        analysis_crew = Crew(
            agents=[analyst, researcher],
            tasks=[analysis_task, research_task],
            process=Process.sequential,
            verbose=True,
        )
        return analysis_crew.kickoff(inputs=market_data)

    @router(analyze_with_crew)
    def determine_next_steps(self):
        if self.state.confidence > 0.8:
            return "high_confidence"
        elif self.state.confidence > 0.5:
            return "medium_confidence"
        return "low_confidence"

    @listen("high_confidence")
    def execute_strategy(self):
        strategy_crew = Crew(
            agents=[Agent(role="Strategy Expert", goal="Develop optimal market strategy")],
            tasks=[Task(description="Create detailed strategy based on analysis",
                        expected_output="Step-by-step action plan")],
        )
        return strategy_crew.kickoff()

    @listen(or_("medium_confidence", "low_confidence"))
    def request_additional_analysis(self):
        self.state.recommendations.append("Gather more data")
        return "Additional analysis required"

运行 Flow 入口的方式、状态读写细节以官方 Flow 文档为准。

8 配置项说明

8.1 .env 环境变量

变量 用途 必填条件
OPENAI_API_KEY 默认 OpenAI 模型接入密钥 使用 OpenAI 模型时必填
OPENAI_BASE_URL OpenAI 兼容接口地址(接入代理或兼容网关时使用) 可选
ANTHROPIC_API_KEY Anthropic 模型接入密钥 使用 Anthropic 模型时必填
GEMINI_API_KEY / GOOGLE_API_KEY Google Gemini 接入密钥 使用 Gemini 模型时必填
AZURE_API_KEY 等 Azure 及其他提供商密钥(完整清单见官方 LLM 文档) 按所选模型填写
SERPER_API_KEY Serper.dev 网页搜索工具密钥 使用 SerperDevTool 时必填
OTEL_SDK_DISABLED=true 关闭框架匿名遥测 可选,按需设置

模型标识符写法(如 openai/gpt-4o)、本地 Ollama / LM Studio 的连接参数与模型名格式,以官方 LLM 连接文档当前版本为准。

8.2 agents/*.jsonc 字段

字段 用途
role Agent 角色名称,支持 {placeholder} 占位
goal 角色目标,决定任务方向
backstory 背景故事,塑造角色语气与专长定位
llm 指定模型标识符;不填时使用全局默认模型
tools 工具名列表,官方工具或 "custom:<name>" 自定义工具
settings verbose 等 Agent 运行参数

8.3 crew.jsonc 字段

字段 用途
name Crew 名称
agents Agent 配置文件引用列表(不含扩展名)
tasks 任务定义数组:name、description、expected_output、agent、context、output_file、markdown 等
process sequential 或 hierarchical
verbose 是否输出详细执行日志
inputs 占位符默认值;运行时缺失会在 CLI 提示输入

8.4 代码层常用参数

位置 参数 / 装饰器 用途
Agent(...) role / goal / backstory / tools / llm / memory / verbose 定义角色及其能力与记忆
Task(...) description / expected_output / agent / context / output_pydantic / output_json / output_file / human_input 定义任务、依赖、结构化输出与人工审核
Crew(...) agents / tasks / process / memory / knowledge_sources / verbose / share_crew 组建团队并声明流程与共享能力
Flow 装饰器 @start() / @listen(...) / @router(...) / or_() / and_() 标记起点、监听触发、条件路由与复合触发条件

9 常用运维命令

9.1 CLI 项目命令

# 安装项目依赖
crewai install

# 运行项目
crewai run

# 追加项目依赖(UV 管理)
uv add <package-name>

# 查看已安装工具与版本
uv tool list

9.2 源码开发命令

# 安装开发依赖
uv sync --all-groups --all-extras

# 提交钩子
uv run pre-commit install

# 测试
uv run pytest lib/crewai/tests/ -x -q

# 类型检查
uv run mypy lib/

9.3 日常检查与产物管理

# 查看当前虚拟环境与 crewai 包版本
uv pip list | grep crewai

# 检查 .env 是否被 .gitignore 排除,避免密钥入库
cat .gitignore | grep .env

# 备份项目配置与产物(agents、crew.jsonc、tools、knowledge、output)

CrewAI 没有容器常驻服务,因此不存在“查看容器日志、重启服务”等运维操作;调试时通过 verbose: true 观察 Agent 与任务执行轨迹,产物以任务 output_file 落盘位置为准。

10 常见故障排查

10.1 Python 版本不在支持区间

现象:crewai install 或导入时报依赖解析失败、语法错误。 排查:python3 --version 确认在 3.10 到 3.13 之间;使用 uv init --python 3.11 或 conda 新建符合区间的环境后重试。

10.2 crewai 命令找不到或 PATH 未刷新

现象:安装后终端提示 command not found。 排查:执行 uv tool update-shell,重新打开终端;用 uv tool list 确认 CLI 已注册;必要时重新执行 uv tool install crewai。

10.3 模型认证失败(401 / 403)

现象:Agent 启动后调用模型返回认证错误。 排查:核对 .env 中对应提供商密钥变量名是否正确、密钥是否过期或欠费;使用非 OpenAI 模型时检查 llm 标识符与 base_url 配置;同一密钥不要同时写入多个冲突变量。

10.4 网页搜索工具报错或缺工具

现象:任务执行到搜索步骤报错提示缺少工具或 Key。 排查:确认 SERPER_API_KEY 已配置;Agent 配置中的工具名与已安装工具包一致;自定义工具已放入 tools/ 目录并在 Agent 配置中以 "custom:<name>" 正确引用。

10.5 任务上下文未传递、报告缺少上游信息

现象:第二个任务拿不到研究结果。 排查:在任务配置 context 中声明上游任务名;顺序流程下确认任务在 tasks 数组中的顺序与依赖关系一致;检查 expected_output 是否明确要求了下游需要的内容。

10.6 Hierarchical 流程行为不符合预期

现象:层级流程中经理 Agent 未按预期委派任务。 排查:先按官方 Process 文档核对层级流程的适用条件;确保经理角色模型具备足够指令遵循能力;必要时先用 sequential 跑通流程,再切换为 hierarchical 对比行为差异。

10.7 Windows 原生扩展构建失败

现象:crewai install 卡在 chroma-hnswlib 等包编译并报 float.h 找不到。 排查:按官方说明安装 Visual Studio Build Tools 并勾选“使用 C++ 的桌面开发”,重启终端后重试;或在 WSL2 中运行项目。

10.8 遥测与数据上报顾虑

现象:担心框架上报提示词或任务内容。 排查:官方 README 说明默认遥测不收集提示词、任务描述、背景故事、工具调用、响应与密钥;如仍需关闭,在 .env 设置 OTEL_SDK_DISABLED=true;share_crew 默认为关闭,不要在不需要时显式开启。

11 风险与合规说明

  • 许可证:CrewAI 开源框架以 MIT 许可证发布,允许使用、修改与再分发;商业使用请保留版权与许可证声明。企业级控制平面、可观测性、安全合规与专属支持属于 CrewAI AMP Suite 商业能力,部署到团队生产环境前请阅读官方商业条款。
  • 模型与数据合规:任务描述、资料片段、工具返回内容会发送到所选模型服务商;接入第三方商业模型须遵守其服务条款与数据处理约定;涉密代码、客户数据优先选择私有部署模型并做好访问控制。
  • AI 产出审查:Agent 生成的报告、代码、分析结论属于辅助初稿,可能包含事实错误、引用过时或逻辑漏洞;对外发布或进入决策流程前必须由人工复核。
  • 凭据管理:.env 中的模型 Key、搜索 Key 属于敏感信息,不要提交到 Git 仓库、不要写入文章、截图或公开示例;更换密钥后重启任务生效。
  • 工具与 MCP 安全:自定义工具与外部 MCP 服务可能访问本地文件、网络与系统命令,只挂载可信工具并控制其权限;人工介入节点应保留在关键审批位置。
  • 版本兼容性:框架迭代较快,脚手架格式(JSON-first 与 --classic)、模型标识符与配置字段可能随版本调整;新项目以官方当前文档与 crewai --help 输出为准。
评论交流

文章目录