利用litellm实现函数调用快速迁移 @zhwenju
目前问题
Claude 3虽然强大,但从GPT-4迁移有难度,特别是涉及到function calling功能,Claude 3 无类似OpenAI封装好的SDK,需要手工写prompt实现,迁移几乎意味着需要重写代码实现。[2024.4.5 Claude 3 tool use 官方支持发布Beta版]
本方法特点
- 利用litellm作为proxy,通过OpenAI SDK直接调用Claude 3 API
- 无需修改OpenAI代码,直接切换API url迁移,使用体验和OpenAI API FC一样,部分情况需要修改prompt
- 已经测试OpenAI cookbook 4个demo,还有AutoGen 6个demo,可用程度比较高
迁移测试
测试了OpenAI cookbook function call demo 4个,还有AutoGen 6个GPT-4 function call。
test cases
<aside>
💡 LLM Function calling能力从何而来?
- 预训练阶段获得的自然语言理解能力
- few-shot learning 能力
- 持续预训练CPT和微调SFT获得的指令遵循和输出风格以及API调用能力强化
- LLM API层提供的前处理和后处理逻辑
经典论文参考:
- Gorilla: Large Language Model Connected with Massive APIs,https://gorilla.cs.berkeley.edu/
- Berkeley Function-Calling Leaderboard, https://gorilla.cs.berkeley.edu/leaderboard.html
- ToolLLM: Facilitating Large Language Models to Master 16000+ Real-world APIs, https://github.com/OpenBMB/ToolBench
</aside>