Sanjin
8e4da5f59e
docs: 引用 sci-box 科研图表与流程图仓库
...
科研绘图和流程图模板已独立到 jihe520/sci-box,在中英文 README 顶部
加入姊妹项目入口,并新增独立小节说明 scibox-figure / scibox-diagram
的内容与安装方式。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 20:41:58 +08:00
Sanjin
13e3995c09
docs: 引导用户下载最新桌面版 ( #104 )
...
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
v0.0.4
v0.0.5
v0.0.6
2026-08-09 14:28:08 +08:00
EastonJiang
11f38624cd
fix+perf: 绘图中文字体修复、进度自动跟踪、未验证配置刷爆日志 ( #102 )
...
* fix: 加固 Docker matplotlib 中文字体配置
Co-authored-by: Cursor <cursoragent@cursor.com >
* fix: 提前读取路径
* perf: 进度时间线与代码执行区自动跟踪最新消息
Co-authored-by: Cursor <cursoragent@cursor.com >
* fix: 未验证模型配置直接启动任务时无限重试刷爆日志
- 前端保存配置时始终推送到后端,不再依赖验证通过
- 后端 workflow 入口预校验四个 Agent 的 model/apiKey
- _validate_config 改抛 LLMConfigError 避免被 JSON 重试捕获
- coordinator/modeler 的 JSON 解析重试加上限 (MAX_JSON_RETRIES=3)
Co-authored-by: Cursor <cursoragent@cursor.com >
---------
Co-authored-by: Cursor <cursoragent@cursor.com >
v0.0.2
v0.0.3
2026-07-20 10:31:33 +08:00
Sanjin
be9c59c1aa
Feat/skills ( #98 )
...
* add skill
* Add scripts for generating RF TPE surface, Taylor diagram, and urban park cooling combo visualizations
- Implemented `make_rf_tpe_surface.py` to create a 3D surface plot of RMSE based on max depth and number of estimators.
- Developed `make_taylor_diagram.py` to visualize model performance using Taylor diagrams for training, testing, and full datasets.
- Created `make_urban_park_cooling_combo.py` to analyze and visualize urban park cooling effects across various city sizes with raincloud plots and boxplots.
* add readme
2026-06-30 11:02:38 +08:00
mario
d489761467
feat(skills): 添加 17 套 LaTeX 模板,支持 Typst/LaTeX 双引擎 ( #96 )
2026-06-19 15:32:27 +08:00
Sanjin
44ae206eb2
add linux do
...
add linux do
2026-06-07 11:40:02 +08:00
Sanjin
18de1dc7bf
add skill ( #94 )
2026-06-05 20:47:53 +08:00
Sanjin
4a360cbc7d
add mathmodel skill ( #93 )
2026-06-05 20:18:25 +08:00
Celyn
c12903f270
docs(README): 更新项目文档和添加Windows一键启动bat脚本 ( #82 )
...
- 更新 README.md 中的项目状态标记
- 重新组织安装说明,分为 step1(安装依赖)和 step2(启动项目)
- 新增 win_start.bat 一键启动脚本,方便Windows用户快速启动Redis+后端+前端服务
- 删除已完成的计划文档 .trae/documents/stop-running-button-plan.md
2026-05-19 14:59:37 +08:00
Celyn
e44ac308b6
docs(readme): 修正 README 功能状态标记并优化部署文档结构 ( #80 )
...
1. 将 5 个未实现/半成品功能从 [x] 改为准确状态:
- [~] HIL 人机协作: 数据模型已实现但工作流集成不完整
- [ ] Feedback 评估器+反馈重跑: 核心逻辑未实现,仅有 TODO 注释
- [~] Web Search: 原计划 Tavily API 未实现,当前使用 OpenAlex 替代
- [ ] RAG 知识库: 仅配置项存在,核心检索逻辑未实现
- [ ] Fallback Hand Off: 配置项和备用模型切换逻辑均未实现
2. 重构本地部署文档:
- 拆分为清晰的章节结构(下载Redis/启动后端/启动前端)
- 补充 Redis 官方下载链接(windows/linux/mac)
- 新增 PowerShell 执行策略配置步骤(Set-ExecutionPolicy)
- 统一底部启动指南格式,移除硬编码绝对路径
2026-05-19 10:44:25 +08:00
Celyn
9633ee1f7b
feat(task): 添加任务停止运行功能 ( #79 )
...
- 后端:新增 POST /modeling/{task_id}/cancel 取消接口
- 后端:实现 asyncio.Event 取消机制,支持中断 LLM 调用
- 前端:任务详情页添加"停止运行"按钮
- 修复:取消后避免调用 md_2_docx 的错误
2026-05-18 10:41:32 +08:00
Guobin Zhang
e9de237ea7
fix: matplotlib 中文方块——font_manager 旧缓存导致 SimHei 注册失效 ( #74 )
...
* fix: 透传 reasoning_content,修复 DeepSeek/MiMo thinking 模式下的 400 错误
API 开启 thinking 模式时,返回的 reasoning_content 必须在下一轮请求中原样
带回。当前代码丢弃了该字段,导致后续调用 100% 返回 400 错误,重试机制陷入
无限循环。修复内容:
- StandardResponse 新增 reasoning_content 字段
- OpenAIChatProvider 从响应中提取该字段
- 各 Agent 构建 assistant 消息时携带 reasoning_content
- agent.py 基类同时补上遗漏的 tool_calls 写入
* fix: matplotlib 中文方块问题——初始化脚本清除字体缓存 + prompt 增加 addfont 注册
- local/e2b interpreter: 注册字体前清除 matplotlib 字体缓存并重建 font_manager,
回退链加入 macOS 系统中文字体 (Heiti SC, STHeiti, PingFang SC)
- coder prompt: sns.set_theme() 之前增加 font_manager.addfont() 步骤,
确保 LLM 生成的每段代码主动注册字体,不依赖初始化脚本
* refactor: 精简字体修复——prompt 移除冗余 addfont,补充工程约束意识
- coder prompt 撤回 addfont 注册步骤(内核初始化已处理),避免重复 token 消耗
- modeler/coder prompt 新增:优化类问题的工程约束铁律(变量物理上下界、Q4 绳长限制)
- modeler/coder prompt 新增:EDA 按题型区分——机理题不做描述性统计
---------
Co-authored-by: Grey <grey@Greys-MacBook-Air.local >
2026-05-16 19:14:36 +08:00
Guobin Zhang
0e86335538
fix: 透传 reasoning_content,修复 DeepSeek/MiMo thinking 模式下的 400 错误 ( #72 )
...
API 开启 thinking 模式时,返回的 reasoning_content 必须在下一轮请求中原样
带回。当前代码丢弃了该字段,导致后续调用 100% 返回 400 错误,重试机制陷入
无限循环。修复内容:
- StandardResponse 新增 reasoning_content 字段
- OpenAIChatProvider 从响应中提取该字段
- 各 Agent 构建 assistant 消息时携带 reasoning_content
- agent.py 基类同时补上遗漏的 tool_calls 写入
Co-authored-by: Grey <grey@Greys-MacBook-Air.local >
2026-05-16 19:12:13 +08:00
Celyn
12615b6639
chore(config): Update .gitignore and .env.example ( #76 )
...
- 简化 .gitignore 中的 DS_Store 规则,移除冗余配置
- 新增 dump.rdb 与 backend/.env.example 忽略规则
- 创建 backend/.env.example 示例配置文件
Co-authored-by: xxxu680 <109032617+xxxu680@users.noreply.github.com >
2026-05-16 19:11:02 +08:00
Celyn
112725fb40
docs(deploy): 优化Windows部署命令,修复PowerShell环境变量与虚拟环境激活错误 ( #71 )
...
原README中Windows启动命令错误:
1. 修复Windows环境变量设置方式
2. 修复虚拟环境激活脚本(使用PowerShell专用Activate.ps1)
3. 区分Mac/Linux/PowerShell命令块
4. 让Windows用户可以直接复制运行,不再报错
Co-authored-by: xxxu680 <109032617+xxxu680@users.noreply.github.com >
2026-05-15 23:46:36 +08:00
MuWinds
ac57ad0c18
refactor: 重构 LLM Provider 模式、WebSocket 重连、图表字体跨平台兼容 ( #70 )
...
LLM 层重构:
- 将 LLM 调用层重构为 Provider 模式,支持多 API 类型
- 新增 Anthropic、OpenAI Chat、OpenAI Responses 三种 Provider
- 新增 LLM 类型定义和工厂类
WebSocket 重连:
- 添加指数退避自动重连机制(初始 1s,最大 30s,最多 10 次)
- 区分手动关闭与意外断开,仅意外断开触发重连
- 在任务页面顶部添加连接状态指示灯(绿/黄/红)
图表字体跨平台兼容:
- 在 backend/fonts/ 存放 SimHei 字体文件
- create_work_dir() 自动复制字体到任务工作目录
- 两个解释器从工作目录动态加载字体
- E2B 移除 apt-get install 依赖,改用上传字体文件
- 统一三处字体优先级配置
其他:
- 重构注释规范、修复类型错误、添加 lint hook
- 更新 CLAUDE.md 项目文档
2026-05-15 10:04:47 +08:00
Jiangming Zhong
7b849c4a8f
feat: 默认开启 RAG/HIL、修复类型问题、添加升级教程 ( #69 )
...
* feat: 新增 Web Search、RAG 知识库、HIL 人机协作、Feedback 容错机制
- Web Search: Tavily API 搜索互联网获取真实数据,注册为 search_web 工具
- RAG 知识库: ChromaDB + Rerank 检索建模方法、代码模板、论文写作参考
- HIL 人机协作: 关键节点暂停等待用户审批,支持 6 种决策动作
- 统一工具注册: tool_registry 替代 if/elif 硬编码分发
- Fallback Hand Off: 主 LLM 故障时自动切换备用模型,新建实例避免状态污染
- 有限重试: 所有 Agent 有明确重试上限,不再无限循环
- Evaluator Shadow Mode: 独立 LLM 评估输出质量,记录日志
- Feedback Rerun: 评估不通过时注入反馈重跑,先 Writer 后 Coder
- 双向 WebSocket: 客户端可发送决策消息到后端
* docs: 添加升级说明文档并更新 README 功能列表和后期计划
- UPGRADE2.md: Web Search + RAG 知识库 + HIL 人机协作升级说明
- UPGRADE3.md: Feedback Loop + Hand Off 容错机制升级说明
- README.md: 功能特性新增 4 项,后期计划标记 5 项已完成
* feat: 默认开启 RAG/HIL、修复类型问题、添加升级教程
- 默认开启 RAG_ENABLED=True 和 HIL_ENABLED=True,开箱即用
- 修复 response.py pyright 类型问题(msg_type override)
- 修复 knowledge_retriever.py ChromaDB metadata 类型转换
- 添加 升级说明.md 完整教程(Web Search / RAG / HIL / Fallback / Evaluator)
- 更新 README.md 添加新功能配置段落
- 预置所有功能配置到 .env.dev
* feat: 默认开启 RAG 和 HIL 功能
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
* feat: 新增 Web Search、RAG 知识库、HIL 人机协作、Feedback 容错机制
- Web Search: Tavily API 搜索互联网获取真实数据,注册为 search_web 工具
- RAG 知识库: ChromaDB + Rerank 检索建模方法、代码模板、论文写作参考
- HIL 人机协作: 关键节点暂停等待用户审批,支持 6 种决策动作
- 统一工具注册: tool_registry 替代 if/elif 硬编码分发
- Fallback Hand Off: 主 LLM 故障时自动切换备用模型,新建实例避免状态污染
- 有限重试: 所有 Agent 有明确重试上限,不再无限循环
- Evaluator Shadow Mode: 独立 LLM 评估输出质量,记录日志
- Feedback Rerun: 评估不通过时注入反馈重跑,先 Writer 后 Coder
- 双向 WebSocket: 客户端可发送决策消息到后端
* docs: 添加升级说明文档并更新 README 功能列表和后期计划
- UPGRADE2.md: Web Search + RAG 知识库 + HIL 人机协作升级说明
- UPGRADE3.md: Feedback Loop + Hand Off 容错机制升级说明
- README.md: 功能特性新增 4 项,后期计划标记 5 项已完成
* feat: 默认开启 RAG/HIL、修复类型问题、添加升级教程
- 默认开启 RAG_ENABLED=True 和 HIL_ENABLED=True,开箱即用
- 修复 response.py pyright 类型问题(msg_type override)
- 修复 knowledge_retriever.py ChromaDB metadata 类型转换
- 添加 升级说明.md 完整教程(Web Search / RAG / HIL / Fallback / Evaluator)
- 更新 README.md 添加新功能配置段落
- 预置所有功能配置到 .env.dev
* Delete UPGRADE2.md
* Delete UPGRADE3.md
* fix: RAG 和 Web Search 改为默认关闭,减少用户配置负担
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-14 20:31:56 +08:00
Jiangming Zhong
d5428a2a2e
feat: 新增 Web Search 工具 + 统一 tool_registry 分发 ( #68 )
...
主要功能:
- Web Search: Tavily API 搜索互联网获取真实数据,注册为 search_web 工具
- 统一工具注册: tool_registry 替代 if/elif 硬编码分发
- Evidence 数据模型: DataEvidence 结构化搜索结果
编排层(workflow.py)集成:
- Web Search 初始化与动态工具注册
- RAG 知识库检索与注入
- HIL 人机协作检查点
- Fallback Hand Off 容错机制
- Evaluator + Feedback Rerun 质量保障
新增配置:TAVILY_API_KEY / SEARCH_ENABLED / SEARCH_CACHE_TTL
所有功能均有独立开关,未配置时行为与升级前一致。
2026-05-13 14:13:58 +08:00
MuWinds
5305754f0b
refactor: 重构注释规范、修复类型错误、添加 lint hook 和 CLAUDE.md ( #66 )
...
- 后端按 Google Python Style Guide 重构注释,修复 ruff 和 pyright 错误(161→0)
- 前端按 Vue.js Style Guide 重构注释,修复 biome 错误
- 添加 PostToolUse lint hook(ruff + biome 自动检查)
- 更新 CLAUDE.md 覆盖 Commands/Testing/Structure/CodeStyle/GitWorkflow/Boundaries
- 修复 tsconfig.json 废弃的 baseUrl 配置
2026-05-11 23:02:39 +08:00
Sanjin
c013bdae8a
chore: 将 MAX_CHAT_TURNS 从 60 增加到 150
2026-05-01 16:51:49 +08:00
Sanjin
8136d30b05
fix: 移除不再使用的 DartNode 赞助链接
...
feat: 更新 matplotlib 字体设置以支持中文图表
2026-05-01 16:48:37 +08:00
Sanjin
1d80ea1766
Merge branch 'main' of https://github.com/jihe520/MathModelAgent
2026-05-01 16:45:56 +08:00
流年忆倾城
c65a7eb92d
fix: 刷新页面后恢复任务状态 ( #58 )
...
Co-authored-by: grey <grey@greydeMacBook-Air.local >
2026-04-30 23:18:41 +08:00
Sanjin
aac34a1efd
feat: 添加 OpenAlex API Key 支持并更新相关配置
2026-04-24 22:32:45 +08:00
Sanjin
64620eb17a
删除: 移除不再使用的环境配置文件 .env.dev
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-24 22:32:38 +08:00
EastonJiang
3e8a0d6cac
enhance: 重构 prompt 架构并注入竞赛级建模/可视化/写作规范 ( #54 )
...
* refactor: split prompts.py into prompts/ package
Break the monolithic prompts.py into a modular package with one file per
agent (coordinator, modeler, coder, writer) plus shared utilities.
All existing imports remain backward-compatible via __init__.py re-exports.
* enhance: 注入建模策略和可视化规范到 modeler/coder prompt
Modeler: 注入模型选择决策树、高分组合方案、建模方案质量要求、
可视化方案指南、EDA和敏感性分析规范。
Coder: 注入 O 奖级可视化标准(配色/去框/置信带)、数据预处理规范
(泄露防范/参数记录)、数据特征输出规范(每张图后 print 关键指标
供写作手引用)、结果汇总模板。
* enhance: 注入论文写作规范到 writer prompt
注入 MCM 论文结构规范(章节篇幅占比)、段落式写作要求(禁止正文
分点列表)、各章节写作要点(摘要四段式/假设需Justification/参数
需定量依据/因果vs相关区分)、图表引用规范(每图至少3行分析)、
敏感性分析写作骨架、过渡连接词和学术语态指南。
* fix: 强制 writer 在论文中插入 Markdown 图片标签
之前 writer 只写"如图X所示"文字描述,未插入 
导致 docx 转换后无图片。新增图片插入强制规范到 writer prompt,
同时改进 writer_agent 传递图片列表的格式,给出明确的插入模板。
* enhance: 增强鲁棒性并支持 per-agent max_tokens 配置
- modeler_agent: 新增 JSON repair 函数和重试机制,处理 LLM 返回
的畸形 JSON(未转义引号、markdown 包裹等)
- flows: dict 取值改用 .get() 防止模型输出缺少键时 KeyError
- setting/llm/llm_factory: 新增 *_MAX_TOKENS 配置项,允许为每个
agent 独立设置最大输出 token 数
- .env.dev: 模板中补充 MAX_TOKENS 注释字段
2026-03-18 23:35:36 +08:00
Sanjin
353b16fdbd
修复: 移除过时的 QQ 群信息和相关图片
2026-02-22 15:34:44 +08:00
Sanjin
dcb032bb08
add readme ( #52 )
...
add readme
2026-02-20 23:51:04 +08:00
MuWinds
5d676366ad
Fix: 重构CoderAgent中的重试逻辑,并在LLM中启用JSON模式验证 ( #44 )
...
* Fix: Refactor retry logic in CoderAgent and enable JSON schema validation in LLM
* Fix: Improve error handling in CoderAgent by logging failure messages instead of raising exceptions
2025-10-03 20:41:39 +08:00
Sanjin
f212a00b23
update readme ( #43 )
...
update readme
2025-09-21 00:04:50 +08:00
MuWinds
d8457da78b
Feat:将原本前端如果不上传数据就不进行解答的逻辑改成二次确认对话框 ( #39 )
...
* Fix:RedisManager to handle connection errors during client initialization
* Update: Enhance error handling and retry logic in CoordinatorAgent's run method
* feat: add file confirmation dialog to prevent submission without uploaded files
2025-09-16 23:30:24 +08:00
Sanjin
7782c0c837
status ( #38 )
2025-09-14 17:08:55 +08:00
MuWinds
6f8fb0d495
Update:添加CoordinatorAgent运行方法中的错误处理和重试逻辑 ( #37 )
...
* Fix:RedisManager to handle connection errors during client initialization
* Update: Enhance error handling and retry logic in CoordinatorAgent's run method
2025-09-14 16:15:32 +08:00
MuWinds
ad9f3b3443
Fix:RedisManager to handle connection errors during client initialization ( #36 )
2025-09-14 10:42:00 +08:00
Sanjin
c2845467b3
add claude.md
2025-09-12 22:58:40 +08:00
Sanjin
474c76e5a3
Add caution notice about AI-generated content ( #33 )
...
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-authored-by: Claude <noreply@anthropic.com >
2025-09-09 14:29:46 +08:00
Sanjin
f388e6ddff
Merge pull request #31 from jihe520/config
...
Config
2025-09-04 20:22:37 +08:00
Sanjin
25afa12a0c
update
2025-09-04 16:00:33 +08:00
Sanjin
e34b52caf9
update social
2025-09-04 00:03:21 +08:00
Sanjin
e65db0cf8a
Merge pull request #29 from jihe520/config
...
update readme
2025-09-03 19:59:29 +08:00
Sanjin
b39b78dcee
update readme
2025-09-03 19:54:41 +08:00
Sanjin
2c9be41948
Merge pull request #28 from jihe520/config
...
update readme
2025-09-03 14:32:53 +08:00
Sanjin
9a05fae38d
update readme
2025-09-03 14:25:16 +08:00
Sanjin
d531031a91
Merge pull request #27 from jihe520/config
...
Config
2025-09-02 23:21:39 +08:00
Sanjin
49c5d6349a
update readme , simplify config
2025-09-02 23:19:47 +08:00
Sanjin
22b46a36e4
简化配置
...
添加文件夹显示
2025-09-02 00:02:36 +08:00
Sanjin
108551b87f
Merge pull request #26 from MgAlNa3PO4/main
...
避免API验证时有空格导致错误
2025-08-31 23:00:06 +08:00
Fan's Mac
3566a77622
mod ApiDialog.vue file,Add whitespace filtering: trim base URL and model ID, remove all spaces from API key
2025-08-31 22:29:48 +08:00
Sanjin
219dc6a9dd
Merge pull request #25 from jihe520/docker
...
feat: apikeydialog
2025-08-18 14:42:31 +08:00
Sanjin
1921f9da0c
feat: apikeydialog
...
add apikeydialog 在网页配置 apikey
不需要再环境变量
update docker file and github action
change prompt
跳过问题核验导致不非数学建模问题
2025-08-18 14:41:40 +08:00