Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
133 commits
Select commit Hold shift + click to select a range
28d0326
docs: 添加代码更新与维护章节到 README
claude Dec 3, 2025
edf4c60
feat: 支持 LLM 和嵌入模型使用不同的 API 配置
claude Dec 3, 2025
1e1db7c
feat: 添加完整的 Docker 部署支持
claude Dec 5, 2025
d717bdf
fix: 使 HanLP 成为可选依赖,添加简单分词器作为后备方案
claude Dec 5, 2025
b08d4f8
feat: 添加完整的 Web 管理界面
claude Dec 6, 2025
2ff6f8c
fix: 修复前端导入错误并添加系统启动脚本
claude Dec 6, 2025
608082c
fix: 避免前端启动时触发 Neo4j 连接
claude Dec 6, 2025
49ab60d
fix: 改进启动脚本,添加 Docker 状态检查
claude Dec 6, 2025
fb374f4
feat: 添加仅启动 Neo4j 的脚本
claude Dec 6, 2025
06a03bb
fix: 修复前端页面导航和构建状态显示问题
claude Dec 7, 2025
5af2a86
feat: 改进用户体验和操作反馈
claude Dec 8, 2025
8497462
feat: 将系统转换为通用图谱构建器,支持用户定义领域和桥接点
claude Dec 8, 2025
9267fe6
feat: 添加 AI Copilot 智能配置向导
claude Dec 8, 2025
0ebd132
docs: 更新 README 以反映最新功能
claude Dec 9, 2025
fbaa43d
fix: 修复多个前端和Agent问题
claude Dec 9, 2025
0b0e8e2
fix: 修复多个前端和后端问题(第二轮)
claude Dec 9, 2025
25ff77d
fix: 修复 fusion_agent 和 API 路径问题
claude Dec 9, 2025
37f9091
feat: 添加向量索引缺失的友好错误提示
claude Dec 9, 2025
1e06b7a
feat: 改进构建反馈机制,提升用户体验
claude Dec 9, 2025
481e929
feat: 添加构建完成自动提醒和进度跟踪功能
claude Dec 9, 2025
0c27111
fix: 修复 yaml CLoader 导入兼容性问题
claude Dec 9, 2025
8095658
fix: 修复 yaml CLoader 导入兼容性问题
claude Dec 9, 2025
9bba303
feat: 合并所有新功能从 01MD6Gw7G4xaAZQWD7qmTsWE 分支
claude Dec 10, 2025
f995376
fix: 修复 AgentManager 内存泄漏问题
claude Dec 13, 2025
0dcd3fe
refactor: 移除 ResearchExecutor 中不稳定的正则表达式
claude Dec 13, 2025
d3517c3
feat: 在 Orchestrator 中实现简单查询的快速路由
claude Dec 13, 2025
da41c5c
refactor: 使用多态移除 chat_service 中的 Agent 特定逻辑
claude Dec 13, 2025
31b7c92
test: 添加优化功能的集成测试和验证脚本
claude Dec 13, 2025
e90d062
feat: 实现 L0/L1 拆分管道 - 用户上传后立即可搜索
claude Dec 13, 2025
66bc711
feat: 实现三层自适应路由(FAST/SLOW/HEAVY)
claude Dec 13, 2025
9fa4cce
feat: 实现 WebSocket 实时进度推送系统
claude Dec 13, 2025
7a798a6
feat: 添加 SSE (Server-Sent Events) 实时进度推送
claude Dec 13, 2025
b541461
feat: 实现实体对齐 (Entity Resolution) 管道
claude Dec 13, 2025
6105c84
feat: 集成语义缓存 (Semantic Cache)
claude Dec 13, 2025
3f11820
feat: 实现图谱可视化交互 API (Graph Explorer)
claude Dec 13, 2025
3eb934b
feat: 建立 RAGAS 评估流水线
claude Dec 13, 2025
8e2d7d0
docs: 更新主文档以反映新功能
claude Dec 14, 2025
7edf7e7
fix: 修复服务启动的导入路径问题
claude Dec 14, 2025
750fc2c
fix: 为 Agent 方法添加 **kwargs 支持以接受灵活参数
claude Dec 14, 2025
872eeef
fix: 修复增量更新 V2 导入错误和文件权限问题
claude Dec 14, 2025
9d8f045
fix: 将 IncrementalUpdateManagerV2 方法改为全异步
claude Dec 14, 2025
c5da40f
feat: 集成 V2 引擎到 Admin API,实现真·全量构建
claude Dec 14, 2025
3f3fb44
feat: 增强后台任务日志输出以便调试
leoleo112s Dec 17, 2025
76721fa
docs: 更新说明文档以反映 V2 增量更新引擎特性
claude Dec 17, 2025
1f771ff
refactor: 重构 Vector Index 系统为工程级实践(第一阶段)
claude Dec 17, 2025
566cfc0
refactor: 重构 Retriever 为 Neo4j 原生 Vector Search(第二阶段)
claude Dec 17, 2025
f29588f
refactor: 统一返回结构与架构解耦(第三阶段)
claude Dec 17, 2025
4953832
fix: 修复 Tool._run() 返回类型导致的 500 错误
claude Dec 17, 2025
f37036e
feat: 双 Chunker 策略 + 实体频率约束(解决实体爆炸问题)
claude Dec 17, 2025
d29765f
feat: 生产级 GraphRAG 验证配置(三板斧组合拳)
claude Dec 17, 2025
a8187df
feat: 代码级实体抽取重构(生产级完整版)
claude Dec 17, 2025
7be947c
feat: Schema-aware Routing(最小改动版合并方案)
claude Dec 18, 2025
600a070
feat: 代码级实体抽取重构(生产级完整版)
claude Dec 18, 2025
82efc7e
docs: 更新项目文档(生产级实体抽取 + Schema-aware Routing)
claude Dec 18, 2025
85152be
feat: 添加知识图谱清理和重建工具
claude Dec 18, 2025
217b786
use configured vector indexes
leoleo112s Dec 18, 2025
21da27c
Merge pull request #1 from leoleo112s/codex/update-vector-search-conf…
leoleo112s Dec 18, 2025
6189a19
standardize search responses
leoleo112s Dec 18, 2025
7891c5c
Merge pull request #2 from leoleo112s/codex/refactor-response-handlin…
leoleo112s Dec 18, 2025
3e98e73
ignore venv directory
leoleo112s Dec 18, 2025
d363bc7
Merge pull request #3 from leoleo112s/codex/set-up-python-environment…
leoleo112s Dec 18, 2025
a783bb8
agents: normalize tool message payloads
leoleo112s Dec 18, 2025
0140b56
Merge pull request #4 from leoleo112s/codex/locate-and-validate-tool-…
leoleo112s Dec 18, 2025
21124ee
add vector index helper
leoleo112s Dec 18, 2025
256d728
Merge pull request #5 from leoleo112s/codex/add-ensure_vector_index-u…
leoleo112s Dec 18, 2025
1a404f9
use configured vector indexes
leoleo112s Dec 18, 2025
dff56ac
Merge pull request #6 from leoleo112s/codex/update-vector-search-to-u…
leoleo112s Dec 18, 2025
71412e2
enforce vector index config defaults
leoleo112s Dec 18, 2025
eca12eb
Merge pull request #7 from leoleo112s/codex/document-steps-for-implem…
leoleo112s Dec 18, 2025
26e6778
align vector index cleanup
leoleo112s Dec 18, 2025
d98e24c
Merge pull request #8 from leoleo112s/codex/evaluate-graphrag-project…
leoleo112s Dec 18, 2025
b652d59
normalize retrieval outputs
leoleo112s Dec 18, 2025
2aa5e19
Merge pull request #9 from leoleo112s/codex/evaluate-graphrag-project…
leoleo112s Dec 18, 2025
afce4b6
add frontend status check
leoleo112s Dec 18, 2025
eff44f1
Merge pull request #10 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 18, 2025
86867f8
use tool run outputs in agents
leoleo112s Dec 18, 2025
20746e6
Merge pull request #11 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 18, 2025
4aaa076
harden tool invocation and index contract
leoleo112s Dec 18, 2025
af30e3d
Merge branch 'claude/evaluate-local-deployment-018RecuEFNMjfXEe3TWvoY…
leoleo112s Dec 18, 2025
b61b8e1
Merge pull request #12 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 18, 2025
1c6c1d7
refresh ui to government blue
leoleo112s Dec 18, 2025
54eb42f
Merge pull request #13 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 18, 2025
c487755
add local deployment guide
leoleo112s Dec 18, 2025
3a15341
Merge pull request #14 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 18, 2025
1706ec3
fix settings indentation
leoleo112s Dec 19, 2025
db0828f
Merge branch 'claude/evaluate-local-deployment-018RecuEFNMjfXEe3TWvoY…
leoleo112s Dec 19, 2025
1dc9072
Merge pull request #15 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 19, 2025
73f21df
frontend: ensure package import path
leoleo112s Dec 19, 2025
faec754
Merge pull request #16 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 19, 2025
36f3bd4
frontend: fix chat input placeholder args
leoleo112s Dec 19, 2025
1b2a0bb
Merge branch 'claude/evaluate-local-deployment-018RecuEFNMjfXEe3TWvoY…
leoleo112s Dec 19, 2025
df2afa7
Merge pull request #18 from leoleo112s/codex/evaluate-graphrag-projec…
leoleo112s Dec 19, 2025
2fcc738
feat: 添加 Git 智能同步脚本
claude Dec 20, 2025
f1e5983
本地最新20251220
leoleo112s Dec 20, 2025
0aeb6e3
fix: enhance JSON parsing to handle ```json fences in entity extraction
claude Dec 20, 2025
7262231
fix: unify extractor return type to dict to avoid unpacking errors
claude Dec 20, 2025
ea116cf
fix: update entity_data statistics to support dict format in incremen…
claude Dec 20, 2025
3502fe5
fix: escape braces in prompt templates to prevent KeyError on format()
claude Dec 20, 2025
f969c83
feat: add raw field to extractor return dict for debugging
claude Dec 20, 2025
779a434
fix: add dict/tuple/list compatibility logic to build_graph.py
claude Dec 21, 2025
1d915f2
fix: add traceback printing and re-raise in build_graph.py exception …
claude Dec 21, 2025
ae23919
fix: add multi-value compatibility to process_chunks_batch in entity_…
claude Dec 21, 2025
7d7e124
fix: add multi-value compatibility to process_chunks_batch in entity_…
claude Dec 21, 2025
84a8d31
debug: add detailed repr printing for processed data structure
claude Dec 21, 2025
848be00
fix: rewrite process_chunks_batch to call LLM directly instead of reu…
claude Dec 21, 2025
5ec468c
fix: improve cache handling for string-cached results and error cases
claude Dec 21, 2025
02409c9
fix: handle both batch and normal processing return formats in build_…
claude Dec 21, 2025
1deb286
refactor: switch to production-grade entity_extractor implementation
claude Dec 21, 2025
a6a0bfd
feat: integrate EmbeddingManager into build_graph.py for automatic ve…
claude Dec 21, 2025
45309be
debug: enhance logging in StructBuilder.parallel_process_chunks for t…
claude Dec 21, 2025
e2cf175
fix: add Any to typing imports in entity_extractor.py
claude Dec 21, 2025
43a6bdf
feat: add _get_graph_config method to EntityRelationExtractor
claude Dec 21, 2025
f1321a1
fix: correct route_domain calls to use _get_graph_config for Factory …
claude Dec 21, 2025
c1b92bd
fix: replace graph_config.get_domain with internal _schema_for_domain…
claude Dec 21, 2025
264a2f8
feat: lower entity frequency threshold and add case-insensitive type …
claude Dec 21, 2025
c6bcb6c
fix: address four critical bugs in entity_extractor.py
claude Dec 22, 2025
a5d6797
fix: add limit parameter to embedding update methods to prevent crash
claude Dec 22, 2025
3f10082
refactor: update post_process_entities to accept explicit parameters
claude Dec 22, 2025
fc32b3b
refactor: finalize post_process_relations signature and add DEFAULT_M…
claude Dec 22, 2025
4fc3b75
debug: add diagnostic logging to post_process_entities
claude Dec 22, 2025
d40ae8c
fix: replace English whitelists with Chinese types to match LLM output
claude Dec 22, 2025
03f01fa
feat: implement configuration-driven hot reload architecture
claude Dec 22, 2025
e28f11d
feat: enhance Chinese language support in dynamic prompt builder
claude Dec 22, 2025
a371034
refactor: remove hardcoded schemas and implement true schema-aware ex…
claude Dec 22, 2025
a709dea
docs: add comprehensive extractor refactor summary
claude Dec 22, 2025
46ba0d8
feat: enhance frontend config manager with validation, JSON editor, a…
claude Dec 22, 2025
4501d96
fix: implement thread-safe singleton pattern for GraphConnectionManager
claude Dec 22, 2025
1b490ae
fix: resolve parallel processing order corruption in BaseIndexer
claude Dec 22, 2025
e363bdd
perf: optimize parallel chunk processing with O(N²) → O(N) and retry …
claude Dec 22, 2025
46f1067
refactor: remove technical debt, introduce logging and circuit breaker
claude Dec 23, 2025
84cbc81
perf: parameterize extraction settings, add Unicode normalization, an…
claude Dec 23, 2025
900ae8b
feat: add empty result monitoring and completeness validation to circ…
claude Dec 23, 2025
b7b3b61
feat: add cache version isolation and dynamic thread pool configuration
claude Dec 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .DS_Store
Binary file not shown.
50 changes: 50 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Git
.git
.gitignore
.gitattributes

# Python
__pycache__
*.py[cod]
*$py.class
*.so
.Python
*.egg-info
dist
build
.venv
venv
env

# IDE
.vscode
.idea
*.swp
*.swo
*~

# 缓存和日志
cache/
*.log
.DS_Store

# 环境变量(会单独挂载)
.env
.env.local
.env.backup*

# 测试
.pytest_cache
.coverage
htmlcov

# 文档
*.md
docs/

# Neo4j 数据(会用 volume)
neo4j_data/
neo4j_logs/

# 文件注册表(会单独挂载)
file_registry.json
270 changes: 270 additions & 0 deletions .env.backup
Original file line number Diff line number Diff line change
@@ -0,0 +1,270 @@
# === OpenAI 相关 ===
# 通用配置(保留但不会被使用,因为下面有专用配置)
# OPENAI_API_KEY = 'sk-xxx'
#OPENAI_BASE_URL = 'https://api.openai.com/v1'

# 向量模型名称(用于嵌入检索)
OPENAI_EMBEDDINGS_MODEL=text-embedding-3-small
# 生成模型名称(用于回答生成)
OPENAI_LLM_MODEL=deepseek-chat

# === 混合使用不同 API ===
# LLM 专用配置 - 使用 DeepSeek(便宜)
OPENAI_LLM_API_KEY=sk-xxx
OPENAI_LLM_BASE_URL=https://api.deepseek.com/v1

# 嵌入模型专用配置 - 使用 OpenAI(质量好)
OPENAI_EMBEDDING_API_KEY=sk-xxx
OPENAI_EMBEDDING_BASE_URL=https://api.openai.com/v1

# 采样温度
TEMPERATURE=0
# 生成回答的最大 Token 限制
MAX_TOKENS=8000


# === 服务并发 ===
# FastAPI 进程数(影响 API 并发能力)
FASTAPI_WORKERS=2

# === 文本切分与基础 RAG ===
# 文本分块大小(字符数)
CHUNK_SIZE=500
# 分块重叠长度(字符数),用于保持上下文连续性
CHUNK_OVERLAP=100
# 单篇文档允许的最大字符数
MAX_TEXT_LENGTH=500000
# 相似度阈值(0~1),用于过滤向量检索结果
SIMILARITY_THRESHOLD=0.9
# 默认回答格式(中文提示,示例:多个段落、表格等)
RESPONSE_TYPE=多个段落

# 是否输出更详细的调试日志
VERBOSE=True

# === 批处理与线程池 ===
# 全局最大线程数
MAX_WORKERS=4
# 多智能体执行模式:sequential(串行)或 parallel(并行)
MA_WORKER_EXECUTION_MODE=sequential
# 并行模式下的最大并发任务数
MA_WORKER_MAX_CONCURRENCY=4
# 通用批处理大小
BATCH_SIZE=100
# 实体批量操作大小
ENTITY_BATCH_SIZE=50
# 文本块批量操作大小
CHUNK_BATCH_SIZE=100
# 向量嵌入批处理大小
EMBEDDING_BATCH_SIZE=64
# LLM 批量请求大小
LLM_BATCH_SIZE=5
# 社区(图算法)批量处理大小
COMMUNITY_BATCH_SIZE=50

# === Neo4j Graph Data Science (GDS) 参数 ===
# GDS 使用的内存上限(GB)
GDS_MEMORY_LIMIT=6
# GDS 并发度
GDS_CONCURRENCY=4
# GDS 数据规模限制(节点数)
GDS_NODE_COUNT_LIMIT=50000
# GDS 算法超时时间(秒)
GDS_TIMEOUT_SECONDS=300

# === 实体消歧/对齐 ===
# 文本编辑距离阈值(0~1,越小越严格)
DISAMBIG_STRING_THRESHOLD=0.7
# 向量相似度阈值
DISAMBIG_VECTOR_THRESHOLD=0.85
# 判定为未知(NIL)的阈值
DISAMBIG_NIL_THRESHOLD=0.6
# 候选实体数量
DISAMBIG_TOP_K=5
# 对齐冲突阈值
ALIGNMENT_CONFLICT_THRESHOLD=0.5
# 对齐最小分组大小
ALIGNMENT_MIN_GROUP_SIZE=2

# === Neo4j 连接信息 ===
# Neo4j 地址
NEO4J_URI=neo4j://localhost:7687
# Neo4j 用户名
NEO4J_USERNAME=neo4j
# Neo4j 密码
NEO4J_PASSWORD=12345678
# 最大连接池大小
NEO4J_MAX_POOL_SIZE=10
# 是否在启动时刷新 Schema
NEO4J_REFRESH_SCHEMA=false

# === 缓存(Cache Manager) ===
# 向量匹配提供者:openai / sentence_transformer
CACHE_EMBEDDING_PROVIDER=openai
# 当使用本地模型时的模型名称
CACHE_SENTENCE_TRANSFORMER_MODEL=all-MiniLM-L6-v2

# 模型与结果缓存目录
MODEL_CACHE_ROOT=./cache
CACHE_ROOT=./cache
CACHE_DIR=./cache
# 是否只使用内存缓存
CACHE_MEMORY_ONLY=false
# 内存缓存最大容量(MB)
CACHE_MAX_MEMORY_SIZE=100
# 磁盘缓存最大容量(MB)
CACHE_MAX_DISK_SIZE=1000
# 是否启用线程安全
CACHE_THREAD_SAFE=true
# 是否启用向量相似度缓存
CACHE_ENABLE_VECTOR_SIMILARITY=true
# 缓存判定相似度阈值
CACHE_SIMILARITY_THRESHOLD=0.9
# 缓存向量数量上限
CACHE_MAX_VECTORS=10000

# === 相似实体检测 ===
# 允许的最大编辑距离
SIMILAR_ENTITY_WORD_EDIT_DISTANCE=3
# 检测批处理大小
SIMILAR_ENTITY_BATCH_SIZE=500
# 运行所需的内存上限(GB)
SIMILAR_ENTITY_MEMORY_LIMIT=6
# 返回的候选实体数量
SIMILAR_ENTITY_TOP_K=10

# === 检索工具参数 ===
# 检索缓存占用的内存上限(MB)
SEARCH_CACHE_MEMORY_SIZE=200
# 向量检索返回数量
SEARCH_VECTOR_LIMIT=5
# 文本检索返回数量
SEARCH_TEXT_LIMIT=5
# 语义检索 Top K
SEARCH_SEMANTIC_TOP_K=5
# 关键词检索 Top K
SEARCH_RELEVANCE_TOP_K=5
# 朴素检索返回条数
NAIVE_SEARCH_TOP_K=3
# 本地检索返回的文本块数量
LOCAL_SEARCH_TOP_CHUNKS=3
# 本地检索返回的社区数量
LOCAL_SEARCH_TOP_COMMUNITIES=3
# 图外关系检索数量
LOCAL_SEARCH_TOP_OUTSIDE_RELS=10
# 图内关系检索数量
LOCAL_SEARCH_TOP_INSIDE_RELS=10
# 返回的相关实体数量
LOCAL_SEARCH_TOP_ENTITIES=10
# Neo4j 向量索引名称
LOCAL_SEARCH_INDEX_NAME=vector
# 全局搜索默认层级
GLOBAL_SEARCH_LEVEL=0
# 全局搜索批大小
GLOBAL_SEARCH_BATCH_SIZE=5
# 混合检索实体数量上限
HYBRID_SEARCH_ENTITY_LIMIT=15
# 混合检索图探索最大跳数
HYBRID_SEARCH_MAX_HOP=2
# 混合检索社区数量
HYBRID_SEARCH_TOP_COMMUNITIES=3
# 混合检索批大小
HYBRID_SEARCH_BATCH_SIZE=10
# 混合检索的社区层级
HYBRID_SEARCH_COMMUNITY_LEVEL=0

# === 服务端运行 ===
# 监听地址
SERVER_HOST=0.0.0.0
# 监听端口
SERVER_PORT=8000
# 是否热重载
SERVER_RELOAD=false
# 日志级别
SERVER_LOG_LEVEL=info
# 工作进程数(优先于 FASTAPI_WORKERS)
SERVER_WORKERS=2

# === 前端默认配置 ===
# API 网关地址
FRONTEND_API_URL=http://localhost:8000
# 默认使用的 Agent 名称
FRONTEND_DEFAULT_AGENT=naive_rag_agent
# 是否默认开启调试面板
FRONTEND_DEFAULT_DEBUG=false
# 是否展示思维链
FRONTEND_SHOW_THINKING=true
# 是否允许深度研究工具
FRONTEND_USE_DEEPER_TOOL=true
# 是否启用流式输出
FRONTEND_USE_STREAM=true
# 是否允许链式探索工具
FRONTEND_USE_CHAIN_EXPLORATION=true

# === 图谱可视化(前端)===
# 是否启用物理模拟
KG_PHYSICS_ENABLED=true
# 节点默认大小
KG_NODE_SIZE=25
# 边线宽
KG_EDGE_WIDTH=2
# 弹簧长度(节点间距)
KG_SPRING_LENGTH=150
# 引力系数(负数表示斥力)
KG_GRAVITY=-5000

# === Agent 调度相关 ===
# 最大递归深度(LangGraph)
AGENT_RECURSION_LIMIT=5
# 单批次传入 LangGraph 的消息碎片数
AGENT_CHUNK_SIZE=4
# 普通 Agent 的流式 flush 阈值(字符数)
AGENT_STREAM_FLUSH_THRESHOLD=40
# DeepResearch Agent 的流式 flush 阈值
DEEP_AGENT_STREAM_FLUSH_THRESHOLD=80
# Fusion Agent 的流式 flush 阈值
FUSION_AGENT_STREAM_FLUSH_THRESHOLD=60

# === 多智能体编排 ===
# 单次 Planner 允许生成的最大任务数
MA_PLANNER_MAX_TASKS=6
# 是否允许在澄清未完成时继续执行
MA_ALLOW_UNCLARIFIED_PLAN=true
# 默认任务领域标签
MA_DEFAULT_DOMAIN=通用
# 执行结束后是否自动生成报告
MA_AUTO_GENERATE_REPORT=true
# 如果需要用户澄清是否立即停止执行
MA_STOP_ON_CLARIFICATION=true
# Planner 未返回执行信号时是否视为失败
MA_STRICT_PLAN_SIGNAL=true
# 默认报告类型(short_answer / long_document)
MA_DEFAULT_REPORT_TYPE=long_document
# 是否启用一致性检查
MA_ENABLE_CONSISTENCY_CHECK=true
# 是否开启 Map-Reduce 写作模式
MA_ENABLE_MAPREDUCE=true
# 触发 Map-Reduce 的证据条数阈值
MA_MAPREDUCE_THRESHOLD=20
# Reduce 阶段每次允许的最大 Token 预算
MA_MAX_TOKENS_PER_REDUCE=4000
# Map 阶段是否并行调用
MA_ENABLE_PARALLEL_MAP=true
# 单个章节写作允许的证据数量
MA_SECTION_MAX_EVIDENCE=8
# 多批写作时保留的前文上下文长度
MA_SECTION_MAX_CONTEXT_CHARS=800
# 反思阶段是否允许自动重试
MA_REFLECTION_ALLOW_RETRY=false
# 单个目标任务允许的反思重试次数
MA_REFLECTION_MAX_RETRIES=1

# === Langsmith 监控(可选)===
# 是否启用 Langsmith Tracing
LANGSMITH_TRACING=false
# Langsmith 服务地址
LANGSMITH_ENDPOINT=https://api.smith.langchain.com
# Langsmith API Key
LANGSMITH_API_KEY=xxx
# Langsmith 项目名称
LANGSMITH_PROJECT=xxx
Loading