feat:新增投顾agent和nl2sqlagent

This commit is contained in:
2026-09-13 16:19:24 +08:00
parent c80c6acac0
commit 163192bf55
122 changed files with 7488 additions and 362 deletions
+27
View File
@@ -0,0 +1,27 @@
"""面向其他 Agent 的数据查询适配器。"""
from __future__ import annotations
from uuid import uuid4
from nl2sql.contracts import DataQueryRequest
from nl2sql.streaming import stream_query_events
from service.nl2sql.query_service import execute_query
class DataQueryAgent:
"""只依赖公共查询服务,不直接调用其他 Agent 或基础设施。"""
async def query(self, request: DataQueryRequest, **dependencies):
"""转发查询请求,缺省生成内部查询 ID。"""
dependencies.setdefault("query_id", uuid4().hex)
return await execute_query(request, **dependencies)
async def stream(self, request: DataQueryRequest, **dependencies):
"""以结构化事件流转发查询,不暴露 SQL、结果行和异常消息。"""
dependencies.setdefault("query_id", uuid4().hex)
async for event in stream_query_events(
request,
query_runner=execute_query,
**dependencies,
):
yield event