one-api 强烈希望增加实用功能,谢谢

rta7y2nd  于 5个月前  发布在  其他
关注(0)|答案(7)|浏览(66)

如果渠道多的话,要批量修改模型真的很困难,要一个一个调整,如果要是能批量选择渠道或者批量渠道修改更改模型就好了。

w46czmvw

w46czmvw1#

我也想问这个问题。。。
@songquanpeng 这个功能还蛮有用,麻烦大佬留意下~ ❤️

动机场景

现在模型列表更新很快,比如:

  • OpenAI 新增了 gpt-4-turbo,且每隔一段时间更新一版模型
  • Ollama 支持的模型越来越多,且和用户定制有关,用户拉取不同模型,模型列表也不同

希望支持的功能

新增导入渠道默认模型的按钮:

  1. OpenAI/vllm/chatanywhere 等渠道,能通过 v1 接口获取支持的模型列表,可以的话,加上对这个接口的调用。
  2. ollama 用了 /api/tags 接口,可以考虑将其转化:
# curl http://localhost:11434/api/tags
{
    "models": [
        {
        "name": "llama3:8b-instruct-q8_0",
        "model": "llama3:8b-instruct-q8_0",
        "modified_at": "2024-04-23T20:24:46.839698832+08:00",
        "size": 8540783746,
        "digest": "5a511385d20f9c4c0608fb157ad7a591bbc6a3958fbcceb1e3ffda50606245bf",
        "details": {
            "parent_model": "",
            "format": "gguf",
            "family": "llama",
            "families": [
            "llama"
            ],
            "parameter_size": "8B",
            "quantization_level": "Q8_0"
        }
        },
        {
        "name": "qwen:0.5b",
        "model": "qwen:0.5b",
        "modified_at": "2024-04-23T23:50:46.956194293+08:00",
        "size": 394998579,
        "digest": "b5dc5e784f2a3ee1582373093acf69a2f4e2ac1710b253a001712b86a61f88bb",
        "details": {
            "parent_model": "",
            "format": "gguf",
            "family": "qwen2",
            "families": [
            "qwen2"
            ],
            "parameter_size": "620M",
            "quantization_level": "Q4_0"
        }
        }
    ]
    }
b1zrtrql

b1zrtrql2#

关联 Issue: #1304
填入相关模型 的内容可能不够及时,且 OneAPI 需要持续维护渠道的这个列表,比较不便。我的想法是,在此基础上,新增对渠道自带的接口的支持。

a6b3iqyw

a6b3iqyw3#

我也有一个想法供大佬参考,例如在前端添加/修改渠道时,自定义输入模型时,可以进行批量输入。原本用于输入自定义模型名称的框可以判断输入是否包含逗号(,),如果存在逗号,则将输入内容进行分割并批量写入模型中,如model-1、model-2、model-3。或者说API可以实现这个功能吗?

fd3cxomn

fd3cxomn4#

更灵活的策略还是这里提到的,用 API 来维护渠道:
https://github.com/songquanpeng/one-api/blob/main/docs/API.md
又或者你想自定义渠道管理策略,也可以通过 API 来实现渠道的禁用与启用。
看文档,应该还没有完成,需要大家的 PR~

zwghvu4y

zwghvu4y5#

可以维护一个在线的XML,各自部署的one-API可以定时更新或者一键手动更新,而无需更新整个one-API。

xoshrz7s

xoshrz7s6#

可以维护一个在线的XML,各自部署的One-API可以定时更新或者一键手动更新,不用更新整个One-API。
这个主意不错,维护一个返回XML的在线接口,OneAPI部署后,在设置里更新渠道的支持信息。不过不支持ollama/vllm这类模型经常变动的渠道。
汇总下目前Issue里的几个建议:
| 方案 | 优点 | 缺点 |
| ------------ | ------------ | ------------ |
| 批量写入模型,用逗号分开model-1,model-2, | 代码工作量应该较少 | 灵活性稍差 |
| 支持从渠道自带接口导入模型 | 支持openai/litellm/ollama等渠道 | 覆盖不全面 |
| 维护一个xml的接口 | 更新方便 | 覆盖不全面,代码工作量? |
| 通过API编辑渠道 | 灵活性非常高 | 代码工作量? |
个人比较支持最后一个,不知道大佬@songquanpeng有什么计划;)

u3r8eeie

u3r8eeie7#

API已经写好了,我抓包查看后发现可以自己编写脚本进行管理。例如,使用GET请求获取渠道信息,然后使用PUT请求。我认为在用户设置base_url和key时,可以添加一个按钮来调用/v1/models,以便自动填写支持的model。

相关问题