- 今天思考了下,AI沉思录未来的方向。之后会更专注AI新鲜玩法和商业化+新技术探索(少量)。
- 做长期能跨越周期的好内容。
-
Function Calling是什么?
- 可以编写外部函数,让ChatGPT”间接”拥有这些新函数的能力。
- 为什么说“间接”呢,看下面的流程哈。
-
Function Calling的流程是什么?
- 1、编写外部函数。例如用Python写个获取天气。并对这个方法(函数名称、函数描述、城市名等)传给GPT。
- 2、每次对话,GPT自己推理,当前对话是否需要使用“获取天气”。
- 3、当用户问到“深圳市的天气怎么样?”,这时候GPT会返回函数名(“获取天气”)和城市名。
- 4、我们本地代码执行函数后,将深圳市的天气信息传给GPT
- 5、GPT根据深圳市天气信息,生成一个新的对话。这时候就能回答“深圳市的天气了”。
-
Function Calling有哪些不足/小坑?
- 1、并不是真正的联网。而是用GPT去推理数据。当然,这样的好处就是,可以低成本激发UGC的想象力且不影响模型本身。
- 2、外部函数的返回值需要是json格式。
- 3、搜索引擎上的教程,代码案例用的functions和function_call,但这些参数新版GPT已经废弃了。得改用tools和tool_choice。
- 这是官方API文档:https://platform.openai.com/docs/api-reference/chat/create?lang=python
- 还有一份,我觉得不错的代码案例文章:https://zhuanlan.zhihu.com/p/656786574