资讯详情

小白程序员必看:用Python手写最小Agent,3分钟秒懂大模型核心原理(收藏版)

📅 2026/9/25 19:22:34 | 华诺云谱 👁 阅读
小白程序员必看:用Python手写最小Agent,3分钟秒懂大模型核心原理(收藏版)
本文从零开始手写Python Agent拆解LLM、工具、循环三大核心机制用最小代码示例帮助小白快速理解Agent本质。通过思考-行动-观察循环阐述ReAct模式原理并对比LangChain等框架的优劣。文章强调掌握Agent底层逻辑比死记框架API更重要适合初学者快速入门大模型开发。很多人第一次接触 Agent是从 LangChain、CrewAI、AutoGen 开始。框架文档里 Chain、Tool、Memory、Planner 一堆抽象很容易让人觉得Agent 很复杂必须先学框架。其实把框架剥开底层逻辑就三件事LLM 负责思考工具负责行动循环负责持续推进。即Agent LLM Tools Loop。理解这个公式比背任何框架 API 都重要。框架会变机制不会。下面用最小 Python Agent 把循环跑起来。Agent 到底是什么普通 LLM 调用是一次性的用户提问模型回答结束。Agent 多了”行动循环”LLM 读取用户问题和当前状态LLM 判断是否需要工具如果需要程序执行工具并把结果返回给 LLMLLM 基于新结果继续判断直到模型认为任务完成输出最终答案。这个模式常称 ReActReasoning Acting。先推理再行动再观察结果继续推理。图1Agent 循环流程图——用户输入进入 LLMLLM 要么直接回答要么调用工具工具结果回传 LLM 继续思考直到输出最终答案什么时候需要 Agent 任务需要”多步判断 外部动作”时如查资料、算数、调接口、读文件。只做改写、摘要、分类普通 LLM 调用就够。用 Python 写一个最小 Agent示例用 Anthropic Claude API 的tool_use。OpenAI function calling 同一套思想定义工具 → 模型选工具 → 程序执行 → 结果回传。先安装依赖通过环境变量设置 Key不要写进代码pip install anthropic export ANTHROPIC_API_KEY你的_API_Key2.1 定义工具工具不是函数本身而是给模型看的能力说明书工具叫什么、能做什么、需要哪些参数。import re import anthropic client anthropic.Anthropic() tools [{ name: calculator, description: 计算简单数学表达式只支持数字、加减乘除和括号。, input_schema: { type: object, properties: { expression: { type: string, description: 数学表达式例如 123 * 456 789 } }, required: [expression] } }]工具描述越清楚模型越容易选对。这里只放一个计算器方便看懂完整链路。2.2 执行工具模型不会真的执行代码。它只提出”我要调 calculator参数是 x”。真正执行的是你的 Python 程序。def run_tool(name: str, args: dict) - str: if name ! calculator: return未知工具 expr args[expression] ifnot re.fullmatch(r[0-9/-*/(). ], expr): return表达式包含不允许的字符 try: return str(eval(expr, {__builtins__: {}}, {})) except Exception as e: returnf计算失败{e}这里用白名单限制字符。生产环境更建议用专门数学解析库别让模型生成内容直接进入高权限执行环境。2.3 写 Agent 循环核心就是一个for循环请求模型 → 检查工具调用 → 执行工具 → 结果塞回历史 → 再请求模型。def agent(user_input: str, max_steps: int 5) - str: messages [{role: user, content: user_input}] for _ in range(max_steps): response client.messages.create( modelclaude-opus-4-8, max_tokens1024, toolstools, messagesmessages, ) messages.append({role: assistant, content: response.content}) if response.stop_reason ! tool_use: return.join( block.text for block in response.content if block.type text ) tool_results [] for block in response.content: if block.type tool_use: result run_tool(block.name, block.input) tool_results.append({ type: tool_result, tool_use_id: block.id, content: result, }) messages.append({role: user, content: tool_results}) return达到最大循环次数Agent 停止。 print(agent(123 乘以 456 再加上 789 等于多少))典型运行用户提问 → LLM 判断需要计算器 → 生成工具调用calculator({expression:123*456789})→ Python 执行得56877→ 结果回传 LLM → LLM 输出自然语言答案。图2Agent 运行过程——LLM 思考需要计算器→ 调用 calculator → 工具返回 56787 → LLM 组织最终回答注意图中示例数值用于展示流程如果你换表达式结果以程序实际计算为准。什么时候用这个最小版 学原理、验证工具调用、做内部小工具。还不适合直接上生产——缺权限控制、日志、重试、上下文管理和人工确认。拆开看Agent 的 4 个关键机制机制一工具定义工具定义就是 LLM 的“工具菜单”。模型根据name、description和参数 schema 判断能不能用、该不该用、怎么传参。坑点 工具描述太泛会导致误选。例如“处理数据”不如“计算数学表达式并返回结果”。工具越多描述越要互斥。什么时候用 只要模型需要访问外部世界——数据库、文件、接口、搜索、计算——就要定义工具。机制二模型决策Agent 不是你硬编码“先调 A再调 B”。LLM 会根据问题和工具列表自己决定下一步。这是 Agent 相比普通脚本最大的区别。什么时候用 路径不固定时用 Agent路径固定时用普通代码编排更稳定、更便宜。机制三工具执行LLM 只负责“提出动作”程序负责“执行动作”。这个边界很重要工具权限、参数校验、失败处理都应该在你控制的代码里完成。什么时候用 永远如此。不要让模型直接执行任意 shell、SQL 或高权限 API。机制四循环终止stop_reason tool_use表示模型还想行动否则说明它准备回答。除此之外还要加max_steps防止无限循环。什么时候用 所有 Agent 都必须有循环上限。没有上限成本和风险都会失控。从最小 Agent 到实用 Agent最小版本能说明原理但实用 Agent 至少要补三层能力。图3从最简 Agent 到实用 Agent 的演进——补循环上限、补错误回传、补上下文管理第一循环上限。用max_steps控制最多执行几轮避免模型在“搜索—总结—再搜索”里打转。第二错误回传。工具失败时不要吞错误要把错误作为tool_result返回给模型。模型看见“参数不合法”或“接口超时”才有机会换策略。第三上下文管理。每轮工具调用都会让消息历史变长。短任务可以直接保留全部历史长任务要做截断、摘要或外部记忆否则 token 会爆。什么时候升级 当 Agent 需要跑很多步、接多个工具、给多人使用或者会触碰文件/数据库/生产系统时就不能停留在教学版。要不要用框架方案适合场景优点坑点原生 API 循环学原理、简单工具透明、好调试基建要自己补LangChain快速原型、RAG生态大抽象多、版本变化快CrewAI多角色协作任务组织清晰简单任务容易过度设计AutoGen多 Agent 对话适合研究协作模式调试链路长建议路线先写原生 Agent搞懂 LLM Tool Loop再学框架。 否则框架出错时你分不清是模型没选对工具、schema 写错、工具执行失败还是框架封装层的问题。继续练习如果你想继续深入做三个小练习加一个read_file工具让 Agent 能读本地文件加一个search工具让 Agent 能查外部资料把messages保存到文件里实现最简单的记忆。做完这三个练习你就真正理解了 Agent 的基本机制模型负责决策工具负责行动循环负责推进边界负责安全。最后2026 年一晃已经过半AI 大模型的热潮不仅没有降温反而持续升温金融行业用大模型做风控、医疗依靠 AI 解析影像电商、制造、教育各行各业都在把 AI 融入日常业务。曾经热闹的 “百模大战”早就告别单纯比拼模型参数正式进入落地应用时代。现在企业疯狂紧缺一类人才懂业务、懂 AI、能做出可上线项目的大模型开发工程师岗位缺口大薪资待遇十分可观。风口再好不如手握高薪 offer 实在。行情火热普通人、程序员该怎样从零入门大模型抓住这波机会今天整理好【2026 最新版】AI 大模型全套免费学习资源覆盖零基础入门、项目实战、理论知识、大厂面试从基础一路进阶。所有资料分类归档没有多余杂料无套路免费分享给想要入局 AI 赛道的程序员与零基础小白扫码免费领取全部内容1、大模型系统化完整学习路线2、大模型经典书籍文档3、AI 大模型最新行业研究报告4、企业级实战项目 完整配套源码5、大厂大模型面试真题汇总6、这些资料真的有用吗这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑