Skip to content

yobotyao-maker/one-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,213 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

中文 | English | 日本語

one-api logo

OneAPI

💬 通过统一的 OpenAI API 格式访问所有大模型,部署与使用都非常简单 💬

license release docker pull release GoReportCard

部署教程 · 使用方法 · 反馈 · 功能截图 · 在线演示 · 常见问题 · 相关项目

Note

本项目仅供学习使用。使用本项目产生的一切后果由使用者自行承担。请遵守 OpenAI 的使用条款以及国家法律法规。 [!NOTE] 正式部署镜像:Docker 镜像为 one-api 或使用 ghcr.io/one-api

测试版本镜像:one-api-alpha 或使用 ghcr.io/one-api-alpha

Warning

禁止使用 root 用户启动容器。初始账户为 root,密码为 123456。首次使用时,请务必修改默认密码!

功能特性

  1. 支持多个大模型:

  2. 支持通过负载均衡访问多个渠道。

  3. 支持流式传输模式,可实现打字机式的返回效果。

  4. 支持多机部署。详见此处

  5. 支持令牌管理,可设置令牌过期时间和使用次数限制。

  6. 支持充值券管理,可批量生成和导出充值券,用于账户余额充值。

  7. 支持渠道管理,可批量创建渠道。

  8. 支持用户分组渠道分组,可为不同分组设置不同的费率。

  9. 支持渠道模型列表配置

  10. 支持额度详情查看

  11. 支持用户邀请奖励

  12. 支持以美元显示余额。

  13. 支持公告发布、充值链接设置、新用户初始余额设置。

  14. 提供丰富的定制选项

    1. 支持系统名称、Logo、页脚等自定义。
    2. 支持使用 HTML & Markdown 代码自定义首页和关于页面,或通过 iframe 内嵌独立网页。
  15. 支持通过系统访问令牌管理 API 访问。

  16. 支持 Cloudflare Turnstile 用户验证。

  17. 支持用户管理和多种用户登录/注册方式:

  18. 实时支持和封装其他主流模型 API。

部署教程

Docker 部署

部署命令:

docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data one-api

更新命令:docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower -cR

-p 3000:3000 中第一个 3000 是主机端口,可根据需要修改。

数据将保存在主机的 /home/ubuntu/data/one-api 目录中。请确保该目录存在且拥有写入权限,或修改为合适的目录。

Nginx 配置参考

server{
   server_name openai.example.com;  # 域名,需自行修改

   location / {
          client_max_body_size 64m;
          proxy_http_version 1.1;
          proxy_pass http://localhost:3000;  # 根据实际端口修改
          proxy_set_header Host $host;
          proxy_set_header X-Forwarded-For $remote_addr;
          proxy_cache_bypass $http_upgrade;
          proxy_set_header Accept-Encoding gzip;
          proxy_read_timeout 300s;  # GPT-4 需要较长的超时时间
   }
}

接下来使用 Let's Encrypt certbot 配置 HTTPS:

# Ubuntu 中安装 certbot:
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot

# 按照提示操作,修改 Nginx 配置:
sudo certbot --nginx

# 按照提示操作
# 重启 Nginx:
sudo service nginx restart

初始账户的用户名为 root,密码为 123456

使用方法

详见 QUICK_START_DOCS.mdUSAGE_GUIDE.md

功能截图

待补充...

在线演示

待补充...

常见问题

待补充...

相关项目

待补充...

许可证

本项目采用 MIT 许可证。详见 LICENSE 文件。

贡献指南

欢迎提交 Issue 和 PR!请参考 CONTRIBUTING.md 了解更多信息。


需要帮助? 查阅 QUICK_START_DOCS.md 或提交 Issue

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors