时刻知道烧钱的速度和激情。 —— 实时监控 Deepseek API 账户余额,追踪消耗趋势。
DeepseekYe 是一个基于 Qt 5 的桌面应用程序,用于实时查询和监控 Deepseek API 账户余额。它通过 Deepseek 官方 API 获取账户余额数据,以图表形式展示余额和消耗的历史趋势,帮助开发者随时掌握 API 使用情况。
- 实时余额查询 — 一键刷新或自动定时查询 Deepseek 账户余额
- 双轴实时曲线 — 左 Y 轴展示总余额,右 Y 轴展示消耗,支持拖拽平移和滚轮缩放
- 自动刷新 — 可配置刷新间隔(10s ~ 3600s),倒计时显示下次刷新时间
- 今日消耗统计 — 自动累计当日消耗,支持跨日重置和手动修正
- 配置持久化 — 所有配置通过 Protocol Buffers 序列化保存,支持 CRC16 完整性校验
- 窗口置顶 — 支持窗口置顶显示,方便随时监控
- 曲线自定义 — 可配置曲线颜色、数据点数上限、Y 轴范围
| 依赖 | 版本要求 | 说明 |
|---|---|---|
| Qt | >= 5.x | 需要 core, gui, widgets, network, printsupport 模块 |
| C++ 编译器 | C++17 | MinGW, GCC, MSVC 均可 |
| OpenSSL | 1.1 | Windows 下已预置 DLL,Linux 使用系统 OpenSSL |
| qmake | 与 Qt 版本匹配 | 构建系统 |
# 克隆仓库
git clone https://github.com/yourusername/DeepseekYe.git
cd DeepseekYe
# 构建(Windows / MinGW)
qmake DeepseekYe.pro -spec win32-g++ CONFIG+=release
mingw32-make -j4
# 构建(Linux / GCC)
qmake DeepseekYe.pro CONFIG+=release
make -j4构建完成后,可执行文件位于 output/ 目录下。
首次运行: 启动程序 → 点击「配置」→ 输入你的 Deepseek API Key → 点击「保存」→ 程序将立即查询并显示余额。
| 功能 | 操作 |
|---|---|
| 手动刷新 | 点击「刷新」按钮或等待自动刷新 |
| 自动刷新 | 勾选「自动刷新」,在配置界面设置间隔时间 |
| 窗口置顶 | 勾选「置顶显示」使窗口始终在最前 |
| 曲线操作 | 鼠标拖拽平移曲线,滚轮缩放 |
| 修改配置 | 点击「配置」,修改 API Key、曲线颜色、Y 轴范围等 |
| 修正消耗 | 在配置界面可手动修改今日消耗值 |
| 配置项 | 范围 | 默认值 | 说明 |
|---|---|---|---|
| API Key | 任意字符串 | 空 | 你的 Deepseek API 密钥 |
| 查询间隔 | 10 ~ 3600 秒 | 60 | 自动刷新间隔 |
| 最大数据点 | 50 ~ 5000 | 500 | 曲线最多显示的数据点数 |
| 余额曲线颜色 | 7 种预设 | 蓝色 | 总余额曲线的颜色 |
| 消耗曲线颜色 | 7 种预设 | 红色 | 消耗曲线的颜色 |
| 余额 Y 轴范围 | 0 = 自动 | 0 / 0 | 手动指定 Y 轴上下限 |
| 消耗 Y 轴范围 | 0 = 自动 | 0 / 0 | 手动指定消耗轴上下限 |
DeepseekYe/
├── DeepseekYe.pro # Qt 项目文件(入口)
├── LICENSE # LGPL v3 许可证
├── README.md # 本文件
│
├── main/
│ └── main.cpp # 应用程序入口
│
├── components/
│ ├── components.pri # 组件聚合文件
│ │
│ ├── UI_mainwindow/ # 主窗口组件
│ │ ├── UI_mainwindow.h
│ │ ├── UI_mainwindow.cpp
│ │ └── UI_mainwindow.ui
│ │
│ ├── UI_config/ # 配置对话框组件
│ │ ├── UI_config.h
│ │ ├── UI_config.cpp
│ │ └── UI_config.ui
│ │
│ ├── Driver_deepseek/ # Deepseek API 驱动(单例)
│ │ ├── Driver_deepseek.h
│ │ └── Driver_deepseek.cpp
│ │
│ ├── Driver_ProtoConfig/ # Protobuf 配置序列化
│ │ ├── DeepseekConfig.proto
│ │ ├── DeepseekConfig.pb.h
│ │ ├── DeepseekConfig.pb.c
│ │ ├── DeepseekConfig_class.h
│ │ └── DeepseekConfig_class.cpp
│ │
│ └── Driver_qcustomplot/ # 曲线图组件
│ ├── qcustomplot.h / .cpp
│ ├── XxwCustomPlot.h / .cpp
│ └── XxwTracer.h / .cpp
│
├── Nanopb/ # Nanopb protobuf 库(vendored)
│ ├── pb.h / pb_common.h / pb_decode.h / pb_encode.h
│ ├── pb_common.c / pb_decode.c / pb_encode.c
│ └── Nanopb.pri
│
├── OpenSSL/ # OpenSSL 运行时 DLL(仅 Windows)
│ ├── libcrypto-1_1-x64.dll
│ └── libssl-1_1-x64.dll
│
├── output/ # 构建输出目录
└── build_windows/ # 中间文件目录
项目采用组件化架构,各组件通过 Qt .pri 文件组织:
main.cpp
└── UI_MainWindow(主窗口)
├── Driver_deepseek(API 驱动,单例)
│ └── DeepseekConfig_class(Protobuf 配置读写)
│ └── Nanopb(Protobuf 编解码)
├── UI_config(配置对话框)
└── QCustomPlot(曲线图)
└── XxwCustomPlot / XxwTracer(鼠标追踪扩展)
启动时:
main → UI_MainWindow → Driver_deepseek::LoadConfig()
→ UI_MainWindow::FetchBalance()
→ HTTP GET /user/balance → 更新界面 + 曲线
定时刷新:
QTimer → FetchBalance() → HTTP GET → signal → 更新界面 + 曲线
配置修改:
UI_config → SaveConfig() → DeepseekConfig.bin
→ Driver_deepseek 应用配置 → 曲线更新
配置文件格式: [CRC16 (2字节, LE)] [Protobuf 二进制数据], 默认名为 DeepseekConfig.bin,位于可执行文件同级目录。
所有第三方依赖均已内置于源码中,无需额外下载。
| 库 | 版本 | 用途 | 许可证 |
|---|---|---|---|
| Qt 5 | 5.14.2+ | 应用框架(core, gui, widgets, network, printsupport) | LGPL/GPL |
| QCustomPlot | ~1.3 | 实时曲线绘制 | GPL/LGPL |
| Nanopb | 0.4.9.1 | Protocol Buffers 编解码(适用于嵌入式系统) | Zlib |
| OpenSSL | 1.1 | TLS 加密传输(Qt Network HTTPS 依赖) | OpenSSL License |
本项目基于 GNU Lesser General Public License v3.0 (LGPL-3.0) 开源。
QCustomPlot遵循其自有许可证(GPL/LGPL 兼容)Nanopb遵循 Zlib 许可证OpenSSL遵循 OpenSSL/SSLeay 许可证
详细信息请参阅 LICENSE 文件。