4e14334030
- backend/llm.py: per-node max_tokens via get_llm(max_tokens=N), LLM_MAX_TOKENS env var (default 8192) - agent/nodes.py: 5 generation nodes use max_tokens=32768, generate_skeleton retries at 65536 - agent/nodes.py: fix ns:field regex (<field → <[\w:]*field) to handle namespace prefixes - agent/nodes.py: fix correct_jrxml never writing back to state["current_jrxml"] - agent/nodes.py: correct_jrxml rejects non-JRXML output (no <jasperReport tag) - agent/nodes.py: _strip_continuation_wrapper strips markdown/prefixes from continuation rounds - agent/nodes.py: _extract_jrxml iterates multiple markdown code blocks, skips fragments - agent/graph.py: route_after_validate skips correction loop when service_unavailable - agent/graph.py: route_after_save skips validation for empty JRXML - backend/validation.py: returns service_unavailable: True for ConnectError and HTTP 5xx - Docs: CLAUDE.md v14 changelog, README.md LLM_MAX_TOKENS, .env.example LLM_MAX_TOKENS
80 lines
2.0 KiB
Bash
80 lines
2.0 KiB
Bash
# 大语言模型后端:cloud 或 local
|
||
LLM_BACKEND=cloud
|
||
|
||
# 云端提供商:openai 或 anthropic
|
||
LLM_PROVIDER=anthropic
|
||
|
||
# Anthropic 兼容 API(MiniMax 等,优先使用)
|
||
ANTHROPIC_API_KEY=sk-xxxx
|
||
ANTHROPIC_BASE_URL=https://api.minimaxi.com/anthropic
|
||
|
||
# OpenAI 兼容 API(fallback,当 ANTHROPIC_* 未设置时使用)
|
||
OPENAI_API_KEY=sk-xxxx
|
||
OPENAI_BASE_URL=https://api.openai.com/v1
|
||
|
||
LLM_MODEL=MiniMax-M2.7
|
||
|
||
# 默认 max_tokens(各生成节点可覆盖为更高值)
|
||
LLM_MAX_TOKENS=8192
|
||
|
||
# 本地大语言模型(Ollama)
|
||
LOCAL_LLM_MODEL=qwen2.5-coder:7b
|
||
|
||
# 嵌入模型后端:local 或 cloud
|
||
EMBED_BACKEND=local
|
||
LOCAL_EMBED_MODEL=Qwen/Qwen3-Embedding-0.6B
|
||
|
||
# 验证服务地址
|
||
VALIDATION_SERVICE_URL=http://localhost:8001/validate
|
||
|
||
# Chroma 持久化目录
|
||
CHROMA_PERSIST_DIR=./db/chroma
|
||
|
||
# ---- RAG / 向量知识库 (rag_jrxml 子模块) ----
|
||
# 嵌入模型
|
||
RAG_EMBED_MODEL=sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
|
||
# JRXML 模板源目录 (rag 子模块内已含 107 个模板)
|
||
RAG_JRXML_SOURCE=./rag/jrxml_source
|
||
# 分块输出目录
|
||
RAG_CHUNKER_OUTPUT=./rag/jrxml_chunker_output
|
||
# 向量输出目录
|
||
RAG_EMBEDDINGS_DIR=./rag/embeddings
|
||
# ChromaDB 知识库路径
|
||
RAG_CHROMA_PATH=./db/chroma
|
||
# ChromaDB 集合名称
|
||
RAG_COLLECTION_NAME=jrxml_chunks
|
||
# GPU 加速
|
||
RAG_USE_GPU=true
|
||
# FP16 半精度
|
||
RAG_USE_FP16=true
|
||
# 向量化批处理大小
|
||
RAG_BATCH_SIZE=64
|
||
|
||
# 最大自动修正尝试次数
|
||
MAX_RETRY=5
|
||
|
||
# 上下文压缩阈值(token 数)
|
||
CONTEXT_MAX_TOKENS=6000
|
||
|
||
# 保留最近 N 轮完整对话
|
||
CONTEXT_KEEP_RECENT=4
|
||
|
||
# 会话持久化目录
|
||
SESSIONS_DIR=./sessions
|
||
|
||
# 日志目录和级别
|
||
LOG_DIR=./logs
|
||
LOG_LEVEL=DEBUG
|
||
|
||
# 状态快照保留数量(用于撤销操作)
|
||
HISTORY_MAX_SNAPSHOTS=10
|
||
|
||
# 意图识别模型(默认使用主 LLM 模型)
|
||
# INTENT_MODEL=gpt-4o-mini
|
||
|
||
# OCR 字段提取配置
|
||
# 是否使用 GPU 加速 OCR(需要 CUDA 驱动和 GPU 版 EasyOCR/PaddleOCR)
|
||
OCR_USE_GPU=false
|
||
# OCR 文本置信度最低阈值(0-1),低于此值的元素将被忽略
|
||
OCR_CONFIDENCE_THRESHOLD=0.5
|