从0到1,实现了能自动处理任务的AI智能体

📅 发布时间:2026/7/10 19:34:10 👁️ 浏览次数:
从0到1,实现了能自动处理任务的AI智能体
一、先明确目标我们要做一个什么样的智能体在动手写第一行代码之前定义清晰的目标至关重要。我不想做一个“聊天机器人”而是希望它能主动完成任务。我设定的Demo目标是“帮我分析今日热点并总结成一份简报”。这个任务需要智能体感知理解我的指令是获取并总结热点。规划拆解步骤搜索热点 → 获取内容 → 分析总结 → 格式化输出。执行调用不同的工具搜索工具、爬虫工具、文本分析工具按步骤执行。反思检查结果是否完整是否需要调整。二、技术选型为什么是 LangChain DeepSeek市面上框架很多LangChain, LlamaIndex, Semantic Kernel等我优先选择了LangChain原因很简单生态成熟社区活跃文档和样例多遇到问题容易找到解决方案。工具链丰富内置和社区提供了大量现成的Tool搜索、计算、API调用等能快速搭建。抽象层次合理它提供了Agent、Tool、Memory等核心概念的清晰抽象既不会太底层也不会太黑盒。对于大模型LLM我选择了DeepSeek理由也很直接能力强且免费在代码和逻辑推理上表现不错完全满足Demo需求没有额度焦虑可以随便“造”。API友好接入简单响应速度快。三、实战拆解代码是如何一步步实现的这里我剥离了项目结构聚焦最核心的链路。完整项目代码已放在文末的GitHub仓库里。第一步搭建智能体的“大脑” (LLM Prompt)智能体的核心是一个能进行任务规划和链式思考的LLM。LangChain的create_react_agent帮我们封装了复杂的Prompt工程。from langchain import hub from langchain.agents import create_react_agent, AgentExecutor from langchain.tools import Tool from langchain_community.llms import DeepSeek # 1. 初始化大脑LLM llm DeepSeek(modeldeepseek-chat, temperature0.1) # temperature调低让输出更稳定 # 2. 拉取一个优化过的ReAct提示模板这是LangChain的神器之一 prompt hub.pull(hwchase17/react)第二步为智能体打造“工具箱” (Tools)智能体之所以能“执行”靠的就是Tools。我给它配备了三个基础工具# 工具1网络搜索模拟 def search_web(query: str) - str: 模拟搜索今日热点。实际可接入SerperAPI或Google Search API。 print(f[智能体正在搜索]: {query}) # 这里是模拟数据真实情况调用API mock_hot_news [ AI编程助手CodeGeeX发布4.0版本宣称效率提升50%, 深度学习框架PyTorch宣布官方支持Apple Silicon GPU加速, 2024年DevOps状态报告AI在自动化测试中渗透率超30% ] return \n.join(mock_hot_news) # 工具2内容提取模拟 def fetch_content(url: str) - str: 模拟根据链接获取详细内容。 print(f[智能体正在抓取内容]: {url}) return f这是关于{url}的详细报道内容摘要... # 工具3文本总结 def summarize_text(text: str) - str: 调用LLM对长文本进行总结。 print(f[智能体正在总结内容]...) # 这里实际上可以再调一次LLM为简化直接返回模拟总结 return f核心要点{text[:50]}... # 将函数包装成LangChain Tool tools [ Tool(nameSearch, funcsearch_web, description当你需要获取最新热点或搜索信息时使用此工具。), Tool(nameFetchContent, funcfetch_content, description当你需要获取某个链接的具体内容时使用此工具。), Tool(nameSummarizer, funcsummarize_text, description当你需要总结长文本内容时使用此工具。), ]第三步组装并运行智能体把大脑、工具和提示词组装起来智能体就诞生了。# 3. 创建ReAct智能体 agent create_react_agent(llm, tools, prompt) # 4. 创建执行器它会处理智能体的思考循环 agent_executor AgentExecutor(agentagent, toolstools, verboseTrue, handle_parsing_errorsTrue) # 5. 发布任务 result agent_executor.invoke({ input: 请帮我分析今天的科技热点并整理成一份简短的要点简报。 }) print(\n *50) print(【智能体生成的最终简报】) print(result[output]) print(*50)四、运行效果与核心洞察当你运行上面的代码记得安装依赖并填入自己的API Key会在控制台看到类似下面的思考过程 进入新的AgentExecutor链... 思考用户需要一份今日科技热点简报。我需要先搜索热点然后获取详细信息最后总结。 行动Search 行动输入今日科技热点 [智能体正在搜索]: 今日科技热点 观察AI编程助手CodeGeeX发布4.0版本... (省略) 思考我得到了几条热点标题需要获取其中一两条的详细内容来总结。 行动FetchContent 行动输入AI编程助手CodeGeeX发布4.0版本 [智能体正在抓取内容]: AI编程助手CodeGeeX发布4.0版本 观察这是关于AI编程助手...的详细报道内容摘要... 思考现在我有了一些细节可以开始总结了。 行动Summarizer 行动输入[将搜索和抓取的内容组合] [智能体正在总结内容]... 观察核心要点AI编程助手效率提升... 思考我已经完成了热点搜索、内容获取和总结可以给出最终答案了。 最终答案根据今日热点为您整理简报如下1. AI编程助手CodeGeeX 4.0发布... (省略)通过这个Demo我清晰地验证了几个关键点智能体的本质是“规划执行”循环它通过LLM进行动态的任务拆解规划并选择合适的工具执行。工具Tools是能力边界智能体能做什么完全取决于你给它提供了什么工具。赋予它联网搜索、执行代码、操作系统的能力它就能变得无比强大。Prompt是灵魂hwchase17/react这个Prompt模板已经嵌入了“Thought/Action/Observation”的格式引导LLM进行正确推理。微调Prompt能极大改善表现。五、踩坑与优化建议无限循环坑智能体有时会陷入“思考-行动”死循环。务必在AgentExecutor中设置max_iterations参数比如10-15次强制退出。工具描述坑Tool的description至关重要LLM完全依赖描述来决定是否调用该工具。描述要清晰、具体说明适用场景。错误处理坑工具执行可能失败如网络超时需要在工具函数内部做好异常处理并返回清晰的错误信息给LLM让它能调整策略。成本与延迟坑每次思考和行动都可能调用LLM复杂任务成本不低。Demo阶段可以使用DeepSeek这类性价比高的模型上线前需做好预算和延迟评估。最后聊聊“从0到1”之后的事这个Demo只是一个起点。当你掌握了这个最小闭环就可以尝试接入真实工具替换掉模拟工具接入SerperAPI搜索、Requests爬虫、ShellTool执行命令。尝试多智能体协作让一个“主管”智能体协调多个“工人”智能体分工合作。加入记忆Memory让智能体记住之前的对话和结果实现更连贯的长期任务。技术本身不是目的解决问题才是。动手搭建一次你对所有那些“神奇”的Agent产品的理解会完全不一样。学习资源推荐如果你想更深入地学习大模型以下是一些非常有价值的学习资源这些资源将帮助你从不同角度学习大模型提升你的实践能力。一、全套AGI大模型学习路线AI大模型时代的学习之旅从基础到前沿掌握人工智能的核心技能​因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取二、640套AI大模型报告合集这套包含640份报告的合集涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师还是对AI大模型感兴趣的爱好者这套报告合集都将为您提供宝贵的信息和启示​因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取三、AI大模型经典PDF籍随着人工智能技术的飞速发展AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型如GPT-3、BERT、XLNet等以其强大的语言理解和生成能力正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。因篇幅有限仅展示部分资料需要点击文章最下方名片即可前往获取四、AI大模型商业化落地方案作为普通人入局大模型时代需要持续学习和实践不断提高自己的技能和认知水平同时也需要有责任感和伦理意识为人工智能的健康发展贡献力量。