尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Gemini+Deepseek=?利用python脚本在AutoGen实现多智能体协作

Gemini+Deepseek=?利用python脚本在AutoGen实现多智能体协作 先前的文章《AutoGen智能体配置教程》给大家讲解了如何安装AutoGen并实现简易的API调用并以Deepseek为例给大家进行了演示。在那篇文章中我也提到了AutoGen是个很好的多智能体协作框架那么这个“多”具体应该怎样实现呢常用agent的各位应该知道Gemini可以很好的理解自然语言并且拥有很强的上下文记忆能力但其定位本质上仍是美国大豆包在问题的深入理解和代码撰写方面有一些缺陷。可是在API调用方面它也有很重要的优势——只要拥有谷歌账户就可以免费调用并且实时刷新。而Deepseek确实是国产LLM的扛把子特别是API模式亲测能力非常出众并且因为其是国产大模型API购买非常方便。那么我们可不可以将二者结合起来用Gemini拆解细化我们的问题而用Deepseek来遵从上游给出的方案创作代码这里就不做详细解释了直接给各位上代码AutoGen部署过程详见我的《AutoGen智能体配置教程》。开始前请一定记得先在环境中配置好自己的API key建议用set的方式set DEEPSEEK_API_KEYsk-xxxx set GEMINI_API_KEYAIzaxxxximport asyncio import os from autogen_agentchat.agents import AssistantAgent from autogen_agentchat.teams import RoundRobinGroupChat from autogen_agentchat.conditions import MaxMessageTermination from autogen_core.models import ModelInfo from autogen_ext.models.openai import OpenAIChatCompletionClient # 大家可以看到groupchat这个模块是合作的关键而maxmessage这个模块是任务终止的关键 async def main() - None: # 1. 初始化两个模型客户端 # Gemini负责需求解析、方案设计语言任务 gemini_client OpenAIChatCompletionClient( modelgemini-3.6-flash, # 建议确认你所使用的具体模型名称 base_urlhttps://generativelanguage.googleapis.com/v1beta/openai/, api_keyos.getenv(GEMINI_API_KEY), model_infoModelInfo( visionTrue, function_callingTrue, json_outputTrue, familyunknown, structured_outputTrue ) ) # DeepSeek负责代码编写 deepseek_client OpenAIChatCompletionClient( modeldeepseek-flash, # DeepSeek 最新模型表示方法 base_urlhttps://api.deepseek.com, api_keyos.getenv(DEEPSEEK_API_KEY), model_infoModelInfo( visionFalse, function_callingTrue, json_outputTrue, familyunknown, structured_outputTrue ) ) # 2. 创建两个分工明确的 Agent analyst_agent AssistantAgent( nameanalyst_agent, model_clientgemini_client, system_message你是专业的需求分析师与技术方案设计师。 你的任务将用户口语化、模糊的开发需求转化为清晰、可直接执行的技术实现方案。 输出严格包含以下模块 1. 核心功能与目标 2. 技术栈与运行环境 3. 详细实现逻辑与步骤 4. 代码输出规范注释要求、是否可直接运行等 规则 - 不要向用户提问不要额外对话直接输出方案 - 方案要足够具体确保下游工程师可以直接照着写代码 - 输出完毕即结束不要说结束语 - 严禁输出具体python代码 ) coder_agent AssistantAgent( namecoder_agent, model_clientdeepseek_client, system_message你是专业的Python代码开发工程师。 你的任务严格按照上游需求分析师给出的技术方案编写完整、可运行、规范的代码。 要求 - 代码必须可直接运行包含必要的异常处理 - 添加清晰的功能注释 - 输出完代码后附带一行简短的运行说明 - 不要多余闲聊不要和上游辩论严格按方案实现 ) # 3. 组建自动流水线工作组 # 限制 2 条 Agent 发言后自动结束分析师 1 次 工程师 1 次这里为了保险可以设为4 team RoundRobinGroupChat( participants[analyst_agent, coder_agent], termination_conditionMaxMessageTermination(max_messages4) ) # 4. 运行任务与输出结果 user_task 汉诺塔是经典的递归问题请自行调查规则并以极简的递归逻辑写出能完成n层汉诺塔任务的python代码 result await team.run(taskuser_task) print( * 50) print(流水线协作结果) for msg in result.messages: print(f\n【{msg.source}】:\n{msg.content}) print(- * 30) # 关闭客户端连接 await gemini_client.close() await deepseek_client.close() if __name__ __main__: asyncio.run(main())大家可以用自己的任务自行检测一下~这种智能体协作方式最大的优势是速度快并且对问题的理解很到位同样的问题在cline插件中可能需要思考很久。如果大家觉得我的教程有所帮助可以点赞收藏支持一下关注我了解更多智能体、生物信息内容~
返回列表