🔍 RAGFlow 表结构差异报告

数据库 Schema 完整对比:v0.17.2 → v0.25.6
v0.17.2 · 18 张表 v0.25.6 · 32 张表 生成于: 2026-06-17
32
v0.25.6 总表数
14
🆕 新增表
12
📝 结构变更表
6
✅ 未变更表
新增 (v0.25.6) 修改 PK 主键 FK 外键 IDX 索引 UQ 唯一约束

📋 变更概览

v0.17.2v0.25.6,RAGFlow 的数据库经历了重大扩展


🏗️ 架构层面:

  • TenantLLM 主键重构 — 从复合主键 (tenant_id, llm_factory, llm_name) 迁移到自增整数主键 id,所有关联表新增 tenant_*_id 外键字段
  • 评估体系 — 新增完整的 RAG 评估框架:evaluation_datasetsevaluation_casesevaluation_runsevaluation_results
  • 数据连接器 — 新增 connector + connector2kb + sync_logs 数据源管理
  • 记忆系统 — 新增 memory 表支持多种记忆类型
  • 高级 RAG — Knowledgebase 新增 GraphRAG、RAPTOR、Mindmap 任务支持
  • Agent 增强 — Canvas 新增权限、发布、版本管理、分类、标签
  • 外部集成 — Langfuse、MCP Server、Search 独立配置

📐 字段类型变更:

  • File.size / Document.size:IntegerField → BigIntegerField
  • TenantLLM.api_key:CharField(1024) → TextField
  • CanvasTemplate.title / description:TextField → JSONField(多语言)
  • User.email:新增 UNIQUE 约束
  • Document.process_duation / Task.process_duationprocess_duration(拼写修正)

📊 表清单对比

#表名v0.17.2v0.25.6变更类型
1user结构变更
2tenant结构变更
3user_tenant未变更
4invitation_code未变更
5llm_factories结构变更
6llm结构变更
7tenant_llm结构变更(主键重构)
8tenant_langfuse新增
9knowledgebase结构变更
10document结构变更
11file结构变更
12file2document未变更
13task结构变更
14dialog结构变更
15conversation未变更
16api_token未变更
17api_4_conversation结构变更
18user_canvas结构变更
19canvas_template结构变更
20user_canvas_version新增
21mcp_server新增
22search新增
23pipeline_operation_log新增
24connector新增
25connector2kb新增
26sync_logs新增
27evaluation_datasets新增
28evaluation_cases新增
29evaluation_runs新增
30evaluation_results新增
31memory新增
32system_settings新增

🗺️ RAGFlow v0.17.2 — 完整 ER 图

共 18 张表。核心实体:User → UserTenant → Tenant → Knowledgebase → Document → Task

🗺️ RAGFlow v0.25.6 — 完整 ER 图

共 32 张表。绿色标注为新增表,黄色标注为结构变更表。

🔄 表级差异详情

🟢 新增表 (14 张)

表名用途字段数关联关系
tenant_langfuse Langfuse 可观测性集成配置6tenant_id → tenant.id
user_canvas_version Agent Canvas 版本管理8user_canvas_id → user_canvas.id
mcp_server MCP (Model Context Protocol) 服务配置10tenant_id → tenant.id
search 独立搜索配置(跨 KB 搜索)10tenant_id → tenant.id
pipeline_operation_log Pipeline 文档处理操作日志21tenant_id, kb_id, document_id, pipeline_id
connector 外部数据源连接器12tenant_id → tenant.id
connector2kb 连接器与知识库多对多关联5connector_id, kb_id
sync_logs 连接器同步日志17connector_id, kb_id
evaluation_datasets RAG 评估数据集(Ground Truth)9tenant_id → tenant.id
evaluation_cases 评估测试用例8dataset_id → evaluation_datasets.id
evaluation_runs 评估运行记录9dataset_id, dialog_id
evaluation_results 单个用例的评估结果8run_id, case_id
memory Agent 记忆存储(支持多种记忆类型)20tenant_id → tenant.id
system_settings 系统级配置键值存储5

📊 字段级差异详情(变更表)

以下列出所有发生字段变更的表。🟢 = 新增字段,🟡 = 修改字段

1. user 修改

变更字段v0.17.2v0.25.6说明
修改emailCharField(255), index=TrueCharField(255), unique=True从普通索引升级为 UNIQUE 约束
修改基类UserMixinAuthUser从 Flask-Login 迁移到 Quart-Auth

2. tenant 修改

变更字段类型默认值说明
新增tenant_llm_idIntegerField, nullable, indexNULL指向 tenant_llm.id(默认 Chat 模型)
新增tenant_embd_idIntegerField, nullable, indexNULL指向 tenant_llm.id(默认 Embedding 模型)
新增tenant_asr_idIntegerField, nullable, indexNULL指向 tenant_llm.id(默认 ASR 模型)
新增tenant_img2txt_idIntegerField, nullable, indexNULL指向 tenant_llm.id(默认 Image2Text 模型)
新增tenant_rerank_idIntegerField, nullable, indexNULL指向 tenant_llm.id(默认 Rerank 模型)
新增tenant_tts_idIntegerField, nullable, indexNULL指向 tenant_llm.id(默认 TTS 模型)

3. llm_factories 修改

变更字段类型默认值说明
新增rankIntegerField0排序权重

4. llm 修改

变更字段类型默认值说明
新增is_toolsBooleanFieldFalse标记模型是否支持 Function Calling / Tools

5. tenant_llm ⚠️ 主键重构

变更字段v0.17.2v0.25.6说明
新增idPrimaryKeyField (auto-inc)新增自增主键,替代原复合主键
修改api_keyCharField(1024)TextFieldAPI Key 长度不再受限
新增statusCharField(1), default="1"启用/禁用状态
修改主键CompositeKey(tenant_id, llm_factory, llm_name)PrimaryKeyField(id) + UNIQUE(tenant_id, llm_factory, llm_name)主键从复合键变为自增 ID

6. knowledgebase 修改

变更字段类型默认值说明
新增tenant_embd_idIntegerField, nullable, indexNULL指向 tenant_llm.id
新增pipeline_idCharField(32), indexNULL关联 Pipeline
新增graphrag_task_idCharField(32), indexNULLGraph RAG 任务 ID
新增graphrag_task_finish_atDateTimeFieldNULLGraph RAG 完成时间
新增raptor_task_idCharField(32), indexNULLRAPTOR 任务 ID
新增raptor_task_finish_atDateTimeFieldNULLRAPTOR 完成时间
新增mindmap_task_idCharField(32), indexNULLMindmap 任务 ID
新增mindmap_task_finish_atDateTimeFieldNULLMindmap 完成时间
修改parser_config{"pages": [[1, 1000000]]}追加 table_context_size, image_context_size新增上下文窗口配置

7. document 修改

变更字段v0.17.2v0.25.6说明
新增pipeline_idCharField(32), index关联 Pipeline
新增suffixCharField(32), index真实文件后缀
新增content_hashCharField(32), indexxxhash128 内容哈希
修改sizeIntegerFieldBigIntegerField支持 >2GB 文件
修改process_duationFloatField→ process_duration拼写修正

8. file 修改

变更字段v0.17.2v0.25.6说明
修改sizeIntegerFieldBigIntegerField支持 >2GB 文件

9. task 修改

变更字段v0.17.2v0.25.6说明
新增priorityIntegerField, default=0任务优先级
修改process_duationFloatField→ process_duration拼写修正

10. dialog 修改

变更字段类型默认值说明
新增tenant_llm_idIntegerField, nullable, indexNULL指向 tenant_llm.id
新增tenant_rerank_idIntegerField, nullable, indexNULL指向 tenant_llm.id
新增meta_data_filterJSONField{}元数据过滤

11. api_4_conversation 修改

变更字段类型默认值说明
新增nameCharField(255), nullableNULL会话名称
新增exp_user_idCharField(255), nullable, indexNULL对外用户 ID
新增errorsTextField, nullableNULL错误信息
新增version_titleCharField(255), nullableNULLCanvas 版本记录

12. user_canvas 修改

变更字段类型默认值说明
新增permissionCharField(16), index"me"权限: me|team
新增releaseBooleanField, indexFalse已发布
新增canvas_categoryCharField(32), index"agent_canvas"分类
新增tagsCharField(512), index""标签

13. canvas_template 修改

变更字段v0.17.2v0.25.6说明
修改titleCharField(255)JSONField(多语言)支持 {"en":"...","zh":"..."}
修改descriptionTextFieldJSONField(多语言)支持多语言
新增canvas_typesListField多类型标签
新增canvas_categoryCharField(32), index分类

📖 完整表结构详情(新增表)

以下列出 v0.25.6 中所有新增表的完整字段定义。

🆕 tenant_langfuse

字段类型约束说明
tenant_idCharField(32)PK FK→tenant租户 ID
secret_keyCharField(2048)NOT NULL, IDXLangfuse Secret Key
public_keyCharField(2048)NOT NULL, IDXLangfuse Public Key
hostCharField(128)NOT NULL, IDXLangfuse 服务地址
create_time / create_date / update_time / update_date继承 BaseModel时间戳

🆕 user_canvas_version

字段类型约束说明
idCharField(32)PK版本 ID
user_canvas_idCharField(255)FK→user_canvas IDX所属画布
titleCharField(255)nullable版本标题
descriptionTextFieldnullable版本描述
releaseBooleanFieldIDX, default=False是否发布
dslJSONFielddefault={}画布 DSL

🆕 mcp_server

字段类型约束说明
idCharField(32)PKMCP 服务 ID
nameCharField(255)NOT NULL服务名称
tenant_idCharField(32)FK→tenant IDX所属租户
urlCharField(2048)NOT NULLMCP Server URL
server_typeCharField(32)NOT NULL服务类型
descriptionTextFieldnullable描述
variablesJSONFielddefault={}环境变量
headersJSONFielddefault={}自定义请求头

🆕 search

字段类型约束说明
idCharField(32)PK搜索配置 ID
tenant_idCharField(32)FK→tenant IDX所属租户
nameCharField(128)IDX搜索名称
created_byCharField(32)IDX创建者
search_configJSONField搜索配置
statusCharField(1)default="1"状态

🆕 pipeline_operation_log

字段类型约束说明
idCharField(32)PK日志 ID
document_idCharField(32)IDX文档 ID
tenant_idCharField(32)IDX租户 ID
kb_idCharField(32)IDX知识库 ID
pipeline_idCharField(32)IDXPipeline ID
pipeline_titleCharField(32)Pipeline 标题
parser_idCharField(32)IDXParser ID
document_nameCharField(255)文件名
document_suffixCharField(255)文件后缀
document_typeCharField(255)文档类型
source_fromCharField(255)来源
progress / progress_msg / process_begin_at / process_duration处理进度
dslJSONFieldPipeline DSL
task_typeCharField(32)任务类型
operation_statusCharField(32)操作状态

🆕 connector

字段类型约束说明
idCharField(32)PK连接器 ID
tenant_idCharField(32)FK→tenant IDX所属租户
nameCharField(128)NOT NULL连接器名称
sourceCharField(128)IDX数据源类型
input_typeCharField(128)IDX输入方式
configJSONFielddefault={}连接器配置
refresh_freqIntegerFielddefault=0刷新频率
prune_freqIntegerFielddefault=0清理频率
timeout_secsIntegerFielddefault=3600超时
indexing_startDateTimeFieldnullable索引开始时间
statusCharField(16)default="schedule"调度状态

🆕 evaluation_datasets

字段类型约束说明
idCharField(32)PK数据集 ID
tenant_idCharField(32)FK→tenant IDX所属租户
nameCharField(255)IDX数据集名称
descriptionTextFieldnullable描述
kb_idsJSONField评估目标知识库
created_byCharField(32)IDX创建者
statusIntegerFielddefault=11=有效, 0=无效

🆕 memory

字段类型约束说明
idCharField(32)PK记忆 ID
nameCharField(128)NOT NULL记忆名称
tenant_idCharField(32)FK→tenant IDX所属租户
memory_typeIntegerFieldIDX, default=1位标志: 1=raw, 2=semantic, 4=episodic, 8=procedural
storage_typeCharField(32)IDX, default="table"存储方式: table|graph
embd_idCharField(128)Embedding 模型
llm_idCharField(128)Chat 模型
permissionsCharField(16)IDX, default="me"权限
memory_sizeIntegerFielddefault=5242880最大记忆大小
forgetting_policyCharField(32)default="FIFO"遗忘策略
temperatureFloatFielddefault=0.5检索温度
system_prompt / user_promptTextFieldnullablePrompt 模板

🆕 system_settings

字段类型约束说明
nameCharField(128)PK配置键名
sourceCharField(32)配置来源
data_typeCharField(32)数据类型
valueTextFieldNOT NULL配置值