版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
CrewAI最新版(v0.80+)及主流LLM调用实践第一部分:核心认知(纠正“单Agent”思维)很多人把CrewAI当高级LangChain用,这是最大的误区。Agent(员工):拥有特定的
role、goal
和
backstory(背景故事)。背景故事越具体,角色扮演越稳定。Task(任务):不仅仅是Prompt,必须指定
expected_output(预期输出格式),这直接影响Agent的推理方向。Tool(工具):Agent的手脚(搜索、计算、代码执行)。Crew(团队):管理执行流程(顺序
sequential、层级
hierarchical、或自定义协商)。第二部分:环境安装与LLM配置(关键一步)CrewAI对LLM的
temperature
极其敏感,且默认使用OpenAI。如果你用国产模型或本地模型,务必显式配置。pipinstallcrewaicrewai-tools#如果需要本地Ollama或Azure,无需额外装包,通过环境变量控制配置LLM(以Qwen/DeepSeek或本地Ollama为例):importosfromcrewaiimportAgent,Task,Crewfromlangchain_openaiimportChatOpenAI#注意:CrewAI底层依赖LangChain,统一通过ChatOpenAI类传入BaseURLllm=ChatOpenAI(base_url="http://localhost:11434/v1",#Ollama地址,或中转代理地址model="qwen2.5:14b",#模型名api_key="sk-xxx",#本地可以不填或填任意temperature=0.3,#多智能体建议0.2~0.4,太高会发散)第三部分:实操演练——构建一个“市场调研与文案撰写”双人组这是一个经典的串行工作流:研究员先找资料,文案策划再根据资料写稿。1.定义工具(赋予上网能力)fromcrewai_toolsimportSerperDevTool,WebsiteSearchTool#SerperDevTool需要GoogleSearchAPI(付费,但稳定)search_tool=SerperDevTool()#或者使用免费但略慢的DuckDuckGo(需安装duckduckgo-search)#fromcrewai_toolsimportDuckDuckGoSearchTool#search_tool=DuckDuckGoSearchTool()2.定义Agents(重点关注
backstory
的细节)#研究员——极端严谨researcher=Agent(role="资深行业研究员",goal="挖掘关于{topic}的最新数据、竞品动态和用户痛点,并提炼出3个核心洞察",backstory="""你曾在麦肯锡担任数据研究员,擅长从繁杂的新闻和财报中抽丝剥茧。你极度讨厌虚假数据,如果找不到具体数字,你会明确告知"暂无可靠数据",绝不编造。""",tools=[search_tool],llm=llm,verbose=True,#开启后能看到它的思考链,极其利于调试allow_delegation=False#仅有2个Agent时不建议开启,容易死循环)#文案策划——创意转化writer=Agent(role="首席营销文案官",goal="将枯燥的研究数据转化为能激发用户购买欲的TikTok/小红书风格文案",backstory="""你是前顶级4A广告公司创意总监,擅长情绪价值挖掘。你能把"电池续航长"写成"告别电量焦虑,出门只带一根口红充电宝"。""",llm=llm,verbose=True,allow_delegation=False)3.定义Tasks(expected_output
必须带有格式约束)task_research=Task(description="针对{topic}进行深度调查。重点分析2025年的市场趋势。",expected_output="""一份Markdown格式的bulletpoint报告,必须包含:1.市场规模与增长率(引用来源)2.Top3竞争对手的致命弱点3.目标用户最关心的3个痛点""",agent=researcher,#指定执行人,也可在Crew中动态分配)task_write=Task(description="根据研究员提供的要点,创作5条短视频口播脚本,每条不超过60字。",expected_output="5条直接的脚本文本,每条标注适用场景(通勤/睡前/早晨)",agent=writer,context=[task_research]#关键!告知文案必须等待研究员完成才能开始)4.组建Crew并执行(串行流程)crew=Crew(agents=[researcher,writer],tasks=[task_research,task_write],process=Process.sequential,#按Task列表顺序执行verbose=2,#打印详细日志级别(1=简洁,2=LLM全输出))#启动Kickoffinputs={"topic":"便携式储能电源(户外电源)"}result=crew.kickoff(inputs=inputs)print("\n=======最终交付成果=======")print(result)第四部分:进阶玩法——层级流程(Hierarchical)与协同如果觉得顺序执行太死板,使用
HierarchicalProcess(需要指定
manager_llm):fromcrewaiimportProcessmanager_llm=ChatOpenAI(model="gpt-4-turbo",temperature=0.2)crew_hierarchical=Crew(agents=[researcher,writer],tasks=[task_research,task_write],process=Process.hierarchical,manager_llm=manager_llm,#必须指定,经理负责拆解任务和仲裁manager_agent=Agent(role="项目经理",goal="协调团队按时交付高质量成果"))实用经验:Hierarchical适合复杂项目(如写标书、做SWOT分析),但Token消耗会翻倍(经理要审查每一步)。第五部分:避坑指南与调优心得(纯血泪教训)中文输出乱码或英文夹杂原因:backstory
和
expected_output
中必须用中文写“请严格使用简体中文回答”。解法:在
Agent
的
llm
参数里加
temperature=0.1,并在
task
描述末尾加上
IMPORTANT:OutputinChinese.Agent陷入死循环(反复调用工具)解法:设置
max_iter=5(Agent最多思考次数),max_execution_time=60(超时终止)。Agent(...,max_iter=3,max_execution_time=120)context=[task]
的陷阱误区:以为
context
会自动合并所有输出。真相:CrewAI只把
context
里Task的
最终字符串输出
塞进下一个Prompt。如果研究员输出2000字,文案的上下文窗口可能会爆。建议:在研究员Task的
expected_output
中强制限制“不超过500字”。工具调用失败(ToolUsageError)绝大多数是因为LLM生成的工具参数(如搜索词)包含特殊符号。最佳实践:在
backstory
里写"调用工具时,搜索关键词必须用英文或拼音,不要带问号"。如何保存中间结果?
使用
Crew
的
callback
或直接利用
task.output
属性:crew.kickoff()#执行完后单独保存fortaskincrew.tasks:print(f"Task{task.description[:20]}...Output:{task.output}")第六部分:CrewAIvsAutoGenvsLangGraph选型建议框架适用场景对QLoRA微调后的模型友好度CrewAI标准化流水线(日报生成、客服质检、报告编写)⭐⭐⭐⭐⭐
最友好,只需替换
ChatOpenAI
接口,对FunctionCalling依赖弱。AutoGen多轮深度对话、代码执行、人类介入(Human-in-loop)⭐⭐极度依赖GPT-4级别的工具调用能力,开源模型易翻车。LangGraph复杂状态机、循环流、需要精细控制分支逻辑⭐⭐⭐灵活性最高,但代码量最大,适合做RAG路由。总结实操口诀:背景故事写人
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国母婴营养品消费升级趋势与渠道创新策略报告
- 2026汽车运输行业市场深度研究及未来趋势与投资潜力评估报告
- 2026生物医学行业市场分析及发展趋势研究投资机会探讨报告
- 2026能源设备行业市场现状竞争格局分析及投资发展策略研究报告
- 2026中国游戏设备制造行业市场发展现状与投资评估规划分析研究报告
- 2026中国叶黄素酯进出口贸易现状及国际市场拓展策略报告
- 2026 年军训军训精神融入校园日常学风建设
- 2026及未来5年中国化学生物传感器数据监测研究报告
- 2026事业单位工勤技能-广东-广东家禽饲养员二级(技师)历年参考题库含答案详解3套试卷
- 2026事业单位工勤技能-山西-山西计量检定工一级(高级技师)历年参考题库含答案详解3套试卷
- 2026年甘肃金麟锂电新材料有限公司招聘78人考试备考试题及答案详解
- 2026年乡镇污水管网检查井新建修缮方案
- 2026年长沙航空职业技术学院单招职业技能考试题库及答案详解(夺冠)
- 2026年行政能力测试真题(附答案)
- 桥面沥青混凝土施工方案
- 2026机场周边区域噪声治理技术路线与经济性比较
- 交警执法规范化培训课件
- 13.3.1 等腰三角形的性质 课件(26张)初中数学人教版(2024)八年级上册
- 《替换用机动车污染控制装置技术规范》培训
- (必会)江苏安全员C2全真模拟题库300题(附答案)
- 2025年浙江初中社会试卷及答案
评论
0/150
提交评论