尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

AI Agent白手起家73: 初识 CrewAI——新一代多智能体开发框架

AI Agent白手起家73: 初识 CrewAI——新一代多智能体开发框架 纲要CrewAI简介与定位核心概念Agent最小的智能体单元Task智能体需完成的任务Crew由多个智能体组成的团队Flow编排多个团队的流水线安装与环境配置使用pip或官方脚手架crewai create crew项目结构速览第一个示例构建一个极简翻译团队定义智能体分配任务启动团队工作查看结果完整可运行代码总结与相关度说明CrewAI 简介与定位CrewAI是一个专注于多智能体协作的开源框架目前在 GitHub 上已获得数万星标。相较于LangChain/LangGraphCrewAI抽象层级更高大量采用配置化和约定式设计上手门槛更低。它的设计哲学是“像管理团队一样管理 AI”你定义成员Agent、分配工作Task、组成团队Crew团队自动协作完成任务。复杂场景下还可以将多个团队编排成流水线Flow并支持分支、循环和条件路由。对于快速构建原型、自动化业务流程以及希望减少底层编码的开发者来说CrewAI是一个极具吸引力的选择。核心概念在CrewAI中有四个关键概念理解它们就掌握了框架的骨架Agent智能体是执行任务的最小单元。每个Agent可以绑定特定的大语言模型、工具和角色提示词。Task任务描述某个Agent需要完成的具体工作。任务支持结构化输出、异步执行和上下文传递。Crew团队由多个Agent和Task组成的一个完整工作单元。Crew负责调度成员、管理记忆、协调工具调用。Flow流水线用于将多个Crew串联或并联形成更复杂的业务流。Flow带有状态管理和条件分支类似于LangGraph的图结构。通过不通过用户输入团队A: 信息检索团队B: 内容生成质量检查输出结果在实际使用中你可以先用一个Crew完成简单任务当业务流程变长或需要精确控制时再引入Flow来编排多个Crew。安装与环境配置CrewAI要求 Python 版本在 3.10 到 3.13 之间。最简单的方式是通过pip安装pipinstallcrewai官方也提供了命令行脚手架可快速生成标准项目结构pipinstallcrewai-cli crewai create crew my_project生成的项目目录如下my_project/ ├── src/ │ ├── config/ │ │ ├── agents.yaml │ │ └── tasks.yaml │ ├── crew.py │ ├── main.py │ └── tools/ ├── knowledge/ ├── .env └── pyproject.tomlagents.yaml以声明式方式定义智能体的角色、目标和背景。tasks.yaml定义每个智能体需要执行的任务和期望输出。crew.py将智能体和任务组合成Crew并配置执行流程。main.py程序入口启动团队工作。脚手架方式上手快适合规范化项目如果需要轻量级尝试直接写脚本同样可行下面就用脚本方式构建第一个示例。第一个示例构建一个极简翻译团队我们来创建一个最微型的多智能体系统一个“翻译团队”。它由两名成员组成translator负责将英文翻译成中文。proofreader负责校对翻译质量。完整可运行代码将以下代码保存为simple_crew.py并确保已配置大模型 API Key。# simple_crew.pyimportosfromdotenvimportload_dotenvfromcrewaiimportAgent,Task,Crew,Process# 加载环境变量.env 文件中需有 OPENAI_API_KEY 或兼容的 API Keyload_dotenv()# 1. 定义智能体translatorAgent(role英文翻译专家,goal将用户提供的英文文本准确翻译成中文,backstory你是一名资深翻译精通中英双语译文流畅自然。,verboseTrue,allow_delegationFalse,# 默认使用 OpenAI GPT-3.5也可指定其他模型# llmChatOpenAI(modelgpt-3.5-turbo) # 可选不指定则用环境变量中的默认模型)proofreaderAgent(role中文校对员,goal检查中文翻译是否准确、通顺并修正可能存在的错误,backstory你是一名资深中文编辑对语言细节极为敏感追求完美。,verboseTrue,allow_delegationFalse,)# 2. 定义任务translate_taskTask(description(请将以下英文段落翻译成中文\nArtificial intelligence is transforming every aspect of our lives. From healthcare to transportation, AI-powered systems are making decisions that affect millions of people.),agenttranslator,expected_output一段流畅的中文翻译)proofread_taskTask(description校对上一任务的中文翻译确保没有漏译、错译和语病。,agentproofreader,expected_output校对后的最终中文翻译并附上简短的校对说明,context[translate_task],# 接收翻译任务的输出作为上下文)# 3. 组建团队crewCrew(agents[translator,proofreader],tasks[translate_task,proofread_task],processProcess.sequential,# 顺序执行verboseTrue,)# 4. 启动团队工作resultcrew.kickoff()print(\n 最终结果 \n)print(result)运行前确保通过环境变量或.env文件配置了OPENAI_API_KEY如果使用其他模型提供商请相应调整Agent中的llm参数。执行命令python simple_crew.py你将看到控制台输出两个智能体依次工作的日志最终得到经过校对的中文翻译。这个示例展示了CrewAI的核心用法用自然语言定义角色和任务框架自动完成调度。总结CrewAI以其高度封装的 API 和配置化设计大幅降低了多智能体系统的开发复杂度。如果你需要快速验证想法、构建自动化流程或者团队中编程经验较少的成员也参与 AI 应用开发CrewAI是一个值得投入学习的框架。而当你需要深度定制底层行为时LangGraph等更细粒度的框架则是更好的补充。本文覆盖了 CrewAI 的定位、核心概念、安装方法、脚手架使用和第一个多智能体示例并提供了代码示例。
返回列表