feat 接入report

This commit is contained in:
zcr
2026-03-03 17:33:51 +08:00
parent 1ecb02d706
commit 1ade907828
23 changed files with 4079 additions and 516 deletions

View File

@@ -1,14 +1,12 @@
import os
from typing import Literal
from google.oauth2 import service_account
from langchain_core.messages import AIMessage
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain_core.runnables import RunnableConfig
from langchain_qwq import ChatQwen
from langgraph.graph import StateGraph, END, START
from pydantic import BaseModel
from pymongo import MongoClient
from src.core.config import settings, MONGO_URI
from src.core.config import MONGO_URI, settings
from src.server.agent.state import AgentState
from src.server.agent.agents import designer_node, researcher_node, visualizer_node, suggester_node
from langgraph.checkpoint.mongodb import MongoDBSaver
@@ -21,18 +19,16 @@ class RouteResponse(BaseModel):
next: Literal["Designer", "Researcher", "Visualizer", "Suggester", "FINISH"]
creds = service_account.Credentials.from_service_account_file(
settings.GOOGLE_GENAI_USE_VERTEXAI,
scopes=["https://www.googleapis.com/auth/cloud-platform"],
)
llm_supervisor = ChatGoogleGenerativeAI(
model="gemini-2.0-flash", credentials=creds,
project="aida-461108", location='us-central1', vertexai=True, api_key=settings.GOOGLE_API_KEY
)
llm_supervisor = ChatQwen(
model="qwen3.5-flash",
max_tokens=3_000,
timeout=None,
max_retries=2,
api_key=settings.QWEN_API_KEY)
def supervisor_node(state: AgentState):
def supervisor_node(state: AgentState, config: RunnableConfig):
use_report = config["configurable"].get("use_report", False)
messages = state["messages"]
if not messages:
return {"next": "Suggester"}
@@ -69,7 +65,6 @@ workflow.add_node("Designer", designer_node)
workflow.add_node("Researcher", researcher_node)
workflow.add_node("Visualizer", visualizer_node)
workflow.add_node("Suggester", suggester_node) # 新增节点
workflow.add_edge(START, "Supervisor")
# 修改条件边映射