File size: 1,922 Bytes
96601d6 |
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 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
---
title: Q
emoji: 🏢
colorFrom: indigo
colorTo: purple
sdk: docker
pinned: false
license: mit
app_port: 8000
---
# 通义千问 API 代理服务器
这是一个基于 FastAPI 实现的通义千问 API 代理服务器,用于转发和处理与通义千问 API 的通信。
## 主要功能
- 模型列表获取 API
- 聊天完成 API
- 支持流式响应
- 内置模型列表缓存机制
- 自动重试机制
## 环境要求
- Python 3.7+
- FastAPI 0.104.1+
- Uvicorn 0.24.0+
- HTTPX 0.25.1+
## 安装步骤
1. 克隆项目到本地
2. 安装依赖:
```bash
pip install -r requirements.txt
```
3. 使用 Docker(可选):
```bash
docker build -t qwen-api-proxy .
docker run -p 8000:8000 qwen-api-proxy
```
## 运行服务
```bash
python qwen.py
```
或使用 uvicorn:
```bash
uvicorn qwen:app --host 0.0.0.0 --port 8000
```
服务将在 http://localhost:8000 上运行。
## API 接口说明
### 1. 获取模型列表
```
GET /api/models
Header: Authorization: Bearer <your-token>
```
返回可用的模型列表,结果会被缓存1小时。
### 2. 聊天完成
```
POST /api/chat/completions
Header: Authorization: Bearer <your-token>
{
"model": "string",
"messages": [
{
"role": "user",
"content": "string"
}
],
"stream": boolean,
"max_tokens": number (可选)
}
```
支持流式和非流式响应,可以通过 stream 参数控制。
## 错误处理
- 服务内置了自动重试机制,最多重试3次
- 500错误或HTML响应会触发重试
- 401错误表示未授权,需要检查token
- 400错误表示请求参数有误
## 获取 API Key
1. 访问 https://chat.qwenlm.ai/ 并登录
2. 打开浏览器开发者工具(通常按 F12)
3. 切换到"应用程序"选项卡
4. 在左侧菜单中选择"Cookies" -> "https://chat.qwenlm.ai"
5. 找到名称为"token"的cookie
6. 复制其值,这就是你的API Key
|