Agent 使用指南
如何在真实世界中使用大模型?
我说想开灯,大模型能帮我开灯吗?
- 我们希望大模型能够直接的解决问题
- 这样的使用方法现在被人们称为: Agent
简单应用:如何修复一个 json 串?
- 错误做法:
- 问大模型这个字符串哪里错了?
- 写代码修复字符串
- 正确做法:
- “Do not change the specific content, fix the json, directly return the repaired JSON, without any explanation and dialogue.”
什么情况下我们需要 Agent ?
- 不需要的情况:
- 操作简单,人可以快速解决;
- 规则清晰,程序可以按规则解决;
- 需要的情况:
- 解决步骤繁琐,对于人来说是重复劳动;
- 情况复杂,不容易梳理清楚对应的解决规则;
场景举例
- Github 的 Copilot
- MacOS 的 Copilot
- 软件自动运维
- Yi 6B 的自动安装助手
- 上网助手
- $\dots$
高级场景举例
- 自动软件开发(GPT Engineer)
- 自动会议纪要
- 自动任务记录
- 自动会议预定
- 自动消息通知
- 高级个人助理
- 一切自动化流程中需要人工参与的部分
解决复杂问题有哪些难点?
- 解决复杂问题往往需要很多步骤;
- 而且正确的步骤往往也也需要探索;
- Agent 需要能够正确的了解自己当前解决问题的进度;
- 具体的步骤中,Agent 需要可以使用具体的工具;
传统 Agent 的定义
Agent = LLM + planning + memory + tools
如何打造一个联网的 LLM ?
- [Thought] 针对用户输入,让 LLM 判断应该从哪个
搜索引擎用什么关键词获取结果; - [Act] 获取
搜索引擎在对应关键词下的搜索结果; - [Obs] 具体返回的搜索结果;
- [Thought] 判断是否回答了用户的输入,如果没有,类似第一步,继续判断如何搜索;
如何打造 Yi 6B 的自动安装助手
如何打造 MacOS 的 Copilot
如何打造一个可以自动软件开发的 Agent
这件事需要产品做什么?
- 找到适合的场景
- 设计场景下的合理交互
- 总结场景下的最佳实践 (作为数据喂给模型就可以了)
- 扩展场景
大模型还没有出现 Killer APP 是因为还没有懂 Agent 的产品经理