零成本搭建个人LLM路由网关
简单总结一下我是如何使用各家的大语言模型api的,之前很长一段时间使用newapi聚合各家免费的api。但是现在,主流厂商基本都已经支持openai格式调用,而且对于个人来讲,newapi很多功能都是冗余的,所以想自己写一个api负载均衡满足日常使用。 llmio 我将这个项目命名为llmio,后端由go语言实现,前端由qwen3-code + vibe coding实现,只支持openai格式。项目十分简单,通过单独设置model与provider,一个model对应n个provider。 每次接收到请求根据不同provider的权重随机选择一个,替换请求体中的原始model字段为provider设置的model,并使用go标准库的io.TeeReader(body, pw)将响应body流同时转发给客户端与日志记录。 最高效实现负载均衡代理的同时,也方便开发者查看每次请求的各种数据。 部署 项目使用github action自动构建了docker镜像,最新版为0.2.3,可以使用docker compose一键部署,数据使用sqllite保存在/app/db文件夹下的llmio.db文件中,方便一键迁移。内存占用在20m左右,十分轻量。 1services: 2 llmio: 3 image: atopos31/llmio:latest 4 ports: 5 - 7070:7070 6 volumes: 7 - ./db:/app/db 8 environment: 9 - GIN_MODE=release 10 - TOKEN=<YOUR_TOKEN> 当然,如果你没有云服务器,推荐使用sealos部署,注册就送10元额度,每天仅需0.08元。 注意,环境变量中的TOKEN同时负责api以及后台管理的鉴权。 ...