Python 智能体实战从 0 搭建模块化 Agent 路由系统落地小龙虾门店运营助手给你一个可复现的最小版本技能拆分、动态工具路由、API 封装、排错与上线建议一次讲清如果你想做一个不只是会聊天而是会根据任务自动选工具的 AI Agent这篇可以直接开工。本文的目标很明确用 Python 搭一个模块化 skill-based agent让它支持动态工具路由把它落到一个实体行业场景小龙虾门店运营助手。最终产出不是 PPT而是一个最小可运行接口你发一句“给我一条今天午市外卖拉新的文案”系统会先判断该走哪个 skill再返回结果。先别急着造“全能钢铁侠”工程上更靠谱的做法往往是先把技能表写得像菜单一样清楚。工具资源导航如果你看完这波热点想顺手把方案跑起来或者把账号环境补齐这两个入口可以先收藏API调用主打各种主流模型接入、稳定转发和低门槛调用。GPT代购官方渠道GPT PLUS/pro充值秒到账可开发票文末资源导航属于工具信息整理请结合平台规则和自身需求判断。一、先看热点这波 Agent 新闻到底透露了什么事实描述2026-05-05MarkTechPost 发布教程主题是用 Python 构建模块化、基于技能的 LLM Agent 系统核心点是dynamic tool routing。2026-05-05TechCrunch 报道 CopilotKit 融资2700 万美元方向是帮助开发者部署app-native AI agents。2026-05-05TechCrunch 报道 SAP 计划收购德国 AI 初创公司 Prior Labs 并重投同时对客户 Agent 的可用范围采取更谨慎、有限开放的态度。2026-05-06Inworld AI 发布 Realtime TTS-2强调语音模型基于完整音频上下文而不只是文本转写。2026-05-06Scientific American 讨论“AI agents 能否替代人类员工”并提到已有创业公司拿这个问题做测试。2026-05-06世界经济论坛讨论了agentic AI可能如何改变“创始人”这个角色的工作方式。观点分析这些信息放在一起指向的不是“聊天机器人 2.0”而是三个更工程化的共识Agent 正从单体走向模块化能力要拆成 skill不然维护会越来越像面条代码。Agent 正从演示走向应用内集成CopilotKit 的融资说明大家要的不是一个漂浮的 AI 入口而是能嵌进业务流程的 agent。企业落地会更看重治理SAP 的谨慎态度说明真正上线时权限、白名单、审计日志比“模型多聪明”更先被问到。二、场景定义为什么我建议先做“小龙虾门店运营助手”CSDN 读者很多都在找“能不能拿来做副业项目”的切口。与其做一个泛泛的 AI 助手不如做一个垂直场景的小工具。这里我们定义一个最小场景目标用户餐饮门店老板或运营人员常见任务回答顾客常见问题营业时间、口味、配送范围生成促销文案午市拉新、社群通知、外卖活动给出简单运营建议备货、套餐、转化优化也就是说我们只做 3 个 skillfaqpromo_copysales_analysis这就是模块化的第一步先缩问题再做路由。三、技术栈与最小闭环为了可复现我建议先用下面这套最小组合Python 3.11FastAPI暴露接口requests调用兼容聊天补全风格的模型接口一个可用的大模型 API只负责“路由判断”安装命令bashpip install fastapi uvicorn pydantic requests环境变量bashexport BASE_URL‘你的模型接口基址’export API_KEY‘你的密钥’export MODEL‘你的模型名’四、步骤拆解从 skill 到动态路由第 1 步先写技能不要先写“大脑”很多人一上来就想让模型自动完成一切结果最后谁都能干一点谁都干不稳定。正确姿势是先定义技能边界。pythonimport osimport jsonimport requestsfrom fastapi import FastAPIfrom pydantic import BaseModeldef faq(q: str) - str:return ‘门店营业到凌晨 2 点支持微辣、中辣外卖可下单。’def promo_copy(q: str) - str:if ‘外卖’ in q:return ‘文案今天午市小龙虾双人餐限时加赠冰饮适合拼单外卖下单更省心。’return ‘文案今晚到店点小龙虾套餐可享限时加菜福利适合朋友聚餐。’def sales_analysis(q: str) - str:return ‘建议优先看午市套餐转化、外卖占比和复购表现。当前示例未直连 POS所以返回的是运营策略不直接生成真实报表。’SKILLS {‘faq’: {‘desc’: ‘回答营业时间、口味、配送、门店基础信息’,‘func’: faq,},‘promo_copy’: {‘desc’: ‘生成促销文案、社群通知、活动标题’,‘func’: promo_copy,},‘sales_analysis’: {‘desc’: ‘分析销量、套餐、备货和简单运营建议’,‘func’: sales_analysis,},}第 2 步让模型只做“选路”别让它包打天下这里的大模型只负责一件事在多个 skill 里选一个最合适的。pythondef fallback_route(user_text: str) - dict:if any(k in user_text for k in [‘营业’, ‘几点’, ‘口味’, ‘配送’]):return {‘skill’: ‘faq’, ‘reason’: ‘关键词命中 FAQ’}if any(k in user_text for k in [‘文案’, ‘活动’, ‘拉新’, ‘社群’, ‘外卖’]):return {‘skill’: ‘promo_copy’, ‘reason’: ‘关键词命中营销文案’}if any(k in user_text for k in [‘销量’, ‘备货’, ‘库存’, ‘套餐’, ‘转化’]):return {‘skill’: ‘sales_analysis’, ‘reason’: ‘关键词命中运营分析’}return {‘skill’: ‘faq’, ‘reason’: ‘兜底路由’}def route_by_llm(user_text: str) - dict:skill_text ‘\n’.join([f- {k}: {v[‘desc’]} for k, v in SKILLS.items()])prompt (‘你是一个工具路由器只能从候选技能中选择 1 个并严格返回 JSON。\n’f’候选技能\n{skill_text}\n’f’用户问题{user_text}\n’‘输出格式{“skill”:“技能名”,“reason”:“简短原因”}’)try: resp requests.post( os.environ[BASE_URL].rstrip(/) /chat/completions, headers{ Authorization: fBearer {os.environ[API_KEY]}, Content-Type: application/json, }, json{ model: os.environ[MODEL], messages: [{role: user, content: prompt}], temperature: 0, }, timeout30, ) content resp.json()[choices][0][message][content] data json.loads(content) if data[skill] in SKILLS: return data except Exception: pass return fallback_route(user_text)第 3 步封装成 API变成真正可调用的服务pythonapp FastAPI()class AskReq(BaseModel):question: strapp.post(‘/ask’)def ask(req: AskReq):route route_by_llm(req.question)result SKILLS[route[‘skill’]]‘func’return {‘route’: route,‘result’: result,}启动bashuvicorn app:app --reload --port 8000测试bashcurl -X POST ‘http://127.0.0.1:8000/ask’-H ‘Content-Type: application/json’-d ‘{“question”:“给我一条今天午市外卖拉新的文案”}’一个可能的返回结果{“route”: {“skill”: “promo_copy”,“reason”: “用户要促销文案”},“result”: “文案今天午市小龙虾双人餐限时加赠冰饮适合拼单外卖下单更省心。”}到这里你已经有了一个可复现的最小 Agent 闭环输入问题 → 路由 → 调技能 → 返回结果。五、调试排错最常见的坑基本都在这里1模型不返回 JSON解决方法路由提示词里明确“只能返回 JSON”temperature0加fallback_route()兜底2路由不稳定今天选文案明天选 FAQ原因通常不是模型太笨而是skill 描述写得太模糊。desc要避免重叠例如“处理用户问题”这种描述基本等于没写。3运营分析胡说八道如果没接真实 POS、CRM、库存系统就不要让它装作知道真实销量。上面的sales_analysis()故意只给策略性建议这是事实边界也是产品边界。4响应变慢路由本身就是一次模型调用。如果你的场景请求量大可以做两件事高频问题先走关键词路由只有复杂问题才调用模型路由六、上线建议别急着全自动先做“可控自动化”结合 2026-05-05 TechCrunch 关于 SAP 的报道我的建议很明确企业环境里Agent 首先要可治理其次才是可炫技。建议按这个顺序上线内部试运行先给店长和运营同学用白名单技能只开放 FAQ、文案、基础建议不要一开始就接支付、退款、真实库存改写保留人工确认活动文案、备货建议先让人点确认记录日志至少保留问题、路由结果、技能输出、耗时如果你后面要做语音入口2026-05-06 Inworld AI 发布 Realtime TTS-2 这条新闻也值得参考语音 Agent 的体验关键不只是“能说话”而是能持续理解上下文。所以别把语音版理解成“给文本套个喇叭”那样很容易做成会说话的复读机。七、成本与合规注意点成本用模型做“路由”而不是整段重写通常比全量生成更省 tokenskill 描述尽量短不要每次塞一大段背景材料高频 FAQ 尽量缓存合规不要把用户手机号、详细订单、支付信息原样塞进提示词对“备货建议”“员工排班”这类可能影响经营决策的内容加人工审核给用户明确提示这是 AI 辅助不是最终经营结论Scientific American 在2026-05-06讨论“AI agents 能否替代人类员工”这个问题很抓眼球但对开发者更有价值的角度是先替代重复流程再增强人工判断。否则你很容易得到一个看上去很聪明、出了事谁都不敢担责的系统。八、趋势判断开发者和副业实践者接下来该怎么做事实描述MarkTechPost 的教程说明模块化技能 动态路由已经是可操作的工程路径。CopilotKit 融资说明市场在押注“应用内 Agent”不是孤立聊天框。WEF 讨论 founder 被 agentic AI 改写说明 AI 正在改变工作分工而不只是增加一个工具栏按钮。观点分析如果你是开发者下一阶段更值得做的不是“再做一个通用助手”而是做垂直场景 agent餐饮、教育、招聘、客服、销售支持做技能层路由、记忆、评测、日志、权限做应用内集成嵌进 CRM、工单、内容后台而不是停留在 demo 页如果你想做副业项目我更建议从“可付费的小功能”切入例如门店 FAQ 活动文案助手社群运营回复助手简单数据分析 建议输出助手先让一个小 skill 稳定赚钱再考虑扩展成多 skill agent。别一开始就想做全行业超级智能体那通常是把复杂度和云账单一起点满。结尾这几条 2026 年 5 月初的 Agent 热点放在一起看其实结论很朴素Agent 的下一步不是更会聊天而是更会分工、更能接工具、更容易治理。今天这套 Python 最小实现已经足够你做出一个能演示、能测试、能继续扩展的原型。下一步你可以做三件事把 mock skill 换成真实业务数据源给路由结果加评测集持续优化命中率逐步从文本入口扩展到语音或应用内嵌。先把一个场景跑通比讨论“AI 会不会取代所有人”更有生产力。工程世界里能上线的系统永远比会上发言更诚实。