Skip to content

知识库 JSON 格式

用于导入导出知识库及其知识条目。

顶层结构

json
{
  "version": 1,
  "name": "知识库名称",
  "entries": []
}
字段类型必填说明
versionnumber固定为 1
namestring知识库名称
entriesarray知识条目数组

知识条目

entries 中每个元素的字段:

字段类型必填说明
titlestring条目标题(用于检索匹配)
contentstring条目正文内容

最小示例

json
{
  "version": 1,
  "name": "世界观设定",
  "entries": [
    {
      "title": "魔法体系",
      "content": "这个世界存在四种元素魔法:火、水、风、土。高级魔法师可以组合两种元素。"
    }
  ]
}

完整示例

json
{
  "version": 1,
  "name": "咖啡店世界观",
  "entries": [
    {
      "title": "咖啡店基本信息",
      "content": "「星辰咖啡」位于城市中心的步行街上,是一家小而温馨的独立咖啡馆。店内装修为复古木质风格,有一面墙的书架和几把旧沙发。常客大多是附近的大学生和自由职业者。"
    },
    {
      "title": "店员介绍",
      "content": "店长林小雨,28岁,性格温柔但偶尔腹黑。店员阿哲,22岁,沉默寡言但调得一手好咖啡。兼职学生小美,19岁,活泼开朗,负责前台和甜点。"
    },
    {
      "title": "招牌饮品",
      "content": "「星辰拿铁」是招牌饮品,使用秘制配方,加入少量海盐和焦糖。周二有半价活动。隐藏菜单里有「老板心情特调」,每次口味都不同。"
    }
  ]
}

AI 生成约束

  • titlecontent 都不能为空(纯空白也会被 trim 后拒绝)。
  • 导入后的条目会标记为 dirty(需要重新 Embedding),需要在知识库页面手动更新向量。
  • 条目按 JSON 中的数组顺序保留排序。
  • 每条 content 建议控制在 2000 字以内,过长的内容会影响检索精度。

常见错误

  • title 为空字符串或纯空格 → 该条目会被跳过
  • content 为空 → 导入成功但条目无实际内容
  • entries 为空数组 → 导入成功但知识库没有条目