支持 stream 流式转发

转发 OpenAI 接口地址的 小工具

Go + Docker 转发 OpenAI 的 API 接口,部署在海外服务器即可对 api.openai.com 进行代理,支持 stream 流

核心特性

灵活配置,简单部署,稳定可靠

Stream 流支持

完整支持 OpenAI 的流式响应,实时传输数据,无缝衔接原有使用方式

灵活配置

支持环境变量配置请求参数打印、转发目标地址、路径列表等选项

Docker 部署

一条命令即可完成部署,自动重启,支持环境变量配置,开箱即用

安全可靠

部署在海外服务器,安全稳定转发请求,保护你的 API 密钥

高性能

基于 Go 语言开发,性能卓越,内存占用低,并发能力强

源码可用

开源项目,代码透明,可自由定制和扩展功能

工作原理

三步快速部署,立即开始使用

1

Docker 快速部署

docker run -d \
  --name forward_openai \
  -p 8080:8080 \
  -e sg.forward_openai.printParam=false \
  -e sg.forward_openai.targetHost="https://api.openai.com" \
  -e sg.forward_openai.forwardPathList="/v1/chat/completions" \
  --restart=always \
  --pull=always \
  samge/forward_openai:latest
2

配置环境变量

printParam: 是否打印请求参数,默认 false
targetHost: 转发目标地址,默认 https://api.openai.com
forwardPathList: 需要转发的路径列表,支持 | 分隔多个路径
3

开始使用

将原来的 https://api.openai.com 改为 http://yourIpAddr:8080 即可

例如:http://192.168.1.100:8080/v1/chat/completions

源码运行(可选)

go run main.go

常见问题

解答你关于部署和使用的疑问

如何配置多个转发路径?
使用 | 分隔符来配置多个路径,例如:/v1/chat/completions|/v1/completions|/v1/embeddings
如何调试请求参数?
将环境变量 sg.forward_openai.printParam 设置为 true,即可在日志中查看请求参数
支持哪些 OpenAI API 接口?
支持所有 OpenAI API 接口,包括 Chat Completions、Completions、Embeddings 等。你可以在配置中指定需要转发的路径
Docker 部署后如何查看日志?
使用 docker logs forward_openai 查看日志,或使用 docker logs -f forward_openai 实时跟踪日志输出

加入技术交流

有问题或想要交流技术?欢迎加入我们的社区