sc / README.md
LerinaOwO's picture
Upload 6 files
79d8a2e verified
|
Raw
History Blame Contribute Delete
2.51 kB
---
title: SCNet OpenAI API Proxy
emoji: 🐳
colorFrom: blue
colorTo: gray
sdk: docker
app_port: 7860
pinned: false
---
# SCNet → OpenAI Compatible API Proxy
这是一个可以部署到 Hugging Face Space 的 Docker 版本,提供 OpenAI 兼容接口:
- `POST /v1/chat/completions`
- `GET /v1/models`
- `GET /healthz`
- `GET /`
## 部署步骤
1. 在 Hugging Face 新建一个 Space,SDK 选择 **Docker**
2. 把本目录里的文件上传到 Space 仓库根目录:
- `README.md`
- `Dockerfile`
- `go.mod`
- `main.go`
- `.dockerignore`
3. 在 Space 的 **Settings → Variables and secrets** 里按需添加环境变量。
4. Space 自动 build 完成后即可使用。
## 环境变量
| 变量 | 必填 | 说明 |
| --- | --- | --- |
| `API_KEY` | 否 | 设置后,调用方必须使用 `Authorization: Bearer <API_KEY>`。不设置则无鉴权。 |
| `SCNET_USERNAME` | 否 | SCNet 登录用户名。需要联网搜索模型时建议设置。 |
| `SCNET_PASSWORD` | 否 | SCNet 登录密码,建议在 Hugging Face Secrets 中设置。 |
| `SCNET_MAX_SESSIONS` | 否 | 最大缓存会话数,默认 `10`。 |
| `VERBOSE` | 否 | 设置为 `true``1` 输出更详细日志。 |
| `SCNET_CLEAN_ON_START` | 否 | 设置为 `true` 时启动时清理远端会话。默认不清理。 |
| `SCNET_CLEAN_ON_SHUTDOWN` | 否 | 设置为 `false` 时关闭时不清理远端会话。默认清理。 |
| `CACHE_FILE` | 否 | 会话缓存路径,默认 `/tmp/conversations.json`。 |
| `PORT` | 否 | Hugging Face 默认使用 `7860`,通常不需要改。 |
## 调用示例
`<SPACE_URL>` 换成你的 Space 地址,例如 `https://用户名-Space名.hf.space`
```bash
curl <SPACE_URL>/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY" \
-d '{
"model": "deepseek-v4-pro",
"messages": [
{"role": "user", "content": "你好"}
],
"stream": false
}'
```
如果没有设置 `API_KEY`,删除 `Authorization` 这一行。
## 可用模型
匿名模式通常可用:
- `deepseek-v4-pro`
- `deepseek-v4-flash`
设置 `SCNET_USERNAME` / `SCNET_PASSWORD` 并登录成功后,还会暴露:
- `deepseek-v4-pro-search`
- `deepseek-v4-flash-search`
## 本地 Docker 测试
```bash
docker build -t scnet-hf-space .
docker run --rm -p 7860:7860 \
-e API_KEY=your_api_key \
scnet-hf-space
```
然后访问:
```bash
curl http://localhost:7860/healthz
curl http://localhost:7860/v1/models
```