豆包已发布知识库如何一键导出可索引JSON?

功能定位:为什么需要“可索引 JSON”
豆包 v4.6.0 之后,知识库不再只是聊天引用源,而是能被外部搜索引擎、BI 工具、甚至其他 AI 服务直接调用的结构化资产。可索引 JSON(下称 Index-JSON)是官方为运营者提供的“最小可复用单元”:它把每篇文档拆成段落级 chunk,附带向量 ID、权限标记、时间戳,方便二次编排或迁移。相比早期的 Markdown 整包导出,Index-JSON 体积更小、字段更稳,且自带 URI 映射,无需再写正则清洗。
一句话:如果你计划把豆包知识库接入自建检索、或是定期备份到私有云,Index-JSON 是目前唯一官方承诺向下兼容的格式。
版本差异:v4.5 与 v4.6 的导出入口变化
截至当前的最新版本(v4.6.0),导出菜单位置被收进「运营者工具箱」。v4.5 时代的老入口(知识库首页右上角 ⋯->导出全部)已下线,若仍停留在旧版客户端,点击后会提示“功能已迁移”。升级后再回退会导致配置项灰显,需要重新授权。
经验性观察:v4.5 导出的 JSON 只有两级字段(title/content),而 v4.6 新增 chunk_id、embedding_model、permission_mask 三列;老文件直接导入会缺失检索字段,需手动补全。
一键导出:三平台最短路径
桌面端(Win / macOS)
- 打开豆包,左侧栏切到「知识库」
- 顶部标签右侧找到「运营者工具箱」图标(扳手形状)
- 选择「导出可索引 JSON」→ 勾选「包含向量 ID」→ 确定
- 系统弹出保存窗口,默认文件名格式 kb_index_YYYYMMDD_HHMM.json
Android
- 底栏切到「我的」→ 右上角设置 → 知识库管理
- 点击「导出」→ 选择「可索引 JSON」
- 导出完成后自动存到 /Documents/Doubao/Export,并弹出系统分享面板,可直接上传到企业微信或钉盘
iOS
- 底栏「我的」→ 设置 → 知识库 → 导出
- iOS 沙盒限制,文件先存到「文件 App->Doubao->Export」目录,需手动转存到 iCloud Drive 或隔空投送
若知识库体积 >200 MB,客户端会强制走“后台任务”,期间可正常使用聊天功能,导出完成后推送通知栏提示。
失败分支与回退方案
常见失败码:
- EXPORT_403:知识库含付费订阅文章,需先在「权限管理」关闭「付费可见」再导出
- EXPORT_503:官方限流,等待 5 min 后重试;经验性观察,连续 3 次重试仍 503,可切换网络(4G/5G 与 Wi-Fi 对换)再试
回退方案:若导出文件损坏(校验 SHA256 不符),可在「运营者工具箱->导出记录」里找到 7 日内的临时副本,一键重新拉取,无需再次消耗当日额度。
字段释义与兼容性速查表
| 字段 | 类型 | 说明 | 兼容性 |
|---|---|---|---|
| chunk_id | string | 段落级唯一哈希 | v4.6 新增,老系统可留空 |
| permission_mask | int | 位掩码:0=公开 1=付费 2=私有 | 向下兼容,老版本默认 0 |
| embedding_model | string | 向量模型名,如“doubao-embedding-v2” | 可空,不影响再导入 |
是否值得用:决策三问
- 更新频率:若每日新增 >50 篇,Index-JSON 增量导出(仅含 24 h 内变更)可节省 70% 流量,适合日更团队。
- 下游系统:目标系统若能直接消费 JSON 数组(如 Elasticsearch、Supabase),无需中转 CSV,可少写 1 层解析脚本。
- 合规要求:金融、医疗客户需保留“权限掩码”字段做二次鉴权,Index-JSON 原生携带,比手动补字段更安全。
反之,若只是做一次性的离线归档,且后续不会重建检索,传统的 Markdown 整包导出更省空间。
与第三方检索系统协同:最小权限原则
示例场景:把 Index-JSON 接入自托管的 Vespa 检索引擎。建议流程:
- 在豆包「第三方集成」新建机器人,仅勾选「知识库-只读」权限,获得
access_token - 服务器端定时任务(如 cron 每 6 h)调用导出接口,带增量参数
?since=last_modified - 下载后立刻做 SHA256 校验,落盘到只读卷,防止篡改
- Vespa 通过
vespa-feed-client批量写入,写入前丢弃permission_mask >0的记录,确保公开与私有数据物理隔离
警告:切勿把含私有数据的 Index-JSON 直接推到公开 S3 桶,权限掩码字段可被下游忽略,导致数据泄露。
故障排查:导出卡住 0%
现象:点击导出后进度条长时间 0%,无报错日志。
可能原因与验证:
- 知识库含损坏附件(如上传时网络中断)。验证:随机点开 10 篇带附件文章,若图片无法预览,则先删除这些附件再导出
- 本地磁盘剩余空间 < 2 × 知识库体积。验证:桌面端看系统盘,移动端看「文件 App->iPhone 存储」
处置:清理后无需重启客户端,重新进入导出页会自动续传。
适用 / 不适用场景清单
| 场景 | 推荐 | 理由 |
|---|---|---|
| 日更 200 条商品文案 | ✅ | 增量导出节省流量 |
| 一次性迁移到 Notion | ❌ | Notion 需 Markdown,JSON 多一层转换 |
| 金融合规审计 | ✅ | 自带权限掩码,可追溯 |
最佳实践 5 条
- 每周一次全量导出,存到加密的对象存储,保留 30 天滚动备份
- 在 CI 里加
jsonlint校验,防止字段漂移导致下游写入失败 - 若知识库含音频转写,先关闭「生成说话人分离」再导出,可让 chunk 数量减少 30%,加快下游索引速度
- 多人协作时,给机器人单独建“只读”角色,避免误触发「删除文章」同步到生产检索
- 导出后立刻记录 SHA256 到「运营者工具箱->校验日志」,方便事后审计
FAQ - 结构化数据
导出后的 JSON 支持再导入吗?
支持。通过「运营者工具箱->导入」选择 Index-JSON,系统会按 chunk_id 做幂等写入,重复导入不会重复生成向量。
能否只导出部分分类?
目前官方仅提供全库导出,分类筛选需自行在后处理脚本里过滤 category 字段。
Index-JSON 会包含用户提问记录吗?
不会。导出范围仅限知识库文章,聊天记录属于「AI 记忆云同步」功能,需另外申请导出。
每日有次数限制吗?
经验性观察:同一知识库每日全量导出上限 10 次,增量导出不限;超限提示「EXPORT_QUOTA」,次日 0 点重置。
收尾:下一步行动
豆包知识库一键导出可索引 JSON 的功能,把“聊天增强”升级为“可复用资产”。如果你正筹划多平台检索、合规备份或向量再训练,现在就能在桌面端 4 步完成首次全量导出;记得先做 SHA256 校验,再用增量模式维持日更。遇到 503 限流不要猛点重试,切换网络或等 5 min 更划算。下一步,把导出的 Index-JSON 接入你的检索引擎,跑一遍召回测试,看看 chunk 数量是否匹配预期——如果差距 >5%,先回知识库检查附件损坏,再调向量模型,别急着扩集群。