32 lines
874 B
Python
32 lines
874 B
Python
from fastapi import APIRouter
|
|
from starlette.responses import StreamingResponse
|
|
|
|
from schemas.agent import QueryQuestionRequest, QueryKnowledgeRequest, QueryExamRequest
|
|
from service import agent_service
|
|
|
|
router = APIRouter(prefix="/agent", tags=["Agent"])
|
|
|
|
|
|
@router.post("/question")
|
|
def generate_question(query: QueryQuestionRequest):
|
|
return StreamingResponse(
|
|
agent_service.generate_question_agent(query),
|
|
media_type="text/event-stream",
|
|
)
|
|
|
|
|
|
@router.post("/knowledge")
|
|
def generate_knowledge(query: QueryKnowledgeRequest):
|
|
return StreamingResponse(
|
|
agent_service.generate_knowledge_agent(query),
|
|
media_type="text/event-stream",
|
|
)
|
|
|
|
|
|
@router.post("/exam")
|
|
def generate_exam(query: QueryExamRequest):
|
|
return StreamingResponse(
|
|
agent_service.generate_exam_agent(query),
|
|
media_type="text/event-stream",
|
|
)
|