基于 CNB 平台的多源文档知识库系统,聚合多个 Git 平台的技术文档,构建统一的向量化知识库。
| 特性 | 说明 |
|---|---|
| 多源聚合 | 支持 GitHub/GitLab/Gitee/CNB 等所有 Git 平台 |
| 语义检索 | 向量化搜索,理解意图而非关键词 |
| Prefix 过滤 | 单知识库多源,按路径前缀过滤查询 |
| 极简架构 | 1 个脚本 (~100 行),无 Python 依赖 |
# 登录 CNB 平台 → 设置 → 访问令牌 → 创建令牌(权限:repo-code:r)
export CNB_TOKEN="your_token_here"
# 基本查询
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/"}
]
}
}'
编辑 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 映射(自动生成)
POST https://api.cnb.cool/{namespace}/{repo}/-/knowledge/base/query
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
query | string | 是 | 查询问题 |
top_k | integer | 否 | 返回数量(默认 5) |
metadata_filtering_conditions | object | 否 | 过滤条件 |
[
{
"score": 0.92,
"chunk": "文档内容片段...",
"metadata": {
"path": "docs/external/codebuddy/hooks.md",
"name": "hooks.md"
}
}
]
Boris/Linus 心法:删除一切不必要的复杂度
kb-* tag 或定时任务触发)"hooks 钩子")top_k 参数# 验证 Token
curl -H "Authorization: Bearer $CNB_TOKEN" \
https://api.cnb.cool/ai-alchemy-factory/knowledge-hub
MIT