Skip to content

Latest commit

 

History

History
169 lines (112 loc) · 4.88 KB

readme.md

File metadata and controls

169 lines (112 loc) · 4.88 KB
DDG-Chat

一键免费部署到各种平台你的 ChatGPT API 后端

支持 Vercel, Cloudflare Workers, Docker, Render 等

支持 GPT4o mini, Claude 3 Haiku, Llama 3.1 70B, Mixtral 8x7B 模型

所有模型均由 DuckDuckGo 匿名提供

一键部署

演示API

请勿滥用

建议使用方式

使用第三方 ChatGPT 应用来调用接口,例如:

调用接口

对话请求

示例(其中 chatapi.r12.top 请替换为你自己部署后的域名):

curl --request POST 'https://chatapi.r12.top/v1/chat/completions' \
  --header 'Content-Type: application/json' \
  --data '{
    "messages": [
      {
        "role": "user",
        "content": "你好!"
      }
    ],
    "model": "gpt-4o-mini",
    "stream": true
  }'

模型查询

示例(其中 chatapi.r12.top 请替换为你自己部署后的域名):

访问 http://chatapi.r12.top/v1/models 可查看当前支持的模型

支持的模型

该模型名称同步使用 DDG 网页抓包所得 (未知模型均会被重定向到 gpt-4o-mini 模型)

  • gpt-4o-mini
  • claude-3-haiku
  • llama-3.1-70b
  • mixtral-8x7b

手动部署

由于 DDG API 限制单 IP 并发数,推荐使用 Vercel 进行部署,如果使用 Docker 之类的本地部署,请确保项目运行在代理池中。

Vercel

方法一:本地 Clone 仓库部署

  1. 首先确保你有 Nodejs 环境
  2. 执行下面命令:
npm i -g vercel
vercel login
git clone https://github.com/leafmoes/ddg-chat
cd ddg-chat
vercel --prod

方法二:云端 Fork 仓库部署

  1. fork 这个仓库到你的 Github
  2. 进入 Vercel New Project 网页,Import 你刚才 fork 的仓库
  3. 点击 Deploy 即可

方法三:一键部署

Deploy on Vercel

Render

  1. fork 这个仓库到你的 Github
  2. 点击下面按钮到 Render 官网,Import 你刚才 fork 的仓库,然后按正常部署流程走

Deploy on Render

Cloudflare Workers

方法一:

  1. 进入 Cloudflare Workers 和 Pages 控制台,创建一个 Workers
  2. 粘贴 此文件 内部代码到你的 Workers,然后点击部署

方法二:

  1. 首先确保你有 Nodejs 环境
  2. 执行下面命令:
git clone -b cf-workers https://github.com/leafmoes/DDG-Chat.git ddg-chat
cd ddg-chat
npm install
wrangler login
wrangler publish

Docker

方法一:命令行构建

docker run -it -d --name ddg-chat -p 3000:3000 ghcr.io/leafmoes/ddg-chat:latest

方法二:使用 docker-compose.yml 文件构建

下载保存 docker-compose.yml 文件,然后在该文件所在目录运行 docker-compose up -d 来启动服务。

Docker 相关命令

docker logs -f ddg-chat # 查看服务实时日志
docker restart ddg-chat # 重启服务
docker stop ddg-chat # 停止服务

常见问题

  1. Vercel 部署有何限制?
    • 免费版单次 API 请求时长为 60s
    • 免费版每月 API 调用次数为 100,000 次
    • 官方文档 - Vercel 函数限制
  2. 是否计划增加前端应用?
    • 不考虑,请使用其他的优秀项目,例如:ChatNextWeb
  3. 为什么报错 429 ERR_SERVICE_UNAVAILABLE,如何解决?
    • 非 Vercel 容易出现此问题,由于 DDG API 限制单 IP 并发,建议减少并发量,同时使用代理池进行请求。

交流群组

Telegram

Contributors

LICENSE

MIT License