项目介绍:Claude to ChatGPT
项目概述
Claude to ChatGPT 项目旨在将 Anthropic 的 Claude 模型 API 转换为 OpenAI Chat API 格式,方便用户以类似于调用 OpenAI ChatGPT API 的方式来调用 Claude API。此项目支持流响应,并兼容 claude-instant-1
和 claude-2
模型。此外,用户可以通过 Cloudflare Workers 或 Docker 部署此项目。
快速开始
用户可以使用 Cloudflare Workers 或 Docker 来运行该项目。
部署方案
使用 Cloudflare Workers 部署
借助 Cloudflare Workers,用户无需服务器即可部署此项目。部署步骤如下:
- 创建一个 Cloudflare Worker。
- 在 Cloudflare Worker 的 “Quick Edit” 编辑器中粘贴
cloudflare-worker.js
中的代码。 - 保存并部署。
- (可选)为 Cloudflare Worker 设置自定义域名。
Cloudflare Workers 每天支持 10 万次请求。如果需要更多调用,建议使用 Docker 进行部署。
使用 Docker 部署
执行以下命令来运行 Docker:
docker run -p 8000:8000 wtzeng/claude-to-chatgpt:latest
使用 Docker Compose 部署
执行以下命令来运行 Docker Compose:
docker-compose up
API 将在 http://localhost:8000 提供服务。API 端点为:/v1/chat/completions
。
使用方法
当用户输入模型参数为 gpt-3.5-turbo
或 gpt-3.5-turbo-0613
时,系统会替换为 claude-instant-1
。否则将使用 claude-2
。
图形用户界面(GUI)
推荐使用以下支持此项目的 GUI 软件:
命令行界面(CLI)
可以使用以下命令行请求执行对话:
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $CLAUDE_API_KEY" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "Hello!"}]
}'
转换细节
Claude Completion API 的端点为 /v1/complete
,接收以下 JSON 请求:
{
"prompt": "\n\nHuman: Hello, AI.\n\nAssistant: ",
"model": "claude-instant-1",
"max_tokens_to_sample": 100,
"temperature": 1,
"stream": true
}
并返回包含选项和文本完成的 JSON 数据。
OpenAI Chat API 的类似端点 /v1/chat/completions
接收:
{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "user",
"content": "Hello, AI."
}
],
"max_tokens": 100,
"temperature": 1,
"stream": true
}
并返回包含响应字符串的 JSON 数据。
此项目在这两个 API 之间进行转换,从 Claude 模型获取完成的内容并将其格式化为 OpenAI Chat 的响应格式。
许可证
该项目根据 MIT 许可证授权使用。详细信息请参阅 LICENSE 文件。