--- 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 ``` 返回可用的模型列表,结果会被缓存1小时。 ### 2. 聊天完成 ``` POST /api/chat/completions Header: Authorization: Bearer { "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