• FunnyCups

    2025/7/31更新:添加模型映射

    项目地址:

    github.com

    图片

    GitHub - funnycups/Toolify: Empower any LLM with function calling...

    Empower any LLM with function calling capabilities.

    博文地址:

    图片

    小欢博客

    Toolify——为任意LLM API添加完善的Function Calling支持

    Toolify,一个通过提示词让任何语言模型API都支持函数调用的中间件。它能解决很多LLM接口原生不支持函数调用的痛点,自动处理提示词构造、响应解析与多轮调用,让你轻松为任何模型赋予强大的工具...

    本程序在实现上类似于Open WebUI的code interpreter功能,通过xml标签让AI调用函数。事实上站内N佬已经发过一个类似的实现:让任何 OpenAI 兼容渠道强行支持 Function Call !! 美中不足的是不支持多工具调用,并且要求模型在开头立刻输出函数调用,无法输出其他的文本内容。

    刚好之前公益站很多人说希望模型支持函数调用,于是写了这个项目。已经在公益站测试了一段时间,自己也用着,感觉没有很大的问题,遂发布。

    本项目应该可以最大程度上让不支持函数调用的OpenAI compatible接口/模型支持函数调用:

    - 允许模型在输出的任何地方调用函数

    - 兼容<think>思维链

    - 支持一次性多函数调用

    - 支持多上游渠道配置

    - 模型可以看到自己上次调用的具体函数和参数

    - 支持Docker Compose快速部署

    两点说明:

    - 为了兼容流式响应,流式输出时实际上会逐个扫描模型的输出结果,所以流式请求传入tools参数会导致输出变慢变卡

    - 由于是通过提示词实现的,肯定效果不如原生支持Function Calling的接口好,但胜在能用,性能好的模型调用起来应该没太大问题。我自己在公益站的所有模型上都应用了,自己也测试过,还是可以的

    嗯,好像想不到什么其他可以说的了,就这样吧。

    大家有用上的可以给个star,谢了。

    主楼
  • Snoopy

    已star,有空学习下

    #1
  • 大帅哥

    支持大佬

    #2
  • 雨下不停

    感谢分享,学习一下

    #3
  • jooooody

    牛逼大佬,可惜对第三方key+cc没信心了

    #4
  • あ

    感谢大佬分享

    #5
  • cookie

    感谢分享

    #6
  • 铎

    前排支持大佬

    #7
  • giserd

    代码写的好工整,学习了

    #8
  • FunnyCups

    大佬

    图片

    #9
  • FunnyCups

    都是ai写得好 ^-^

    #10
  • 南山

    大佬太厉害了

    #11
  • greg

    star,谢谢分享

    #12
  • docker-linuxdo

    感谢分享

    #13
  • Network_flow

    这正是我最近需要的

    #14
  • MuShang

    太强了佬

    #15
  • giserd

    我准备在你的代码基础上把MCP加上,让模型根据mcp获取tools,编排工具执行

    #16
  • FunnyCups

    mcp本质不就是传递标准化的tools参数吗?我现在这版代码接入任何用mcp的程序都可以用吧

    #17
  • w

    正在试用,用完回来写报告

    #18
  • FunnyCups

    第一个问题我回去看下。第二个问题应该是你这没有传入tools参数,不然不会显示Function calling enabled: False,另外我就用roo code的,没有碰到这个问题

    #19

发表回复

登录后回复