04|pi-agent-core:为什么 tool calling 不等于 Agent

这篇写什么

只讲一个关键点:为什么“模型会吐 tool call”不等于“系统是 agent”,以及 pi-agent-core 这一层到底补上了什么。

先说结论

pi-agent-core 的本质不是“再包一层模型调用”,而是:把一次模型调用变成一个可以持续推进任务的运行时闭环。

  • pi-ai 解决:怎么把不同模型统一接起来
  • pi-agent-core 解决:怎么让模型不只是回答,而是真正持续工作

为什么第一层还不够

如果系统只有模型抽象层,能力更接近:

  • 把上下文发给模型
  • 接收模型返回
  • 把流式输出展示出来

即便模型支持 tool calling,这时也还没有“agent 感”。

因为“模型会吐出 tool call”不等于“系统能把任务做完”。

用户真正感知到的 agent 能力通常是:

  • 它会自己去查信息
  • 它会自己调用工具
  • 它会根据结果继续下一步
  • 它不是一轮问答,而是围绕任务持续推进

这些体验来自 runtime 闭环,而不是来自单次模型调用。

这一层到底解决什么问题

核心问题只有一个:

把模型、工具、上下文和外部反馈组织成一个持续运行的任务循环。

最短链路是:

用户提任务
-> 模型分析任务
-> 模型决定调用工具
-> 系统执行工具
-> 把工具结果回灌给模型
-> 模型继续分析和决策
-> 重复直到完成

只要这条链成立,系统才算 agent。

为什么叫 runtime

因为它更像一个持续运行的小系统(状态机),需要长期维护动态过程:

  • 接收用户输入
  • 发起模型调用
  • 监听模型输出事件
  • 识别工具调用
  • 触发工具执行
  • 接收工具结果
  • 更新上下文状态
  • 再次调用模型
  • 判断是否结束

agent 的核心不是“会说”,而是“会闭环”

闭环意味着:

  • 模型输出不是终点
  • 工具结果也不是终点
  • 每一轮输出都可能成为下一轮输入
  • 系统一直运行,直到达到可停止状态

pi-aipi-agent-core 的边界

pi-ai 负责

  • 统一模型调用
  • 统一上下文表示
  • 统一工具 schema 输入
  • 统一流式事件输出
  • 统一最终 assistant 消息
  • 统一 usage / cost / stop reason

pi-agent-core 负责

  • 决定什么时候调用模型
  • 决定什么时候执行工具
  • 决定工具结果如何进入后续上下文
  • 决定什么时候继续下一轮
  • 决定什么时候停止整个任务
  • 暴露 agent 级事件流

小结

tool calling 是原料,tool loop 才是 agent。

pi-agent-core 的价值就在于:把模型的动作意图工程化成一个可持续推进任务的闭环运行时。

Read more

LTX-2.3 本地部署完整复盘

先把结论放前面:LTX-2.3(22B)这条 pipeline 在 4×RTX 3090(24GB)这套硬件上,按官方默认推理方式基本跑不起来。我最终得到的不是“没跑通”,而是一个更有价值的结果:把它为什么跑不起来、卡在哪、该怎么判断“物理不可行”,完整验证了一遍。 这篇文章是一次本地部署的工程复盘:从模型文件下载、依赖链补齐、环境和代码层踩坑,到显存拆分、多卡 device 规划,再到最终 OOM 的边界判断。希望你在遇到类似“看起来只要把权重放进去就能跑”的大模型工程时,可以少走很多弯路。 TL;DR(1 分钟读完) * LTX-2.3 不是单模型,而是一个多组件 pipeline:文本编码器(Gemma)+ 视频 diffusion 主模型(

By ladydd

一次 generate-prompts 服务连续超时事故的完整排查记录

背景 一个平时很稳定的服务,在 2026-04-02 这天突然出现“连续失败”。 最让人难受的不是失败本身,而是失败信息太少:日志里只有一串「第 1 次请求失败」,没有异常类型、没有耗时、没有栈。 这种时候人的直觉会把怀疑撒向四面八方:逻辑是不是坏了、参数是不是不对、上游是不是抽风、网络是不是波动……但没有证据,一切都只是猜。 1. 先把故障“照亮”:只补日志,不动行为 线上系统已经跑了很久,第一原则是:先让问题可见,但不要一上来就改主逻辑。 我加的日志只做两件事: * 把“这次请求到底发生了什么”讲清楚 * 保持所有行为不变(重试次数、超时、请求参数、返回解析都不动) 具体补充项包括: * 请求开始时的关键信息(目标地址、超时、参数摘要、prompt 长度) * 当前是第几次重试、总重试次数 * 每次请求耗时

By ladydd

快手 KAT-Coder-Pro V2 模型测试

市面上几乎没人聊这个模型,反倒让我很好奇,我决定全面测评使用一下 StreamLakeStreamLake溪流湖是快手toB视频云平台,提供领先的音视频AI解决方案。包含KAT-Coder智能编程助手、万擎大模型平台、视频云服务、直播云、点播云、实时音视频RTC等产品。基于前沿AI技术和音视频算法,为企业提供智能代码生成、视频处理、内容理解、智能审核等全链路服务,助力数字化转型。StreamLakeStreamLake 付完款发现上下文只有256K , 到今天来说 已经落后了 而且不支持视觉,也没有mcp接入 联网搜索之类的东西 确实是远远落后了 时隔半年再次看快手模型的官网,发现现在几乎就主打这一个模型了 coding plan用这个,然后api 调用这个是, 接入openclaw 也是这个,总之一个模型走天下,看上去太穷了,像是随时跑路的状态,但其实我很喜欢这种方式, 一个模型通杀所有场景 哈哈哈 接入 opencode 中使用 开了一个新的项目,决定保守一点,先让写文档, 之后再生成代码 下面是实际的体验 1. 不断 chat

By ladydd
陕公网安备61011302002223号 | 陕ICP备2025083092号