裸写 Function Calling 循环:Agent 的原子操作
2026/8/23大约 2 分钟
AICon 2026 学习系列 · 阶段 1 · 模型编程主干 · 第 8/43 篇 · 🚧 占位待学
上一篇:《结构化输出:让模型稳定吐 JSON》
下一篇:《多轮与记忆:无状态模型的「记得」》
学习大纲:《AICon 2026 学习总纲》
状态:待学习。 本文为占位文档:知识点清单、实验与验收标准已就绪,正文待按「先学习、先实验、再撰写」补全。
对应总纲单元:阶段 1 · 单元 1.3
一、本文要解决的问题
模型怎么「调用」你的函数?这一步是 Agent 的原子操作——不用任何框架,裸 HTTP 手写一遍 50 行的循环,Agent 就从神秘词汇降级为 while 循环。
二、知识点清单
- 工具定义三要素:name / description / parameters(JSON Schema)
- 消息流:模型返回 tool_call → 程序执行 → tool result 回填 → 模型继续
- 模型侧「决定调用」与程序侧「执行」的分工(模型从不执行任何东西)
- 并行工具调用与多轮工具链;工具定义占上下文的 token 成本
三、动手实验(学习时必须真跑)
- 不用框架,裸 HTTP 实现「查天气 + 计算」两工具的调用循环(约 50 行)
- 加第三个工具,故意给模糊指令,观察模型怎么选、选错怎么办
四、验收标准(全部通过才进入下一篇)
五、写作提示(补正文时遵守)
- 开篇问题驱动;结构走「是什么 → 为什么 → 怎么做 → 背景知识」
- 所有代码、命令、输出必须先在本机跑通再写入,不得杜撰
- 版本口径以总纲环境清单为准(Python 3.12 / Ollama / vLLM 与 SGLang 最新版 / Spring AI 1.x)
- 涉及版本敏感结论时标注出处与时间
本篇完成后,把文首导航块的「🚧 占位待学」去掉,并在总纲处打卡。