客户端如何安全的调用大模型?

1 月 15 日
 everettjf

我在做一个客户端应用,客户端需要调用大模型能力,但显然不能在客户端直接暴露模型 API Key ,因此必须通过一个中间层来完成请求转发、鉴权和控制使用。我理解从架构上完全可以自己实现,但实际拆下来涉及用户身份、请求转发、限流、用量统计、Key 管理等,感觉成本和复杂度都不低。

我想确认的是:这类“客户端安全调用模型”的场景,是否已经有比较成熟的 SDK 、托管服务或通用方案可以直接使用? 理想状态是:我不需要从零搭一整套后端,只需要做很薄的一层配置或少量 glue code ,就能实现隐藏真实模型 Key 、按用户/设备限制使用、统计用量,甚至支持后续计费。

如果自己实现是不可避免的,那有没有被广泛采用的 “最快可落地”的部署方式或最小架构?比如开箱即用的网关、代理或参考实现,而不是从鉴权、存储、并发控制全部手写。希望听听老哥老姐们类似场景下的实际经验和推荐。

2704 次点击
所在节点    程序员
13 条回复
maocat
1 月 15 日
oneapi newapi
yalelynn
1 月 15 日
oneapi ,docker 部署一个,有自带的账号和权限管理功能
其实这个问题问问 ai 就会给你推荐
everettjf
1 月 15 日
@ikooma
@maocat 多谢老哥们,我试试。我问 ai 给我推荐了一堆 litellm 之类,都是 server 端的。可能没问好。。
everettjf
1 月 15 日
@maocat
@ikooma 但是我看了下 oneapi newapi 仍然没解决客户端到服务端之间的通讯问题。
TArysiyehua
1 月 15 日
直接弄两套 key 呀,测试环境一套,线上一套,你打包是本地电脑打包的?
Solix
1 月 15 日
不应该是后端接 API ,然后后端暴露你们自己的接口给前端吗,哪有大模型直接接前端的,我只在纯客户端产品里足迹填 API 见过
Solix
1 月 15 日
@Solix #6 足迹>自己
Cruzz
1 月 15 日
我们自己做,当然我们的产品也不是单纯的前端直接调用模型能力,
unco020511
1 月 15 日
vercel ai 网关,符合你的要求,其实上面说的 oneapi newapi 大致也是做这个事的
everettjf
1 月 15 日
@Solix 是你这个意思。

所以我这个问题现在看来就是单纯的:客户端和服务端之间通讯的安全问题。

感谢老哥们。
iOCZS
1 月 15 日
代理
furlxy
1 月 15 日
客户端调自己服务器用自己的 token ,服务器调模型 api 是另一个 token
前面那套要自己做,确实有不少考虑的,负载、限流防刷啥的
everettjf
1 月 15 日
@furlxy 确实是这样,本质就是前面这套

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1185887

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX