cannbot算子开发知识库插件依赖的知识库本体仓,给cannbot提供统一的知识底座。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !171 merge scope_governance_bootstrap into master feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: ## 变更说明 PR143 的知识卡新增了可选 scope,但现有知识 CI 从目标分支加载受信规则和脚本,只覆盖 PR 的 knowledge/。目标规则尚不支持该字段,导致 57 张卡触发 114 条 Schema/Profile 错误,GraphCheck 也在加载卡片时失败。本 PR 先接入兼容旧知识的 Scope 基础治理,供后续知识迁移使用。 - 关联 Issue/RFC:[cann/cannbot-knowledge#47](https://gitcode.com/cann/cannbot-knowledge/issues/47)。这是 [PR143](https://gitcode.com/cann/cannbot-knowledge/merge_requests/143) 的前置治理变更,合入本 PR 不关闭 RFC47。 主要改动: 1. 在 JSON Schema、四类 Profile(Concept/Guide/Optimization/Runbook)和 Registry 中声明可选 Scope,接入同版本 Contract 校验与三态比较;Lint、索引和构图复用同一实现。保留 additionalProperties: false,继续拒绝未知字段、非法维度、错误路径绑定和不支持的 Profile。 2. Scope 保持可选,允许来源支持且有过滤价值的部分条件,不以填写率验收。各领域独立定义 namespace、适用范围、维度和匹配语义;处理器只从受审查的 Contract 静态表选择,数据不能加载外部可执行代码。 3. 补充治理 Spec、AGENTS、Ingest/Lint 说明及回归,解释治理能力先于依赖知识接入的 CI 边界。当前只提供校验和 Contract 比较接口,Query 的公开参数和排序保持原样。 知识树与目标分支逐字节一致;不移动卡片、不补写 Scope、不禁用 experience,不修改 .gitcode/、Query、原检索用例、安装器或检查入口。知识迁移、场景查询参数和目录禁用继续由 PR143 承载。本地 RFC、生成报告和实验产物未纳入提交。 ### 上游同步与冲突处理 合并上游 master 3cc093df,将 logs/2026-10-26.md 的双方三条完整记录按 21:03 → 20:53 → 17:15 排列,原文保持不变。Scope 校验仍为 P0,沿用上游日志格式 P0、日志乱序 P1 及 CI 日志快照处理;此前的日志排序与快照问题已由上游修复,无需再单独前置日志修复提交。 本 PR 相对目标分支不含知识或 .gitcode/ 差异。期间 master 后续提交 91ef56f3 已通过自动合并检查,无新增冲突;下面的完整验证对应源提交 5562b722 的合并树。 ## 变更类型 - [ ] 知识卡 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [x] Knowledge Skill(Ingest / Lint 说明与参考) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 ## 验证 - [x] 已执行 bash check.sh。 - [x] 已同步规则消费者、文档、测试和当天日志,重新核对 AGENTS。 - [x] 未提交敏感信息、知识正文副本、本地 RFC 或 artifacts/ 等可重建产物。 - [x] 完整 PR 差异不含 knowledge/ 或 .gitcode/,遵守 RFC47 的可选扩展与原路径兼容要求。 See merge request: cann/cannbot-knowledge!171 | 10 小时前 | |
initial commit Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !1 merge master into master initial commit Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: <!-- 感谢您的合入申请! --> ### 当前PR是否有AI参与: [x] 否 [ ] 是 __1. AI Agent 平台: __2. AI 模型: __3. Prompt上下文 : ### PR功能描述 / 为什么需要这个合入**: <!-- 本 PR 做了什么,为什么需要 / What does this PR do and why --> ### 该PR关联的issue *(格式为fixes #<issue号>, 或者resolves #<issue号>)*: fixes # ### 希望检视人员了解: ## 改动类型 / Change Type - [ ] Bug 修复 / Bug Fix - [ ] 新功能 / New Feature - [ ] 性能优化 / Performance - [ ] 代码重构 / Refactoring - [ ] 文档更新 / Documentation - [ ] 测试相关 / Test - [ ] 其它 / Other ## 测试信息 / Testing <!-- 简要测试说明或关键结果 / Brief test description or key results --> - [ ] 单元测试通过 / UT passed - [ ] 集成测试通过 / ST passed - [ ] 人工验证通过 / Manual verified ## 检查清单 / Checklist - [ ] 代码符合规范 / Code follows style guide - [ ] 测试添加并通过 / Tests added and passed - [ ] 文档已更新 / Docs updated if needed - [ ] 无硬编码敏感信息 / No secrets hardcoded - [ ] 提交信息符合规范 / Commit message follows convention See merge request: cann/cannbot-knowledge!1 | 2 个月前 | |
fix: 日志顺序检查降为 P1 并校正 CI 日志快照 Co-authored-by: AndyKong2020<konghao7@huawei.com> # message auto-generated for no-merge-commit merge: !175 merge codex/log-time-order-p1 into master fix: 日志顺序检查降为 P1 并校正 CI 日志快照 Created-by: AndyKong2020 Commit-by: AndyKong;AndyKong2020 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 修复日志检查的分级和 CI 受检快照范围。日志条目时间乱序原先随 logs 以 P0 报告,本次将 log.order 独立注册为 P1 检查 log_order;文件名、日期标题、非法时间和 Summary/Details 格式错误仍保持 P0。 CI 在恢复目标主线的可信检查代码后,原先只恢复候选 knowledge/,遗漏 logs/,导致 PR 已排好的日志仍按主线旧内容检查。现在仅将 FormatCheck 的受检数据改为合并快照中的 knowledge/ 和 logs/;检查器及治理代码继续来自目标主线。 - 关联 Issue:无。 - 审计主线 51 个日志文件、186 条条目,仅 logs/2026-10-23.md 乱序。将完整条目块调整为 17:38 → 15:54 → 11:40 → 11:01,条目内容与时间原文逐字节保留。 - CI 工作流相对主线仅修改一行:FormatCheck 的 git restore 路径从 knowledge 改为 knowledge logs。已移除额外的日志文件类型校验;GraphCheck、ContentCheck 和原有校验保持不变。 - 日志分级仅新增一个 27 行参数化回归,验证乱序 P1 不阻断、非法时间仍 P0;原有测试及门槛不变。CI 快照修复通过临时 Git 夹具验证,未再修改测试脚本。 - 共 8 个相关文件,无知识卡变更。 ## 变更类型 - [x] 治理规则(Contract) - [x] Knowledge Skill(Lint) - [x] 检索、评测或测试 - [x] CI - [x] 文档与治理日志 ## 对照验证 | 相同输入 | 修改前 | 修改后 | |---|---|---| | 正常倒序 | 无问题,不阻断 | 无问题,不阻断 | | 时间乱序 | logs / P0 / log.order,阻断 | log_order / P1 / log.order,不阻断 | | 非法时间 25:00 | logs / P0 / log.entry,阻断 | 保持相同 P0 结果,仍阻断 | - 此前临时 Git 夹具验证:知识页和日志的新增、修改、删除来自合并快照,检查代码保持目标主线版本。此次精简后核对完整工作流差异,除 FormatCheck 的恢复路径外与主线完全一致;3 项已有工作流配置及摘要回归再次通过。 - 此前真实快照验证:在隔离临时工作树中检出虚拟合并 a538605adaf3f605be2ba06174b1d9e51fa138e5,执行修改后的准备步骤;确认检查器与主线 0860103b5eab5460619cb4cb417dbaf558da6985 逐字节一致,日志与合并快照一致。完整 FormatCheck 检查 9052 页,findings 为空、退出码 0;通过不依赖本 PR 的新 P1 代码。 ## 验证 - [x] 25 项 Lint 行为和 FormatCheck 摘要回归通过;本次另运行的 3 项已有工作流配置及摘要测试通过。 - [x] 全库严格 Lint:checked=9052 P0=0 P1=0 P2=0;712 个索引 stale=0。 - [x] 8,340 张卡的索引 build/full verify 通过;72 项检索质量门禁通过,Recall@k=0.560、MRR=0.466。 - [x] git diff --check 通过;没有提交临时验证脚本或 artifacts/ 等可重建产物。 - [ ] bash check.sh 未全通过:320 项仓库测试中 318 通过、1 skip、1 failure。test_markdown_structure 仍报告 375 处问题;该问题此前已用未修改主线的原始文件复跑,375 条失败清单完全相同。后续步骤未由本次完整门禁执行。 ## CI 生效说明 已失败的 run #361 载入目标主线 0860103b5 的工作流,实际只恢复 knowledge/,因此没有检查本 PR 重排后的日志。上述通过结果来自临时隔离环境对修改后步骤的真实执行,不代表云端 CI 已通过。需要维护者先使可信主线工作流采用本次快照修复,再运行新配置;重复运行旧配置不会采用这项修改。 See merge request: cann/cannbot-knowledge!175 | 1 天前 | |
initial commit Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !1 merge master into master initial commit Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: <!-- 感谢您的合入申请! --> ### 当前PR是否有AI参与: [x] 否 [ ] 是 __1. AI Agent 平台: __2. AI 模型: __3. Prompt上下文 : ### PR功能描述 / 为什么需要这个合入**: <!-- 本 PR 做了什么,为什么需要 / What does this PR do and why --> ### 该PR关联的issue *(格式为fixes #<issue号>, 或者resolves #<issue号>)*: fixes # ### 希望检视人员了解: ## 改动类型 / Change Type - [ ] Bug 修复 / Bug Fix - [ ] 新功能 / New Feature - [ ] 性能优化 / Performance - [ ] 代码重构 / Refactoring - [ ] 文档更新 / Documentation - [ ] 测试相关 / Test - [ ] 其它 / Other ## 测试信息 / Testing <!-- 简要测试说明或关键结果 / Brief test description or key results --> - [ ] 单元测试通过 / UT passed - [ ] 集成测试通过 / ST passed - [ ] 人工验证通过 / Manual verified ## 检查清单 / Checklist - [ ] 代码符合规范 / Code follows style guide - [ ] 测试添加并通过 / Tests added and passed - [ ] 文档已更新 / Docs updated if needed - [ ] 无硬编码敏感信息 / No secrets hardcoded - [ ] 提交信息符合规范 / Commit message follows convention See merge request: cann/cannbot-knowledge!1 | 2 个月前 | |
docs: 明确知识仓与技能仓的内容边界 Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !134 merge add_boundary into master docs: 明确知识仓与技能仓的内容边界 Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 <!-- 简要说明为什么改、改了什么,以及未包含的范围。 --> - 关联 Issue:<!-- #123、完整链接或“无” --> - 主要改动:新增了文档用于描述知识库仓和skills仓的内容边界 - 补充说明:<!-- 知识来源、处理决定、影响范围或风险(如适用) --> ## 变更类型 <!-- 可多选。 --> - [ ] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!134 | 8 天前 | |
feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !171 merge scope_governance_bootstrap into master feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: ## 变更说明 PR143 的知识卡新增了可选 scope,但现有知识 CI 从目标分支加载受信规则和脚本,只覆盖 PR 的 knowledge/。目标规则尚不支持该字段,导致 57 张卡触发 114 条 Schema/Profile 错误,GraphCheck 也在加载卡片时失败。本 PR 先接入兼容旧知识的 Scope 基础治理,供后续知识迁移使用。 - 关联 Issue/RFC:[cann/cannbot-knowledge#47](https://gitcode.com/cann/cannbot-knowledge/issues/47)。这是 [PR143](https://gitcode.com/cann/cannbot-knowledge/merge_requests/143) 的前置治理变更,合入本 PR 不关闭 RFC47。 主要改动: 1. 在 JSON Schema、四类 Profile(Concept/Guide/Optimization/Runbook)和 Registry 中声明可选 Scope,接入同版本 Contract 校验与三态比较;Lint、索引和构图复用同一实现。保留 additionalProperties: false,继续拒绝未知字段、非法维度、错误路径绑定和不支持的 Profile。 2. Scope 保持可选,允许来源支持且有过滤价值的部分条件,不以填写率验收。各领域独立定义 namespace、适用范围、维度和匹配语义;处理器只从受审查的 Contract 静态表选择,数据不能加载外部可执行代码。 3. 补充治理 Spec、AGENTS、Ingest/Lint 说明及回归,解释治理能力先于依赖知识接入的 CI 边界。当前只提供校验和 Contract 比较接口,Query 的公开参数和排序保持原样。 知识树与目标分支逐字节一致;不移动卡片、不补写 Scope、不禁用 experience,不修改 .gitcode/、Query、原检索用例、安装器或检查入口。知识迁移、场景查询参数和目录禁用继续由 PR143 承载。本地 RFC、生成报告和实验产物未纳入提交。 ### 上游同步与冲突处理 合并上游 master 3cc093df,将 logs/2026-10-26.md 的双方三条完整记录按 21:03 → 20:53 → 17:15 排列,原文保持不变。Scope 校验仍为 P0,沿用上游日志格式 P0、日志乱序 P1 及 CI 日志快照处理;此前的日志排序与快照问题已由上游修复,无需再单独前置日志修复提交。 本 PR 相对目标分支不含知识或 .gitcode/ 差异。期间 master 后续提交 91ef56f3 已通过自动合并检查,无新增冲突;下面的完整验证对应源提交 5562b722 的合并树。 ## 变更类型 - [ ] 知识卡 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [x] Knowledge Skill(Ingest / Lint 说明与参考) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 ## 验证 - [x] 已执行 bash check.sh。 - [x] 已同步规则消费者、文档、测试和当天日志,重新核对 AGENTS。 - [x] 未提交敏感信息、知识正文副本、本地 RFC 或 artifacts/ 等可重建产物。 - [x] 完整 PR 差异不含 knowledge/ 或 .gitcode/,遵守 RFC47 的可选扩展与原路径兼容要求。 See merge request: cann/cannbot-knowledge!171 | 10 小时前 | |
feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !171 merge scope_governance_bootstrap into master feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: ## 变更说明 PR143 的知识卡新增了可选 scope,但现有知识 CI 从目标分支加载受信规则和脚本,只覆盖 PR 的 knowledge/。目标规则尚不支持该字段,导致 57 张卡触发 114 条 Schema/Profile 错误,GraphCheck 也在加载卡片时失败。本 PR 先接入兼容旧知识的 Scope 基础治理,供后续知识迁移使用。 - 关联 Issue/RFC:[cann/cannbot-knowledge#47](https://gitcode.com/cann/cannbot-knowledge/issues/47)。这是 [PR143](https://gitcode.com/cann/cannbot-knowledge/merge_requests/143) 的前置治理变更,合入本 PR 不关闭 RFC47。 主要改动: 1. 在 JSON Schema、四类 Profile(Concept/Guide/Optimization/Runbook)和 Registry 中声明可选 Scope,接入同版本 Contract 校验与三态比较;Lint、索引和构图复用同一实现。保留 additionalProperties: false,继续拒绝未知字段、非法维度、错误路径绑定和不支持的 Profile。 2. Scope 保持可选,允许来源支持且有过滤价值的部分条件,不以填写率验收。各领域独立定义 namespace、适用范围、维度和匹配语义;处理器只从受审查的 Contract 静态表选择,数据不能加载外部可执行代码。 3. 补充治理 Spec、AGENTS、Ingest/Lint 说明及回归,解释治理能力先于依赖知识接入的 CI 边界。当前只提供校验和 Contract 比较接口,Query 的公开参数和排序保持原样。 知识树与目标分支逐字节一致;不移动卡片、不补写 Scope、不禁用 experience,不修改 .gitcode/、Query、原检索用例、安装器或检查入口。知识迁移、场景查询参数和目录禁用继续由 PR143 承载。本地 RFC、生成报告和实验产物未纳入提交。 ### 上游同步与冲突处理 合并上游 master 3cc093df,将 logs/2026-10-26.md 的双方三条完整记录按 21:03 → 20:53 → 17:15 排列,原文保持不变。Scope 校验仍为 P0,沿用上游日志格式 P0、日志乱序 P1 及 CI 日志快照处理;此前的日志排序与快照问题已由上游修复,无需再单独前置日志修复提交。 本 PR 相对目标分支不含知识或 .gitcode/ 差异。期间 master 后续提交 91ef56f3 已通过自动合并检查,无新增冲突;下面的完整验证对应源提交 5562b722 的合并树。 ## 变更类型 - [ ] 知识卡 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [x] Knowledge Skill(Ingest / Lint 说明与参考) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 ## 验证 - [x] 已执行 bash check.sh。 - [x] 已同步规则消费者、文档、测试和当天日志,重新核对 AGENTS。 - [x] 未提交敏感信息、知识正文副本、本地 RFC 或 artifacts/ 等可重建产物。 - [x] 完整 PR 差异不含 knowledge/ 或 .gitcode/,遵守 RFC47 的可选扩展与原路径兼容要求。 See merge request: cann/cannbot-knowledge!171 | 10 小时前 | |
feat(catlass-dsl): 补充实现模式知识卡至 guides/implementation_patterns Co-authored-by: longjihui<longjihui@huawei.com> # message auto-generated for no-merge-commit merge: !170 merge feat/catlass-dsl-pattern-cards into master feat(catlass-dsl): 补充实现模式知识卡至 guides/implementation_patterns Created-by: longjihui Commit-by: longjihui Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 - 关联 Issue:无 - 主要改动:在既有 knowledge/ops/catlass-dsl 路由下新增 guides/implementation_patterns/ 子目录,补充 15 张跨算子复用的实现模式知识卡及 index.md;同步更新 guides/index.md、route 根 index.md 的导航与统计;新增 logs/2026-10-26.md 记录本次门禁结果。 - 补充说明:卡片来源为 catlass-dsl 插件原 knowledge/pattern-*.md,按 OKF v0.2 重写为 type: Guide:arch: [c310] 归一为 platforms: ['950'],tags 全部取 registries.yaml 受控词表,正文统一为单一 H1 + H2 章节,跨卡链接改为新 snake_case 文件名。 ## 变更类型 - [x] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [ ] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md ### 本次验证 基于最新 master(b1f947c1)rebase 后执行: - knowledge_lint --strict-navigation:checked=9042 P0=0 P1=0 P2=0 - sync-indexes --check:Checked 713 indexes, stale 0 - knowledge_index verify --level full:ok cards=8329 - evals/run_retrieval.py --quality-gate:recall@k=0.560 MRR=0.466 cases=72,通过 - python3 -m unittest discover -s evals:312 项,仅既有 test_markdown_structure 失败(375 张上游存量卡“首个内容标题不是 H1”,与本 MR 无关,未扩大范围修改存量知识) 因此 bash check.sh 整体勾选未勾,其余门禁均通过。 See merge request: cann/cannbot-knowledge!170 | 4 小时前 | |
feat(catlass-dsl): 补充实现模式知识卡至 guides/implementation_patterns Co-authored-by: longjihui<longjihui@huawei.com> # message auto-generated for no-merge-commit merge: !170 merge feat/catlass-dsl-pattern-cards into master feat(catlass-dsl): 补充实现模式知识卡至 guides/implementation_patterns Created-by: longjihui Commit-by: longjihui Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 - 关联 Issue:无 - 主要改动:在既有 knowledge/ops/catlass-dsl 路由下新增 guides/implementation_patterns/ 子目录,补充 15 张跨算子复用的实现模式知识卡及 index.md;同步更新 guides/index.md、route 根 index.md 的导航与统计;新增 logs/2026-10-26.md 记录本次门禁结果。 - 补充说明:卡片来源为 catlass-dsl 插件原 knowledge/pattern-*.md,按 OKF v0.2 重写为 type: Guide:arch: [c310] 归一为 platforms: ['950'],tags 全部取 registries.yaml 受控词表,正文统一为单一 H1 + H2 章节,跨卡链接改为新 snake_case 文件名。 ## 变更类型 - [x] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [ ] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md ### 本次验证 基于最新 master(b1f947c1)rebase 后执行: - knowledge_lint --strict-navigation:checked=9042 P0=0 P1=0 P2=0 - sync-indexes --check:Checked 713 indexes, stale 0 - knowledge_index verify --level full:ok cards=8329 - evals/run_retrieval.py --quality-gate:recall@k=0.560 MRR=0.466 cases=72,通过 - python3 -m unittest discover -s evals:312 项,仅既有 test_markdown_structure 失败(375 张上游存量卡“首个内容标题不是 H1”,与本 MR 无关,未扩大范围修改存量知识) 因此 bash check.sh 整体勾选未勾,其余门禁均通过。 See merge request: cann/cannbot-knowledge!170 | 4 小时前 | |
feat: API 组合导航链接完整交付(试点 4 链路 + 对抗验证 112 对组合,含机制摘要) Co-authored-by: gcw_ydnion3P<wangyifan14@huawei.com> # message auto-generated for no-merge-commit merge: !100 merge feature/kb-api-combo-navigation-b2 into master feat: API 组合导航链接完整交付(试点 4 链路 + 对抗验证 112 对组合,含机制摘要) Created-by: Yifan_Wang Commit-by: gcw_ydnion3P Merged-by: cann-robot Description: 关联 Issue #23。合并原两批 PR(#99 试点批次 + #100 对抗验证批次)为单一交付:选链依据从人工判断升级为证据挖掘 + 512 对对抗验证,链接形态从纯指针升级为"指针 + 机制摘要"。 ## 变更内容 95 张知识卡(原批次 1 的 31 张 + 批次 2 的 64 张)文末追加/富化「配套 API 与常见组合」,共 330 个链接,覆盖 101 对经对抗验证的组合(全部可用验证对): - **机制摘要进卡**:147 条既有链接升级为 - [目标卡](路径)——机制一句话(取对抗验证裁决核心,如"FetchEventID 返回的 TEventID 直接作为 SetFlag/WaitFlag 入参"、"AscSyncNotify/AscWait 卡面声明配对使用且 pipe/tpipe/id 三参数必须一致") - **17 对此前推迟的组合补入**(两批合并后冲突消失):事件链接入 SetFlag/WaitFlag 卡、队列生命周期补全等 34 条双向链接 - 其余 6 对验证组合(AscSyncNotify↔AscSyncWait 等)原卡正文已有官方交叉引用,无需新增 覆盖链路(九条 + 批次 1 四条):事件同步、tiling 流水线、950 Reg/MicroAPI 类型集、matmul 操作数契约、C API 同步/搬运链、SIMT 转换环、Welford 管线、MrgSort 寻址、user workspace 跨核协作、架构门控、队列生命周期、UB↔GM 搬运、同步配对。 ## 变更类型 - [x] 知识卡 - [ ] 治理规则(Agent 工作约定) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [ ] 文档 - [ ] 其他 ## 验证 - [x] 对抗验证:512 对候选经 16 个独立 subagent 逐对裁决(度量 + 代码行证据 + 知识卡语义核对),112 对 LINK 存活;10 类系统性噪声识别并排除(类级同名方法碰撞、L0 op 层级、互斥替代、arch 变体错配、方向错配等) - [x] knowledge_lint --strict-navigation:checked=7867,P0/P1/P2=0(全部链接解析有效) - [x] 检索回归(--quality-gate,70 真实场景用例):43 PASS 0 FAIL,recall@k=0.548 / MRR=0.459 与基线逐位一致,无排序污染 - [x] 归档镜像卡正文零改动(文末追加受控例外 + updated_at 提升);无卡片增删移动,各级 index.md 不变 - [x] 已记录日志 logs/2026-09-30.md、logs/2026-10-09.md、logs/2026-10-10.md - [x] 完整 bash check.sh 留 CI 复核 ## 评审材料 - 512 对逐对裁决(机制全文 + 证据代码行 + 卡片路径,可人工复核任意一条) - 全量度量数据、四档分类与可复现分析管线 - 组合知识密度层的后续规划(组合卡蒸馏,Issue #23 第 2 步):验证机制与 12 条验证链为原料 详见日志与 Issue #23 评论。 See merge request: cann/cannbot-knowledge!100 | 16 天前 | |
feat(governance): 登记 runtime 固定来源及头文件路径基准 Co-authored-by: Hou_jialin<houjialin3@huawei.com> # message auto-generated for no-merge-commit merge: !132 merge br_runtime_source_registration into master feat(governance): 登记 runtime 固定来源及头文件路径基准 Created-by: Hou_jialin Commit-by: Hou_jialin Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 - 关联 Issue:[RFC #57](https://gitcode.com/cann/cannbot-knowledge/issues/57) - 主要改动:复用既有 Registry 和资源恢复流程,登记 Runtime 固定来源,明确 Runtime 头文件的源码根,补齐来源测试与 A/B 复现材料。保障后续runtime知识卡准入。 ## 变更类型 - [ ] 知识卡 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [ ] bash check.sh:已执行,仅既有 Markdown 结构单测失败,见下方说明。 - [x] 以当前目标为基线的来源 A/B 对照 13/13 符合预期。 - [x] 新增 6 项可发现的 unittest:模块调用和 discover 均为 6 项通过,已纳入 check.sh 原有发现集合。 - [x] 当前版本的全库 Lint、目录索引、检索索引 build/full verify 通过。 - [x] trace 36 项、field-notes、Ruff、Shell 语法及归档 diff-check 通过。 - [ ] 本轮完整单测 312 项,仅既有的 test_markdown_structure 失败,新增 6 项均通过。 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试。 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物。 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md。 ### 本次验证 2026-10-26 基于最新 master(c92c66ee695090c44487f56bd051d2607c58b27a)验证,PR 保持单提交 41e43a7dc3c38b45d8ed56bae06dcbbfc548837a。 唯一冲突为 logs/2026-10-23.md 的 add/add;按 17:38、15:54、11:01 顺序完整保留双方原日志。功能和 6 项自动单测未变。 - 模块调用与 targeted discover 均为 6/6;手动来源 A/B 为 13/13。 - bash check.sh 的全库 Lint、导航、索引构建与完整验证通过;72 项检索质量检查通过,recall@k=0.560、MRR=0.466。 - 全库单测 312 项,仅 test_markdown_structure 失败;在未修改的最新上游独立复测也失败。未扩大范围修改存量知识或宣称完整门禁通过。 - 门禁停止后的 trace 36 项、field-notes、Ruff、Shell 语法及归档 diff-check 已分别补跑通过。 ### A/B 结果与复现 A/B 测试在 Ubuntu 22.04、Python 3.10.12执行。A 固定为 ef37bed1bbec2782cb07d2b086e80361fc0ea3c0,B 为原独立候选 99b8175be548b66e2ec8ffff2b77107fc1c01dc2。两组使用相同输入、配置和预设期望,每例执行一次,13/13 符合预期;2026-10-23 对目标 fd3dd23d 和当前功能的重跑同样为 13/13。 - 原对照脚本 SHA-256:c4be1e7989a9b43d6124cb516c0e1239fea9e5e801949e2df796a7a512a672e9。 - 当前脚本 SHA-256:e4eb2df7d7b29ceb977515bafc6aee7a24a5929f8f067610af5e1ac1b646da08;新增自动回归,原 13 项对照输入与期望未变。 - A Registry SHA-256:f597ae5f24d32bfb814a3924aec79f93c11a6339fdac368ecef1159085d858d8。 - B Registry SHA-256:0883cb38620df57ddc6dd1f1883acc7b16ebe497593c09d8398b0fd7cdc95b83。 | 案例 | A 实际结果 | B 实际结果 | 是否符合预期 | |---|---|---|---| | runtime_local | unregistered | accepted | 是 | | runtime_remote | unregistered | accepted | 是 | | runtime_unknown_revision | unregistered | rejected | 是 | | runtime_traversal | unregistered | rejected | 是 | | runtime_branch | unregistered | rejected | 是 | | unknown_root | unregistered | unregistered | 是 | | operator_local | accepted | accepted | 是 | | operator_unknown_revision | rejected | rejected | 是 | | operator_traversal | rejected | rejected | 是 | | operator_remote | accepted | accepted | 是 | | runtime_card | rejected | accepted | 是 | | existing_api_metadata | accepted | accepted | 是 | | git_source_count | 4 | 5 | 是 | 依赖按根 requirements.txt 安装,准备 A、B 两个独立 checkout;A 使用上述固定基线,B 使用本 PR。在候选仓执行: bash python3 evals/test_runtime_source_registration.py --baseline-root ../baseline --candidate-root . See merge request: cann/cannbot-knowledge!132 | 2 天前 | |
chore: add pre-commit checks Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !34 merge add_precommit into master chore: add pre-commit checks Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 新增precommit <!-- 简要说明为什么改、改了什么,以及未包含的范围。 --> - 关联 Issue:<!-- #123、完整链接或“无” --> - 主要改动: - 补充说明:<!-- 知识来源、处理决定、影响范围或风险(如适用) --> ## 变更类型 <!-- 可多选。 --> - [ ] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [x] 安装、脚本、依赖或 CI - [ ] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!34 | 1 个月前 | |
feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !171 merge scope_governance_bootstrap into master feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: ## 变更说明 PR143 的知识卡新增了可选 scope,但现有知识 CI 从目标分支加载受信规则和脚本,只覆盖 PR 的 knowledge/。目标规则尚不支持该字段,导致 57 张卡触发 114 条 Schema/Profile 错误,GraphCheck 也在加载卡片时失败。本 PR 先接入兼容旧知识的 Scope 基础治理,供后续知识迁移使用。 - 关联 Issue/RFC:[cann/cannbot-knowledge#47](https://gitcode.com/cann/cannbot-knowledge/issues/47)。这是 [PR143](https://gitcode.com/cann/cannbot-knowledge/merge_requests/143) 的前置治理变更,合入本 PR 不关闭 RFC47。 主要改动: 1. 在 JSON Schema、四类 Profile(Concept/Guide/Optimization/Runbook)和 Registry 中声明可选 Scope,接入同版本 Contract 校验与三态比较;Lint、索引和构图复用同一实现。保留 additionalProperties: false,继续拒绝未知字段、非法维度、错误路径绑定和不支持的 Profile。 2. Scope 保持可选,允许来源支持且有过滤价值的部分条件,不以填写率验收。各领域独立定义 namespace、适用范围、维度和匹配语义;处理器只从受审查的 Contract 静态表选择,数据不能加载外部可执行代码。 3. 补充治理 Spec、AGENTS、Ingest/Lint 说明及回归,解释治理能力先于依赖知识接入的 CI 边界。当前只提供校验和 Contract 比较接口,Query 的公开参数和排序保持原样。 知识树与目标分支逐字节一致;不移动卡片、不补写 Scope、不禁用 experience,不修改 .gitcode/、Query、原检索用例、安装器或检查入口。知识迁移、场景查询参数和目录禁用继续由 PR143 承载。本地 RFC、生成报告和实验产物未纳入提交。 ### 上游同步与冲突处理 合并上游 master 3cc093df,将 logs/2026-10-26.md 的双方三条完整记录按 21:03 → 20:53 → 17:15 排列,原文保持不变。Scope 校验仍为 P0,沿用上游日志格式 P0、日志乱序 P1 及 CI 日志快照处理;此前的日志排序与快照问题已由上游修复,无需再单独前置日志修复提交。 本 PR 相对目标分支不含知识或 .gitcode/ 差异。期间 master 后续提交 91ef56f3 已通过自动合并检查,无新增冲突;下面的完整验证对应源提交 5562b722 的合并树。 ## 变更类型 - [ ] 知识卡 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [x] Knowledge Skill(Ingest / Lint 说明与参考) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 ## 验证 - [x] 已执行 bash check.sh。 - [x] 已同步规则消费者、文档、测试和当天日志,重新核对 AGENTS。 - [x] 未提交敏感信息、知识正文副本、本地 RFC 或 artifacts/ 等可重建产物。 - [x] 完整 PR 差异不含 knowledge/ 或 .gitcode/,遵守 RFC47 的可选扩展与原路径兼容要求。 See merge request: cann/cannbot-knowledge!171 | 10 小时前 | |
initial commit Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !1 merge master into master initial commit Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: <!-- 感谢您的合入申请! --> ### 当前PR是否有AI参与: [x] 否 [ ] 是 __1. AI Agent 平台: __2. AI 模型: __3. Prompt上下文 : ### PR功能描述 / 为什么需要这个合入**: <!-- 本 PR 做了什么,为什么需要 / What does this PR do and why --> ### 该PR关联的issue *(格式为fixes #<issue号>, 或者resolves #<issue号>)*: fixes # ### 希望检视人员了解: ## 改动类型 / Change Type - [ ] Bug 修复 / Bug Fix - [ ] 新功能 / New Feature - [ ] 性能优化 / Performance - [ ] 代码重构 / Refactoring - [ ] 文档更新 / Documentation - [ ] 测试相关 / Test - [ ] 其它 / Other ## 测试信息 / Testing <!-- 简要测试说明或关键结果 / Brief test description or key results --> - [ ] 单元测试通过 / UT passed - [ ] 集成测试通过 / ST passed - [ ] 人工验证通过 / Manual verified ## 检查清单 / Checklist - [ ] 代码符合规范 / Code follows style guide - [ ] 测试添加并通过 / Tests added and passed - [ ] 文档已更新 / Docs updated if needed - [ ] 无硬编码敏感信息 / No secrets hardcoded - [ ] 提交信息符合规范 / Commit message follows convention See merge request: cann/cannbot-knowledge!1 | 2 个月前 | |
feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !171 merge scope_governance_bootstrap into master feat(governance): 接入兼容旧知识的可选 Scope 基础契约 Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: ## 变更说明 PR143 的知识卡新增了可选 scope,但现有知识 CI 从目标分支加载受信规则和脚本,只覆盖 PR 的 knowledge/。目标规则尚不支持该字段,导致 57 张卡触发 114 条 Schema/Profile 错误,GraphCheck 也在加载卡片时失败。本 PR 先接入兼容旧知识的 Scope 基础治理,供后续知识迁移使用。 - 关联 Issue/RFC:[cann/cannbot-knowledge#47](https://gitcode.com/cann/cannbot-knowledge/issues/47)。这是 [PR143](https://gitcode.com/cann/cannbot-knowledge/merge_requests/143) 的前置治理变更,合入本 PR 不关闭 RFC47。 主要改动: 1. 在 JSON Schema、四类 Profile(Concept/Guide/Optimization/Runbook)和 Registry 中声明可选 Scope,接入同版本 Contract 校验与三态比较;Lint、索引和构图复用同一实现。保留 additionalProperties: false,继续拒绝未知字段、非法维度、错误路径绑定和不支持的 Profile。 2. Scope 保持可选,允许来源支持且有过滤价值的部分条件,不以填写率验收。各领域独立定义 namespace、适用范围、维度和匹配语义;处理器只从受审查的 Contract 静态表选择,数据不能加载外部可执行代码。 3. 补充治理 Spec、AGENTS、Ingest/Lint 说明及回归,解释治理能力先于依赖知识接入的 CI 边界。当前只提供校验和 Contract 比较接口,Query 的公开参数和排序保持原样。 知识树与目标分支逐字节一致;不移动卡片、不补写 Scope、不禁用 experience,不修改 .gitcode/、Query、原检索用例、安装器或检查入口。知识迁移、场景查询参数和目录禁用继续由 PR143 承载。本地 RFC、生成报告和实验产物未纳入提交。 ### 上游同步与冲突处理 合并上游 master 3cc093df,将 logs/2026-10-26.md 的双方三条完整记录按 21:03 → 20:53 → 17:15 排列,原文保持不变。Scope 校验仍为 P0,沿用上游日志格式 P0、日志乱序 P1 及 CI 日志快照处理;此前的日志排序与快照问题已由上游修复,无需再单独前置日志修复提交。 本 PR 相对目标分支不含知识或 .gitcode/ 差异。期间 master 后续提交 91ef56f3 已通过自动合并检查,无新增冲突;下面的完整验证对应源提交 5562b722 的合并树。 ## 变更类型 - [ ] 知识卡 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [x] Knowledge Skill(Ingest / Lint 说明与参考) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 ## 验证 - [x] 已执行 bash check.sh。 - [x] 已同步规则消费者、文档、测试和当天日志,重新核对 AGENTS。 - [x] 未提交敏感信息、知识正文副本、本地 RFC 或 artifacts/ 等可重建产物。 - [x] 完整 PR 差异不含 knowledge/ 或 .gitcode/,遵守 RFC47 的可选扩展与原路径兼容要求。 See merge request: cann/cannbot-knowledge!171 | 10 小时前 | |
chore: fix CANN license scan findings Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !21 merge master into master chore: fix CANN license scan findings Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 <!-- 简要说明为什么改、改了什么,以及未包含的范围。 --> 添加代码的头部License - 关联 Issue:<!-- #123、完整链接或“无” --> - 主要改动:添加代码的头部License - 补充说明:<!-- 知识来源、处理决定、影响范围或风险(如适用) --> ## 变更类型 <!-- 可多选。 --> - [ ] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [x] 安装、脚本、依赖或 CI - [ ] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!21 | 1 个月前 | |
chore: fix CANN license scan findings Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !21 merge master into master chore: fix CANN license scan findings Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 <!-- 简要说明为什么改、改了什么,以及未包含的范围。 --> 添加代码的头部License - 关联 Issue:<!-- #123、完整链接或“无” --> - 主要改动:添加代码的头部License - 补充说明:<!-- 知识来源、处理决定、影响范围或风险(如适用) --> ## 变更类型 <!-- 可多选。 --> - [ ] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [x] 安装、脚本、依赖或 CI - [ ] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!21 | 1 个月前 | |
docs(governance): 精炼规约预案——去中心、递归自我改进的知识精炼分支(未启用,供评审) Co-authored-by: lczheng<zhenglingchao@huawei.com> # message auto-generated for no-merge-commit merge: !169 merge spec-refinery into master docs(governance): 精炼规约预案——去中心、递归自我改进的知识精炼分支(未启用,供评审) Created-by: lczheng Commit-by: lczheng Merged-by: cann-robot Description: ## 变更说明 提出一套在本仓长期分支上运行的去中心、**递归自我改进**(RSI)的知识精炼机制:粗料宽进、蒸馏严出,主张须由两个不同账号在各自设备上复跑后才算确立,按周期把成品回灌 master 上一个独立于 knowledge/ 的成品目录。回路是闭合的:工位干活时消费自己蒸馏出的成品,失败和缺口变成新订单、订单再生订单,检查器随坏样例成长——库在长,长库的系统也在长。目标是为 CANN 与算子开发沉淀一层 AI 原生、可按证据链复核的知识。本 PR 只提交规约文本供评审,机制未启用。 - 关联 Issue:无(预案文本直接提交评审;预案内 §6 已说明日后实际过境的贡献材料仍按仓库届时适用的流程准备) - 主要改动:新增 governance/specs/refinery.md;README 治理规范列表加一行链接;logs/ 记一条 - 补充说明:两件事在预案内作为待批准事项明文列出、获准前不生效——① 独立成品目录的结构扩展(不进 knowledge/,不碰其 Bundle/Concept ID/索引规矩,所需同步的消费者已列明);② 自动化边界(不引入自动提交/合并的仓库脚本与 Skill,代理贡献者与 CONTRIBUTING §2/§7 的适用关系请评审确认)。未包含:任何机器规则、Schema、Contract、Skill 变更。 ## 变更类型 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [x] 文档 ## 验证 - [ ] bash check.sh:本地环境存在偶发文件读取错误,完整套件未能在本地稳定跑完;与本次变更相关的检查已本地通过(知识 Lint 对含新增三文件的全库 9026 个文件 P0/P1/P2 全零、索引同步检查 712 个索引零过期、README 链接与日志格式合规),完整结果以仓库 CI 为准 - [x] 已按需同步导航、链接、日志 - [x] 未提交敏感信息、大段上游原文或可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!169 | 1 天前 | |
test(evals): replace simple retrieval cases with real scenarios Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !63 merge add_retrive_case into master test(evals): replace simple retrieval cases with real scenarios Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 <!-- 简要说明为什么改、改了什么,以及未包含的范围。 --> - 关联 Issue:[#9](https://gitcode.com/cann/cannbot-knowledge/issues/9) - 主要改动:基于历史轨迹构造复杂的检索case用户检索skill的性能看护 - 补充说明:<!-- 知识来源、处理决定、影响范围或风险(如适用) --> ## 变更类型 <!-- 可多选。 --> - [ ] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!63 | 29 天前 | |
feat: 统一知识库安装与使用入口 Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !32 merge add_install into master feat: 统一知识库安装与使用入口 Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 给知识库安装和使用提供一个统一的文档以及安装脚本 <!-- 简要说明为什么改、改了什么,以及未包含的范围。 --> - 关联 Issue:<!-- #123、完整链接或“无” --> - 主要改动: - 补充说明:<!-- 知识来源、处理决定、影响范围或风险(如适用) --> ## 变更类型 <!-- 可多选。 --> - [ ] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [ ] 检索、评测或测试 - [x] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!32 | 1 个月前 | |
fix: add project default platform for knowledge query Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !71 merge master into master fix: add project default platform for knowledge query Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: # Pull Request 说明 ## 变更说明 <!-- 简要说明为什么改、改了什么,以及未包含的范围。 --> 解决了漏传 --platform 时不再直接失败,检索失败可见。 - 关联 Issue:#12 - 主要改动: - 补充说明:<!-- 知识来源、处理决定、影响范围或风险(如适用) --> ## 变更类型 <!-- 可多选。 --> - [ ] 知识卡 - [ ] 治理规则(Schema / Profile / Registry / Contract / Spec) - [ ] Knowledge Skill(Ingest / Query / Lint) - [x] 检索、评测或测试 - [ ] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md See merge request: cann/cannbot-knowledge!71 | 19 天前 | |
initial commit Co-authored-by: qq_41667743<wangchao725@huawei.com> # message auto-generated for no-merge-commit merge: !1 merge master into master initial commit Created-by: qq_41667743 Commit-by: qq_41667743 Merged-by: cann-robot Description: <!-- 感谢您的合入申请! --> ### 当前PR是否有AI参与: [x] 否 [ ] 是 __1. AI Agent 平台: __2. AI 模型: __3. Prompt上下文 : ### PR功能描述 / 为什么需要这个合入**: <!-- 本 PR 做了什么,为什么需要 / What does this PR do and why --> ### 该PR关联的issue *(格式为fixes #<issue号>, 或者resolves #<issue号>)*: fixes # ### 希望检视人员了解: ## 改动类型 / Change Type - [ ] Bug 修复 / Bug Fix - [ ] 新功能 / New Feature - [ ] 性能优化 / Performance - [ ] 代码重构 / Refactoring - [ ] 文档更新 / Documentation - [ ] 测试相关 / Test - [ ] 其它 / Other ## 测试信息 / Testing <!-- 简要测试说明或关键结果 / Brief test description or key results --> - [ ] 单元测试通过 / UT passed - [ ] 集成测试通过 / ST passed - [ ] 人工验证通过 / Manual verified ## 检查清单 / Checklist - [ ] 代码符合规范 / Code follows style guide - [ ] 测试添加并通过 / Tests added and passed - [ ] 文档已更新 / Docs updated if needed - [ ] 无硬编码敏感信息 / No secrets hardcoded - [ ] 提交信息符合规范 / Commit message follows convention See merge request: cann/cannbot-knowledge!1 | 2 个月前 | |
ci: 添加 KnowledgeCheck 流水线 Co-authored-by: AndyKong2020<konghao7@huawei.com> # message auto-generated for no-merge-commit merge: !8 merge master into master ci: 添加 KnowledgeCheck 流水线 Created-by: AndyKong2020 Commit-by: AndyKong2020 Merged-by: cann-robot Description: # Pull Request 说明 > Depends on [#4](https://gitcode.com/cann/cannbot-knowledge/pull/4):本分支基于 PR #4 的 head e330ae105。#4 合入前,本 PR 页面会同时显示其知识与治理变更;请在 #4 合入后刷新或变基,再合入本 PR。 ## 变更说明 - 关联 Issue:无 - 主要改动: - 增加 FormatCheck、GraphCheck、ContentCheck 三个独立 Job,由 /compile 评论触发。 - 使用目标分支可信检查代码校验 fork PR 的候选 knowledge/,并通过 Job Summary 与 OBS JSON 返回结果。 - Format 全量输出分级 Findings;Graph 编译显式链接图;Content 对变更知识卡并发执行独立 reviewer。 - 将治理检查按职责拆分,并以内置 Schema 子集实现移除 jsonschema 运行依赖。 - Summary 与公开 JSON 仅保留检查结果,完整展示 Findings,不发布 Runner 路径、模型/执行元数据或流水线内部状态。 - 补充说明:ContentCheck 实际不参与阻断;模型 ID、端点和凭据均由仓库 Secrets 注入,未写入仓库或公开结果。 ## 变更类型 - [ ] 知识卡 - [x] 治理规则(Schema / Profile / Registry / Contract / Spec) - [x] Knowledge Skill(Ingest / Query / Lint) - [x] 检索、评测或测试 - [x] 安装、脚本、依赖或 CI - [x] 文档 - [ ] 其他: ## 验证 - [x] bash check.sh 已通过:Format 3512/0、Retrieval 19、Evals 109、Ingest 11、Graph 3080/16。 - [x] .gitcode/scripts Ruff、knowledge_check.sh Bash 语法和 git diff --check 已通过。 - [x] GitCode E2E 已覆盖全绿、P0/P1、零页、三页模型并发、跨 PR 并行、同 PR 抢占和 OBS JSON 回读。 - [x] 已按需同步导航、链接、日志、规则消费者、文档和测试。 - [x] 未提交敏感信息、大段上游原文或 artifacts/ 等可重建产物。 - [x] 变更保持最小、相关,并符合 CONTRIBUTING.md。 ### E2E 记录 - Format:[clean #90](https://gitcode.com/opencann/cannbot-knowledge/actions/runs/b8ff836198034d0990cc50aa17c0f064)、[P0 #91](https://gitcode.com/opencann/cannbot-knowledge/actions/runs/d50e5a1554d749e88c24e4ab67dd84a3)、[P1 #92](https://gitcode.com/opencann/cannbot-knowledge/actions/runs/600b4aa4e1804e3189405a0392acf8f7) - Content:[零页 #95](https://gitcode.com/opencann/cannbot-knowledge/actions/runs/1f8cd71691bd443f882bbdfec3d4e429)、[被抢占 #96](https://gitcode.com/opencann/cannbot-knowledge/actions/runs/2d174029bbfd4b0592b07443d8631d69)、[三页并发 #97](https://gitcode.com/opencann/cannbot-knowledge/actions/runs/3f2148732d5849fea2ece03801088e54) See merge request: cann/cannbot-knowledge!8 | 2 个月前 |
cannbot-knowledge
CANN 领域知识库面向 CANN 社区,沉淀 AscendC/PyPTO/TileLang/Triton 等语言的算子开发、模型迁移、推理优化,以及图模式、Runtime 等开发场景中的可复用知识。知识库通过标准化知识卡、统一治理和检索能力,支持快速接入不同 Agent 框架。
本仓(cannbot-knowledge)是独立维护的 CANN 领域知识仓,提供知识卡、来源治理和检索能力,可作为不同 Agent 框架的公共知识底座。知识库架构如下:

本仓不把算子工程或模型代码作为知识正文提交,而是把经过整理、能够追溯到登记的文档来源、固定版本源码或卡内原始观测的工程知识保存成 Markdown 知识卡,例如:
- 某个 CANN API 的语义和使用限制;
- 某种算子 DSL 的编程模型;
- 一个算子的设计、实现或优化方法;
- 某类编译、运行、精度或性能问题的排查步骤。
各类 Agent 可通过本仓提供的 Skill 生产、检索和检查这些知识,从而在回答问题或执行工程任务时复用经过治理、可以追溯来源的结论。
设计参考
本仓知识正文的文件化设计参考 Google 的 Open Knowledge Format(OKF)v0.2。知识使用带 YAML Frontmatter 的 Markdown 表达,通过目录和 index.md 渐进浏览,通过普通 Markdown 链接形成可重建关系,并使用 Git 分发和审计。
knowledge/ 是本仓唯一且符合 OKF v0.2 的 Knowledge Bundle 根目录,其下所有卡片共享同一个 Concept ID 命名空间。common/、ops/ 等只是 Bundle 内的分类,不是独立 Bundle;仓库根目录的 Skill、治理、测试和日志设施不属于 Bundle。详细边界见 OKF Bundle 与 CANNBot Profile。
这个仓库如何工作
官方文档 / 固定版本源码 / 可复现实验
│
▼
Ingest 与专用 producer
│
▼
Markdown 知识卡
│ │
│ └── knowledge-lint 检查结构和治理规则
▼
knowledge-query
│
▼
CANNBot 读取正文并核对来源
本仓维护七项 Skill:六项可安装到业务项目,ops-knowledge-trace-ingest 只用于本知识仓内的 trace → Runbook 生产。
| Skill | 作用 | 是否修改知识仓 |
|---|---|---|
knowledge-query |
查看实际知识覆盖,检索知识卡,并可保存不可覆盖的审计 receipt | 除指定 receipt 外只读 |
ascendc-api-knowledge-query |
复用 Query 按硬件平台检索 Ascend C API,阅读全文并按需追踪相关卡片和本地 CANN 头文件 | 否 |
knowledge-ingest |
统一路由新来源、增量、版本升级和通用建卡,支持按需链接图谱 | 创建候选卡;构图只读正文,产物始终由 Git 忽略 |
knowledge-lint |
检查目录、Frontmatter、来源、正文、导航和日志;整理 Issue 材料 | 否 |
ops-knowledge-trace-ingest |
从算子开发 trace 蒸馏 Runbook,并按当前 Schema、导航、Lint 和检索门禁收口 | 仓内使用;只写经审查的 Runbook、导航和日志 |
ops-knowledge-vv-ingest |
从固定版本源码提取不含可达 Cube/AIC 或 MIX_CV 节点的完整 Operator 卡 | 只写任务指定的最终卡 |
ops-knowledge-cv-ingest |
从固定版本源码提取含可达 Cube/AIC 或 MIX_CV 节点的完整 Operator 卡 | 只写任务指定的最终卡 |
知识如何组织
大多数知识卡使用下面的路径:
knowledge/<领域>/<技术或作用域>/<路径 Profile>/<知识卡>.md
例如,当前 API 卡可以采用分层主题目录:
knowledge/ops/ascendc/apis/utils_api/cpp_stdlib/math_functions/ceil_division.md
其中:
ops表示算子领域;ascendc表示这条知识只适用于 Ascend C;apis是路径 Profile,表示它是一张 API 知识卡;utils_api/cpp_stdlib/math_functions是便于浏览的主题 section;- bundle 内的
ops/ascendc/apis/utils_api/cpp_stdlib/math_functions/ceil_division是 OKF Concept ID;移动卡片会改变该标识; - Frontmatter
type: API是路径 Profile 的确定性投影,供 OKF consumer 读取。
不同 DSL 的专属知识分开保存。只有确实不依赖某个 DSL 的结论才能进入 shared/;两种技术之间哪些内容可以复用、哪些必须重新推导,则写入 shared/interoperability/。
Operator 卡按 operators/<aclnn|direct>/<cv|math|nn|transformer>/<category>/<operator>.md 组织;aclnn 保存公开 ACLNN/API 到 Kernel 的完整链路,direct 保存独立 Direct Invoke 路线,category 沿用 Registry 登记的官方源码一级分类。
每张知识卡的正文解释结论、适用条件和失效边界;文件开头的 Frontmatter 保存检索、平台、版本、生命周期和来源等结构化信息。详细规则见治理规范。
仓库目录
| 路径 | 用途 |
|---|---|
knowledge/ |
知识卡和逐层导航,是唯一知识正文目录 |
governance/schemas/ |
机器可读的字段、路径 Profile 和受控值规则 |
governance/specs/ |
对治理规则的完整文字说明 |
governance/contracts/ |
Ingest、Query、Lint 和图谱共同使用的校验实现 |
.agents/skills/ |
三项基础 Skill、Ascend C API 专用消费流程、仓内 trace producer 与两项源码级 Operator producer 的规范源 |
docs/ |
知识库设计原则、安装与使用指南 |
recipes/ |
面向具体任务的知识库最佳实践 |
evals/ |
检索、治理、文档和安装回归 |
OAT.xml |
GitCode 开源扫描使用的 CANN 2.0 许可策略和 matcher |
install.sh |
自动取得知识仓、补齐运行依赖、恢复资源、准备索引并把 Skill 安装到目标项目 |
check.sh |
运行仓库完整质量检查 |
artifacts/ |
本地生成且可重建的产物,默认不提交 |
logs/ |
已实施的知识和治理变更记录 |
安装与使用
安装和使用方法见安装与使用指南。
设计取舍见设计原则;常见任务见形成可追溯回答、贡献知识、查询 API和使用知识库进行算子开发。
知识库纳入 CANN 领域的概念与机制、API、硬件与平台知识、设计与优化方法,以及可复用的调试和故障处置经验,详见知识纳入范围。用户可以将本仓作为个人 Skill 的知识来源,通过 knowledge-query 检索并引用相关知识卡。
贡献和检查
贡献前阅读 CONTRIBUTING.md,按贡献类型准备材料:
- 知识建设(缺陷修复除外):先提交 Issue,说明知识缺口、生产方法和预期效果;完成知识卡与效果验证后提交关联 PR,由 committer 检视后合入。
- 公共组件新增、优化或主动行为调整(如检索 Skill,缺陷修复除外):遵循“扩展优先、保持兼容”,先提交 RFC,说明当前问题、修改必要性和接入方案;主动改变既有行为时补充影响、迁移与回退说明。完成 A/B test 和原有路径/新增能力验证后提交关联 PR,由 committer 检视后合入。
- 缺陷修复与轻量修订:知识错误、检索脚本 bug 等可直接提交 PR,无需前置 Issue/RFC 或完整 A/B 实验;提供修复依据与定向验证结果,满足适用检查并由 committer 检视后合入。纯排版、错别字和不改变组件行为的说明文档修订也适用;包含新增能力或主动流程调整时应拆分贡献。
贡献指南提供可填写的 Issue、RFC、PR 正文,以及 A/B 实验和合入要求;写卡操作可参照贡献知识。
提交前运行:
bash check.sh
该入口执行知识 Lint、导航检查、索引与检索回归、单元测试、Ruff、Shell 语法及归档镜像差异检查,不主动获取或严格复验滚动官方来源。图谱和 API 引用建议按需生成,不属于入库门禁。
治理规范
- OKF Bundle 与 CANNBot Profile:Bundle 边界、OKF 对应关系和严格作者门禁。
- 知识路径:domain、technology/scope、路径 Profile、Concept ID 和索引规则。
- Frontmatter 与证据:字段组合、生命周期、来源、标签、平台和版本。
- Schema、Registry 与 Contract:机器事实源、受控词表和规则执行关系。
- Knowledge Skills:Query、通用 Ingest、仓内 trace producer、Operator producer、Lint 和安装模式。
- 精炼规约(预案):去中心知识精炼分支、独立成品目录与周期回灌的预案;未启用,获准并通过验收前不改变现行治理。