本篇内容为AI Agent开发的第一篇,基础篇。阅读本系列文章,我不能保证你能学会怎么开发agent, 但肯定可以让你使用Agent产品时更加得心应手。
首先,一个问题,你觉得大模型的输入可以是什么?输出又可以是什么?
A: 可以给大模型输入任何东西,文字,图片,文件,视频,啥都可以。大模型也可以输出任何东西。
B: 大模型只能输入文字和图片,输出的内容也只有文字。
花10秒钟想一想,你的答案是?
展开查看答案:
代码块 答案是:B
最开始的时候
你可能觉得这不合理呀,明明我在用豆包或者其他AI产品的时候,什么都可以发的呀。
让我们回溯历史,回忆一下GPT刚出现的时候,那个时候我们只能输入文字,GPT也只会输出文字,这点我相信大家都是肯定的。
当时有个问题,GPT的数据都很老,它本身又没法联网搜索,给的东西都是过时的,特别是写代码的时候,根本没法用。
开发者们想了个招,就是当用户问问题的时候,先拿着用户的问题去调谷歌api,搜一遍,把搜到的结果+用户的问题一起给GPT。
类似这样
代码块 user message: 下周下雨吗? search context: 重庆下周天气:xxxxxx

这样AI就会根据用户的问题,总结搜索到的结果,再输出给用户。
你可能会问,为什么不直接把搜索的结果给用户,过一遍大模型的意义是啥?
这是因为搜索的结果没你想象的那么精准,而且都是乱七八糟的,数据东一块西一块,或者根本和用户问的问题无关,直接给用户,用户根本没法看。所以需要让大模型总结总结,给出一份人能看的东西。这时候大模型起到的不是回答问题的作用,而是总结数据的作用。
这就是最开始时那个联网搜索按钮的作用。
这样做有一个很大的问题,就是只要你开了这个按钮,不管你问啥,他都会搜,因为先搜索,再将用户问题+搜索结果一起给大模型这件事,是程序写死的。你问个1+1=? 也得来一遍。
还有一个小问题,这个时候是直接拿着用户的问题进行搜索,
比如你问:我想知道重庆有哪些景点?
他会拿着这句话我想知道重庆有哪些景点? 去搜索,而不是搜索 重庆 景点 关键词。
怎么解决呢?
一个奇妙的想法
想要解决什么都搜的这个问题,那要知道用户的问题该不该搜索?程序是没法知道的,但大模型却可以。
比如你可以在用户发消息的时候,先给大模型发一句这样的话:用户提问:我想知道今天有什么新闻? 这个问题需要进行联网搜索吗?
如果大模型返回了需要的消息,那就搜一下,再把搜到的结果发回给大模型,然后大模型再总结,再给用户。
如图

为了更好的阅读体验,来飞书看吧:
https://vqxvy65apk2.feishu.cn/docx/D064dbk4UodhLoxQYsvcZIuInPd
Comments on "AI Agent开发基础篇" :