feat: 后端基础设施 — LLM工厂/Embedding工厂/验证客户端/会话持久化
- backend/llm.py: 支持 OpenAI 兼容 API 与 Ollama 本地模型切换 - backend/embeddings.py: 支持云端与本地嵌入模型(sentence-transformers) - backend/validation.py: FastAPI 验证服务 HTTP 客户端 - backend/session.py: JSON 文件会话管理(创建/加载/保存/列表/删除) - .env.example: 完整环境变量模板 - requirements.txt: 所有 Python 依赖声明
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
"""FastAPI 验证服务的客户端。"""
|
||||
|
||||
import os
|
||||
|
||||
import httpx
|
||||
from dotenv import load_dotenv
|
||||
|
||||
load_dotenv()
|
||||
|
||||
VALIDATION_URL = os.getenv("VALIDATION_SERVICE_URL", "http://localhost:8001/validate")
|
||||
|
||||
|
||||
def validate_jrxml(jrxml_text: str) -> dict:
|
||||
"""将 JRXML 发送到验证服务并返回 {valid: bool, error: str}。"""
|
||||
try:
|
||||
with httpx.Client(timeout=30.0) as client:
|
||||
resp = client.post(VALIDATION_URL, json={"jrxml": jrxml_text})
|
||||
resp.raise_for_status()
|
||||
return resp.json()
|
||||
except httpx.ConnectError:
|
||||
return {
|
||||
"valid": False,
|
||||
"error": f"无法连接到验证服务 ({VALIDATION_URL})。是否正在运行?",
|
||||
}
|
||||
except Exception as e:
|
||||
return {"valid": False, "error": f"验证请求失败: {str(e)}"}
|
||||
Reference in New Issue
Block a user