生活网10月7日 消息:OpenAI的Fine-tuning支持function calling(函数调用)。在API中,包含一长串函数可能会消耗大量提示令牌,有时模型会产生幻觉或无法提供有效的JSON输出。
使用函数调用示例微调模型可以带来以下好处:
即使没有完整的函数定义,也可以获得类似格式的响应。
能够获得更准确和一致的输出。
什么是function calling(函数调用)?
尽管GPT非常强大,但在某些方面可能不够强大,或者您希望它能够调用您的工具来执行特定任务,这时候就需要使用函数调用。通过在提示中告诉GPT哪些工具可用,这些工具的功能是什么,以及它们需要什么样的参数格式。当GPT判断需要使用工具时,它会返回符合格式的参数,然后您的程序将执行相关函数,并将结果返回给GPT。
函数调用的示例:
假设GPT的乘法表现不佳,您可以编写一个计算器工具。使用GPT的API时,您可以在提示中告诉GPT有一个计算器工具,当遇到乘法问题时,提供乘数和被乘数,然后调用计算器。实际执行过程是这样的:GPT检测到乘法问题,返回乘数和被乘数,计算器执行乘法计算,将结果和之前的信息返回给GPT以继续处理。
函数调用的一个缺点是每次提示都需要包含function说明,这会消耗token。而在微调中,不是使用您的个人知识库,而是使用了一个包含各种工具的工具箱,GPT知道可以使用哪些工具,因此不需要每次在提示中添加说明。官方建议,为了提高准确性,微调后仍然建议包括function说明。