[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-CJackHwang--AIstudioProxyAPI":3,"tool-CJackHwang--AIstudioProxyAPI":64},[4,23,32,40,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":22},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,2,"2026-04-05T10:45:23",[13,14,15,16,17,18,19,20,21],"图像","数据工具","视频","插件","Agent","其他","语言模型","开发框架","音频","ready",{"id":24,"name":25,"github_repo":26,"description_zh":27,"stars":28,"difficulty_score":29,"last_commit_at":30,"category_tags":31,"status":22},2181,"OpenHands","OpenHands\u002FOpenHands","OpenHands 是一个专注于 AI 驱动开发的开源平台，旨在让智能体（Agent）像人类开发者一样理解、编写和调试代码。它解决了传统编程中重复性劳动多、环境配置复杂以及人机协作效率低等痛点，通过自动化流程显著提升开发速度。\n\n无论是希望提升编码效率的软件工程师、探索智能体技术的研究人员，还是需要快速原型验证的技术团队，都能从中受益。OpenHands 提供了灵活多样的使用方式：既可以通过命令行（CLI）或本地图形界面在个人电脑上轻松上手，体验类似 Devin 的流畅交互；也能利用其强大的 Python SDK 自定义智能体逻辑，甚至在云端大规模部署上千个智能体并行工作。\n\n其核心技术亮点在于模块化的软件智能体 SDK，这不仅构成了平台的引擎，还支持高度可组合的开发模式。此外，OpenHands 在 SWE-bench 基准测试中取得了 77.6% 的优异成绩，证明了其解决真实世界软件工程问题的能力。平台还具备完善的企业级功能，支持与 Slack、Jira 等工具集成，并提供细粒度的权限管理，适合从个人开发者到大型企业的各类用户场景。",70612,3,"2026-04-05T11:12:22",[19,17,20,16],{"id":33,"name":34,"github_repo":35,"description_zh":36,"stars":37,"difficulty_score":10,"last_commit_at":38,"category_tags":39,"status":22},3074,"gpt4free","xtekky\u002Fgpt4free","gpt4free 是一个由社区驱动的开源项目，旨在聚合多种可访问的大型语言模型（LLM）和媒体生成接口，让用户能更灵活、便捷地使用前沿 AI 能力。它解决了直接调用各类模型时面临的接口分散、门槛高或成本昂贵等痛点，通过统一的标准将不同提供商的资源整合在一起。\n\n无论是希望快速集成 AI 功能的开发者、需要多模型对比测试的研究人员，还是想免费体验最新技术的普通用户，都能从中受益。gpt4free 提供了丰富的使用方式：既包含易于上手的 Python 和 JavaScript 客户端库，也支持部署本地图形界面（GUI），更提供了兼容 OpenAI 标准的 REST API，方便无缝替换现有应用后端。\n\n其技术亮点在于强大的多提供商支持架构，能够动态调度包括 Opus、Gemini、DeepSeek 等多种主流模型资源，并支持 Docker 一键部署及本地推理。项目秉持社区优先原则，在降低使用门槛的同时，也为贡献者提供了扩展新接口的便利框架，是探索和利用多样化 AI 资源的实用工具。",65970,"2026-04-04T01:02:03",[16,19,17],{"id":41,"name":42,"github_repo":43,"description_zh":44,"stars":45,"difficulty_score":10,"last_commit_at":46,"category_tags":47,"status":22},51,"gstack","garrytan\u002Fgstack","gstack 是 Y Combinator CEO Garry Tan 亲自开源的一套 AI 工程化配置，旨在将 Claude Code 升级为你的虚拟工程团队。面对单人开发难以兼顾产品战略、架构设计、代码审查及质量测试的挑战，gstack 提供了一套标准化解决方案，帮助开发者实现堪比二十人团队的高效产出。\n\n这套配置特别适合希望提升交付效率的创始人、技术负责人，以及初次尝试 Claude Code 的开发者。gstack 的核心亮点在于内置了 15 个具有明确职责的 AI 角色工具，涵盖 CEO、设计师、工程经理、QA 等职能。用户只需通过简单的斜杠命令（如 `\u002Freview` 进行代码审查、`\u002Fqa` 执行测试、`\u002Fplan-ceo-review` 规划功能），即可自动化处理从需求分析到部署上线的全链路任务。\n\n所有操作基于 Markdown 和斜杠命令，无需复杂配置，完全免费且遵循 MIT 协议。gstack 不仅是一套工具集，更是一种现代化的软件工厂实践，让单人开发者也能拥有严谨的工程流程。",64261,"2026-04-05T11:08:43",[17,16],{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":10,"last_commit_at":54,"category_tags":55,"status":22},193,"meilisearch","meilisearch\u002Fmeilisearch","Meilisearch 是一个开源的极速搜索服务，专为现代应用和网站打造，开箱即用。它能帮助开发者快速集成高质量的搜索功能，无需复杂的配置或额外的数据预处理。传统搜索方案往往需要大量调优才能实现准确结果，而 Meilisearch 内置了拼写容错、同义词识别、即时响应等实用特性，并支持 AI 驱动的混合搜索（结合关键词与语义理解），显著提升用户查找信息的体验。\n\nMeilisearch 特别适合 Web 开发者、产品团队或初创公司使用，尤其适用于需要快速上线搜索功能的场景，如电商网站、内容平台或 SaaS 应用。它提供简洁的 RESTful API 和多种语言 SDK，部署简单，资源占用低，本地开发或生产环境均可轻松运行。对于希望在不依赖大型云服务的前提下，为用户提供流畅、智能搜索体验的团队来说，Meilisearch 是一个高效且友好的选择。",56964,"2026-04-05T08:19:14",[13,17,14,20,16,18],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":10,"last_commit_at":62,"category_tags":63,"status":22},4022,"awesome-claude-skills","ComposioHQ\u002Fawesome-claude-skills","awesome-claude-skills 是一个精心整理的开源资源库，旨在帮助用户挖掘和扩展 Claude AI 的潜力。它不仅仅是一份列表，更提供了实用的“技能（Skills）”模块，让 Claude 从单纯的文本生成助手，进化为能执行复杂工作流的智能代理。\n\n许多用户在使用 AI 时，常受限于其无法直接操作外部软件或处理特定格式文件的痛点。awesome-claude-skills 通过预设的工作流解决了这一问题：它不仅能教会 Claude 专业地处理 Word、PDF 等文档，进行代码开发与数据分析，还能借助 Composio 插件连接 Slack、邮箱及数百种常用应用，实现发送邮件、创建任务等自动化操作。这使得重复性任务变得标准化且可复用，极大提升了工作效率。\n\n无论是希望优化日常办公流程的普通用户、需要处理复杂文档的研究人员，还是寻求将 AI 深度集成到开发管线中的开发者，都能从中找到适合的解决方案。其独特的技术亮点在于“技能”的可定制性与强大的应用连接能力，让用户无需编写复杂代码，即可通过简单的配置让 Claude 具备跨平台执行真实任务的能力。如果你希望让 Claude",51312,"2026-04-05T19:04:23",[17,16],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":81,"owner_email":82,"owner_twitter":83,"owner_website":84,"owner_url":85,"languages":86,"stars":118,"forks":119,"last_commit_at":120,"license":121,"difficulty_score":122,"env_os":123,"env_gpu":124,"env_ram":125,"env_deps":126,"category_tags":135,"github_topics":136,"view_count":10,"oss_zip_url":145,"oss_zip_packed_at":145,"status":22,"created_at":146,"updated_at":147,"faqs":148,"releases":183},3925,"CJackHwang\u002FAIstudioProxyAPI","AIstudioProxyAPI","FastAPI + Playwright + Camoufox 中间层代理服务器，兼容OpenAI API且支持参数转发。项目通过浏览器自动化将API请求转发到 Google AI Studio 网页，并同样按照OpenAI标准格式返回的工具。内置调试WebUI面板。","AIstudioProxyAPI 是一款巧妙的中间层代理服务，旨在将 Google AI Studio 的网页界面转化为标准的 OpenAI 兼容 API。它通过 Camoufox 和 Playwright 技术驱动浏览器自动化，在后台模拟真实用户操作访问 Google AI Studio，并将接收到的请求转发处理，最终以开发者熟悉的 OpenAI 格式返回结果。\n\n这一工具主要解决了无法直接通过 API 密钥调用 Google 最新模型（如 Gemini 系列）或受限于官方 API 配额的问题，让用户能够利用现有的 OpenAI 生态工具链无缝接入 Google 的先进能力。无论是需要快速集成多模型能力的开发者、进行对比实验的研究人员，还是希望在本地的 Open WebUI 等界面中直接使用 Gemini 模型的普通用户，都能从中受益。\n\n其技术亮点在于支持三种灵活的函数调用模式（auto\u002Fnative\u002Femulated）并具备失败自动回退机制，确保调用的稳定性。此外，它还内置了认证配置文件自动轮转与 Cookie 周期刷新功能，有效维持会话长期可用。项目自带现代化的 Web UI ","AIstudioProxyAPI 是一款巧妙的中间层代理服务，旨在将 Google AI Studio 的网页界面转化为标准的 OpenAI 兼容 API。它通过 Camoufox 和 Playwright 技术驱动浏览器自动化，在后台模拟真实用户操作访问 Google AI Studio，并将接收到的请求转发处理，最终以开发者熟悉的 OpenAI 格式返回结果。\n\n这一工具主要解决了无法直接通过 API 密钥调用 Google 最新模型（如 Gemini 系列）或受限于官方 API 配额的问题，让用户能够利用现有的 OpenAI 生态工具链无缝接入 Google 的先进能力。无论是需要快速集成多模型能力的开发者、进行对比实验的研究人员，还是希望在本地的 Open WebUI 等界面中直接使用 Gemini 模型的普通用户，都能从中受益。\n\n其技术亮点在于支持三种灵活的函数调用模式（auto\u002Fnative\u002Femulated）并具备失败自动回退机制，确保调用的稳定性。此外，它还内置了认证配置文件自动轮转与 Cookie 周期刷新功能，有效维持会话长期可用。项目自带现代化的 Web UI 管理面板，提供直观的状态监控、日志查看及配置调整能力，配合无头模式启动选项，非常适合部署在服务器环境中作为稳定的后端服务使用。","# AI Studio Proxy API\n\n将 Google AI Studio 网页界面转换为 OpenAI 兼容 API 的代理服务。通过 Camoufox + Playwright 自动化，提供稳定可控的 API 访问。\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCJackHwang_AIstudioProxyAPI_readme_debf844fe8ea.png)](https:\u002F\u002Fwww.star-history.com\u002F#CJackHwang\u002FAIstudioProxyAPI&Date)\n\n---\n\n## 主要特性\n\n- **OpenAI 兼容 API**：支持 `\u002Fv1\u002Fchat\u002Fcompletions`、`\u002Fv1\u002Fmodels`\n- **函数调用三模式**：`auto` \u002F `native` \u002F `emulated`，支持失败回退\n- **认证轮转与 Cookie 刷新**：支持 profile 自动轮转、周期刷新与关停保存\n- **启动链路完整**：CLI 启动器、内置 Web UI、桌面 GUI 启动器\n- **现代化前端**：内置设置页、状态检查与日志能力\n- **CI\u002FCD 工作流**：PR 检查、Release、Upstream Sync\n\n## 系统要求\n\n| 组件 | 要求 | 推荐 |\n| --- | --- | --- |\n| Python | >=3.9, \u003C4.0 | 3.10+ \u002F 3.11+ |\n| 依赖管理 | Poetry | 最新版本 |\n| Node.js | 前端构建需要 | LTS |\n| 内存 | >=2GB | >=4GB |\n\n---\n\n## 🚀 快速开始\n\n### 1. 克隆并安装\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI.git\ncd AIstudioProxyAPI\npoetry install --with dev\n```\n\n### 2. 配置环境\n\n```bash\ncp .env.example .env\n```\n\n建议先确认：`PORT`、`STREAM_PORT`、`UNIFIED_PROXY_CONFIG`、`LAUNCH_MODE`、`FUNCTION_CALLING_MODE`。\n\n### 3. 首次认证并启动\n\n```bash\n# 首次建议 debug，完成登录并保存 auth\npoetry run python launch_camoufox.py --debug\n\n# 日常建议 headless\npoetry run python launch_camoufox.py --headless\n```\n\n### 快速测试\n\n```bash\n# 健康检查\ncurl http:\u002F\u002F127.0.0.1:2048\u002Fhealth\n\n# 模型列表\ncurl http:\u002F\u002F127.0.0.1:2048\u002Fv1\u002Fmodels\n\n# 聊天请求\ncurl -X POST http:\u002F\u002F127.0.0.1:2048\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"model\":\"gemini-2.5-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}'\n```\n\n访问 `http:\u002F\u002F127.0.0.1:2048\u002F` 使用内置 Web UI。\n\n---\n\n## 系统架构\n\n```mermaid\ngraph TD\n    subgraph \"用户端\"\n        User[\"用户\"]\n        WebUI[\"Web UI\"]\n        APIClient[\"API 客户端\"]\n    end\n\n    subgraph \"启动与配置\"\n        Launcher[\"launch_camoufox.py\"]\n        Env[\".env 配置\"]\n    end\n\n    subgraph \"核心服务\"\n        FastAPI[\"FastAPI 应用\u003Cbr\u002F>api_utils\u002F\"]\n        BrowserOps[\"页面控制与自动化\u003Cbr\u002F>browser_utils\u002F\"]\n        StreamProxy[\"流式代理\u003Cbr\u002F>stream\u002F\"]\n    end\n\n    subgraph \"外部依赖\"\n        Camoufox[\"Camoufox 浏览器\"]\n        AIStudio[\"Google AI Studio\"]\n    end\n\n    User --> Launcher\n    Launcher --> Env\n    WebUI --> FastAPI\n    APIClient --> FastAPI\n    FastAPI --> BrowserOps\n    FastAPI --> StreamProxy\n    BrowserOps --> Camoufox --> AIStudio\n    StreamProxy --> AIStudio\n```\n\n---\n\n## 运行模式\n\n| 命令 | 说明 | 场景 |\n| --- | --- | --- |\n| `python launch_camoufox.py --headless` | 无头模式 | 日常使用、服务器 |\n| `python launch_camoufox.py --debug` | 调试模式 | 首次认证、故障排查 |\n| `python launch_camoufox.py --virtual-display` | 虚拟显示 | Linux 无 GUI 环境 |\n\n---\n\n## ⚙️ 配置\n\n项目使用 `.env` 统一配置管理：\n\n```bash\ncp .env.example .env\n```\n\n核心配置示例：\n\n| 配置 | 默认值 | 说明 |\n| --- | --- | --- |\n| `PORT` | `2048` | 主 API 端口 |\n| `STREAM_PORT` | `3120` | 流式代理端口（`0` 关闭） |\n| `UNIFIED_PROXY_CONFIG` | 空 | HTTP\u002FHTTPS 代理 |\n| `AUTO_ROTATE_AUTH_PROFILE` | `true` | 认证自动轮转 |\n| `FUNCTION_CALLING_MODE` | `auto` | 函数调用模式 |\n\n详细项见：[配置参考](docs\u002Fconfiguration-reference.md)\n\n> 说明：配置默认值以 `.env.example` 为准；少数配置存在代码兜底默认值，详见配置参考中的说明。\n\n---\n\n## 📚 文档\n\n- [文档总览](docs\u002FREADME.md)\n- [快速开始](docs\u002Fquick-start.md)\n- [部署与运维指南](docs\u002Fdeployment-and-operations.md)\n- [API 使用说明](docs\u002Fapi-usage.md)\n- [函数调用模式](docs\u002Ffunction-calling.md)\n- [认证轮转与 Cookie 刷新](docs\u002Fauth-rotation-cookie-refresh.md)\n- [排障指南](docs\u002Ftroubleshooting.md)\n- [开发、测试与发布](docs\u002Fdevelopment-and-release.md)\n- [多实例 Docker 管理器](scripts\u002Fmulti-instance-manager\u002FREADME.md)\n\n---\n\n## 客户端配置示例\n\n以 Open WebUI 为例：\n\n1. 进入设置 -> 连接\n2. API Base URL 填 `http:\u002F\u002F127.0.0.1:2048\u002Fv1`\n3. 若你未配置 API Keys，可留空或填任意字符；若已配置，请填写有效 Key\n4. 保存后即可对话\n\n---\n\n## 开发检查\n\n```bash\npoetry run ruff check .\npoetry run pyright\npoetry run pytest\n```\n\n前端构建：\n\n```bash\ncd static\u002Ffrontend\nnpm ci\nnpm run build\n```\n\n---\n\n## 致谢\n\n- **项目发起与主要开发**: [@CJackHwang](https:\u002F\u002Fgithub.com\u002FCJackHwang)\n- **核心维护**（架构重构、测试体系）: [@NikkeTryHard](https:\u002F\u002Fgithub.com\u002FNikkeTryHard)\n- **功能完善、页面操作优化**: [@ayuayue](https:\u002F\u002Fgithub.com\u002Fayuayue)\n- **实时流式功能优化**: [@luispater](https:\u002F\u002Fgithub.com\u002Fluispater)\n- **项目重构贡献**: [@yattin](https:\u002F\u002Fgithub.com\u002Fyattin)（Holt）\n- **下游维护分支致谢作者**: [@MasuRii](https:\u002F\u002Fgithub.com\u002FMasuRii)\n- **社区支持**: [Linux.do 社区](https:\u002F\u002Flinux.do\u002F)\n\n## License\n\n[AGPLv3](LICENSE)\n\n## 支持作者\n\n如果本项目对你有帮助，欢迎支持作者持续开发：\n\n![支持作者](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCJackHwang_AIstudioProxyAPI_readme_e871e65ee08e.jpg)\n","# AI Studio 代理 API\n\n将 Google AI Studio 网页界面转换为 OpenAI 兼容 API 的代理服务。通过 Camoufox + Playwright 自动化，提供稳定可控的 API 访问。\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCJackHwang_AIstudioProxyAPI_readme_debf844fe8ea.png)](https:\u002F\u002Fwww.star-history.com\u002F#CJackHwang\u002FAIstudioProxyAPI&Date)\n\n---\n\n## 主要特性\n\n- **OpenAI 兼容 API**：支持 `\u002Fv1\u002Fchat\u002Fcompletions`、`\u002Fv1\u002Fmodels`\n- **函数调用三模式**：`auto` \u002F `native` \u002F `emulated`，支持失败回退\n- **认证轮转与 Cookie 刷新**：支持 profile 自动轮转、周期刷新与关停保存\n- **启动链路完整**：CLI 启动器、内置 Web UI、桌面 GUI 启动器\n- **现代化前端**：内置设置页、状态检查与日志能力\n- **CI\u002FCD 工作流**：PR 检查、Release、Upstream Sync\n\n## 系统要求\n\n| 组件 | 要求 | 推荐 |\n| --- | --- | --- |\n| Python | >=3.9, \u003C4.0 | 3.10+ \u002F 3.11+ |\n| 依赖管理 | Poetry | 最新版本 |\n| Node.js | 前端构建需要 | LTS |\n| 内存 | >=2GB | >=4GB |\n\n---\n\n## 🚀 快速开始\n\n### 1. 克隆并安装\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI.git\ncd AIstudioProxyAPI\npoetry install --with dev\n```\n\n### 2. 配置环境\n\n```bash\ncp .env.example .env\n```\n\n建议先确认：`PORT`、`STREAM_PORT`、`UNIFIED_PROXY_CONFIG`、`LAUNCH_MODE`、`FUNCTION_CALLING_MODE`。\n\n### 3. 首次认证并启动\n\n```bash\n# 首次建议 debug，完成登录并保存 auth\npoetry run python launch_camoufox.py --debug\n\n# 日常建议 headless\npoetry run python launch_camoufox.py --headless\n```\n\n### 快速测试\n\n```bash\n# 健康检查\ncurl http:\u002F\u002F127.0.0.1:2048\u002Fhealth\n\n# 模型列表\ncurl http:\u002F\u002F127.0.0.1:2048\u002Fv1\u002Fmodels\n\n# 聊天请求\ncurl -X POST http:\u002F\u002F127.0.0.1:2048\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"model\":\"gemini-2.5-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}'\n```\n\n访问 `http:\u002F\u002F127.0.0.1:2048\u002F` 使用内置 Web UI。\n\n---\n\n## 系统架构\n\n```mermaid\ngraph TD\n    subgraph \"用户端\"\n        User[\"用户\"]\n        WebUI[\"Web UI\"]\n        APIClient[\"API 客户端\"]\n    end\n\n    subgraph \"启动与配置\"\n        Launcher[\"launch_camoufox.py\"]\n        Env[\".env 配置\"]\n    end\n\n    subgraph \"核心服务\"\n        FastAPI[\"FastAPI 应用\u003Cbr\u002F>api_utils\u002F\"]\n        BrowserOps[\"页面控制与自动化\u003Cbr\u002F>browser_utils\u002F\"]\n        StreamProxy[\"流式代理\u003Cbr\u002F>stream\u002F\"]\n    end\n\n    subgraph \"外部依赖\"\n        Camoufox[\"Camoufox 浏览器\"]\n        AIStudio[\"Google AI Studio\"]\n    end\n\n    User --> Launcher\n    Launcher --> Env\n    WebUI --> FastAPI\n    APIClient --> FastAPI\n    FastAPI --> BrowserOps\n    FastAPI --> StreamProxy\n    BrowserOps --> Camoufox --> AIStudio\n    StreamProxy --> AIStudio\n```\n\n---\n\n## 运行模式\n\n| 命令 | 说明 | 场景 |\n| --- | --- | --- |\n| `python launch_camoufox.py --headless` | 无头模式 | 日常使用、服务器 |\n| `python launch_camoufox.py --debug` | 调试模式 | 首次认证、故障排查 |\n| `python launch_camoufox.py --virtual-display` | 虚拟显示 | Linux 无 GUI 环境 |\n\n---\n\n## ⚙️ 配置\n\n项目使用 `.env` 统一配置管理：\n\n```bash\ncp .env.example .env\n```\n\n核心配置示例：\n\n| 配置 | 默认值 | 说明 |\n| --- | --- | --- |\n| `PORT` | `2048` | 主 API 端口 |\n| `STREAM_PORT` | `3120` | 流式代理端口（`0` 关闭） |\n| `UNIFIED_PROXY_CONFIG` | 空 | HTTP\u002FHTTPS 代理 |\n| `AUTO_ROTATE_AUTH_PROFILE` | `true` | 认证自动轮转 |\n| `FUNCTION_CALLING_MODE` | `auto` | 函数调用模式 |\n\n详细项见：[配置参考](docs\u002Fconfiguration-reference.md)\n\n> 说明：配置默认值以 `.env.example` 为准；少数配置存在代码兜底默认值，详见配置参考中的说明。\n\n---\n\n## 📚 文档\n\n- [文档总览](docs\u002FREADME.md)\n- [快速开始](docs\u002Fquick-start.md)\n- [部署与运维指南](docs\u002Fdeployment-and-operations.md)\n- [API 使用说明](docs\u002Fapi-usage.md)\n- [函数调用模式](docs\u002Ffunction-calling.md)\n- [认证轮转与 Cookie 刷新](docs\u002Fauth-rotation-cookie-refresh.md)\n- [排障指南](docs\u002Ftroubleshooting.md)\n- [开发、测试与发布](docs\u002Fdevelopment-and-release.md)\n- [多实例 Docker 管理器](scripts\u002Fmulti-instance-manager\u002FREADME.md)\n\n---\n\n## 客户端配置示例\n\n以 Open WebUI 为例：\n\n1. 进入设置 -> 连接\n2. API Base URL 填 `http:\u002F\u002F127.0.0.1:2048\u002Fv1`\n3. 若你未配置 API Keys，可留空或填任意字符；若已配置，请填写有效 Key\n4. 保存后即可对话\n\n---\n\n## 开发检查\n\n```bash\npoetry run ruff check .\npoetry run pyright\npoetry run pytest\n```\n\n前端构建：\n\n```bash\ncd static\u002Ffrontend\nnpm ci\nnpm run build\n```\n\n---\n\n## 致谢\n\n- **项目发起与主要开发**: [@CJackHwang](https:\u002F\u002Fgithub.com\u002FCJackHwang)\n- **核心维护**（架构重构、测试体系）: [@NikkeTryHard](https:\u002F\u002Fgithub.com\u002FNikkeTryHard)\n- **功能完善、页面操作优化**: [@ayuayue](https:\u002F\u002Fgithub.com\u002Fayuayue)\n- **实时流式功能优化**: [@luispater](https:\u002F\u002Fgithub.com\u002Fluispater)\n- **项目重构贡献**: [@yattin](https:\u002F\u002Fgithub.com\u002Fyattin)（Holt）\n- **下游维护分支致谢作者**: [@MasuRii](https:\u002F\u002Fgithub.com\u002FMasuRii)\n- **社区支持**: [Linux.do 社区](https:\u002F\u002Flinux.do\u002F)\n\n## License\n\n[AGPLv3](LICENSE)\n\n## 支持作者\n\n如果本项目对你有帮助，欢迎支持作者持续开发：\n\n![支持作者](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCJackHwang_AIstudioProxyAPI_readme_e871e65ee08e.jpg)","# AIstudioProxyAPI 快速上手指南\n\n本指南帮助中国开发者快速部署并使用 **AIstudioProxyAPI**，将 Google AI Studio 网页界面转换为兼容 OpenAI 格式的 API 服务。\n\n## 1. 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**：Linux, macOS 或 Windows\n*   **Python**：版本 >= 3.9 (推荐 3.10 或 3.11)\n*   **依赖管理工具**：[Poetry](https:\u002F\u002Fpython-poetry.org\u002F) (必须安装最新版)\n*   **Node.js**：LTS 版本 (用于前端构建，若仅运行后端可忽略，但建议安装)\n*   **内存**：至少 2GB (推荐 4GB 以上)\n\n> **提示**：国内用户安装 Poetry 或 Node.js 时，如遇网络缓慢，建议配置国内镜像源或使用代理加速。\n\n## 2. 安装步骤\n\n### 第一步：克隆项目\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI.git\ncd AIstudioProxyAPI\n```\n\n### 第二步：安装依赖\n使用 Poetry 安装项目所需依赖（包含开发依赖以确保完整性）：\n```bash\npoetry install --with dev\n```\n> **国内加速提示**：若 `poetry install` 下载缓慢，可临时配置 PyPI 国内源：\n> ```bash\n> poetry config pypi-url.pypi https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\u002F\n> ```\n\n### 第三步：配置环境变量\n复制示例配置文件并生成 `.env` 文件：\n```bash\ncp .env.example .env\n```\n*注：大多数情况下可直接使用默认配置启动，如需修改端口或代理，请编辑 `.env` 文件。*\n\n## 3. 基本使用\n\n### 首次启动与认证\n首次运行需要打开浏览器进行 Google 账号登录以获取授权。请使用 `--debug` 模式启动：\n\n```bash\npoetry run python launch_camoufox.py --debug\n```\n1.  脚本会自动启动浏览器窗口。\n2.  在弹出的浏览器中登录您的 Google 账号并进入 AI Studio。\n3.  登录成功后，程序会自动保存认证信息（Cookie\u002FProfile）。\n4.  按 `Ctrl+C` 停止当前进程。\n\n### 日常运行\n完成首次认证后，建议使用无头模式（后台运行）启动服务：\n\n```bash\npoetry run python launch_camoufox.py --headless\n```\n服务默认启动在 `http:\u002F\u002F127.0.0.1:2048`。\n\n### 快速测试\n使用 `curl` 命令验证服务是否正常运行：\n\n**1. 健康检查**\n```bash\ncurl http:\u002F\u002F127.0.0.1:2048\u002Fhealth\n```\n\n**2. 获取模型列表**\n```bash\ncurl http:\u002F\u002F127.0.0.1:2048\u002Fv1\u002Fmodels\n```\n\n**3. 发送聊天请求**\n```bash\ncurl -X POST http:\u002F\u002F127.0.0.1:2048\u002Fv1\u002Fchat\u002Fcompletions \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"model\":\"gemini-2.5-pro\",\"messages\":[{\"role\":\"user\",\"content\":\"你好\"}]}'\n```\n\n### 接入客户端\n您可以将此服务作为 OpenAI 兼容接口接入任意支持该协议的客户端（如 Open WebUI, LangChain 等）：\n\n*   **API Base URL**: `http:\u002F\u002F127.0.0.1:2048\u002Fv1`\n*   **API Key**: 可留空或填写任意字符（除非您在 `.env` 中强制开启了密钥验证）\n*   **模型名称**: 填写支持的 Gemini 模型，例如 `gemini-2.5-pro`\n\n您也可以通过浏览器访问 `http:\u002F\u002F127.0.0.1:2048\u002F` 使用内置的 Web UI 进行调试和状态查看。","某初创团队希望将 Google 最新的 Gemini 2.5 Pro 模型集成到现有的 Open WebUI 知识库系统中，以利用其强大的长上下文处理能力，但团队缺乏官方 API 配额且现有代码库仅兼容 OpenAI 接口标准。\n\n### 没有 AIstudioProxyAPI 时\n- **接口协议不兼容**：开发者需要重写大量后端代码来适配 Google 特有的 REST 格式，无法直接复用基于 OpenAI SDK 构建的应用逻辑。\n- **人工操作繁琐**：每次会话需手动打开浏览器登录 Google AI Studio 网页复制响应，无法实现自动化批量处理或流式输出。\n- **连接稳定性差**：单一账号高频访问极易触发风控导致 IP 封禁，缺乏自动化的 Cookie 刷新与多账号轮转机制，服务经常中断。\n- **调试黑盒**：遇到请求失败时，难以直观查看浏览器内部的自动化执行状态和实时日志，排查问题耗时耗力。\n\n### 使用 AIstudioProxyAPI 后\n- **无缝平滑迁移**：通过启动本地代理服务，直接将 API Base URL 指向 `http:\u002F\u002F127.0.0.1:2048\u002Fv1`，原有 OpenAI 客户端代码零修改即可调用 Gemini 模型。\n- **全自动化运行**：利用 Camoufox + Playwright 后台自动维持浏览器会话，支持无头模式部署在服务器，实现 7x24 小时稳定的流式对话服务。\n- **高可用账号管理**：内置认证轮转与 Cookie 周期刷新功能，自动切换多个 Profile 分摊请求压力，显著降低被封号风险并确保持续在线。\n- **可视化运维监控**：通过内置的 Web UI 面板实时查看健康状态、日志流及调试信息，快速定位并解决自动化过程中的异常。\n\nAIstudioProxyAPI 成功打破了私有网页模型与标准化开发框架之间的壁垒，让开发者能以最低成本免费、稳定地享用顶尖大模型能力。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCJackHwang_AIstudioProxyAPI_5a13db46.png","CJackHwang","CJACK.","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FCJackHwang_63e2b7b0.jpg","Application Developer - Student.","GuangZhou Haizhu Foreign Language School","Guangzhou,China","cjackhwang@qq.com","tetr5354","blog.cjack.top","https:\u002F\u002Fgithub.com\u002FCJackHwang",[87,91,95,99,103,107,111,115],{"name":88,"color":89,"percentage":90},"Python","#3572A5",91.2,{"name":92,"color":93,"percentage":94},"TypeScript","#3178c6",6.8,{"name":96,"color":97,"percentage":98},"CSS","#663399",1.2,{"name":100,"color":101,"percentage":102},"Shell","#89e051",0.5,{"name":104,"color":105,"percentage":106},"PowerShell","#012456",0.2,{"name":108,"color":109,"percentage":110},"Dockerfile","#384d54",0.1,{"name":112,"color":113,"percentage":114},"JavaScript","#f1e05a",0,{"name":116,"color":117,"percentage":114},"HTML","#e34c26",2244,385,"2026-04-05T13:06:38","AGPL-3.0",4,"Linux, macOS, Windows","未说明","最低 2GB，推荐 4GB+",{"notes":127,"python":128,"dependencies":129},"该项目是通过浏览器自动化（Camoufox + Playwright）代理 Google AI Studio 网页界面，并非本地运行大模型，因此无需 GPU。需安装 Node.js 用于构建前端，建议使用 Poetry 管理 Python 依赖。首次运行需在调试模式下完成登录认证以保存 Cookie。支持无头模式（headless）在服务器运行，Linux 无 GUI 环境可使用虚拟显示模式。",">=3.9, \u003C4.0 (推荐 3.10+ \u002F 3.11+)",[130,131,132,133,134],"Poetry","Node.js (LTS)","Camoufox","Playwright","FastAPI",[16],[137,138,139,140,141,142,143,144],"camoufox","google-ai-studio","middleware","openai-api","playwright","proxy","python","reverse-proxy",null,"2026-03-27T02:49:30.150509","2026-04-06T06:55:13.869068",[149,154,159,164,169,174,179],{"id":150,"question_zh":151,"answer_zh":152,"source_url":153},17936,"启动时遇到 SSL 证书错误（SEC_ERROR_UNKNOWN_ISSUER）导致无法连接 aistudio.google.com 怎么办？","建议直接在 Ubuntu 系统下安装运行，不要使用 Docker（Docker 文件可能存在兼容性问题）。尝试不使用 helper 模式（纯 Playwright 模式）进行安装和启动。注意：目前部署后切换模型可能会导致失败，建议部署后保持使用默认模型发送消息以确保成功。","https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fissues\u002F105",{"id":155,"question_zh":156,"answer_zh":157,"source_url":158},17937,"在 macOS 上如何关闭已启动的项目进程？","如果是后台进程，可以通过 kill 命令终止进程，或者专门杀死占用 2048 端口的进程。例如使用命令查找并杀死占用该端口的进程。","https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fissues\u002F37",{"id":160,"question_zh":161,"answer_zh":162,"source_url":163},17938,"v3.1.0 版本日志卡在“等待响应”但页面已有输出，或者运行一段时间后卡死如何解决？","请尝试升级到最新版本，作者表示新版应该已解决此问题。如果更新后仍然出现该问题（特别是运行一段时间后卡死），可能是意外错误导致的，建议重启服务通常可暂时恢复正常运行。若问题持续，请提交新的 Issue 并提供详细日志。","https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fissues\u002F72",{"id":165,"question_zh":166,"answer_zh":167,"source_url":168},17939,"AI Studio 网页端有返回信息，但本地 API (http:\u002F\u002F127.0.0.1:2048\u002F) 一直卡住无返回且提示超时怎么办？","作者已发布新版本修复了此类响应捕获问题，请务必升级到最新版本。如果在 macOS 上看到浏览器中文显示乱码或方块，这是字体缺失导致的显示问题，不影响实际数据传输和功能使用，只要数据层面正常即可忽略。","https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fissues\u002F78",{"id":170,"question_zh":171,"answer_zh":172,"source_url":173},17940,"启动失败提示“核心输入区域未在预期时间内变为可见”如何解决？","作者已合并了修复分支来解决页面初始化失败的问题。请拉取最新的代码更新（特别是 dev 分支或最新 release），重新运行项目通常即可解决该初始化超时错误。","https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fissues\u002F232",{"id":175,"question_zh":176,"answer_zh":177,"source_url":178},17941,"Gemini 2.5 Pro 模型在 Roo Code 中使用时反复重新开页、速度慢且效果不佳，有优化方案吗？","目前使用 helper 流式模式后已支持 thinking 参数，可以将思考过程作为历史记录返回。虽然 Gemini 现在倾向于总结式段落输出而非完整的思维链，导致思考过程的重要性下降，但开启多思考实际上往往能带来更好的效果。建议保持使用默认配置或多思考模式以获得更佳结果。","https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fissues\u002F106",{"id":180,"question_zh":181,"answer_zh":182,"source_url":153},17942,"Ubuntu 18 上无法构建 Docker 镜像，是否有预编译的 Docker 镜像可用？","作者已在 dev 分支根据反馈修改了 Dockerfile，可能已具备部署条件。但需要注意的是，即使使用 Docker 版本，您仍然需要在本地先部署并获取 JSON 认证文件（auth file）后才能正常使用。目前建议优先尝试直接在 Ubuntu 系统中安装运行而非使用 Docker。",[184,189,194,199,204,209,214,219,224,229,234,239,244,249,254,259,264,269,274,279],{"id":185,"version":186,"summary_zh":187,"released_at":188},108248,"nightly","## ⚠️ 每日构建（开发版本）\n\n**这是来自 `main` 分支的自动化每日构建。**\n\n> **警告**：此版本可能包含未经测试的功能、破坏性更改或错误。\n> 如需稳定版本，请使用[已发布版本](https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Freleases?q=v&expanded=true)。\n\n### 构建信息\n- **提交**：`f6e83b1`\n- **日期**：2026年3月29日 02:44:59 UTC\n- **最新更改**：合并 ShutovKS 的 #312 拉取请求，功能：修复 issue-300 多实例启动问题\n\n## 变更内容\n\n_自 v2.2.0 以来的变更_\n\n- 合并 ShutovKS 的 #312 拉取请求，功能：修复 issue-300 多实例启动问题，由 @CJackHwang (f6e83b1)\n- 修复 Markdown 文档，由 @ShutovKS (4620dc9)\n- 功能：多实例管理器新增隔离式 Docker 配置启动器，由 @ShutovKS (71cd656)\n- 合并 CJackHwang 的 #309 拉取请求，更新基于最新代码的项目文档，由 @CJackHwang (9237404)\n- 文档：澄清根目录 README 中的默认设置及 API 密钥说明，由 @CJackHwang (33976e8)\n- 合并 CJackHwang 的 #308 拉取请求，更新基于最新代码的项目文档，由 @CJackHwang (1c9e2a0)\n- 文档：更新入门与部署相关文档，由 @CJackHwang (cb20227)\n- 文档：更新 README 并移除 `support_author.jpg`，由 @CJackHwang (8fc9534)\n- 杂项：在测试中移除下游仓库引用，由 @CJackHwang (beda778)\n- 文档：更新项目 README，由 @CJackHwang (e73ee52)\n- 测试：稳定启动器默认配置，并对 Pyright 基准进行对齐，由 @CJackHwang (b628a73)\n- 文档：重写同步实现的中文文档，由 @CJackHwang (d1e01ac)\n- 杂项：在下游同步后应用仓库策略，由 @CJackHwang (3a761a9)\n- 同步：快照下游 main c764934，不进行合并，由 @CJackHwang (e640858)\n- 重构：通过详细的类型注解改进模型解析，并调整 Pyright 配置以增强类型检查，由 @CJackHwang (38aa3a9)\n- 功能：提升 API、浏览器工具及前端的类型安全性，移除已弃用的 JavaScript 和 Python 文件，并添加新文档，由 @CJackHwang (7e07214)\n- 更新 README.md，由 @CJackHwang (2a027e0)\n- 更新 README.md，由 @CJackHwang (380c37f)\n- 合并 catsimple 的 #305 拉取请求，由 @CJackHwang (5712b8d)\n- 更新 TOP_P\u002FTEMPERATURE\u002FSUBMIT 选择器，由 @catsimple (9d31911)\n- 更新聊天完成示例中的模型版本，由 @NikkeTryHard (068d3f5)\n- 文档：更新环境变量配置及各文件中的设置文档。（#297）由 @NikkeTryHard (3f6382d)\n- 文档：对照代码库验证并修正文档准确性。（#295）由 @NikkeTryHard (c1ea8cb)\n- 文档：全面更新 v4.0.3 版本的变更文档。（#294）由 @NikkeTryHard (c0d9b92)\n- 功能：使用 `StaticFiles` 重构静态文件服务，并通过限制 PID 仅允许跟踪进程来增强端口关闭的安全性。（#293）由 @NikkeTryHard (d0f2efe)\n- 前端现代化改造，模块化路由，并提升日志记录的可靠性。（#292）由 @NikkeTryHard (3f8186d)\n- 修复：针对新的 AI Studio UI 更新上传按钮选择器。（#290）由 @zha","2026-03-29T02:47:25",{"id":190,"version":191,"summary_zh":192,"released_at":193},108249,"v4.1.0_py","v4.1.0_py 为 AI Studio Proxy API 带来了改进和更新。\n\n## 变更内容\n- 合并拉取请求 #309，来自 CJackHwang 的 codex 分支：基于最新代码更新项目文档，由 @CJackHwang 提交 (9237404)\n- 文档：澄清根目录 README 中的默认设置及 API 密钥说明，由 @CJackHwang 提交 (33976e8)\n- 合并拉取请求 #308，来自 CJackHwang 的 codex 分支：基于最新代码更新项目文档，由 @CJackHwang 提交 (1c9e2a0)\n- 文档：更新入门与部署相关文档，由 @CJackHwang 提交 (cb20227)\n- 文档：更新 README，并移除 `support_author.jpg` 文件，由 @CJackHwang 提交 (8fc9534)\n- 构建任务：在测试中移除下游仓库引用，由 @CJackHwang 提交 (beda778)\n- 文档：更新项目 README，由 @CJackHwang 提交 (e73ee52)\n- 测试：稳定启动器默认配置，并对齐 pyright 基准，由 @CJackHwang 提交 (b628a73)\n- 文档：重写同步实现的中文文档，由 @CJackHwang 提交 (d1e01ac)\n- 构建任务：在下游同步后应用仓库策略，由 @CJackHwang 提交 (3a761a9)\n- 同步：以快照形式获取下游 main 分支 c764934，不进行合并，由 @CJackHwang 提交 (e640858)\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv4.0.6_py...v4.1.0_py\n\n---\n\n## 安装\n\n### 快速开始\n```bash\n# 克隆仓库\ngit clone https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI.git\ncd AIstudioProxyAPI\n\n# 使用 Poetry 安装依赖\npoetry install\n\n# 运行服务器\npoetry run python server.py\n```\n\n### Docker\n```bash\ndocker-compose -f docker\u002Fdocker-compose.yml up -d\n```\n\n有关完整的安装与配置说明，请参阅 [README](https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fblob\u002Fmain\u002FREADME.md)。\n\n## 源代码\n\n源代码归档文件（zip 和 tar.gz 格式）已自动附加在下方。\n\n---\n\n**感谢所有贡献者！**","2026-02-28T21:59:06",{"id":195,"version":196,"summary_zh":197,"released_at":198},108250,"v4.0.6_py","继续修复一些小问题 由 @CJackHwang 完成  \n**完整更新日志**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv4.0.5_py...v4.0.6_py","2026-02-08T19:00:22",{"id":200,"version":201,"summary_zh":202,"released_at":203},108251,"v4.0.5_py","修复WebUI构建出错问题，移除大量报错和无用代码 by @CJackHwang\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv4.0.4_py...v4.0.5_py","2026-02-08T12:26:14",{"id":205,"version":206,"summary_zh":207,"released_at":208},108252,"v4.0.4_py","## 变更内容\n* 文档：由 @NikkeTryHard 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F294 中完成的 v4.0.3 版本变更的全面文档更新\n* 文档：由 @NikkeTryHard 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F295 中执行的文档与代码库一致性校验及错误修复\n* 文档：由 @NikkeTryHard 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F297 中明确的保存认证配置所需的 AUTO_SAVE_AUTH 要求\n* 更新 TOP_P\u002FTEMPERATURE\u002FSUBMIT 选择器，由 @catsimple 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F305 中完成\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv4.0.3_py...v4.0.4_py","2026-01-27T17:38:28",{"id":210,"version":211,"summary_zh":212,"released_at":213},108253,"v4.0.3_py","## 变更内容\n\n* 前端现代化改造、路由模块化，并提升日志记录的可靠性，由 @NikkeTryHard 在 #292 中完成\n* 重构：将模型能力外部化、增强安全性并提高可维护性，由 @NikkeTryHard 在 #293 中完成\n\n### 日志改进\n- 移除嵌套的日志调用和开头空格，使输出更整洁\n- 添加新的日志标签，便于更好地分类\n- 禁用会污染日志的冗 verbose 模块\n- 扩展日志行为的测试覆盖率\n\n### 可靠性修复\n- 改善页面控制器中聊天消息输入和提交的可靠性\n- 更好地处理过渡态 UI 状态\n\n### 架构重构\n- 弃用并移除遗留的 JS\u002FCSS 前端代码（共 24 个文件）\n- 引入基于 Vite、TypeScript 和 Vitest 的 React 单页应用\n- 将路由拆分为多个专注模块：auth_files、helper、model_capabilities、ports、proxy、server\n- 新增 frontend_build 启动模块\n- 将 DEFAULT_THINKING_LEVEL 拆分为针对不同模型的配置（PRO\u002FFLASH）\n- 改进错误处理及调试快照保存机制\n- 扩展对所有修改模块的测试覆盖率\n\n### 可维护性提升（PR #293）\n- **模型能力**：将其外部化至 JSON 配置文件 (`config\u002Fmodel_capabilities.json`)——新增模型无需修改代码\n- **端口杀进程安全**：增加 PID 校验——仅允许终止配置端口上的进程\n- **跳过前端构建**：新增 `--skip-frontend-build` 命令行参数及 `SKIP_FRONTEND_BUILD` 环境变量，适用于无 Node.js 的环境\n- **静态文件服务**：增加目录遍历防护，并支持更多 MIME 类型\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv4.0.2_py...v4.0.3_py","2025-12-20T09:20:37",{"id":215,"version":216,"summary_zh":217,"released_at":218},108254,"v4.0.2_py","## 变更内容\n* 功能：runner：由 @Sn0wo2 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F276 中实现的直接启动功能\n* 修复：根据 Google AI Studio 界面变化更新选择器，并修复测试模拟数据 (#278)，由 @NikkeTryHard 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F280 中完成\n* 文档：由 @CJackHwang 更新 README 及各类文档指南\n* 功能：日志系统全面重构、UI 选择器增强稳定性，并支持思考模式，由 @NikkeTryHard 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F284 中实现\n* 重构：移除无用代码并更新文档，由 @NikkeTryHard 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F286 中完成\n\n## 新贡献者\n* @Sn0wo2 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F276 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv4.0.1_py...v4.0.2_py","2025-12-15T11:22:18",{"id":220,"version":221,"summary_zh":222,"released_at":223},108255,"v4.0.1_py","## 变更内容\n  * 添加思考层级，修复 Docker 及类型安全问题，由 @NikkeTryHard 完成，详见：\n  https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F273\n\n  **完整变更日志**：https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv4.0.0_py...v4.0.1_py","2025-12-03T06:16:31",{"id":225,"version":226,"summary_zh":227,"released_at":228},108256,"v4.0.0_py","## 变更内容\n  * 完成了模块化架构的重构，并配备了全面的测试套件（覆盖率84%）、增强的调试基础设施，以及更高的代码可维护性，由@NikkeTryHard在以下链接中完成：\n  https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F270\n\n  **完整变更日志**：https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.6_py...v4.0.0_py","2025-11-30T06:58:37",{"id":230,"version":231,"summary_zh":232,"released_at":233},108257,"v3.7.6_py","## 变更内容\n* 由 @NikkeTryHard 在 https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F262 中增强了队列稳定性、客户端断开连接处理以及资源清理。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.5_py...v3.7.6_py","2025-11-21T15:56:17",{"id":235,"version":236,"summary_zh":237,"released_at":238},108258,"v3.7.5_py","## What's Changed\r\n* 关闭预算开关前检查模型 by @catsimple in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F261\r\n\r\n## New Contributors\r\n* @catsimple made their first contribution in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F261\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.4_py...v3.7.5_py","2025-11-20T15:30:51",{"id":240,"version":241,"summary_zh":242,"released_at":243},108259,"v3.7.4_py","## What's Changed\r\n* Fix thinking budget across models; gate levels to Gemini 3 Pro by @NikkeTryHard in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F257\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.3_py...v3.7.4_py","2025-11-19T15:24:54",{"id":245,"version":246,"summary_zh":247,"released_at":248},108260,"v3.7.3_py","## What's Changed\r\n* 系统性重构文档：全面对齐 AIstudioProxyAPI 现有实现，提升用户易用性 by @CJackHwang @cto-new[bot] in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F250\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.3_py_Beta...v3.7.3_py","2025-11-05T16:56:56",{"id":250,"version":251,"summary_zh":252,"released_at":253},108261,"v3.7.3_py_Beta","## What's Changed\r\n* fix: proactively clear streaming queue before each request to prevent stale\u002Fempty done responses by @cto-new[bot] in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F249\r\n\r\n## New Contributors\r\n* @cto-new[bot] made their first contribution in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F249\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.2_py...v3.7.3_py_Beta","2025-11-02T17:30:25",{"id":255,"version":256,"summary_zh":257,"released_at":258},108262,"v3.7.2_py","## What's Changed\r\n* 修改了thinking参数传入的问题，并且添加了文档 by @ConstantineLiu in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F245\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.1_py...v3.7.2_py","2025-10-27T15:30:18",{"id":260,"version":261,"summary_zh":262,"released_at":263},108263,"v3.7.1_py","## What's Changed\r\n* 添加了对Camoufox和Playwright之间传递代理参数问题的描述和修复指南\u002FDocument Camoufox proxy error and fix by @ConstantineLiu in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F244\r\n\r\n## New Contributors\r\n* @ConstantineLiu made their first contribution in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F244\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.7.0_py...v3.7.1_py","2025-10-26T08:49:48",{"id":265,"version":266,"summary_zh":267,"released_at":268},108264,"v3.7.0_py","**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.6.21_py...v3.7.0_py\r\n\r\n## v3.7.0\r\n\r\n进行了较多的重构，重新完全支持图片上传问题，以及优化消息提交和页面交互健壮性","2025-10-19T12:41:10",{"id":270,"version":271,"summary_zh":272,"released_at":273},108265,"v3.6.21_py","## What's Changed\r\n* fix(startup): Resolve race condition causing proxy connection failure by @NikkeTryHard in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F239\r\n* fix(debug): Set fixed window size to prevent UI clipping by @NikkeTryHard in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F240\r\n* 修复了认证文件无法保存的问题和docker文档部分内容修正 by @CJackHwang \r\n\r\n* 添加贡献者感谢\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.6.17_py...v3.6.21_py","2025-09-21T15:59:29",{"id":275,"version":276,"summary_zh":277,"released_at":278},108266,"v3.6.17_py","## What's Changed\r\n* feat(auth): Implement auth profile management in GUI by @theguy000 in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F218\r\n* Docs: Update all references to new key.txt path by @NikkeTryHard in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F236\r\n\r\n## New Contributors\r\n* @theguy000 made their first contribution in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F218\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.6.16_py...v3.6.17_py","2025-09-09T16:22:28",{"id":280,"version":281,"summary_zh":282,"released_at":283},108267,"v3.6.16_py","## What's Changed\r\n* Feat: Move key.txt to auth_profiles for easier Docker management (Fixes #216) by @NikkeTryHard in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F235\r\n\r\n## New Contributors\r\n* @NikkeTryHard made their first contribution in https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fpull\u002F235\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FCJackHwang\u002FAIstudioProxyAPI\u002Fcompare\u002Fv3.6.15_py...v3.6.16_py","2025-09-05T14:46:26"]