# AIHub Router Console **Repository Path**: chenlinshan123/aihub-router-console ## Basic Information - **Project Name**: AIHub Router Console - **Description**: AIHub 多分组缓存率、成本分析与智能路由本地控制台 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-26 - **Last Updated**: 2026-09-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AIHub Router Console AIHub Router Console 是一个面向 AIHub 中转站的 Windows 本地路由控制台。它把公共分组、账户 usage、缓存率、成本、首字延迟和路由状态集中到一个可操作的 Anime Ops 风格界面,支持手动探测、分组切换、自动故障切换和版本更新。 项目仓库: ## 功能 - 读取 AIHub 公共分组与当前账户可用分组,并显示健康状态。 - 按标称倍率、缓存率和动态缓存基线计算预测倍率。 - 将分组挂牌价、官方参考价和账户实际扣费合并为“账单对账”,用短标签标出实付相对挂牌的偏差,并计算每 M Token 花费。 - 按分组、模型变体和请求时间匹配本地价格快照;历史价格缺失时明确标记为估算,不把当前挂牌价冒充历史严格值。 - 查看分组使用分布、路由切换记录、24H 趋势、模型检测和主动探测结果。 - 手动或自动切换 Route Key 分组;当前分组不可用时可立即故障切换。 - 配置 usage 时间窗、成功率门槛、缓存基线和主动探测参数。 - 支持浅色/深色主题和桌面、移动端浏览器布局。 - 内置版本检查、Release SHA256 校验和一键更新。 ## 直接运行发行版 从 Gitee Release 下载唯一的 `AIHub-Router-Console.exe`,双击即可启动。不需要安装 Python、Node.js 或其他运行环境,也不需要先配置环境变量。 程序启动本地服务并打开默认浏览器: ```text http://127.0.0.1:8765/ ``` 首次使用时,在页面的“配置”中填写你自己的 AIHub Base URL、登录账号和密码,然后登录并选择 Route Key。启动本身无需用户配置,但访问账户数据必须使用用户自己的凭据。 本机运行数据保存于 `%LOCALAPPDATA%\AIHubRouterConsole`。账号密码使用当前 Windows 用户的 DPAPI 加密保存;程序不会携带任何预置账号、API Key、密码或账单快照。 ## 从源码运行 需要 Python 3.11 或更高版本: ```powershell python web_app.py --port 8765 ``` 源码模式同样只监听 `127.0.0.1`。运行配置写入项目目录的 `.runtime`,该目录已加入 Git 忽略规则。 ## 构建 Windows EXE 构建机需要 Python 3.11+ 和 PyInstaller: ```powershell python -m pip install pyinstaller Set-ExecutionPolicy -Scope Process Bypass .\build_release.ps1 ``` 脚本使用 PyInstaller `--onefile --windowed` 模式,并将 `assets/app-icon.ico` 作为程序图标。构建结果为: ```text dist\AIHub-Router-Console.exe ``` Release 只上传这个 EXE,不上传 ZIP、本机 `.runtime`、日志或其他构建目录。脚本会输出版本和 SHA256;发布说明应记录同一个 SHA256,程序更新前会校验该值。 ## 版本更新 打包版可在页面右上角检查更新。程序只访问公开的 Gitee Latest Release API,并且只接受名称为 `AIHub-Router-Console.exe` 的单一资产。下载完成后先校验 SHA256,再通过临时更新进程替换旧 EXE;校验失败或替换失败时保留旧版本。 源码运行模式可以检查版本,但不会自动替换源码或执行安装。Release 标签采用 `vMAJOR.MINOR.PATCH` 格式,例如 `v1.1.0`。 ## 数据与安全边界 - AIHub 登录、分组、Key 和 usage 请求只发送到用户在设置中填写的 Base URL。 - 浏览器只收到脱敏后的 Key 信息和聚合指标,不返回密码、完整 Key、访问令牌、IP 或原始 usage 行。 - 本地服务只监听回环地址;状态修改请求校验本地 Host/Origin 和进程级 CSRF 令牌。 - 账号密码和本地配置不写入仓库;运行时目录、公共价格快照、日志、缓存和构建产物均被 Git 忽略。 - 项目不包含遥测、广告或后台上传功能。版本检查是唯一的默认 Gitee 网络请求。 - 这是社区工具,不代表 AIHub、OpenAI 或其他模型供应商;费用和倍率应以账户实际账单为准。 发布前请确认 Git 暂存区和 Release 资产中没有个人账号、API Key、密码、访问令牌、账单数据或本机绝对路径。 ## 常见问题 **浏览器没有自动打开?** 确认 `127.0.0.1:8765` 未被占用,然后重新启动 EXE。服务只绑定本机,不会在局域网地址提供页面。 **Windows SmartScreen 提示未知发布者?** 首发版本未使用商业代码签名证书,这是未签名桌面程序的正常提示。请从项目 Release 页面核对文件名和 SHA256 后再运行。 **更新按钮显示无法安装?** 自动替换仅在打包 EXE 中启用;源码模式请重新拉取代码并按上面的构建命令生成新版本。 ## 许可 本项目使用 MIT License,详见 [LICENSE](LICENSE)。`static/vendor/echarts.min.js` 为第三方静态资源,按其文件中保留的 Apache License 2.0 声明使用。