关于Workers版 类「one-api」的实现,想征求一下各位佬友们的建议

继:

目前这个项目的发展有点背离项目的本意(即仅是为了优化LLM的流式输出效果,而非为了做出一个workers版“one-api”)。但见到佬友们呼声这么高,想开个新项目:专注于Cloudflare Workers版的多api网关,且融合流式输出优化功能。

目前的想法

  • 在原项目上大改,增加多个其他api渠道的支持
  • 网页管理页面的登录方式由apikey改为用户名+密码
  • 默认不启用流式优化输出,在设置中填入指定模型名称,选择性启用
  • 使用更简化的流式输出设置,改进用户体验
  • 依然保持目标用户为单用户自用而非多用户(Workers免费版的单日请求仅100000)
  • 转为Cloudflare Pages,方便无域名用户免代理使用(可能不实现)

我想征求一下各位佬友的建议,尽快完整实现这个小项目 :tieba_087: 有什么建议都可以提出来!!!
感谢L站的佬友们这么多天以来的支持!!!

(另外想求一个claude官key,仅用于测试项目的anthropic api,不会消耗多少tokens且绝不用于他处,如果有的话真的太感谢了:sob:

23 Likes

感觉抱脸更适合部署这类产品? :thinking:

抱脸不是把new-api啥的封干净了么 :tieba_087:

1 Like

类one-api又不是new-api :tieba_025:
我相信佬友的实力 :tieba_025:

1 Like

CF主要是他有个“CPU时间”的限制,不知道数据跑大了会不会直接断了
佬友有研究过吗

1 Like

目前在我的原项目上貌似没怎么遇见超cpu时间的相关问题 :tieba_086:

2 Likes

建议换成 deno 版本,cf 会暴露隐私,详情问 @F-droid

1 Like

原项目已经实现原生fetch了
deno版已经有佬做过了(uni-api)

uni-api 不是 vercel 么?

是么 :tieba_087: 可能我记错了

现在的new api一个渠道只能一个key,有多个key只能创建一堆渠道,并且自动添加的模型不见得真的每个都能用(和上游有关),如果能探测出可用模型就好了。然后要能以可用模型来聚类(这个做起来其实很麻烦,比如qwq,有的地方还叫qwq_32b或者qwen/qwq什么的,他们是同一个模型,但是对不同的上游渠道却需要传不同的模型名),有一个单独页面以模型来分组,列出可用渠道(即使他们在上游的模型名并不是同一个)

3 Likes

原项目已经实现单端点多key负载均衡了,但是太复杂的功能在serverless项目上实现真的不太可能呢 :tieba_087:

1 Like

这个不是绝对的,有的请求都显示cpu几千ms了还是成功返回了,不过有的时候过一点点就cpu time exceeded了。建议把耗时操作放到隔壁Lambda函数里,再从cf发个请求过去调用,毕竟请求的挂钟时间不算cpu时间。

3 Likes

还有这种操作,学习了 :grin:
不过Serverless都是拿cpu时间算的资源有点搞

请求量少的话,超过 10ms 也不一定会断。我自己有个复杂的转发,自用基本上没问题。

2 Likes

Lambda给的cpu时间我印象很宽裕,900秒呢。

2 Likes

重定向模型可以?也就是自定义一个模型名称实际调用其他模型,简单的欺骗一下上层应用

这个可以做到,感谢佬友的建议! :tieba_087:

很好,除了你说讨论这个,但已经看到有一个更新的项目了。论坛人才济济之地

好想法!冲冲冲!