🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

试卷生成器 elegymythos/exam-paper-plugin

DeepSeek Harness
elegymythos77 天前有提交已提供中文文档扫描:含敏感能力

解析 Word 与 PDF 题目,抽题排版生成可打印试卷

27.9/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add elegymythos/exam-paper-plugin
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · tool
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/09/26·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/03·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 77 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 3 处,展示前 3 条)
  • 读取本地文件
    src/plugin.mjs:37
    if (existsSync(configPath)) {
  • 读取本地文件
    src/plugin.mjs:38
    const chosen = readFileSync(configPath, "utf8").trim().split(/ ? /)[0];
  • 读取本地文件
    src/plugin.mjs:45
    if (typeof process !== "undefined" && existsSync(venv)) return venv;
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-tools
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 解析Word与PDF题目
  • 抽取题目与配图
  • 生成可打印试卷

DeepSeek Harness 插件:自动识别上传的 Word(.doc / .docx) / PDF / 纯文本 题目文件,抽取题目与配图,按你的选择生成一张带书写空隙的可打印试卷(.docx 可编辑 + .html 网页预览)。

README

由 DeepSeek 最新模型翻译生成
exam-paper-plugin DeepSeek Harness 插件:解析 Word / PDF 题目,生成带书写空隙的可打印试卷,并内置一套纯 Python 智能试题引擎,用于本地多视图特征提取、聚类、语义检索与多样性抽题,从而减少大模型 Token 消耗。 功能 基础能力 - 自动解析 .doc / .docx / .pdf / .txt / .md 题目文件 - 识别选择题、填空题、判断题、解答题、作文等题型 - 提取题干、选项和配图(图片仅保留位置关联与 has_image 标记) - 支持 WMF/EMF 公式图:DOCX 输出补齐内容类型,HTML 输出自动转换为 PNG 预览 - 按需抽题并生成 .docx + .html 试卷 - 支持卷头、书写空隙、选择题双列等出卷配置 智能引擎能力 - 多视图特征提取:文本、分类、结构、统计四个视图 - 不处理图片内容,不引入难度维度 - HDBSCAN 自动聚类,支持离群点识别 - 聚类解释报告,支持人工给“簇”打标签,而非逐题标注 - FAISS 向量索引,余弦相似度检索 - 分类硬过滤 + 向量召回 + MMR 多样性重排 - 版本化评估工具:聚类质量、检索效果、多样性效果、系统性能、版本对比 - 本地 Ollama Token 消耗评估 项目结构 exam-paper-plugin/
展开完整文档(README 剩余 1 节)
exam-paper-plugin

DeepSeek Harness 插件:解析 Word / PDF 题目,生成带书写空隙的可打印试卷,并内置一套纯 Python 智能试题引擎,用于本地多视图特征提取、聚类、语义检索与多样性抽题,从而减少大模型 Token 消耗。

功能

基础能力

- 自动解析 .doc / .docx / .pdf / .txt / .md 题目文件
- 识别选择题、填空题、判断题、解答题、作文等题型
- 提取题干、选项和配图(图片仅保留位置关联与 has_image 标记)
- 支持 WMF/EMF 公式图:DOCX 输出补齐内容类型,HTML 输出自动转换为 PNG 预览
- 按需抽题并生成 .docx + .html 试卷
- 支持卷头、书写空隙、选择题双列等出卷配置

智能引擎能力

- 多视图特征提取:文本、分类、结构、统计四个视图
- 不处理图片内容,不引入难度维度
- HDBSCAN 自动聚类,支持离群点识别
- 聚类解释报告,支持人工给“簇”打标签,而非逐题标注
- FAISS 向量索引,余弦相似度检索
- 分类硬过滤 + 向量召回 + MMR 多样性重排
- 版本化评估工具:聚类质量、检索效果、多样性效果、系统性能、版本对比
- 本地 Ollama Token 消耗评估

项目结构

exam-paper-plugin/
├── src/
│ ├── plugin.mjs # Cordis 插件入口,注册工具 │ └── exam_paper.py # 文档解析与试卷生成引擎 ├── smart_engine/ # 纯 Python 智能试题引擎 │ ├── cli.py # CLI 命令入口 │ ├── pipeline.py # 编程调用门面(供插件/二次开发) │ ├── features.py # 多视图特征提取 │ ├── clustering.py # HDBSCAN 聚类与报告 │ ├── labels.py # 簇标签映射 │ ├── index.py # FAISS 向量索引 │ ├── mmr.py # 多样性重排 │ └── eval/ # 评估工具 ├── install.sh # Linux/macOS 安装脚本 ├── install.ps1 # Windows 安装脚本 ├── install.bat # Windows 双击入口 ├── requirements.txt # 智能引擎 Python 依赖 ├── environment.yml # Conda 环境模板(国内镜像) └── data/sample/questions.json # 示例题目数据

安装

Linux / macOS

git clone exam-paper-plugin
cd exam-paper-plugin
./install.sh

可选参数:

./install.sh --with-doc # 额外询问安装 .doc 转换后端 ./install.sh --install-deps # 自动安装缺失依赖(含智能引擎) ./install.sh --skip-deps # 跳过所有依赖安装 ./install.sh --skip-smart # 只装插件,不装智能引擎依赖 ./install.sh --uninstall # 卸载

安装脚本会:

1. 复制 plugin.mjs、exam_paper.py、smart_engine/ 到 Harness 插件目录;
2. 建立 @deepseek-ai 依赖作用域链接;
3. 注册“试卷生成”代理预设;
4. 交互式选择智能引擎 Python 环境:
- [1] 在插件目录创建 .venv 虚拟环境(推荐);
- [2] 指定你已有的 Python 解释器;
- [3] 跳过智能引擎依赖。
5. 如果选择指定 Python,会把解释器路径写入 smart_python.txt,插件运行时优先使用该 Python。

Windows

powershell -ExecutionPolicy Bypass -File install.ps1
powershell -ExecutionPolicy Bypass -File install.ps1 -InstallDeps
powershell -ExecutionPolicy Bypass -File install.ps1 -SkipSmart
powershell -ExecutionPolicy Bypass -File install.ps1 -Uninstall

安装智能引擎依赖时同样支持选择“创建 .venv”或“指定现有 Python”。

作为 bundle 安装

dsh plugin --profile add "github:/exam-paper-plugin"
或本地路径
dsh plugin --profile add "/path/to/exam-paper-plugin"

使用

基础出卷

上传题目文件后对 Agent 说:

解析 /path/to/数学试卷.docx 里的题目

然后:

要第 1、3、5 题,标题「数学单元测验(一)」,解答题留 8 行横线

智能抽题

插件提供两个新增工具:

| 工具 | 作用 |
| index_question_bank | 解析题目并建立本地智能索引 |
| smart_select_questions | 按查询词与分类条件智能抽题,返回多样性候选 |

对 Agent 说:

用智能抽题从这些文件里选 5 道数学函数题

引擎会执行:解析 → 导入题库 → 建索引 → 向量召回 → MMR 多样性重排 → 返回少量候选。

智能引擎 CLI

独立开发/测试时可直接使用:

使用 conda 或 venv 创建 Python 3.10 环境
pip install -r requirements.txt

python -m smart_engine.cli --workdir ./data/engine init
python -m smart_engine.cli --workdir ./data/engine import data/sample/questions.json
python -m smart_engine.cli --workdir ./data/engine build-index
python -m smart_engine.cli --workdir ./data/engine cluster
python -m smart_engine.cli --workdir ./data/engine report --markdown
python -m smart_engine.cli --workdir ./data/engine label set 1 一次函数
python -m smart_engine.cli --workdir ./data/engine search --query "二次函数" --top-k 5
python -m smart_engine.cli --workdir ./data/engine select --query "二次函数" --count 3
python -m smart_engine.cli --workdir ./data/engine eval quick
python -m smart_engine.cli --workdir ./data/engine eval full
python -m smart_engine.cli --workdir ./data/engine eval compare

本地大模型 Token 评估

安装好 Ollama 并下载模型后:

python -m smart_engine.cli --workdir ./data/engine eval token \
--model deepseek-r1:1.5b \
--sample-questions 20 \
--num-ctx 16384

输出示例:

{
"full_context_tokens": 9438,
"smart_context_tokens": 1035,
"token_savings_ratio": 0.8903
}

与现有插件架构的适配分析

交互方式

- 现有插件通过 Cordis shell 服务调用 Python 脚本,输入输出为 JSON。
- 智能引擎同时提供 CLI 与 Python API,后续可直接被 plugin.mjs 调用,也可以被其他脚本导入。
- 插件中新增的 smart_select_questions 在会话工作区 .exam-paper/smart-engine/ 下保存索引和标签,不污染全局环境。

依赖与部署

- 基础解析引擎继续零第三方依赖,保证核心出卷功能稳定。
- 智能引擎依赖集中在 requirements.txt,安装脚本默认创建 .venv 隔离,避免影响系统 Python。
- 如果没有安装智能引擎依赖,原有 parse_question_file / generate_exam_paper 不受影响。

生命周期与资源管理

- SmartExamEngine 支持 init → import → build-index → search/select → close 的明确生命周期。
- 插件每次调用通过 CLI 子进程方式工作,避免常驻进程带来的复杂状态管理。
- 后续如果需要更高性能,可以在不改核心逻辑的情况下增加常驻服务模式。

输入输出兼容

- 智能引擎的题目字段与 exam_paper.py 解析结果保持一致。
- 抽题结果可直接交给 generate_exam_paper 生成试卷,无需额外转换。

可扩展点

- 文本特征目前默认使用 TF-IDF,可切换为本地 Ollama Embedding。
- 聚类参数、特征权重、MMR 参数、索引路径均通过统一配置管理。
- 标签映射支持导入导出,便于人工维护知识点体系。

测试与评估

python -m pytest -q tests/

评估维度:

- 聚类质量:轮廓系数、噪声比例、簇大小分布、簇数量稳定性
- 检索效果:分类过滤命中率、Top-K 召回、检索耗时、内存占用
- 多样性效果:MMR 前后重复知识点/题型比例、λ 敏感性
- 系统性能:不同数据量级下的建索引耗时、检索耗时、资源占用
- 版本对比:保存历史评估结果,自动标记关键指标回归

数据说明

- data/sample/questions.json 是随仓库保留的示例数据。
- 真实试卷等大文件建议放在 data/ 下,但已被 .gitignore 排除,不会进入 Git 历史。
- 智能引擎运行数据位于 data/engine*/ 或会话工作区的 .exam-paper/,同样不会提交。

License

MIT
预览分享卡片长什么样 ↓elegymythos/exam-paper-plugin
分享 · DeepSeek Harness Hub
elegymythos/exam-paper-plugin

解析 Word 与 PDF 题目,抽题排版生成可打印试卷

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部