138 lines
4.8 KiB
Markdown
138 lines
4.8 KiB
Markdown
|
|
# 种子本体:用标准词表引导 wiki 结构
|
|||
|
|
|
|||
|
|
> 种子是可选的冷启动参考,不是强制依赖。
|
|||
|
|
> 没有种子的领域,wiki 自由生长——种子只是让起步更规范。
|
|||
|
|
|
|||
|
|
## 机制
|
|||
|
|
|
|||
|
|
### 什么是种子
|
|||
|
|
|
|||
|
|
种子(seed)是一份领域词表配置,包含:
|
|||
|
|
|
|||
|
|
| 内容 | 作用 |
|
|||
|
|
|------|------|
|
|||
|
|
| **标准术语** | 给 wiki 页面的 slug 和标题提供命名参考 |
|
|||
|
|
| **分类体系** | 提示 Agent 该领域通常有哪些维度需要关注 |
|
|||
|
|
| **关系模板** | 标准的实体间关系类型(manages, regulates, invests_in 等) |
|
|||
|
|
| **禁混规则** | 标注常见的概念混淆,防止 Agent 搞混 |
|
|||
|
|
|
|||
|
|
种子文件存放在 `seeds/` 目录,每个领域一个文件。
|
|||
|
|
|
|||
|
|
### 如何引用
|
|||
|
|
|
|||
|
|
新建 wiki 时,在 `meta.yaml` 中声明使用哪个种子:
|
|||
|
|
|
|||
|
|
```yaml
|
|||
|
|
name: my-research-topic
|
|||
|
|
ontology_type: domain
|
|||
|
|
seed: fibo-pensions # 引用 seeds/fibo-pensions.md
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Agent 在首次 ingest 前读取对应的种子文件。如果 `seed` 字段为空或未设置,跳过种子,wiki 自由生长。
|
|||
|
|
|
|||
|
|
### 不做什么
|
|||
|
|
|
|||
|
|
- 不做 OWL/RDF 导入——wiki 是 markdown,不是语义网
|
|||
|
|
- 不强制使用标准术语——如果领域实际用语不同,以实际为准,但标注映射关系
|
|||
|
|
- 不覆盖用户自定义——种子只是起步参考,wiki 演化后会超出种子范围
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 可用种子
|
|||
|
|
|
|||
|
|
| 种子文件 | 覆盖领域 | 基于标准 |
|
|||
|
|
|---------|---------|---------|
|
|||
|
|
| `seeds/fibo-pensions.md` | 企业年金、养老金管理 | FIBO (EDM Council) |
|
|||
|
|
| *(待扩展)* | | |
|
|||
|
|
|
|||
|
|
### 可参考的行业标准本体
|
|||
|
|
|
|||
|
|
写新种子时可以参考这些标准:
|
|||
|
|
|
|||
|
|
| 标准 | 覆盖领域 | 适用场景 | 参考链接 |
|
|||
|
|
|------|---------|---------|---------|
|
|||
|
|
| **FIBO** | 金融全行业 | 银行、保险、基金、养老金 | spec.edmcouncil.org/fibo |
|
|||
|
|
| **XBRL Taxonomy** | 财务报告 | 上市公司财务数据分析 | xbrl.org |
|
|||
|
|
| **Schema.org** | 通用实体 | 人物、组织、事件、地点 | schema.org |
|
|||
|
|
| **SKOS** | 知识组织 | 分类体系、概念层级 | w3.org/2004/02/skos |
|
|||
|
|
| **Dublin Core** | 文档元数据 | source 页面的 frontmatter | dublincore.org |
|
|||
|
|
| **FOAF** | 人物与社交 | 人物研究(cognitive 类型) | xmlns.com/foaf |
|
|||
|
|
|
|||
|
|
| 研究类型 | 推荐种子/标准 |
|
|||
|
|
|---------|-------------|
|
|||
|
|
| 企业年金 / 养老金 | `fibo-pensions` |
|
|||
|
|
| 公募基金 | FIBO-SEC (Fund),可基于此写新种子 |
|
|||
|
|
| 上市公司分析 | FIBO-BP + XBRL |
|
|||
|
|
| 宏观经济 | 无标准种子(自由生长) |
|
|||
|
|
| 人物认知 | FOAF + 自定义心智模型类型 |
|
|||
|
|
| 通用主题 | Schema.org |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## Agent 如何使用种子
|
|||
|
|
|
|||
|
|
### 在 ingest 时
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
1. 读取源文件,提取关键实体
|
|||
|
|
2. 如果 meta.yaml 声明了 seed → 读取种子文件,对照词表:
|
|||
|
|
- 该实体是否有标准名称?→ 使用标准名称作为页面 slug
|
|||
|
|
- 该实体属于哪个标准类别?→ 放入对应的 entities/ 或 concepts/
|
|||
|
|
- 是否触碰禁混规则?→ 在页面中明确区分
|
|||
|
|
3. 正常执行 ingest 后续步骤
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**示例**(以金融领域为例):
|
|||
|
|
```
|
|||
|
|
源文件提到某银行的养老金业务
|
|||
|
|
→ 对照种子词表:这是一个 Organization,担任 Trustee 角色
|
|||
|
|
→ 创建 entities/bank-x.md(机构页面)
|
|||
|
|
→ 在关系中标注 bank-x 担任 trustee 角色
|
|||
|
|
→ 不创建 entities/bank-x-trustee.md(机构 ≠ 角色,遵守禁混规则)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 在 lint 时
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
1. 如果 meta.yaml 声明了 seed → 读取种子文件
|
|||
|
|
2. 检查页面命名是否与种子词表对齐
|
|||
|
|
3. 检查是否违反禁混规则
|
|||
|
|
4. 检查是否有种子中的关键维度未被覆盖
|
|||
|
|
5. 在健康报告中输出对齐度评分
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 在 query 时
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
用户提问某个领域术语
|
|||
|
|
→ Agent 从种子词表知道该术语的标准位置和关联概念
|
|||
|
|
→ 搜索时扩展到关联概念
|
|||
|
|
→ 回答更全面
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 外部校验器
|
|||
|
|
|
|||
|
|
种子文件可以声明关联的外部校验器(frontmatter 中的 `validator` 字段)。
|
|||
|
|
校验器提供运行时逻辑校验,超越种子的静态词表——校验关系的 domain/range 合法性、实体的必要关系是否缺失等。
|
|||
|
|
|
|||
|
|
校验器配置存放在 `validators/` 目录。详见具体校验器文档。
|
|||
|
|
|
|||
|
|
当前可用校验器:
|
|||
|
|
|
|||
|
|
| 校验器 | 说明 | 对应种子 |
|
|||
|
|
|--------|------|---------|
|
|||
|
|
| `validators/fibo-mcp.md` | FIBO SPARQL 逻辑校验(627K 推理三元组) | `fibo-pensions` |
|
|||
|
|
|
|||
|
|
**校验器是可选增强**。不可达时 lint 退化为 schema.py 格式校验 + 种子静态规则,不影响核心流程。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 局限
|
|||
|
|
|
|||
|
|
1. **种子只是起点,不是终点**。Wiki 积累后会产生种子中没有的概念
|
|||
|
|
2. **标准术语可能与行业实际用语不同**。以行业用语为准,但在页面中标注标准术语映射
|
|||
|
|
3. **不是所有领域都有成熟的标准本体**。没有合适种子的领域,wiki 自由生长即可
|
|||
|
|
4. **种子本身也在演化**。标准更新时,wiki 不需要同步更新——种子只在冷启动时参考
|