일반 소개
DDG-Chat은 여러 플랫폼에 원클릭 배포를 제공하는 것을 목표로 하는 오픈 소스 프로젝트입니다. ChatGPT API 백엔드. 이 프로젝트는 GPT-4o mini, Claude 3 Haiku, Llama 3.1 70B, Mixtral 8x7B를 포함한 여러 모델을 지원하며, 모두 DuckDuckGo에서 익명으로 제공합니다. 모든 모델은 DuckDuckGo에서 익명으로 제공합니다. 사용자는 Vercel, Cloudflare Workers, Docker 및 기타 플랫폼을 통해 API 백엔드를 쉽게 배포하고 사용할 수 있습니다.
DDG API는 동시 접속자 수를 단일 IP로 제한하므로 배포 시 Vercel을 사용하거나 Docker와 같은 로컬 배포를 사용하는 경우 프로젝트가 프록시 풀에서 실행되고 있는지 확인하는 것이 좋습니다.
기능 목록
- 여러 ChatGPT 모델 지원
- 클릭 한 번으로 Vercel, Cloudflare Workers, Docker 등에 배포하세요!
- 타사 애플리케이션을 위한 API 인터페이스 제공
- 클라우드 및 로컬 배포를 포함한 다양한 배포 방법 지원
- 자세한 배포 및 사용 설명서 제공
도움말 사용
설치 및 배포
버셀 배포
- 클라우드 포크 리포지토리 배포: (Vercel 원클릭 배포)
- 이 리포지토리를 GitHub 계정으로 포크하세요.
- Vercel 새 프로젝트 페이지로 이동하여 방금 포크한 리포지토리를 가져옵니다.
- 배포를 클릭하여 배포를 완료합니다.
- 로컬 클론 리포지토리 배포:
- 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 Workers 배포
- Cloudflare Workers 및 Pages 콘솔로 이동하여 작업자를 생성합니다.
- 작업자 설정에서 런타임을 nodejs_compat로 설정합니다.
- 리포지토리에서 코드 붙여넣기작업자로 이동하여 배포를 클릭합니다.
도커 배포
- 명령줄 빌드:
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 배포 제한 사항무료 버전은 한 번의 API 요청에 60초가 걸리며 한 달에 100,000번의 API 호출이 가능합니다.
- 오류 429 ERR_SERVICE_UNAVAILABLE비-Vercel은 이 문제가 발생하기 쉬운데, DDG API가 단일 IP 동시성을 제한하기 때문에 동시성을 줄이고 요청에 프록시 풀을 사용하는 것이 좋습니다.
대체 Go 버전 배포: 무료 서버 서버00 배포 상주 서비스
- serv00 패널로 이동하여 DNS 영역을 클릭하고 새 영역 추가를 클릭하여 사용자 지정 도메인 이름을 추가합니다.
- 참조로 이동하여 A-레코드 구문 분석 추가하기
- 추가 서비스를 클릭하고 내 애플리케이션 실행을 클릭합니다.
Enabled
- 포트 열기 5005를 열겠습니다.
- WWW 웹사이트를 클릭하고 웹사이트 도메인 추가를 클릭하여 자신의 도메인 이름을 입력합니다.

- 파일을 다운로드하려면 클릭하세요. 파일에 실행 권한 부여
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 KEY를 설정할 수 있습니다.
Serv00 사용자 아이디를 자신의 아이디로 변경합니다.
example.com을 자신의 도메인 이름으로 변경
PORT 열린 포트가 5005가 아닌 경우 변경할 수 있습니다.
배포가 완료된 후 도메인에 액세스하면 성공 여부를 나타내는 다음과 같은 메시지가 반환됩니다:
{ "message": "Welcome to the API" }
빌드 후 뉴에이피에 액세스
새 API/하나의 API 사용자 지정 채널 선택http://chat.xxl.serv00.net/v1/chat/completions
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...