Spaces:
Sleeping
Sleeping
File size: 2,624 Bytes
2f1fad0 57f1ad7 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | ---
title: OnDemand API Proxy
emoji: 🚀
colorFrom: blue
colorTo: purple
sdk: docker
sdk_version: "3.10"
app_file: openai_ondemand_adapter.py
pinned: false
---
# OnDemand API Proxy
使用 Flask 开发的 OpenAI/OpenChat 兼容代理,支持 HuggingFace Space 上部署。内置 KEY 池,支持自动失效切换,并提供基于 Huggingface Space Secrets 的接口鉴权。
## 特性 (Features)
- **多 KEY 池轮询**:支持自动失效禁用和恢复。
- **OpenAI Chat/Completion API 支持**:兼容标准格式。
- **接口权限控制**:基于 `PRIVATE_KEY` 请求头的权限验证。
- **一键部署到 HuggingFace Spaces**。
- **多模型自动路由**:根据需求选择适配模型。
---
## 快速部署 (Quick Start)
### 1. 克隆项目 (Clone)
### 2. 添加 OnDemand API Key
编辑 `ONDEMAND_APIKEYS` 数组,将你的可用 KEY 逐行填入(至少一个):
```python
ONDEMAND_APIKEYS = [
"请换为你自己的OnDemand API KEY1",
"请换为你自己的OnDemand API KEY2",
]
```
### 3. 一键部署 (Deploy)
将代码推送到 HuggingFace Space,即可自动运行服务。
---
### 配置 API网址 和 PRIVATE_KEY
### 1. 设置 API网址
https://用户名-空间名.hf.space/v1
替换到需要调用 API 的地方。
### 2. 配置 Secrets 中的 PRIVATE_KEY
在 HuggingFace Space 的 Settings -> Secrets 页面中,添加以下配置:
PRIVATE_KEY 自定义的访问密钥(例如一段复杂的密码,默认为114514)用于接口权限验证,请勿公开。
---
通过以上配置,你即可完成 API 的集成,并使用 PRIVATE_KEY 对接口权限进行有效控制!
---
## 重要说明 (Important Notice)
1. 项目仅为 API 代理,请勿存储非法内容或滥用接口。
2. 如需扩展更多路径或更改权限逻辑,请修改 `check_private_key` 函数。
3. KEY 池中的所有 Key 会周期性健康检测,失效的 Key 会自动跳过。
4. 对话间隔超过时间(可自定义在代码内,默认十分钟)自动切换下一个账号,自动新建 session,开始新的上下文。
---
## 常见问题 (FAQ)
**Q: 如何修改密钥?**
A: 在 HuggingFace Space 的 Secrets 中修改 `PRIVATE_KEY` 即可,无需停服。
**Q: KEY 用完/失效会怎样?**
A: 自动切换到下一个可用 KEY。若全部 KEY 失效,返回 `500` 状态码并间隔自动重试。
**Q: 可以支持自定义 API 路径或白名单吗?**
A: 可以,通过修改 `check_private_key()` 函数,指定哪些路径需要或不需要鉴权。
---
通过本 `README`,你可以轻松快速部署和使用 OnDemand API Proxy!
|