q / README.md
yangjianchuan
first commit
96601d6
metadata
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. 安装依赖:

pip install -r requirements.txt
  1. 使用 Docker(可选):
docker build -t qwen-api-proxy .
docker run -p 8000:8000 qwen-api-proxy

运行服务

python qwen.py

或使用 uvicorn:

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