优化废弃的遗留代码和修复API密钥重复加密的问题

This commit is contained in:
Eric-Terminal
2025-09-05 02:03:32 +08:00
parent 939473716c
commit de7c8359ac
5 changed files with 183 additions and 111 deletions

162
README.md
View File

@@ -1,90 +1,136 @@
# AI 作文批改助手 (´。• ᵕ •。`) ♡
# AI 作文批改助手
(^▽^)ノ゙ 哈罗!欢迎来到AI作文批改助手的世界
(^▽^)ノ゙ 欢迎使用 AI 作文批改助手!这是一款专为教育工作者和学生设计的智能桌面工具,能够像经验丰富的英语老师一样,自动批改手写英文作文图片,并生成专业详细的批改报告。
这是一款用爱发电的桌面小工具,它能像一位经验丰富的英语老师一样,帮你自动批改手写的英文作文图片,并生成超级详细的批改报告哟~
### ☆ 应用界面预览 ☆
![alt text](photo/1.png)
![alt text](photo/2.png)
![alt text](photo/3.png)
![alt text](photo/4.png)
---
## ☆ 亮点闪闪 (Features) ☆
* **双AI引擎驱动 (Dual AI Engine)**
* 首先,由专业的 **视觉模型(VLM)** 来进行高精度的手写文字识别(OCR),并像老师看卷面一样,给出一个专业的“书写质量分”!(๑•̀ㅂ•́)و✧
* 然后,强大的 **大语言模型(LLM)** 会接棒,结合识别出的文本、作文题目和书写分,给你一份内容详实、有深度、有温度的批改报告!
* **超级自由的可配置性 (Super Flexible)**
* **API随便换**VLM和LLM的服务地址、API Key、模型名称都可以分开设置不管你用哪家的AI服务只要兼容OpenAI格式都能轻松适配
* **逻辑你来定**:觉得书写分太严或者太松?在设置里调一下“敏感度因子”就好啦~
* **模板全开放**:核心的批改指令(Prompt)模板完全开放给你你可以在设置里直接修改它调整评分标准、总分、或者让AI老师的语气更温柔或者更严格打造你专属的批改风格ദ്ദി(•ω•´)
* **闪电般的并发处理 (Lightning-Fast Concurrency)**
* 内置了超高效的多线程引擎不管你一次选一张还是一百张图片小助手都会派出多位AI老师**同时开始批改**再也不用漫长地等待啦大幅节省你的宝贵时间O(∩_∩)O
* **企业级的安全感 (Enterprise-Grade Security)**
* 你的API Key是非常重要的秘密我们使用强大的 `cryptography` 库对所有密钥都进行了**加密处理**,才会保存在本地的配置文件里。绝对不会明文泄露,让你的账户安全感满满!(。・ω・。)ノ♡
* **开箱即用的小可爱 (Ready to Use)**
* 项目已经为 `PyInstaller` 打包做好了万全准备,可以轻松编译成一个独立的 `.exe``.app` 文件,方便地分享给不太懂技术的朋友们使用~ (^ω^)
## 🎯 应用界面预览
![应用界面](photo/1.png)
![设置界面](photo/2.png)
![批改过程](photo/3.png)
![批改报告](photo/4.png)
---
## 使用教程 (ゝ∀・)
## ✨ 核心特色功能
1. **下载程序**: 前往本仓库的 [Releases 页面](https://github.com/Eric-Terminal/Pro_llm_correct/releases) 下载适用于你操作系统的最新版本。
2. **首次配置**:
* 运行程序它会发现你还没填API Key然后自动弹出“设置”窗口。
* 在这里填上你的 VLM 和 LLM 服务提供商的 **URL**、**API Key** 和 **模型名称**
* 点击“确定”保存,你的小秘密就被安全地加密保存好啦!
3. **开始批改**:
* 在主界面的大框框里,输入本次作文的“**题目**”。
* 点击“**选择图片**”,可以一次选中所有学生的作文图片哟。
* 点击“**开始批改**”,然后就可以泡杯茶,看日志区和进度条实时更新啦!
4. **获取报告**: 任务完成后,每一张图片对应的 `.md` 格式批改报告,都会自动出现在原图片所在的文件夹里,是不是很方便呀?
### 🤖 双AI引擎智能处理
- **视觉语言模型(VLM)**: 专业的手写文字识别(OCR)和书写质量评估,给出精准的卷面分数
- **大语言模型(LLM)**: 深度内容分析,提供专业的语法纠错和写作建议
- **智能作文类型识别**: 自动识别应用文(15分制)和读后续写(25分制)两种高考作文类型
### ⚙️ 极致灵活配置
- **服务独立配置**: VLM和LLM支持完全独立的API服务、密钥和模型配置
- **评分标准可调**: 书写质量"敏感度因子"自由调节,适应不同评分要求
- **Prompt模板开放**: 核心批改指令完全可自定义,打造个性化批改风格
### 🚀 高效并发处理
- 多线程并发引擎,支持批量处理任意数量的作文图片
- 智能任务调度,大幅提升批改效率,节省宝贵时间
- 实时进度显示和详细日志输出,随时掌握处理状态
### 🔒 企业级安全保障
- 军事级加密算法保护API密钥防止敏感信息泄露
- 本地配置文件加密存储,确保账户安全无忧
- 透明的Token使用统计方便成本控制
### 📊 专业输出格式
- **Markdown源文件**: 完整的批改报告,支持进一步编辑和定制
- **HTML可视化报告**: 美观易读的网页格式,方便分享和查看
- **详细错误分析**: 语法错误、表达问题、修改建议一应俱全
- **精准分数评估**: 专业的评分体系,符合高考评分标准
---
## 给开发者小伙伴 (づ。◕‿‿◕。)づ
## 📖 使用指南
想从源码运行或者一起把它变得更好吗?欢迎欢迎!
### 快速开始
1. **下载程序**: 前往 [Releases页面](https://github.com/Eric-Terminal/Pro_llm_correct/releases) 下载最新版本
2. **首次配置**:
- 运行程序,自动弹出设置窗口
- 配置VLM和LLM服务的URL、API密钥和模型名称
- 点击确定保存,密钥自动加密存储
3. **开始批改**:
- 在主界面输入作文题目
- 点击"选择图片",多选需要批改的作文图片
- 点击"开始批改",程序自动进行并发处理
4. **查看报告**: 处理完成后Markdown和HTML格式报告自动保存在原图片目录
### 输出文件说明
- `原文件名_report.md`: Markdown格式详细批改报告
- `原文件名_report.html`: HTML可视化批改报告
- 包含: 作文内容、综合评价、亮点优点、问题建议、分数评估
---
## 🛠️ 开发者指南
### 环境搭建
```bash
# 1. 把这个可爱的仓库克隆到本地
# 1. 克隆仓库
git clone https://github.com/Eric-Terminal/Pro_llm_correct.git
cd Pro_llm_correct
# 2. (推荐) 创建一个专属的虚拟环境
# 2. 创建虚拟环境(推荐)
python3 -m venv venv
source venv/bin/activate # Windows上是 `venv\Scripts\activate` 哦
source venv/bin/activate # Linux/Mac
# venv\Scripts\activate # Windows
# 3. 安装所有需要的魔法咒语 (依赖)
# 3. 安装依赖
pip install -r requirements.txt
# 4. 运行
# 4. 运行程序
python main.py
```
### 打包成魔法小盒子 (o´ω`o)ノ
想把它打包成一个独立的程序吗?用 `PyInstaller` 就行啦!
### 项目打包
```bash
# --noconsole: 这样运行时就不会弹出黑乎乎的命令行窗口啦
# --onefile: 把所有东西都打包成一个文件,干净!
# 打包为独立可执行文件
pyinstaller --noconsole --onefile main.py
# 打包好的程序在 dist/ 目录
```
打包好的魔法小盒子会出现在 `dist` 文件夹里。
### 技术架构
- **前端**: Tkinter GUI界面
- **核心**: 双AI引擎架构 (VLM + LLM)
- **安全**: cryptography加密库
- **并发**: threading + concurrent.futures
- **输出**: Markdown + HTML渲染
---
## 开源许可证 (License) ( ´ ▽ ` )ノ
## 📝 配置说明
本项目采用 [MIT License](LICENSE) 开源。简单来说,就是你可以自由地使用、修改和分享它,只要保留原始的版权声明就好啦~
### 必需配置项
- `VlmUrl`: VLM服务地址
- `VlmApiKey`: VLM服务密钥自动加密
- `VlmModel`: VLM模型名称
- `LlmUrl`: LLM服务地址
- `LlmApiKey`: LLM服务密钥自动加密
- `LlmModel`: LLM模型名称
### 可选配置项
- `SensitivityFactor`: 书写评分敏感度因子默认1.5
- `MaxWorkers`: 最大并发数默认4
- `MaxRetries`: 最大重试次数默认3
- `RetryDelay`: 重试延迟秒数默认5
- `SaveMarkdown`: 是否保存Markdown文件默认True
- `RenderMarkdown`: 是否渲染HTML报告默认True
---
*由 Eric-Terminal 精心创造。如果你喜欢这个项目,请不要吝啬你的 Star ☆ 哦!( ⁄•⁄ω⁄•⁄ )*
## 📄 开源协议
本项目采用 [MIT License](LICENSE) 开源协议。您可以自由地使用、修改和分发本软件,只需保留原始的版权声明即可。
---
## 🤝 贡献与支持
如果您在使用过程中遇到问题或有改进建议,欢迎:
- 提交 [Issue](https://github.com/Eric-Terminal/Pro_llm_correct/issues)
- 发起 [Pull Request](https://github.com/Eric-Terminal/Pro_llm_correct/pulls)
- 给项目点个 ⭐ Star 支持一下!
---
*由 Eric-Terminal 精心开发。希望这个工具能够帮助更多的教育工作者和学生!(。・ω・。)ノ♡*