DDG-Chat: Despliegue del backend Chat2API con un solo clic, DuckDuckGo a las API
Últimos recursos sobre IAActualizado hace 9 meses Círculo de intercambio de inteligencia artificial 3K 00
Introducción general
DDG-Chat es un proyecto de código abierto cuyo objetivo es ofrecer una implantación en múltiples plataformas del ChatGPT API backend. El proyecto soporta múltiples modelos, incluyendo GPT-4o mini, Claude 3 Haiku, Llama 3.1 70B, y Mixtral 8x7B, todos proporcionados anónimamente por DuckDuckGo. Todos los modelos son proporcionados de forma anónima por DuckDuckGo. Los usuarios pueden implementar y utilizar fácilmente el backend de la API a través de Vercel, Cloudflare Workers, Docker y otras plataformas.
Dado que la API DDG limita el número de concurrencias a una única IP, se recomienda utilizar Vercel para el despliegue o, si se utiliza un despliegue local como Docker, asegurarse de que el proyecto se ejecuta en un grupo proxy.
Lista de funciones
- Admite varios modelos ChatGPT
- Despliegue con un solo clic en Vercel, Cloudflare Workers, Docker, etc.
- Proporcionar una interfaz API para aplicaciones de terceros
- Admite múltiples métodos de despliegue, incluidos el despliegue en la nube y el despliegue local.
- Proporcionar documentación detallada sobre la implantación y el uso
Utilizar la ayuda
Instalación y despliegue
Despliegue de Vercel
- Despliegue del repositorio Cloud Fork: (Vercel Implantación en un clic)
- Abre este repositorio en tu cuenta de GitHub.
- Ve a la página de Vercel Nuevo Proyecto e importa el repositorio que acabas de bifurcar.
- Haga clic en Desplegar para completar el despliegue.
- Despliegue local del repositorio de clones:
- Asegúrate de que tienes un entorno Node.js.
- Ejecute el siguiente comando:
npm i -g vercel vercel login git clone https://github.com/leafmoes/DDG-Chat.git ddg-chat cd ddg-chat npm run publish
Implementación de trabajadores de Cloudflare
- Vaya a la consola de trabajadores y páginas de Cloudflare y cree un trabajador.
- En la configuración de Workers, establece el tiempo de ejecución en nodejs_compat.
- Pegue el código del repositorioVe a tus Trabajadores y haz clic en Desplegar.
Despliegue de Docker
- Construcción por línea de comandos:
docker run -it -d --name ddg-chat -p 8787:8787 ghcr.io/leafmoes/ddg-chat:latest
- Construya utilizando el archivo docker-compose.yml:
- Descargue y guarde el archivo docker-compose.yml.
- Inicie el servicio ejecutando el siguiente comando en el directorio donde se encuentra el archivo:
docker-compose up -d
variable de entorno
# API 调用的前缀地址 API_PREFIX = '/' # 作为调用 API 验证的 API Key API_KEY = 'dummy_key' # 向 DDG 发送请求失败的重试次数 MAX_RETRY_COUNT = 3 # 向 DDG 发送请求失败的重试延迟,单位 ms RETRY_DELAY = 5000
Uso de la API
interfaz de llamada
Utilice una aplicación ChatGPT de terceros para llamar a la interfaz, como ChatNextWeb. a continuación se muestra un ejemplo de solicitud de diálogo:
curl --request POST 'https://你的域名/v1/chat/completions' \
--header 'Content-Type: application/json' \
--data '{
"messages": [
{
"role": "user",
"content": "你好!"
}
],
"model": "gpt-4o-mini",
"stream": true
}'
Modelo de consulta
entrevistas https://你的域名/v1/models
Permite ver los modelos admitidos actualmente.
problemas comunes
- Limitaciones del despliegue de VercelLa versión gratuita tarda 60 segundos en realizar una única solicitud API y 100.000 llamadas API al mes.
- Error 429 ERR_SERVICE_UNAVAILABLEEl DDG API limita la concurrencia de una sola IP, por lo que se recomienda reducir la concurrencia y utilizar un grupo de proxy para las solicitudes.
Despliegue alternativo de la versión go: despliegue gratuito del servidor serv00 servicio residente
- Vaya al panel serv00 y haga clic en Zonas DNS y haga clic en Añadir nueva zona para añadir su propio nombre de dominio personalizado.
- Ir a cf para añadir el análisis sintáctico del registro A
- Haga clic en Servicios adicionales y en Ejecutar sus propias aplicaciones.
Enabled
- Abre un puerto. Estoy abriendo el 5005.
- Haga clic en Sitios web WWW Haga clic en Añadir dominio de sitio web para introducir su propio nombre de dominio.

- Haga clic para descargar el archivo Concesión de permisos de ejecución a ficheros
chmod +x ddgchatgo-freebsd-amd64
- existe
public_html
Cree un script de inicio enstart_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
- Concesión de privilegios de ejecución de scripts
chmod +x start_api.sh
- La primera vez que ejecute cron, sólo tiene que ejecutar el siguiente comando
nohup /home/你的Serv00用户名/domains/example.com/public_html/start_ddgchatgo.sh > /home/你的Serv00用户名/domains/example.com/public_html/start_ddgchatgo.log 2>&1 &
Cambia tu nombre de usuario Serv00 por el tuyo.
ejemplo.com a su propio nombre de dominio
PUERTO Si el puerto abierto no es 5005, puede cambiarlo.
Scripts de instalación con un solo clic
#!/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 &
En scripts de un clichttps://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.2/ddgchatgo-freebsd-amd64
Sustituir porhttps://github.com/Shadownc/DDG-Chat-go/releases/download/v0.0.4/ddgchatgo-freebsd-amd64
Se puede establecer la CLAVE API.
Cambia tu nombre de usuario Serv00 por el tuyo.
ejemplo.com a su propio nombre de dominio
PUERTO Si el puerto abierto no es 5005, puede cambiarlo.
Una vez completado el despliegue, el acceso al dominio devuelve lo siguiente para indicar el éxito:
{ "message": "Welcome to the API" }
Acceso a newapi después de la construcción
nueva api/una api seleccionar canales personalizadoshttp://chat.xxl.serv00.net/v1/chat/completions
© declaración de copyright
Derechos de autor del artículo Círculo de intercambio de inteligencia artificial Todos, por favor no reproducir sin permiso.
Artículos relacionados
Sin comentarios...