metadata
title: Tenbin OpenAI API Adapter
emoji: 🚀
colorFrom: blue
colorTo: green
sdk: docker
app_port: 8000
license: apache-2.0
Tenbin OpenAI API 适配器 - Hugging Face 部署
这个 Hugging Face Space 部署了一个与 OpenAI API 兼容的 Tenbin 适配器。它通过拉取一个预先构建好的私有 Docker 镜像来运行两个核心服务:
- Turnstile-Solver: 自动解决 Cloudflare 验证码的服务 (运行在端口 5000,仅内部访问)。
- API 适配器: 将 OpenAI 请求转换为 Tenbin 请求的主服务 (暴露在端口 8000)。
🚀 部署和配置指南
1. 设置仓库 Secrets
为了让 Hugging Face 能够拉取私有的 GitHub Docker 镜像,你必须在你的 Space 的 Settings -> Repository secrets 页面中设置以下两个 secret:
DOCKER_USERNAME: 你的 GitHub 用户名 (例如:fuwei99)DOCKER_PASSWORD: 你的 GitHub Personal Access Token (PAT)。- 你可以在 GitHub Tokens 页面 创建一个新的 PAT。
- 创建时,必须授予
read:packages权限。
2. 添加配置文件
本项目需要三个 JSON 配置文件才能运行。请在你的 Space 仓库的根目录下创建以下文件 (Files and versions -> Add file -> Create a new file):
tenbin.json
存储你的 Tenbin 账户 session_id。
[
{
"session_id": "your_tenbin_session_id_here"
}
]
client_api_keys.json
存储允许访问此服务的客户端 API 密钥。
[
"sk-your-secret-key-1",
"sk-your-secret-key-2"
]
models.json
模型映射表。你可以使用项目提供的默认版本。
{
"claude-3-opus": "AnthropicClaude3Opus",
"claude-3-sonnet": "AnthropicClaude3Sonnet",
"claude-3-haiku": "AnthropicClaude3Haiku",
"claude-3.5-sonnet": "AnthropicClaude35Sonnet",
"claude-3.7-sonnet": "AnthropicClaude37Sonnet",
"claude-3.7-sonnet-extended": "AnthropicClaude37SonnetExtended",
"gpt-4o": "OpenAIGPT4o",
"gpt-4-turbo": "OpenAIGPT4Turbo",
"gemini-1.5-pro": "GoogleGemini15Pro",
"gemini-1.5-flash": "GoogleGemini15Flash",
"llama-3-70b": "MetaLLama370b"
}
3. 等待构建
完成以上步骤后,Hugging Face 会自动使用 Dockerfile 进行构建并启动服务。你可以在 "Logs" 标签页查看启动进度。当看到 API 服务成功启动的日志时,即表示部署完成。
⚙️ API 使用
服务启动后,API 端点是你的 Space URL,例如: https://your-username-your-space-name.hf.space/v1
import openai
client = openai.OpenAI(
api_key="sk-your-secret-key-1", # 使用你在 client_api_keys.json 中设置的密钥
base_url="https://your-username-your-space-name.hf.space/v1"
)
response = client.chat.completions.create(
model="claude-3.7-sonnet",
messages=[
{"role": "user", "content": "Hello!"}
]
)
print(response.choices[0].message.content)