AI Store当前最火的AI产品是【口袋专家AI】——AI版微信,让AI微信中的智能体专家帮你做PPT、做短剧、做图片,完成工作和生活中的所有事。
一、引言
体验编码智能体,不一定要一开始就交给它整个仓库。先拿一个短函数做代码审阅,可以快速确认模型、语言和上下文是否正常,也更容易检查答案质量。
本篇从 AI Store 打开 Pi Agent,新建对话,让它分析一个平均值函数在空列表输入下的问题。任务明确要求只给建议、不调用工具、不修改文件。
二、项目原理与本篇学习目标
2.1 为什么先做只读审阅
代码审阅任务不要求文件写入,可以把注意力放在模型是否理解程序行为。Pi页面包含文件、Git和终端入口,但这次问题的全部材料已经在消息里,不需要扫描工作区。先限制输入范围,也便于确认回答依据来自哪段代码。
这个例子中的错误很具体:空列表使分母为0。难点不是指出异常名称,而是决定修复后的接口行为。返回0、返回None、抛ValueError分别适合不同约定,无法仅靠函数名判断哪一种一定正确。
2.2 把错误解释和修复建议拆开
错误解释回答“为什么会失败”,修复建议回答“改成怎样”。前者可以根据代码直接判断,后者还需要使用场景。若函数用于统计报表,0可能被误解成实际平均值;若调用方已经有异常处理机制,显式抛错可能更合适。读者应先做接口决定,再采用代码。
这也是本篇选择小函数的教学目的:把模型推断与业务决策分清楚,而不是把一段语法正确的代码直接贴进项目。
三、认识 Pi 网页界面
从 AI Store 点击Pi Agent。本次托管入口使用 pi-web-ui,可以在顶部切换对话、终端、Git、插件、搜索和设置。
左边是最近项目与历史对话,右边可以显示文件列表。这里的/workspace指云端工作台目录,不是本机目录。
点击新对话,把演示与原有聊天分开。输入框下方可以看到当前模型、思考档位和权限范围,本次显示 GPT-5.6-Luna。读者的可选模型以当时平台目录为准,不必为了这个小例子更换到同一型号。
四、实战:审阅一个有边界条件的函数
在消息框输入下面内容,按 Enter 发送:
请只审阅下面这个Python函数,不调用工具、不修改文件。 指出空列表时的问题,给一个最小修复和2条assert测试。 用中文简洁回答。 def average(xs): return sum(xs)/len(xs)这个任务的输出范围很小:一个问题、一段修复、测试示例。不会因为“帮我优化代码”这样的模糊请求而把无关功能也改掉。
本次模型指出:xs=[]时,len(xs)为 0,会出现ZeroDivisionError。它建议对空列表显式抛出ValueError:
def average(xs): if not xs: raise ValueError("xs cannot be empty") return sum(xs) / len(xs)随后给出普通输入断言,以及通过try/except检查空列表异常的示例。
五、怎样判断回答是否可用
先确认修复符合自己的业务约定。空输入到底应该返回 0、返回空值还是抛出异常,是接口设计问题;模型给出的ValueError是一个合理方案,但不是所有业务都必须采用。
再看测试有没有覆盖真正的边界:普通列表验证平均值,空列表验证错误行为。这比只给一个正常输入更有价值。
本轮要求“不调用工具”,所以结果只是审阅建议与测试代码,并没有替读者修改仓库或运行测试。需要落地时,应另开一轮明确指定目标文件、允许修改的目录和测试命令,最后查看实际测试输出。
六、使用小贴士
- 新任务尽量新建对话,避免把上一个问题的假设带进来。
- 发送前查看工作目录和权限,不要误在重要项目上开启宽泛操作。
- Git 区域中的提交、推送等按钮会改变仓库状态,不是只读预览;本文没有使用这些动作。
- 页面显示的模型用量与平台实际账单应分别核对,不要把工作台里的
$0展示理解成整个平台免费。 - 复制模型建议后,仍要按自己的业务规则审阅并运行测试。
七、结果分析与进阶练习
7.1 手工推演正常和异常输入
正常列表[2,4]的和为6、长度为2,结果应为3;空列表的长度为0,原实现会异常。采用ValueError方案后,异常类型发生变化,而且错误变成主动说明输入不合法。这种变化会影响调用方,不能当作纯粹内部优化。
下面是读者可在自己的练习环境中运行的检查,本文原任务没有执行这些代码:
assert average([2, 4]) == 3 try: average([]) except ValueError: pass else: raise AssertionError('空列表没有按约定报错')7.2 怎样提出有用的第二轮问题
可以问“调用方希望空数据单独显示,请比较返回None与抛ValueError的影响”,而不是简单要求再给一个更好的版本。好的追问提供实际约束,让模型解释取舍。等方案选定,再单独指定文件并授权修改,最后运行测试。
如果模型回复声称已修复仓库,而这轮明明没有工具调用,就应把它视为表述问题,不能当作真实改动。审阅建议和执行结果分别记录,后续才不会漏掉落地步骤。
7.3 为平均值建立测试矩阵
已有示例包含[2,4]与空列表,读者可以在此基础上设计更完整的检查。测试矩阵先写输入类型、预期行为和依据,再交给智能体实现,能减少为了让测试通过而随意改变业务含义的情况。
| 额外输入 | 应明确的约定 |
|---|---|
| 只有一个数字 | 返回该数字是否符合定义 |
| 所有数值为0 | 与空数据的结果是否能区分 |
| 含字符串或None | 是否清楚说明输入类型 |
这些用例是后续练习,不能写成本文已经跑过。先选定预期行为,再运行验证;如果当前任务只是审阅,那么本轮产物仍是测试建议,不是终端执行结果。
空列表处理会影响调用方。返回0会把缺失数据与真实零值混在一起,返回None要求调用方判断,抛异常则要求明确异常处理。没有用途说明时,不能把其中一种称为唯一正确方案。
7.4 验证修改有没有超出题目
打开变更后,先检查目标函数与用例,再看是否新增了题目不需要的依赖、网络访问或其他文件改动。更多代码不等于更好的实现;对于独立练习,保留一个容易阅读的文件,往往更方便理解。
如果测试失败,保留错误信息并定位到具体输入,再提出下一轮修改。不要直接删掉失败用例,也不要把成功标语移到检查之前。正确的修复应该使预期行为成立,而不是只让页面看起来显示成功。
最后,交付报告最好包含文件位置、改变了什么、用了哪条命令、哪些边界尚未覆盖。读者可以据此决定下一步,避免把一次小任务通过理解成所有使用场景都已完成验收。
八、总结
本篇完成了打开项目、新建对话、发送有界代码审阅请求和检查返回建议的流程。先把一个小问题说清楚,再逐步扩大智能体的权限和任务范围,是更容易掌握的使用方法。
如果觉得对你有帮助,欢迎关注、收藏或留言交流使用体验。
AIStore免费AI公开课系列文章:
AIStore免费AI公开课-智能体篇(一):口袋专家Harness上架AIStore,开源个人智能体,开箱即用
AIStore免费AI公开课-智能体篇(二):Agents Team上架AIStore,拉一群机器人同时开工,开箱即用
AIStore免费AI公开课-智能体篇(三):AI Search上架AIStore,问你的数据、答案带出处,开箱即用
AIStore免费AI公开课-智能体篇(四):AI Recom上架AIStore,信息流推荐并讲清理由,开箱即用
AIStore免费AI公开课-智能体篇(五):OpenClaw上架AIStore,龙虾2.0智能体,开箱即用
AIStore免费AI公开课-智能体篇(六):Hermes上架AIStore,自记忆智能体,开箱即用
AIStore免费AI公开课-智能体篇(七):DeepSeek Harness上架AIStore,DeepSeek官方智能体,开箱即用
AIStore免费AI公开课-智能体篇(八):OpenCode上架AIStore,最火的开源编码智能体,开箱即用
AIStore免费AI公开课-智能体篇(九):Claude Code上架AIStore,用Claude改整个代码库,开箱即用
AIStore免费AI公开课-智能体篇(十):ComfyUI上架AIStore,节点编排生图生视频,开箱即用
AIStore免费AI公开课-智能体篇(十一):Codex上架AIStore,用GPT改整个代码库,开箱即用
AIStore免费AI公开课-智能体篇(十二):Pi Agent上架AIStore,极简可改的编码智能体,开箱即用
AIStore免费AI公开课-智能体篇(十三):Open Design上架AIStore,开源版Claude Design,开箱即用
AIStore免费AI公开课-智能体篇(十四):OpenHands上架AIStore,开源版Devin,开箱即用
AIStore免费AI公开课-智能体篇(十五):Cline上架AIStore,VS Code里的结对编程智能体,开箱即用
AIStore免费AI公开课-智能体篇(十六):AutoGen Studio上架AIStore,微软多智能体搭建台,开箱即用
AIStore免费AI公开课-智能体篇(十七):CrewAI上架AIStore,按角色分工的智能体团队,开箱即用
AIStore免费AI公开课-智能体篇(十八):OpenManus上架AIStore,开源版Manus,开箱即用
AIStore免费AI公开课-智能体篇(十九):Twenty上架AIStore,开源版Salesforce,开箱即用
AIStore免费AI公开课-智能体篇(二十):LangChain上架AIStore,LangGraph智能体对话界面,开箱即用
AIStore免费AI公开课-智能体篇(二十一):SillyTavern上架AIStore,开源版Character AI,开箱即用
AIStore免费AI公开课-智能体篇(二十二):Kilo Code上架AIStore,架构编码调试多模式,开箱即用
AIStore免费AI公开课-智能体篇(二十三):Laya上架AIStore,毫秒级结构化判断的决策模型,开箱即用
AIStore免费AI公开课-智能体篇(二十四):Jev上架AIStore,托管决策模型按输入计价,开箱即用
AIStore免费AI公开课-智能体篇(二十五):Semantica上架AIStore,开源版Palantir本体工作台,开箱即用
AIStore免费AI公开课-智能体篇(二十六):Open Dots上架AIStore,开源版OpenAI Dots,开箱即用
AIStore免费AI公开课-智能体篇(二十七):OpenMausBot上架AIStore,开源版Grok Bot,开箱即用
AIStore免费AI公开课-智能体篇(二十八):OpenMuse上架AIStore,开源版Muse,开箱即用