patent-disclosure-skill 审查答复(模式 D)演练指南:从示例案例到可检索的 OA 私有案例库 📅 发布时间:2026/9/16 20:59:14 👁 浏览次数: patent-disclosure-skill 审查答复模式 D演练指南从示例案例到可检索的 OA 私有案例库【免费下载链接】patent-disclosure-skill中国专利.skill专利点挖掘与交底书发明/实用/外观编写通俗解读专利嗅探政策动向辅助审查答复。项目地址: https://gitcode.com/GitHub_Trending/pa/patent-disclosure-skill导读本文围绕 patent-disclosure-skill 仓库中「审查答复模式 D」演练材料examples/example_oa_response/README.md展开说明如何用一套虚构、已脱敏的极简样例完成冒烟测试历史案入库、标签检索、可选向量检索以及最终生成答复草稿。读完本文你将掌握模式 D 的目录约定方案 C 的 history / pending / drafts 布局、入库与检索命令的完整参数语义、向量模型配置的取舍逻辑以及底层 tools/oa 工具链各模块的调用关系可直接把同一套流程迁移到真实审查答复工作中。一、演练材料一份为冒烟测试设计的极简样例集examples/example_oa_response/下的样例是虚构、脱敏的数据定位是冒烟测试验证「入库 → 标签检索 → 可选向量检索 → 答复草稿」整条链路是否可用。它刻意保持极简不包含任何真实申请号、当事人或技术秘密所有文件均在 examples/example_oa_response 目录内自洽可放心反复执行命令验证。目录结构对齐「方案 C」history / pending / drafts各文件用途如下路径用途cases/history/hist-inventiveness-clamp.md历史案创造性 修改后授权cases/history/hist-clarity-connector.md历史案清楚性 仅意见陈述pending/oa_notice_pending.md待答复通知书drafts/入库前人审草稿可空其中两个历史案与一份待答复通知书的内容设计是有意互相关联的待答复通知书oa-notice-pending的related_cases字段显式指向hist-inventiveness-clamp且两者都命中专利法第22条第3款、inventiveness、机械结构与同一对比文件CNXXXXXXXX01.A。这种“刻意重复”是为了让检索与关联图谱在冒烟测试中能立即命中验证同法条、同缺陷、同领域、同对比文件这四类关联都能被工具识别。1. 历史案一创造性 修改后授权hist-inventiveness-clamphist-inventiveness-clamp.md 模拟的是典型的创造性答复审查员认为权利要求 1 相对对比文件 1 与公知常识的结合不具备创造性区别仅在于“卡扣端部增加限位凸起”。案卷的 frontmatter 记录了关键元数据case_id: hist-inventiveness-clamp status: history patent_type: invention statutes: - 专利法第22条第3款 defect_types: - inventiveness domain: 机械结构 notice_kind: office_action outcome: amended_then_granted strategy: - amend_claims - argue_only compare_refs: - CNXXXXXXXX01.A redacted: true tags: - oa/inventiveness - 法条/专利法第22条第3款答复策略是「修改 陈述」双管齐下保留独立权利要求主体把说明书记载的「限位凸起 导向斜面」一并写入权利要求 1意见陈述强调二者配合解决装配偏斜卡滞问题——即用“功能相互支持、非简单叠加”来反驳公知常识的认定。最终结果为修改后授权amended_then_granted。2. 历史案二清楚性 仅意见陈述hist-clarity-connectorhist-clarity-connector.md 模拟的是专利法第 26 条第 4 款的清楚性答复审查员认为权利要求 1 中「可适配接口」含义不清楚。该案策略为argue_only仅意见陈述、不改权利要求依托说明书实施例将「可适配接口」解释为“具备限位凹槽与弹性触点的插接结构”并指向附图标记最终意见陈述后授权granted。把两篇历史案放在一起的用意很明显它们分别覆盖了修改后授权与仅陈述授权两条不同答复路径供检索测试区分 outcome 与 strategy 字段。3. 待答复通知书oa_notice_pendingpending/oa_notice_pending.md 是一份完整的第一审查意见通知书脱敏申请号CNXXXXXXXX99.X、发明名称「一种带导向斜面的卡扣装配结构」核心意见是权利要求 1 相对对比文件 1 与公知常识的结合不具备创造性。文件末尾明确标注本文件为技能演练用虚构文本可直接作为search_cases.py --query-file输入。这意味着它不仅是给人看的通知书更是检索命令的合法输入源——无需手动摘抄缺陷描述工具会直接读文件内容作为查询文本。二、冒烟测试全流程四步命令详解演练材料 README 给出了完整冒烟命令序列下面按步骤展开并补充各参数的源码语义。第 1 步跳过向量可选# 可选跳过向量只测标签 python tools/oa/config.py skip-vector向量模型不是必须的。执行skip-vector后config.py 会写入一份vector_enabled: false的配置同时把user_confirmed置为true、清空embedding_fingerprint保证后续入库命令不再要求人工确认。配置默认落盘在系统「文档」目录的patent-disclosure-skill/oa/embedding.config.yaml可用环境变量PATENT_OA_HOME覆盖整个 oa 根目录仓库内的 docs/oa/embedding.config.yaml 仅作模板种子不会在运行期被改写。第 2 步入库两篇历史案# 入库两篇历史案需已确认配置可 --dry-run python tools/oa/ingest_case.py -i examples/example_oa_response/cases/history/hist-inventiveness-clamp.md --skip-redact python tools/oa/ingest_case.py -i examples/example_oa_response/cases/history/hist-clarity-connector.md --skip-redactingest_case.py 的入库流水线是理解这一步的关键读取案例 md用parse_case_markdown解析 frontmatter 与正文默认会对正文与标题做脱敏redact_text样例本身已脱敏所以用--skip-redact跳过若处理真实案卷且希望自动替换姓名/实体可去掉该参数并用--extra-name追加自定义脱敏词自动补齐标签为每个defect_types追加oa/缺陷标签为每个statutes追加法条/法条标签源码见 ingest_case.py这正是样例 frontmatter 里oa/inventiveness、法条/专利法第22条第3款的来源按状态写入 Obsidian 目录history状态进oa/cases/history/同时写入 sqlite 向量库若启用向量pending/draft状态只写笔记、不进向量库源码见 ingest_case.py写入后用refresh_oa_vault刷新索引。值得强调的是--dry-run参数它只做解析、脱敏与元数据预览输出preview_meta不落盘任何文件非常适合先跑一遍确认 frontmatter 解析无误再正式入库。另外入库不仅支持现成的 md 文件也支持直接喂通知书 PDFpython tools/oa/ingest_case.py --pdf notice.pdf --reply-pdf reply.pdf \ --case-id demo-case --draft-onlybuild_draft_from_pdfs源码见 ingest_case.py会先抽取 PDF 文本、生成带 frontmatter 的案例草稿status: draft再决定是否入库——这是真实工作流里“先草稿后人审补标签、再入库”的推荐姿势。第 3 步刷新 Obsidian 索引# 刷新 Obsidian 索引 / Canvas / Bases python tools/oa/refresh_vault.pyrefresh_vault.py 会执行完整刷新迁移旧平铺布局migrate_legacy_layout、为每条案例补导航与「关联案」「对比文件」节enrich_case_note、重写_OA索引.md、_OA看板.baseBases 视图与_OA关联.canvas关联图谱。其中write_oa_canvas会按同法条 2 分、同缺陷 1.5 分、同领域 1 分、同对比文件 2 分、显式关联 3 分的规则给历史案两两打分连线源码见 vault_layout.py。因此上文提到的两篇历史案与待答复通知书的“刻意关联”会在 Canvas 上体现为明显的连线。Obsidian 侧的目标结构为oa/ _OA索引.md _OA看板.base _OA关联.canvas cases/history/ # 已结案 / 可检索历史案 pending/ # 待答复通知书 drafts/ # 入库前人审草稿第 4 步用待答复通知书检索# 用待答复通知书检索md/txt 亦可 python tools/oa/search_cases.py \ --query-file examples/example_oa_response/pending/oa_notice_pending.md \ --defect inventiveness \ --statute 专利法第22条第3款 \ --top-k 3search_cases.py 的检索逻辑是「元数据过滤 可选向量 KNN」--query-file直接读取待答复通知书全文作为查询文本也支持--query内联文本、--pdf通知书 PDF自动抽取文本并落盘.extracted.txt/.extracted.json见 search_cases.py三者只需其一--defect inventiveness与--statute 专利法第22条第3款是标签/字段过滤条件字段匹配采用归一化子串匹配即「法条/专利法第22条第3款」这类 Obsidian 标签也能与查询词对上源码见 store.py--top-k控制返回条数缺省时回退到配置里的default_top_k默认 5。在「已跳过向量」的情况下检索模式为tags_only纯靠标签与元数据过滤结果命中hist-inventiveness-clamp——因为它与待答复通知书共享法条、缺陷类型、领域和对比文件。若启用了向量且索引有效则进入vector模式先元数据过滤缩小候选集再用 sqlite-vec 做 KNN 距离排序并按 case 去重后返回前 k 条源码见 store.py。向量不可用时工具会在 stderr 输出 WARN 并自动回退标签检索不会中断流程。三、向量模型配置可跳过、可中途启用演练 README 建议的skip-vector只是配置的一种选择。工具链在 tools/oa/config.py 中内置了多厂商 preset覆盖「跳过向量 → 仅标签」到「启用向量 → 语义检索」的完整谱系# 查看推荐选型与全部 preset python tools/oa/config.py recommend # 采用推荐预设智谱 embedding-3 API Key python tools/oa/config.py set --preset zhipu --api-key sk-... # 或自定义 OpenAI 兼容接口 python tools/oa/config.py set --provider openai_compatible \ --model embedding-3 --dimensions 1024 \ --base-url https://open.bigmodel.cn/api/paas/v4 \ --api-key sk-... # 查看状态 / 单独自检 python tools/oa/config.py status python tools/oa/config.py selftest内置 preset 一览源码见 config.pyprovider典型 preset模型 / 维度说明openai_compatiblezhipuembedding-3 / 1024推荐预设维度可选 256/512/1024/2048openai_compatibledashscopetext-embedding-v3 / 1024阿里通义openai_compatibleopenaitext-embedding-3-small / 1536海外minimaxminimaxembo-01 / 1536专用接口需 API Key GroupIdlocallocalBAAI/bge-small-zh-v1.5 / 512本地 sentence-transformers案例不出库关于配置有几点源码级提示值得注意密钥与配置分离API Key 只会写入用户文档目录的embedding.secrets.yaml默认{Documents}/patent-disclosure-skill/oa/embedding.secrets.yaml配置文件里只记录api_key_env环境变量名读取时优先环境变量、其次 secrets 文件见 config.py密钥不会进入仓库自检失败不阻塞selftest会做一次极短文本的真实 embedding 调用失败时输出原因但仍可退回标签检索模型变更强制重建配置以embedding_fingerprintprovider model dimensions base_url 拼接记录索引指纹模型或维度变更后check_rebuild_needed会提示重建此时需执行python tools/oa/rebuild_vectors.py --confirm向量库是 sqlite sqlite-vecoa_vectors.sqlite元数据表始终可查询vec_chunks虚拟表仅在启用向量时创建源码见 store.py。这也是「向量不是必须的」在实现层面的体现标签/字段检索不依赖任何向量扩展即使 Python 的 sqlite3 不支持load_extensionopen_store也会自动降级为纯元数据连接见 store.py。四、对话触发与 Agent 协作方式演练材料同时给出了一种 Agent 协作入口——直接把案例库位置作为自然语言指令交给 Agent审查答复历史案在 examples/example_oa_response/cases/history/ 待答复通知书 examples/example_oa_response/pending/oa_notice_pending.mdAgent 收到该指令后会沿着 prompts/oa/ 下的提示词序列执行intake.md接收任务与法条/缺陷识别 →ingest_case.md负责入库 →respond_office_action.md基于检索到的相似历史案生成答复草稿 → 必要时结合case_note_template.md的笔记模板补全结构与标签。更完整的细则见 SKILL.md 的模式 D 章节与 tools/oa/README.md。推荐对话配置流程是Agent 按 prompts/oa/configure_embedding.md 与用户问答收集选型然后写配置与密钥、跑selftest需要重建时再确认。整套流程在tools/oa/下有对应的测试覆盖tests/oa/test_oa_store.py可放心迭代。五、从冒烟到实战把演练迁移到真实案卷冒烟测试通过后同一套流程可用于真实审查答复工作只需注意三点差异脱敏从“跳过”变为“必须”真实案卷入库时不要加--skip-redact让redact_text自动替换姓名/实体并用--extra-name补充案卷特有的当事人与公司名embedding.secrets.yaml中的 Key 同样应视为敏感信息避免提交或外发草稿先行真实通知书优先走--pdf--draft-only生成人审草稿补全defect_types、strategy、outcome等 frontmatter 后再正式入库避免把未梳理的案卷直接推进检索库向量按需启用小规模案例库仅靠标签检索已足够当历史案数量上升、缺陷描述措辞差异变大时再enable-vector并rebuild_vectors.py --confirm重建索引即可获得语义级召回。结语examples/example_oa_response/是一份体量极小但闭环完整的模式 D 演练材料两篇分别覆盖「修改后授权」与「仅陈述授权」的历史案、一份可直接作为检索输入的待答复通知书外加一段可复制的四步冒烟命令。它演示的并不只是命令用法而是「脱敏入库 → 标签/向量双模检索 → Obsidian 图谱化 → 答复草稿」这一整套审查答复知识管理的工程化思路。理解了这套流程的源码细节标签自动补齐、向量可选与自动回退、指纹驱动的索引重建你就能把同样方法复用到任意规模的私有 OA 案例库中。【免费下载链接】patent-disclosure-skill中国专利.skill专利点挖掘与交底书发明/实用/外观编写通俗解读专利嗅探政策动向辅助审查答复。项目地址: https://gitcode.com/GitHub_Trending/pa/patent-disclosure-skill创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考