feat: Phase 3 knowledge growth - multi-file fusion + entity alignment
This commit is contained in:
73
backend/schema.sql
Normal file
73
backend/schema.sql
Normal file
@@ -0,0 +1,73 @@
|
||||
-- InsightFlow Phase 3 - Database Schema
|
||||
-- 支持知识生长与多文件融合
|
||||
|
||||
-- 项目表
|
||||
CREATE TABLE IF NOT EXISTS projects (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
description TEXT,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 文件/转录表
|
||||
CREATE TABLE IF NOT EXISTS transcripts (
|
||||
id TEXT PRIMARY KEY,
|
||||
project_id TEXT NOT NULL,
|
||||
filename TEXT,
|
||||
full_text TEXT,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
FOREIGN KEY (project_id) REFERENCES projects(id)
|
||||
);
|
||||
|
||||
-- 全局实体表(跨文件共享)
|
||||
CREATE TABLE IF NOT EXISTS entities (
|
||||
id TEXT PRIMARY KEY,
|
||||
project_id TEXT NOT NULL,
|
||||
name TEXT NOT NULL,
|
||||
canonical_name TEXT, -- 规范名称(用于对齐)
|
||||
type TEXT,
|
||||
definition TEXT,
|
||||
aliases TEXT, -- JSON 数组:["别名1", "别名2"]
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
FOREIGN KEY (project_id) REFERENCES projects(id)
|
||||
);
|
||||
|
||||
-- 实体提及表(文件中的具体位置)
|
||||
CREATE TABLE IF NOT EXISTS entity_mentions (
|
||||
id TEXT PRIMARY KEY,
|
||||
entity_id TEXT NOT NULL,
|
||||
transcript_id TEXT NOT NULL,
|
||||
start_pos INTEGER,
|
||||
end_pos INTEGER,
|
||||
text_snippet TEXT,
|
||||
confidence REAL DEFAULT 1.0,
|
||||
FOREIGN KEY (entity_id) REFERENCES entities(id),
|
||||
FOREIGN KEY (transcript_id) REFERENCES transcripts(id)
|
||||
);
|
||||
|
||||
-- 实体关系表
|
||||
CREATE TABLE IF NOT EXISTS entity_relations (
|
||||
id TEXT PRIMARY KEY,
|
||||
project_id TEXT NOT NULL,
|
||||
source_entity_id TEXT NOT NULL,
|
||||
target_entity_id TEXT NOT NULL,
|
||||
relation_type TEXT, -- "belongs_to", "works_with", "depends_on" 等
|
||||
evidence TEXT, -- 关系来源文本
|
||||
transcript_id TEXT,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
FOREIGN KEY (project_id) REFERENCES projects(id),
|
||||
FOREIGN KEY (source_entity_id) REFERENCES entities(id),
|
||||
FOREIGN KEY (target_entity_id) REFERENCES entities(id)
|
||||
);
|
||||
|
||||
-- 术语表(项目级热词,用于 ASR 优化)
|
||||
CREATE TABLE IF NOT EXISTS glossary (
|
||||
id TEXT PRIMARY KEY,
|
||||
project_id TEXT NOT NULL,
|
||||
term TEXT NOT NULL,
|
||||
pronunciation TEXT, -- 发音提示,如 "K8s" -> "Kubernetes"
|
||||
frequency INTEGER DEFAULT 1,
|
||||
FOREIGN KEY (project_id) REFERENCES projects(id)
|
||||
);
|
||||
Reference in New Issue
Block a user