目录

代码讲解助手(Model2App 课程作品)

东华大学 × 沐曦股份开源校园行 workshop 作品。面向编程初学者和复习课程代码的同学:粘贴一段代码、选一种讲解模式,即可得到对应风格的文字讲解。

基于 Model2App 的 research → design → build 流程生成,通过沐曦 Token 资源包调用云端模型 API,无需本地 GPU。

定制功能:讲解模式

三种讲解模式以预设按钮实现:点击模式按钮,即用该模式的完整 messages 填充主输入区——模式差异在 system 提示词内容,直接改变实际请求与结果处理。

模式 system 提示词类型 效果
入门讲解 逐段释义型 先整体说明用途,再按顺序解释关键语句和概念,避免堆术语
潜在问题 审查清单型 按高/中/低严重程度列出 bug、边界条件、性能与安全风险,附触发条件
改进建议 重构建议型 每条建议说明改什么、为什么、怎么改

实测:对同一段含除零 bug 的代码(divide(10, i) 在 i=0 时触发 ZeroDivisionError)分别以三种模式发起真实调用,「潜在问题」模式准确将除零错误列为高严重度问题并给出触发条件;三种模式的输出结构与风格明显不同,符合各自提示词要求。

使用的模型

  • Qwen3-Coder-30B-A3B-Instruct(沐曦 Token 资源包,package 1492)
  • 接口:POST {GITEE_AI_BASE_URL}/v1/chat/completions,请求头 Authorization: Bearer <令牌>、X-Package: 1492 由服务端从 .env.local 注入,页面与前端代码不出现密钥

配置与运行

需要 Python 3.12+ 和一个沐曦 Token 资源包的访问令牌(模力方舟 → 工作台 → 设置 → 访问令牌,授权范围勾选已购买的沐曦资源包)。

python -m venv .venv
.venv\Scripts\activate
python -m pip install -r requirements.txt
copy .env.example .env.local

在 .env.local 中填入 GITEE_AI_TOKEN(访问令牌只保存在本地,切勿提交或分享)。然后启动:

python app.py

根据终端显示的地址打开网页(默认 http://localhost:3000)。按 Ctrl+C 停止服务。

已知问题

  • 结果区以预格式文本展示模型返回的 Markdown 原文,未做渲染。
  • 端口默认 3000,被占用时在 .env.local 中修改 PORT。
  • 调用为同步非流式,较长代码的讲解需等待约 10–20 秒。

许可与致谢

  • 本项目采用木兰宽松许可证 2.0(与上游 Model2App 一致)。
  • 由 Model2App 工具包生成;模型服务来自沐曦 Token 资源包(模力方舟)。
关于

code-explainer

60.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号