crewAIInc/crewAI
GitHub: crewAIInc/crewAI
一个用于编排角色扮演、自主 AI 智能体协作处理复杂任务的 Python 框架。
Stars: 44927 | Forks: 6033
主页
·
文档
·
开始 Cloud 试用
·
博客
·
论坛
### 快速且灵活的多智能体自动化框架
- **CrewAI Crews**:针对自主性和协作智能进行优化。
- **CrewAI Flows**:用于构建和部署多智能体系统的**企业和生产级架构**。支持细粒度的、事件驱动的控制,通过单次 LLM 调用实现精确的任务编排,并原生支持 Crews。
已有超过 100,000 名开发者通过 [learn.crewai.com](https://learn.crewai.com) 的社区课程获得认证,CrewAI 正迅速成为
企业级 AI 自动化的标准。
# CrewAI AMP Suite
CrewAI AMP Suite 是专为需要安全、可扩展且易于管理的智能体驱动自动化组织量身定制的综合套件。
您可以免费试用该套件的一部分 [Crew Control Plane](https://app.crewai.com)
## Crew Control Plane 主要特性:
- **追踪与可观测性**:实时监控和追踪您的 AI agents 和工作流,包括指标、日志和追踪记录。
- **统一控制平面**:用于管理、监控和扩展 AI agents 和工作流的集中式平台。
- **无缝集成**:轻松连接现有的企业系统、数据源和云基础设施。
- **高级安全性**:内置强大的安全和合规措施,确保部署和管理的安全性。
- **可操作的洞察**:实时分析和报告,以优化性能和决策制定。
- **24/7 支持**:专属企业支持,确保不间断运行并快速解决问题。
- **本地和云端部署选项**:根据您的安全和合规要求,可选择在本地或云端部署 CrewAI AMP。
CrewAI AMP 专为寻求强大、可靠解决方案的企业设计,旨在将复杂的业务流程转化为高效、
智能的自动化。
## 目录
- [为什么选择 CrewAI?](#why-crewai)
- [入门指南](#getting-started)
- [核心特性](#key-features)
- [理解 Flows 和 Crews](#understanding-flows-and-crews)
- [CrewAI vs LangGraph](#how-crewai-compares)
- [示例](#examples)
- [快速教程](#quick-tutorial)
- [撰写职位描述](#write-job-descriptions)
- [旅行规划师](#trip-planner)
- [股票分析](#stock-analysis)
- [结合使用 Crews 和 Flows](#using-crews-and-flows-together)
- [将您的 Crew 连接到模型](#connecting-your-crew-to-a-model)
- [CrewAI 的优势对比](#how-crewai-compares)
- [常见问题解答 (FAQ)](#frequently-asked-questions-faq)
- [贡献](#contribution)
- [遥测](#telemetry)
- [许可证](#license)
## 为什么选择 CrewAI?
CrewAI 释放了多智能体自动化的真正潜力,通过 AI Agents 的 Crews 或 Events 的 Flows,提供速度、灵活性和控制力的最佳组合:
- **独立框架**:从零开始构建,独立于 LangChain 或任何其他 agent 框架。
- **高性能**:针对速度和最小资源占用进行了优化,实现更快的执行。
- **灵活的底层自定义**:完全自由地在高层和底层进行定制——从整体工作流和系统架构到精细的 agent 行为、内部 prompts 和执行逻辑。
- **适用于各种场景**:已被证明对简单任务和高度复杂、真实世界、企业级场景均有效。
- **强大的社区**:由超过 **100,000 名认证**开发者组成的快速增长社区支持,提供全面的支持和资源。
CrewAI 赋能开发者与企业自信地构建智能自动化,在简单性、灵活性和性能之间架起桥梁。
## 入门指南
按照本教程设置并运行您的第一个 CrewAI agents。
[](https://www.youtube.com/watch?v=-kSOTtYzgEw "CrewAI Getting Started Tutorial")
###
学习资源
通过我们的综合课程学习 CrewAI:
- [CrewAI 多 AI 智能体系统](https://www.deeplearning.ai/short-courses/multi-ai-agent-systems-with-crewai/) - 掌握多智能体系统的基础知识
- [实用多 AI 智能体与高级用例](https://www.deeplearning.ai/short-courses/practical-multi-ai-agents-and-advanced-use-cases-with-crewai/) - 深入探讨高级实现
### 理解 Flows 和 Crews
CrewAI 提供了两种强大且互补的方法,它们可以无缝协作以构建复杂的 AI 应用程序:
1. **Crews**:具有真正自主性和能动性的 AI agents 团队,通过基于角色的协作共同完成复杂任务。Crews 能够实现:
- agents 之间自然、自主的决策制定
- 动态的任务委派和协作
- 具有明确目标和专业知识的特定角色
- 灵活的问题解决方法
2. **Flows**:生产就绪、事件驱动的工作流,对复杂的自动化提供精确控制。Flows 提供:
- 对真实场景执行路径的细粒度控制
- 任务间安全、一致的状态管理
- AI agents 与生产 Python 代码的整洁集成
- 针对复杂业务逻辑的条件分支
结合 Crews 和 Flows 时,CrewAI 的真正威力得以显现。这种协同作用允许您:
- 构建复杂的生产级应用程序
- 平衡自主性与精确控制
- 处理复杂的真实场景
- 维护整洁、可维护的代码结构
### 开始安装
请按照以下简单步骤开始使用 CrewAI:
### 1. 安装
确保您的系统上安装了 Python >=3.10 <3.14。CrewAI 使用 [UV](https://docs.astral.sh/uv/) 进行依赖管理和包处理,提供无缝的设置和执行体验。
首先,安装 CrewAI:
```
uv pip install crewai
```
如果您想安装 'crewai' 包及其可选功能(包括 agents 的额外工具),可以使用以下命令:
```
uv pip install 'crewai[tools]'
```
上面的命令安装基础包,并添加需要更多依赖项才能运行的额外组件。
### 依赖故障排除
如果您在安装或使用过程中遇到问题,以下是一些常见的解决方案:
#### 常见问题
1. **ModuleNotFoundError: No module named 'tiktoken'**
- 显式安装 tiktoken:`uv pip install 'crewai[embeddings]'`
- 如果使用 embedchain 或其他工具:`uv pip install 'crewai[tools]'`
2. **Failed building wheel for tiktoken**
- 确保已安装 Rust 编译器(参见上面的安装步骤)
- 对于 Windows:验证是否已安装 Visual C++ Build Tools
- 尝试升级 pip:`uv pip install --upgrade pip`
- 如果问题仍然存在,请使用预构建的 wheel:`uv pip install tiktoken --prefer-binary`
### 2. 使用 YAML 配置设置您的 Crew
要创建一个新的 CrewAI 项目,请运行以下 CLI(命令行界面)命令:
```
crewai create crew
```
此命令将创建一个具有以下结构的新项目文件夹:
```
my_project/
├── .gitignore
├── pyproject.toml
├── README.md
├── .env
└── src/
└── my_project/
├── __init__.py
├── main.py
├── crew.py
├── tools/
│ ├── custom_tool.py
│ └── __init__.py
└── config/
├── agents.yaml
└── tasks.yaml
```
您现在可以通过编辑 `src/my_project` 文件夹中的文件来开始开发您的 crew。`main.py` 文件是项目的入口点,`crew.py` 文件是您定义 crew 的地方,`agents.yaml` 文件是您定义 agents 的地方,`tasks.yaml` 文件是您定义 tasks 的地方。
#### 要自定义您的项目,您可以:
- 修改 `src/my_project/config/agents.yaml` 以定义您的 agents。
- 修改 `src/my_project/config/tasks.yaml` 以定义您的 tasks。
- 修改 `src/my_project/crew.py` 以添加您自己的逻辑、工具和特定参数。
- 修改 `src/my_project/main.py` 为您的 agents 和 tasks 添加自定义输入。
- 将您的环境变量添加到 `.env` 文件中。
#### 具有顺序流程的简单 crew 示例:
实例化您的 crew:
```
crewai create crew latest-ai-development
```
根据需要修改文件以适应您的用例:
**agents.yaml**
```
# src/my_project/config/agents.yaml
researcher:
role: >
{topic} Senior Data Researcher
goal: >
Uncover cutting-edge developments in {topic}
backstory: >
You're a seasoned researcher with a knack for uncovering the latest
developments in {topic}. Known for your ability to find the most relevant
information and present it in a clear and concise manner.
reporting_analyst:
role: >
{topic} Reporting Analyst
goal: >
Create detailed reports based on {topic} data analysis and research findings
backstory: >
You're a meticulous analyst with a keen eye for detail. You're known for
your ability to turn complex data into clear and concise reports, making
it easy for others to understand and act on the information you provide.
```
**tasks.yaml**
```
# src/my_project/config/tasks.yaml
research_task:
description: >
Conduct a thorough research about {topic}
Make sure you find any interesting and relevant information given
the current year is 2025.
expected_output: >
A list with 10 bullet points of the most relevant information about {topic}
agent: researcher
reporting_task:
description: >
Review the context you got and expand each topic into a full section for a report.
Make sure the report is detailed and contains any and all relevant information.
expected_output: >
A fully fledge reports with the mains topics, each with a full section of information.
Formatted as markdown without '```'
agent: reporting_analyst
output_file: report.md
```
**crew.py**
```
# src/my_project/crew.py
from crewai import Agent, Crew, Process, Task
from crewai.project import CrewBase, agent, crew, task
from crewai_tools import SerperDevTool
from crewai.agents.agent_builder.base_agent import BaseAgent
from typing import List
@CrewBase
class LatestAiDevelopmentCrew():
"""LatestAiDevelopment crew"""
agents: List[BaseAgent]
tasks: List[Task]
@agent
def researcher(self) -> Agent:
return Agent(
config=self.agents_config['researcher'],
verbose=True,
tools=[SerperDevTool()]
)
@agent
def reporting_analyst(self) -> Agent:
return Agent(
config=self.agents_config['reporting_analyst'],
verbose=True
)
@task
def research_task(self) -> Task:
return Task(
config=self.tasks_config['research_task'],
)
@task
def reporting_task(self) -> Task:
return Task(
config=self.tasks_config['reporting_task'],
output_file='report.md'
)
@crew
def crew(self) -> Crew:
"""Creates the LatestAiDevelopment crew"""
return Crew(
agents=self.agents, # Automatically created by the @agent decorator
tasks=self.tasks, # Automatically created by the @task decorator
process=Process.sequential,
verbose=True,
)
```
**main.py**
```
#!/usr/bin/env python
# src/my_project/main.py
import sys
from latest_ai_development.crew import LatestAiDevelopmentCrew
def run():
"""
Run the crew.
"""
inputs = {
'topic': 'AI Agents'
}
LatestAiDevelopmentCrew().crew().kickoff(inputs=inputs)
```
### 3. 运行您的 Crew
在运行 crew 之前,请确保您在 `.env` 文件中设置了以下密钥作为环境变量:
- 一个 [OpenAI API key](https://platform.openai.com/account/api-keys)(或其他 LLM API 密钥):`OPENAI_API_KEY=sk-...`
- 一个 [Serper.dev](https://serper.dev/) API 密钥:`SERPER_API_KEY=YOUR_KEY_HERE`
使用 CLI 命令锁定依赖项并安装它们,但首先,请导航到您的项目目录:
```
cd my_project
crewai install (Optional)
```
要运行您的 crew,请在项目的根目录下执行以下命令:
```
crewai run
```
或者
```
python src/my_project/main.py
```
如果由于使用 poetry 而发生错误,请运行以下命令来更新您的 crewai 包:
```
crewai update
```
您应该会在控制台中看到输出,并且应该在项目的根目录下创建 `report.md` 文件,其中包含完整的最终报告。
除了顺序流程外,您还可以使用层级流程,该流程会自动为定义的 crew 分配一个 Manager,以通过委派和结果验证来正确协调任务的规划和执行。[在此处查看有关流程的更多信息](https://docs.crewai.com/core-concepts/Processes/)。
## 核心特性
CrewAI 作为一个精简、独立、高性能的多 AI Agent 框架脱颖而出,提供简单性、灵活性和精确控制——摆脱了其他 agent 框架中的复杂性和限制。
- **独立且精简**:完全独立于 LangChain 等其他框架,提供更快的执行速度和更低的资源需求。
- **灵活且精确**:通过直观的 [Crews](https://docs.crewai.com/concepts/crews) 或精确的 [Flows](https://docs.crewai.com/concepts/flows) 轻松编排自主 agents,为您的需求实现完美平衡。
- **无缝集成**:轻松结合 Crews(自主性)和 Flows(精确性),以创建复杂的真实世界自动化。
- **深度定制**:定制各个方面——从高层工作流到底层内部 prompts 和 agent 行为。
- **可靠的性能**:在简单任务和复杂的企业级自动化中均能提供一致的结果。
- **繁荣的社区**:由强大的文档和超过 100,000 名认证开发者支持,提供卓越的支持和指导。
选择 CrewAI,轻松构建强大、适应性强且生产就绪的 AI 自动化。
## 示例
您可以在 [CrewAI-examples repo](https://github.com/crewAIInc/crewAI-examples?tab=readme-ov-file) 中测试不同的真实 AI crews 示例:
- [着陆页生成器](https://github.com/crewAIInc/crewAI-examples/tree/main/crews/landing_page_generator)
- [在执行中引入人工输入](https://docs.crewai.com/how-to/Human-Input-on-Execution)
- [旅行规划师](https://github.com/crewAIInc/crewAI-examples/tree/main/crews/trip_planner)
- [股票分析](https://github.com/crewAIInc/crewAI-examples/tree/main/crews/stock_analysis)
### 快速教程
[](https://www.youtube.com/watch?v=tnejrr-0a94 "CrewAI Tutorial")
### 撰写职位描述
[查看此示例的代码](https://github.com/crewAIInc/crewAI-examples/tree/main/crews/job-posting) 或观看下面的视频:
[](https://www.youtube.com/watch?v=u98wEMz-9to "Jobs postings")
### 旅行规划师
[查看此示例的代码](https://github.com/crewAIInc/crewAI-examples/tree/main/crews/trip_planner) 或观看下面的视频:
[](https://www.youtube.com/watch?v=xis7rWp-hjs "Trip Planner")
### 股票分析
[查看此示例的代码](https://github.com/crewAIInc/crewAI-examples/tree/main/crews/stock_analysis) 或观看下面的视频:
[](https://www.youtube.com/watch?v=e0Uj4yWdaAg "Stock Analysis")
### 结合使用 Crews 和 Flows
将 Crews 与 Flows 结合使用以创建复杂的自动化管道时,CrewAI 的威力才真正得以体现。
CrewAI flows 支持像 `or_` 和 `and_` 这样的逻辑运算符来组合多个条件。这可以与 `@start`、`@listen` 或 `@router` 装饰器一起使用,以创建复杂的触发条件。
- `or_`:当满足任何指定条件时触发。
- `and_` 当满足所有指定条件时触发。
以下是如何在 Flow 中编排多个 Crews:
```
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):
# Demonstrate low-level control with structured state
self.state.sentiment = "analyzing"
return {"sector": "tech", "timeframe": "1W"} # These parameters match the task description template
@listen(fetch_market_data)
def analyze_with_crew(self, market_data):
# Show crew agency through specialized roles
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
)
# Demonstrate crew autonomy
analysis_crew = Crew(
agents=[analyst, researcher],
tasks=[analysis_task, research_task],
process=Process.sequential,
verbose=True
)
return analysis_crew.kickoff(inputs=market_data) # Pass market_data as named inputs
@router(analyze_with_crew)
def determine_next_steps(self):
# Show flow control with conditional routing
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):
# Demonstrate complex decision making
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"
```
此示例演示了如何:
1. 使用 Python 代码进行基本数据操作
2. 创建并执行 Crews 作为工作流中的步骤
3. 使用 Flow 装饰器管理操作顺序
4. 根据 Crew 结果实现条件分支
## 将您的 Crew 连接到模型
CrewAI 支持通过多种连接选项使用各种 LLMs。默认情况下,您的 agents 在查询模型时将使用 OpenAI API。但是,还有其他几种方法允许您的 agents 连接到模型。例如,您可以将 agents 配置为通过 Ollama 工具使用本地模型。
有关配置 agents 与模型连接的详细信息,请参阅 [Connect CrewAI to LLMs](https://docs.crewai.com/how-to/LLM-Connections/) 页面。
## CrewAI 的优势对比
**CrewAI 的优势**:CAI 通过其独特的 Crews 和 Flows 架构,将自主 agent 智能与精确的工作流控制相结合。该框架擅长高层编排和底层定制,能够通过精细的控制实现复杂的生产级系统。
- **LangGraph**:虽然 LangGraph 提供了构建 agent 工作流的基础,但其方法需要大量的样板代码和复杂的状态管理模式。该框架与 LangChain 的紧密耦合在实现自定义 agent 行为或与外部系统集成时可能会限制灵活性。
_附注:CrewAI 在性能上显示出显著优于 LangGraph 的优势,在某些情况下(如此 QA 任务示例)执行速度快 5.76 倍([查看对比](https://github.com/crewAIInc/crewAI-examples/tree/main/Notebooks/CrewAI%20Flows%20%26%20Langgraph/QA%20Agent)),同时在某些编码任务中以更快的完成时间获得更高的评估分数,如此示例所示([详细分析](https://github.com/crewAIInc/crewAI-examples/blob/main/Notebooks/CrewAI%20Flows%20%26%20Langgraph/Coding%20Assistant/coding_assistant_eval.ipynb))。_
- **Autogen**:虽然 Autogen 擅长创建能够协同工作的对话 agents,但它缺乏固有的流程概念。在 Autogen 中,编排 agents 的交互需要额外的编程,随着任务规模的增长,这可能会变得复杂且繁琐。
- **ChatDev**:ChatDev 将流程的概念引入了 AI agents 领域,但其实现相当僵化。ChatDev 中的自定义受限且不适合生产环境,这可能会阻碍真实应用程序的可扩展性和灵活性。
## 贡献
CrewAI 是开源的,我们欢迎贡献。如果您想做出贡献,请:
- Fork 本仓库。
- 为您的功能创建一个新分支。
- 添加您的功能或改进。
- 发送 pull request。
- 我们感谢您的投入!
### 安装依赖
```
uv lock
uv sync
```
### 虚拟环境
```
uv venv
```
### Pre-commit hooks
```
pre-commit install
```
### 运行测试
```
uv run pytest .
```
### 运行静态类型检查
```
uvx mypy src
```
### 打包
```
uv build
```
### 本地安装
```
uv pip install dist/*.tar.gz
```
## 遥测
CrewAI 使用匿名遥测技术收集使用数据,主要目的是帮助我们通过将精力集中在最常用的功能、集成和工具上来改进库。
至关重要的是要理解,**不会收集任何数据**关于 prompts、任务描述、agents 的背景故事或目标、工具的使用、API 调用、响应、agents 处理的任何数据或密钥和环境变量,除非提及的条件。当启用 `share_crew` 功能时,将收集详细数据,包括任务描述、agents 的背景故事或目标以及其他特定属性,以在尊重用户隐私的同时提供更深入的洞察。用户可以通过将环境变量 OTEL_SDK_DISABLED 设置为 true 来禁用遥测。
收集的数据包括:
- CrewAI 的版本
- 以便我们了解有多少用户正在使用最新版本
- Python 的版本
- 以便我们决定更好地支持哪些版本
- 通用操作系统(例如 CPU 数量、macOS/Windows/Linux)
- 以便我们知道我们应该专注于哪种操作系统,以及我们是否可以构建特定的操作系统相关功能
- crew 中的 agents 和 tasks 数量
- 以便我们确保在内部使用类似的用例进行测试,并教育人们了解最佳实践
- 正在使用的 Crew Process
- 了解我们应该将精力集中在哪里
- Agents 是否正在使用 memory 或允许委派
- 了解我们是否改进了功能或者甚至可能放弃它们
- Tasks 是否正在并行或顺序执行
- 了解我们是否应该更多地关注并行执行
- 正在使用的语言模型
- 改进对最常用语言的支持
- crew 中 agents 的角色
- 了解高层用例,以便我们可以为此构建更好的工具、集成和示例
- 可用的工具名称
- 了解在公开可用的工具中,哪些使用得最多,以便我们可以改进它们
用户可以选择加入进一步遥测,通过将其 Crews 上的 `share_crew` 属性设置为 `True` 来共享完整的遥测数据。启用 `share_crew` 将导致收集详细的 crew 和 task 执行数据,包括任务的 `goal`、`backstory`、`context` 和 `output`。这使得能够在尊重用户选择分享的同时,更深入地了解使用模式。
## 许可证
CrewAI 根据 [MIT License](https://github.com/crewAIInc/crewAI/blob/main/LICENSE) 发布。
## 常见问题解答 (FAQ)
### 通用
- [CrewAI 确切是什么?](#q-what-exactly-is-crewai)
- [如何安装 CrewAI?](#q-how-do-i-install-crewai)
- [CrewAI 依赖于 LangChain 吗?](#q-does-crewai-depend-on-langchain)
- [CrewAI 是开源的吗?](#q-is-crewai-open-source)
- [CrewAI 会收集用户数据吗?](#q-does-crewai-collect-data-from-users)
### 功能与能力
- [CrewAI 能处理复杂的用例吗?](#q-can-crewai-handle-complex-use-cases)
- [我可以在 CrewAI 中使用本地 AI 模型吗?](#q-can-i-use-crewai-with-local-ai-models)
- [Crews 和 Flows 有什么区别?](#q-what-makes-crews-different-from-flows)
- [CrewAI 比 LangChain 好在哪里?](#q-how-is-crewai-better-than-langchain)
- [CrewAI 支持微调或训练自定义模型吗?](#q-does-crewai-support-fine-tuning-or-training-custom-models)
### 资源与社区
- [我在哪里可以找到 CrewAI 的真实示例?](#q-where-can-i-find-real-world-crewai-examples)
- [我如何为 CrewAI 做贡献?](#q-how-can-i-contribute-to-crewai)
### 企业功能
- [CrewAI AMP 提供哪些额外功能?](#q-what-additional-features-does-crewai-amp-offer)
- [CrewAI AMP 可用于云端和本地部署吗?](#q-is-crewai-amp-available-for-cloud-and-on-premise-deployments)
- [我可以免费试用 CrewAI AMP 吗?](#q-can-i-try-crewai-amp-for-free)
### Q: CrewAI 确切是什么?
A: CrewAI 是一个专门为编排自主 AI agents 构建的独立、精简且快速的 Python 框架。与 LangChain 等框架不同,CrewAI 不依赖外部依赖项,这使其更精简、更快速且更简单。
### Q: 如何安装 CrewAI?
A: 使用 pip 安装 CrewAI:
```
uv pip install crewai
```
对于额外的工具,请使用:
```
uv pip install 'crewai[tools]'
```
### Q: CrewAI 依赖于 LangChain 吗?
A: 不。CrewAI 完全从零开始构建,不依赖 LangChain 或其他 agent 框架。这确保了精简、快速和灵活的体验。
### Q: CrewAI 能处理复杂的用例吗?
A: 是的。CrewAI 擅长处理简单和高度复杂的真实场景,在高层和底层都提供深度自定义选项,从内部 prompts 到复杂的工作流编排。
### Q: 我可以在 CrewAI 中使用本地 AI 模型吗?
A: 当然可以!CrewAI 支持各种语言模型,包括本地模型。像 Ollama 和 LM Studio 这样的工具允许无缝集成。请查看 [LLM Connections 文档](https://docs.crewai.com/how-to/LLM-Connections/)了解更多详情。
### Q: Crews 和 Flows 有什么区别?
A: Crews 提供自主的 agent 协作,非常适合需要灵活决策和动态交互的任务。Flows 提供精确的、事件驱动的控制,非常适合管理详细的执行路径和安全的状态管理。您可以无缝结合两者以获得最大效果。
### Q: CrewAI 比 LangChain 好在哪里?
A: CrewAI 提供更简单、更直观的 API,更快的执行速度,更可靠和一致的结果,强大的文档以及活跃的社区——解决了与 LangChain 相关的常见批评和限制。
### Q: CrewAI 是开源的吗?
A: 是的,CrewAI 是开源的,并积极鼓励社区贡献和协作。
### Q: CrewAI 会收集用户数据吗?
A: CrewAI 严格出于改进目的收集匿名遥测数据。除非用户明确启用,否则绝不会收集敏感数据,如 prompts、tasks 或 API 响应。
### Q: 我在哪里可以找到 CrewAI 的真实示例?
A: 请在 [CrewAI-examples repository](https://github.com/crewAIInc/crewAI-examples) 中查看实际示例,涵盖旅行规划师、股票分析和职位发布等用例。
### Q: 我如何为 CrewAI 做贡献?
A: 热烈欢迎贡献!Fork 仓库,创建您的分支,实施您的更改,并提交 pull request。有关详细指南,请参阅 README 的贡献部分。
### Q: CrewAI AMP 提供哪些额外功能?
A: CrewAI AMP 提供高级功能,如统一控制平面、实时可观测性、安全集成、高级安全性、可操作的洞察以及专属的 24/7 企业支持。
### Q: CrewAI AMP 可用于云端和本地部署吗?
A: 是的,CrewAI AMP 支持基于云和本地的部署选项,允许企业满足其特定的安全和合规要求。
### Q: 我可以免费试用 CrewAI AMP 吗?
A: 是的,您可以通过免费访问 [Crew Control Plane](https://app.crewai.com) 来探索 CrewAI AMP Suite 的一部分。
### Q: CrewAI 支持微调或训练自定义模型吗?
A: 是的,CrewAI 可以与自定义训练或微调的模型集成,允许您通过特定领域的知识和准确性来增强您的 agents。
### Q: CrewAI agents 可以与外部工具和 API 交互吗?
A: 当然可以!CrewAI agents 可以轻松地与外部工具、API 和数据库集成,使它们能够利用真实世界的数据和资源。
### Q: CrewAI 适合生产环境吗?
A: 是的,CrewAI 明确按照生产级标准设计,确保企业部署的可靠性、稳定性和可扩展性。
### Q: CrewAI 的可扩展性如何?
A: CrewAI 具有高度可扩展性,支持简单的自动化和涉及众多 agents 和复杂任务的大规模企业工作流同时进行。
### Q: CrewAI 是否提供调试和监控工具?
A: 是的,CrewAI AMP 包括高级调试、追踪和实时可观测性功能,简化了自动化的管理和故障排除。
### Q: CrewAI 支持哪些编程语言?
A: CrewAI 主要基于 Python,但可以通过其灵活的 API 集成功能轻松与以任何编程语言编写的服务和 API 集成。
### Q: CrewAI 是否为初学者提供教育资源?
A: 是的,CrewAI 通过 learn.crewai.com 提供大量适合初学者的教程、课程和文档,支持各种技能水平的开发者。
### Q: CrewAI 可以自动化人机交互工作流吗?
A: 是的,CrewAI 完全支持人机交互(human-in-the-loop)工作流,允许人类专家与 AI agents 之间进行无缝协作,以增强决策制定。标签:AI风险缓解, C2, CrewAI, DLL 劫持, DNS解析, LLM, PyRIT, Python, Unmanaged PE, 人工智能, 任务自动化, 企业级AI, 协作智能, 多智能体系统, 大语言模型, 开发框架, 开源项目, 无后门, 用户模式Hook绕过, 编排框架, 网络调试, 自动化, 逆向工具