首页 全部接口 API文档 文章 贡献者 友链 赞助 关于
登录/注册

用 Chat2API 把大模型网页版变成本地 API,白嫖 DeepSeek、Qwen、Kimi 全家桶

封面
![239.png](https://www.xunjinlu.fun/img/239.png) ## Chat2API 是干嘛的 一句话概括:**把各家大模型的网页聊天界面,转成标准的 OpenAI API 格式,跑在你自己电脑上。** 原理也不复杂——它不走官方的付费 API 通道,而是模拟浏览器操作去驱动各家的 Web UI,然后在本地起一个代理服务,把返回结果包装成 OpenAI 的接口格式。 所以你只要在本地跑起来,任何支持 OpenAI API 的工具都能直接用,不用管后面实际调用的是哪个模型。 跟直接调官方 API 相比,大概是这样: | | 官方 API | Chat2API | |--|---------|----------| | 接入方式 | 每家单独对接 | 一个入口搞定 | | 费用 | 按 Token 计费 | 用网页端额度 | | 接口格式 | 各家不一样 | 统一 OpenAI 格式 | ![240.png](https://www.xunjinlu.fun/img/240.png) --- ## 两个版本 GitHub 上搜 Chat2API 会出来好几个项目,主要就这两个: - **[xiaoY233/Chat2API](https://github.com/xiaoY233/Chat2API)** — 桌面客户端,有图形界面,日常用比较方便 - **[LanQian528/chat2api](https://github.com/LanQian528/chat2api)** — Python 写的服务端版本,适合扔到服务器上跑 下面主要说桌面版怎么用。 --- ## 支持哪些模型 ![241.png](https://www.xunjinlu.fun/img/241.png) 目前覆盖的模型还挺全的: | 服务商 | 认证方式 | 模型 | |--------|---------|------| | DeepSeek | User Token | DeepSeek-V3.2 | | GLM(智谱) | Refresh Token | GLM-5 | | Kimi(月之暗面) | JWT Token | kimi-k2.5 | | MiniMax | JWT Token | MiniMax-M2.5 | | Perplexity | JWT Token | Sonar、Sonar Pro、Sonar Deep Research | | Qwen 国内版 | SSO Ticket | Qwen3.5-Plus、Qwen3-Max、Qwen3-Flash、Qwen3-Coder 等 | | Qwen 国际版 | JWT Token | Qwen3.5-Plus、Qwen3-Max、Qwen3-VL-Plus 等 | | Z.ai | JWT Token | GLM-5、GLM-4.7、GLM-4.6V、GLM-4.6 | 基本上国内主流的大模型都覆盖了。 ![242.png](https://www.xunjinlu.fun/img/242.png) --- ## 有什么亮点 ![243.png](https://www.xunjinlu.fun/img/243.png) 除了基本的模型转发,还有几个我觉得比较实用的功能: **OpenAI 兼容接口** 本地起一个代理服务(默认端口 8080),对外暴露标准的 `/v1/chat/completions` 接口。OpenWebUI、Cline、Roo-Code、Cherry Studio 这些工具直接填地址就能用,不用做任何适配。 **上下文管理** 聊久了上下文会越来越长,Token 消耗也跟着涨。Chat2API 内置了滑动窗口和自动摘要压缩,能控制每次请求带上多少上下文,不会一发消息就把额度吃光。 **Function Calling** 有些模型本身不支持工具调用,Chat2API 通过 prompt 工程模拟实现了通用的 Function Call 能力,在 Cherry Studio、Kilo Code 这些客户端里也能正常用。 **模型映射** 可以给模型起别名,比如把 `gpt-4` 映射到 DeepSeek,`gpt-3.5` 映射到 Qwen。客户端那边不用改任何配置,后端自动路由。 **自定义 Header** 通过加自定义请求头,可以触发各平台的一些高级功能,比如联网搜索、深度思考、深度研究之类的。 **仪表盘** 有个可视化的面板,能看请求量、Token 消耗、成功率,还有详细的请求日志,排查问题的时候挺方便。 --- ## 下载安装 ### Windows | 名称 | 下载地址 | |------|---------| | Chat2API Windows 版 | | | OpenWebUI 桌面端 | | ### macOS / Linux 去 [GitHub Releases](https://github.com/xiaoY233/Chat2API/releases) 下载对应版本就行: | 平台 | 格式 | |------|------| | macOS(Apple Silicon) | `.dmg` | | macOS(Intel) | `.dmg` | | Linux | `.AppImage` 或 `.deb` | macOS 如果提示"应用已损坏",终端跑一下: ```bash sudo xattr -rd com.apple.quarantine "/Applications/Chat2API.app" ``` ### 从源码构建 需要 Node.js 18+: ```bash git clone https://github.com/xiaoY233/Chat2API.git cd Chat2API npm install npx electron-vite dev ``` 打包的话: ```bash npm run build:mac # macOS npm run build:win # Windows npm run build:linux # Linux npm run build:all # 全平台 ``` ### Docker 部署(服务端版) ```bash docker run -d \ --name chat2api \ -p 5005:5005 \ lanqian528/chat2api:latest ``` 也可以用 Docker Compose: ```bash mkdir chat2api && cd chat2api wget https://raw.githubusercontent.com/LanQian528/chat2api/main/docker-compose.yml # 改一下环境变量 docker-compose up -d ``` --- ## 怎么用 ### 第一步:添加模型供应商 打开软件,侧边栏进 **Providers**,点 **Add Provider**,选你要用的服务商,填认证信息。 ![244.png](https://www.xunjinlu.fun/img/244.png) 拿 DeepSeek 举例,获取 Token 的方法: 1. 浏览器打开 [chat.deepseek.com](https://chat.deepseek.com/),登录 2. 随便发一条消息 3. `F12` 打开开发者工具 4. 进 **Application → Local Storage** 5. 找到 `userToken`,把值复制出来 6. 粘贴到 Chat2API 里 Qwen 的话类似,去通义千问网页版登录,从开发者工具里拿 SSO Ticket 就行。 ### 第二步:启动代理 进 **Proxy Settings**,端口默认 8080 就行,负载均衡策略看自己需求: | 策略 | 说明 | |------|------| | Round Robin | 轮流用各个账号 | | Fill First | 一个账号用到限额再切下一个 | | Failover | 挂了自动切换 | 点 **Start Proxy**,跑起来就 OK 了。 ### 第三步:测试一下 Python 测试: ```python from openai import OpenAI client = OpenAI( api_key="your-api-key", base_url="http://localhost:8080/v1" ) response = client.chat.completions.create( model="DeepSeek-V3.2", messages=[ {"role": "user", "content": "你好,介绍一下你自己"} ] ) print(response.choices[0].message.content) ``` curl 也行: ```bash curl --location 'http://localhost:8080/v1/chat/completions' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer your-api-key' \ --data '{ "model": "DeepSeek-V3.2", "messages": [{"role": "user", "content": "Hello!"}], "stream": true }' ``` ### 第四步:接客户端 不管你用的是 OpenWebUI、Cline 还是 Cherry Studio,配置都一样: ``` Base URL: http://localhost:8080/v1 API Key: 随便填一个就行 ``` 客户端那边以为在调 OpenAI,实际背后跑的是 DeepSeek 或者 Qwen,对用户完全透明。 ### API Key 管理(可选) 如果不想裸奔,可以在 **API Keys** 页面生成一个密钥,客户端那边填这个密钥就行。 --- ## 项目结构 顺便看一下代码结构,有兴趣的可以自己去翻: ``` Chat2API/ ├── src/ │ ├── main/ # Electron 主进程 │ │ ├── index.ts # 入口 │ │ ├── tray.ts # 系统托盘 │ │ ├── proxy/ # 代理服务 │ │ ├── ipc/ # 进程间通信 │ │ └── utils/ # 工具函数 │ ├── preload/ # 上下文桥接 │ └── renderer/ # React 前端 │ ├── components/ │ ├── pages/ │ ├── stores/ │ └── hooks/ ├── build/ └── scripts/ ``` 技术栈是 Electron + React + TypeScript + Tailwind CSS + Zustand + Koa,数据存在 `~/.chat2api/` 目录下。 --- ## 相关链接 | 资源 | 链接 | |------|------| | Chat2API 桌面版 | [GitHub](https://github.com/xiaoY233/Chat2API) | | Chat2API 服务端版 | [GitHub](https://github.com/LanQian528/chat2api) | | 官方文档 | [chat2api-doc.vercel.app](https://chat2api-doc.vercel.app/en) |

评论 (0)

暂无评论,快来发表第一条评论吧!