Files
study-agent-service/service/agent_service.py

39 lines
1.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from langchain_core.messages import AIMessageChunk, HumanMessage
from agent.study import question_agent, knowledge_agent
from schemas.agent import QueryQuestionRequest, QueryKnowledgeRequest
def query_question_agent(query: QueryQuestionRequest):
try:
user_msg = f"学习内容:\n{query.message}"
# 流式调用Agent
for chunk, metadata in question_agent.stream(
{"messages": [HumanMessage(content=user_msg)]},
stream_mode="messages"
):
if isinstance(chunk, AIMessageChunk):
if isinstance(chunk, AIMessageChunk) and chunk.content:
yield chunk.content
except Exception as e:
print(f"\n[错误]: {str(e)}")
yield "信息检索失败,请重新输入问题提问"
def query_knowledge_agent(query: QueryKnowledgeRequest):
try:
user_msg = f"学科:{query.subject},模块:{query.module} 名称:{query.name}"
# 流式调用Agent
for chunk, metadata in knowledge_agent.stream(
{"messages": [HumanMessage(content=user_msg)]},
stream_mode="messages"
):
if isinstance(chunk, AIMessageChunk):
if isinstance(chunk, AIMessageChunk) and chunk.content:
yield chunk.content
except Exception as e:
print(f"\n[错误]: {str(e)}")
yield "信息检索失败,请重新输入问题提问"