DDG-Chat: развертывание бэкенда Chat2API одним щелчком мыши, DuckDuckGo для API
Общее введение
DDG-Chat - это проект с открытым исходным кодом, цель которого - обеспечить развертывание в один клик на различных платформах ChatGPT Бэкэнд API. Проект поддерживает множество моделей, включая GPT-4o mini, Claude 3 Haiku, Llama 3.1 70B и Mixtral 8x7B, все анонимно предоставлены DuckDuckGo. Все модели предоставляются DuckDuckGo анонимно. Пользователи могут легко развернуть и использовать API-бэкенд через Vercel, Cloudflare Workers, Docker и другие платформы.
Поскольку DDG API ограничивает количество параллелей одним IP, рекомендуется использовать Vercel для развертывания, или, если вы используете локальное развертывание, например Docker, убедитесь, что проект запущен в пуле прокси.
Список функций
- Поддержка нескольких моделей ChatGPT
- Развертывание в один клик в Vercel, Cloudflare Workers, Docker и другие!
- Предоставление API-интерфейса для приложений сторонних разработчиков
- Поддержка различных методов развертывания, включая облачное и локальное развертывание.
- Предоставление подробной документации по развертыванию и использованию
Использование помощи
Установка и развертывание
Развертывание Верселя
- Развертывание репозитория Cloud Fork: (Развертывание Vercel в один клик)
- Форкните этот репозиторий на свой аккаунт GitHub.
- Перейдите на страницу Vercel New Project и импортируйте репозиторий, который вы только что форкнули.
- Нажмите кнопку Развернуть, чтобы завершить развертывание.
- Локальное развертывание клонированного репозитория:
- Убедитесь, что у вас есть среда Node.js.
- Выполните следующую команду:
npm i -g vercel vercel login git clone https://github.com/leafmoes/DDG-Chat.git ddg-chat cd ddg-chat npm run publish
Развертывание рабочих станций Cloudflare
- Перейдите в консоль Cloudflare Workers and Pages и создайте рабочего.
- В настройках Workers установите время выполнения на nodejs_compat.
- Вставьте код из репозиторияПерейдите в раздел "Рабочие" и нажмите "Развернуть".
Развертывание Docker
- Сборка с помощью командной строки:
docker run -it -d --name ddg-chat -p 8787:8787 ghcr.io/leafmoes/ddg-chat:latest
- Выполните сборку с помощью файла docker-compose.yml:
- Загрузите и сохраните файл docker-compose.yml.
- Запустите службу, выполнив следующую команду в каталоге, где находится файл:
docker-compose up -d
переменная окружения
# API 调用的前缀地址 API_PREFIX = '/' # 作为调用 API 验证的 API Key API_KEY = 'dummy_key' # 向 DDG 发送请求失败的重试次数 MAX_RETRY_COUNT = 3 # 向 DDG 发送请求失败的重试延迟,单位 ms RETRY_DELAY = 5000
Использование API
интерфейс вызова
Для вызова интерфейса используйте стороннее приложение ChatGPT, например ChatNextWeb. Ниже приведен пример запроса на диалог:
curl --request POST 'https://你的域名/v1/chat/completions' \
--header 'Content-Type: application/json' \
--data '{
"messages": [
{
"role": "user",
"content": "你好!"
}
],
"model": "gpt-4o-mini",
"stream": true
}'
Запрос модели
интервью https://你的域名/v1/models
Позволяет просмотреть поддерживаемые в настоящее время модели.
общие проблемы
- Ограничения при развертывании Vercel: Бесплатная версия требует 60 секунд для одного запроса API и 100 000 вызовов API в месяц.
- Ошибка 429 ERR_SERVICE_UNAVAILABLE: Не-Vercel подвержены этой проблеме, так как DDG API ограничивает параллелизм одного IP, рекомендуется уменьшить параллелизм, а также использовать пул прокси для запросов.
Альтернативная версия развертывания: бесплатный сервер serv00 развертывание резидентной службы
- Перейдите на панель serv00, нажмите на DNS-зоны и нажмите на кнопку Добавить новую зону, чтобы добавить свое собственное доменное имя.
- Перейдите в раздел cf, чтобы добавить разбор A-записей
- Щелкните Дополнительные службы и выберите Запуск собственных приложений.
Enabled
- Откройте порт. Я открываю 5005.
- Нажмите WWW Websites (Веб-сайты) Нажмите Add website Domain (Добавить домен сайта), чтобы ввести собственное доменное имя.

- Нажмите, чтобы скачать файл Предоставление исполняемых разрешений файлам
chmod +x ddgchatgo-freebsd-amd64
- существовать
public_html
Создайте сценарий запуска в разделеstart_ddgchatgo.sh
#!/bin/bash # 定义进程名称和启动命令 PROCESS_NAME="ddgchatgo" START_COMMAND="PORT=5005 /home/你的Serv00用户名/domains/example.com/public_html/ddgchatgo-freebsd-amd64 > /home/你的Serv00用户/domains/example.com/public_html/ddgchatgo.log 2>&1 &" # 检查进程是否在运行 if ! pgrep -f "$PROCESS_NAME" > /dev/null then echo "进程 $PROCESS_NAME 未运行,正在启动..." # 启动进程 eval "$START_COMMAND" if [ $? -eq 0 ]; then echo "进程 $PROCESS_NAME 启动成功。" else echo "进程 $PROCESS_NAME 启动失败。" fi else echo "进程 $PROCESS_NAME 已经在运行。" fi
- Предоставление привилегий на выполнение сценариев
chmod +x start_api.sh
- При первом запуске cron просто выполните следующую команду
nohup /home/你的Serv00用户名/domains/example.com/public_html/start_ddgchatgo.sh > /home/你的Serv00用户名/domains/example.com/public_html/start_ddgchatgo.log 2>&1 &
Измените имя пользователя Serv00 на свое собственное.
example.com на ваше собственное доменное имя
PORT Если открытый порт не равен 5005, вы можете изменить его.
#!/bin/bash
# Step 1: 进入工作目录
cd ~/domains/example.com/public_html/
# Step 2: 下载可执行程序
wget https://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.2/ddgchatgo-freebsd-amd64
# Step 3: 赋予解压后freechatgpt文件可执行权限
chmod +x ddgchatgo-freebsd-amd64
# Step 4: 创建start_ddgchatgo.sh脚本
cat <<EOL > start_ddgchatgo.sh
#!/bin/bash
# 定义进程名称和启动命令
PROCESS_NAME="ddgchatgo"
START_COMMAND="PORT=5005 /home/你的Serv00用户名/domains/example.com/public_html/ddgchatgo-freebsd-amd64 > /home/你的Serv00用户名/domains/example.com/public_html/ddgchatgo.log 2>&1 &"
# 检查进程是否在运行
if ! pgrep -f "\$PROCESS_NAME" > /dev/null
then
echo "进程 \$PROCESS_NAME 未运行,正在启动..."
# 启动进程
eval "\$START_COMMAND"
if [ \$? -eq 0 ]; then
echo "进程 \$PROCESS_NAME 启动成功。"
else
echo "进程 \$PROCESS_NAME 启动失败。"
fi
else
echo "进程 \$PROCESS_NAME 已经在运行。"
fi
EOL
# Step 5: 赋予start_ddgchatgo.sh可执行权限
chmod +x start_ddgchatgo.sh
# Step 6: 运行start_ddgchatgo.sh脚本并将日志输出到start_ddgchatgo.log
nohup /home/你的Serv00用户名/domains/example.com/public_html/start_ddgchatgo.sh > /home/你的Serv00用户名/domains/example.com/public_html/start_ddgchatgo.log 2>&1 &
В сценариях с одним щелчком мышиhttps://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.2/ddgchatgo-freebsd-amd64
Заменить наhttps://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.4/ddgchatgo-freebsd-amd64
Можно установить ключ API.
Измените имя пользователя Serv00 на свое собственное.
example.com на ваше собственное доменное имя
PORT Если открытый порт не равен 5005, вы можете изменить его.
После завершения развертывания доступ к домену дает следующее сообщение об успехе:
{ "message": "Welcome to the API" }
Доступ к newapi после создания
новый api/один api выбор пользовательских каналовhttp://chat.xxl.serv00.net/v1/chat/completions
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...