logo
0
1
WeChat Login
峡谷召唤师<summoner@canyon.local>
feat: simplify architecture - auto-sync external docs to repo

Knowledge Hub

基于 CNB 平台的多源文档知识库系统,聚合多个 Git 平台的技术文档,构建统一的向量化知识库。

核心特性

特性说明
多源聚合支持 GitHub/GitLab/Gitee/CNB 等所有 Git 平台
语义检索向量化搜索,理解意图而非关键词
Prefix 过滤单知识库多源,按路径前缀过滤查询
极简架构1 个脚本 (~100 行),无 Python 依赖

快速开始

1. 配置 Token

# 登录 CNB 平台 → 设置 → 访问令牌 → 创建令牌(权限:repo-code:r) export CNB_TOKEN="your_token_here"

2. 查询知识库

# 基本查询 curl -X POST "https://api.cnb.cool/ai-alchemy-factory/knowledge-hub/-/knowledge/base/query" \ -H "Authorization: Bearer $CNB_TOKEN" \ -H "Content-Type: application/json" \ -d '{"query": "如何使用 hooks", "top_k": 5}' # 按源过滤(只查 codebuddy 文档) curl -X POST "..." -d '{ "query": "slash commands", "top_k": 5, "metadata_filtering_conditions": { "conditions": [ {"name": "path", "comparison_operator": "prefix", "value": "docs/external/codebuddy/"} ] } }'

3. 添加文档源

编辑 sources.yml

sources: my-docs: repo: https://github.com/user/repo branch: main # 可选,默认 main subdir: docs # 可选,只同步该子目录

提交后自动同步文档。创建 kb-* tag 触发知识库重建。


触发策略

触发方式动作耗时场景
每日 2 AM同步 + 自动提交~1 分钟自动更新
每周日 3 AM向量化重建~5-10 分钟全量重建
kb- tag*向量化重建~5-10 分钟发布新版本
手动触发同步/重建视操作而定紧急更新

发布新知识库版本

git tag kb-2025.01.20 git push origin kb-2025.01.20

目录结构

knowledge-hub/ ├── .cnb.yml # CNB 流水线配置 ├── sources.yml # 外部文档源配置 ├── scripts/ │ └── sync-external.sh # 唯一的同步脚本 (~100 行) ├── docs/ │ ├── external/ # 外部文档(定时自动同步+提交) │ └── custom/ # 本地文档(手动维护) └── .codebuddy/skills/ └── knowledge-hub/ ├── SKILL.md # AI 技能说明 └── repos.json # URL 映射(自动生成)

API 参考

查询端点

POST https://api.cnb.cool/{namespace}/{repo}/-/knowledge/base/query

请求参数

参数类型必填说明
querystring查询问题
top_kinteger返回数量(默认 5)
metadata_filtering_conditionsobject过滤条件

响应示例

[ { "score": 0.92, "chunk": "文档内容片段...", "metadata": { "path": "docs/external/codebuddy/hooks.md", "name": "hooks.md" } } ]

设计原则

Boris/Linus 心法:删除一切不必要的复杂度

  • 极简优先:1 个脚本,删除 90% 代码保留 100% 功能
  • 配置驱动:sources.yml 定义数据源,而非代码逻辑
  • 平台原生:利用 CNB 向量化,不重复造轮子
  • 资源节约:tag 触发向量化,避免每次 push 都重建

故障排除

查询无结果

  1. 检查知识库是否已构建(需要 kb-* tag 或定时任务触发)
  2. 尝试中英文混合关键词(如 "hooks 钩子"
  3. 增大 top_k 参数

Token 无效

# 验证 Token curl -H "Authorization: Bearer $CNB_TOKEN" \ https://api.cnb.cool/ai-alchemy-factory/knowledge-hub

License

MIT