OpenViking 使用三层信息模型来平衡检索效率和内容完整性。
| 层级 | 名称 | 文件 | Token 限制 | 用途 |
|---|---|---|---|---|
| L0 | 摘要 | .abstract.md |
~100 tokens | 向量搜索、快速过滤 |
| L1 | 概览 | .overview.md |
~2k tokens | Rerank 精排、内容导航 |
| L2 | 详情 | 原始文件/子目录 | 无限制 | 完整内容、按需加载 |
内容的最精简表示,用于快速筛选。
- 超短:最多 ~100 tokens
- 快速感知:让 Agent 快速感知到
API 认证指南,涵盖 OAuth 2.0、JWT 令牌和 API 密钥的安全访问方式。abstract = client.abstract("viking://resources/docs/auth")包含内容导航的综合摘要,用于理解访问方式。
- 适中长度:~1k tokens
- 导航指引:告诉 Agent 如何访问详细内容
# 认证指南概览
本指南涵盖 API 的三种认证方式:
## 章节
- **OAuth 2.0** (L2: oauth.md): 完整 OAuth 流程和代码示例
- **JWT 令牌** (L2: jwt.md): 令牌生成和验证
- **API 密钥** (L2: api-keys.md): 简单的密钥认证
## 要点
- OAuth 2.0 推荐用于面向用户的应用
- JWT 用于服务间通信
## 访问
使用 `read("viking://resources/docs/auth/oauth.md")` 获取完整文档。overview = client.overview("viking://resources/docs/auth")完整的原始内容,仅在需要时加载。
- 完整内容:无 Token 限制
- 按需加载:只在确定需要时读取
- 原始格式:保留源结构
content = client.read("viking://resources/docs/auth/oauth.md")- 添加资源时:Parser 解析后,SemanticQueue 异步生成
- 会话归档时:压缩旧消息时生成历史片段的 L0/L1
| 组件 | 职责 |
|---|---|
| SemanticProcessor | 自底向上遍历目录,为每个目录生成 L0/L1 |
| SessionCompressor | 为归档的会话历史生成 L0/L1 |
叶子节点 → 父目录 → 根目录(自底向上)
子目录的 L0 会被聚合到父目录的 L1 中,形成层级导航。
每个目录都遵循统一的文件结构:
viking://resources/docs/auth/
├── .abstract.md # L0: ~100 tokens
├── .overview.md # L1: ~1k tokens
├── .relations.json # 相关资源
├── oauth.md # L2: 完整内容
├── jwt.md # L2: 完整内容
└── api-keys.md # L2: 完整内容
- L0/L1:始终是文本(Markdown)
- L2:可以是任何格式(文本、图片、视频、音频)
对于二进制内容,L0/L1 用文本描述:
# 图片的 L0
产品截图,展示带有 OAuth 按钮的登录页面。
# 图片的 L1
## 图片:登录页面截图
此截图展示应用的登录页面,包含:
- Google OAuth 按钮(顶部)
- GitHub OAuth 按钮(中部)
- 邮箱/密码表单(底部)
尺寸:1920x1080,格式:PNG目录结构
...
└── 第三章 开发者说明/
├── .abstract.md
├── .overview.md
├── content.md
└── 视频附件1-开发者说明/ ← 递归扩展附件信息
├── .abstract.md
├── .overview.md
├── 音频和字幕提取.md
├── 开发者培训.mp4
└── 视频分段切片/
├── 开发者培训_0s-30s.mp4
└── 开发者培训_30s-60s.mp4
| 场景 | 推荐层级 |
|---|---|
| 快速相关性检查 | L0 |
| 理解内容范围 | L1 |
| 详细信息提取 | L2 |
| 为 LLM 构建上下文 | L1(通常足够) |
# 先用 L1 判断,仅在需要时加载 L2
overview = client.overview(uri)
if needs_more_detail(overview):
content = client.read(uri)- 架构概述 - 系统整体架构
- 上下文类型 - 三种上下文类型
- Viking URI - URI 规范
- 检索机制 - 检索流程详解
- 上下文提取 - L0/L1 生成详解