# Query Knowledge Graph

> 在对话的知识图谱中查询信息。支持多种查询模式：naive（简单查询）、local（本地图谱查询）、global（全局查询）、mix（混合查询）。

- Skill: `1firecracker/query-knowledge-graph` (Agent Skill)
- Install (CLI): `npx skillmds@latest add 1firecracker/query-knowledge-graph`
- Raw SKILL.md: https://api.skillmd.com/api/skills/1firecracker/query-knowledge-graph/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: 1firecracker (https://skillmd.com/u/1firecracker)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/1firecracker/query-knowledge-graph

---


# 知识图谱查询工具

## 用途
当用户询问与上传文档相关的问题时，使用此工具从知识图谱中检索相关信息。

## 触发条件
当用户表达以下意图时，应该使用此工具：
- 询问文档内容："文档里说了什么？"、"关于 XX 的内容是什么？"
- 查找特定信息："谁是作者？"、"这个概念的定义是什么？"
- 需要基于文档回答问题时

## 参数说明

| 参数 | 类型 | 必需 | 说明 |
|------|------|------|------|
| query | string | 是 | 查询文本 |
| mode | string | 否 | 查询模式，可选值: naive, local, global, mix。默认: mix |

## 查询模式详解

### 1. `naive` - 简单查询
- **原理**: 直接检索相关文本块（Chunk-based）
- **适用场景**: 简单的事实性问题，如"XX 是什么？"

### 2. `local` - 本地图谱查询
- **原理**: 基于实体和关系的图遍历
- **适用场景**: 查询实体之间的关系，如"A 和 B 有什么关系？"

### 3. `global` - 全局查询
- **原理**: 综合整个文档的高层次摘要
- **适用场景**: 需要全局视角的问题，如"这篇论文的主要贡献是什么？"

### 4. `mix` - 混合查询 (默认)
- **原理**: 结合 local 和 global 的结果
- **适用场景**: 大多数通用问题
- **推荐**: 不确定时使用此模式

## 使用规则

### 1. 默认使用 `mix` 模式
除非用户有特定需求，否则默认使用 `mix` 模式。

### 2. 处理无文档情况
如果对话中没有文档，工具会返回 `status: "info"`，此时应使用通用知识回答。

### 3. 引用来源
查询结果中的 `file_id` 和 `page_index` 用于引用标注，格式：`[[file_id|page_index]]`

## 示例

### 示例 1: 通用问题
**用户**: "这篇文档讲了什么？"
**调用**: `query_knowledge_graph({"query": "这篇文档的主要内容和主题", "mode": "mix"})`

### 示例 2: 实体关系查询
**用户**: "神经网络和深度学习有什么关系？"
**调用**: `query_knowledge_graph({"query": "神经网络与深度学习的关系", "mode": "local"})`

## 返回格式
```json
{
  "status": "success",
  "message": "查询完成（模式: mix），找到 5 个实体，3 个关系，2 个文本块",
  "result": "格式化的查询结果文本",
  "raw_data": {
    "entities": [...],
    "relationships": [...],
    "chunks": [...]
  },
  "mode": "mix",
  "query": "原始查询文本"
}
```

