feat:接入sse

This commit is contained in:
2026-09-29 16:41:52 +08:00
parent 2b029b4bc7
commit e332259b07
4 changed files with 152 additions and 57 deletions
+11 -8
View File
@@ -2,18 +2,21 @@
from fastapi import APIRouter, Request
from app.common.response import ApiResponse, success_response
from app.schemas.agent import AgentResult, ResumeRequest
from app.common.sse import AgentEventResponse
from app.schemas.agent import ResumeRequest
from app.schemas.request import DesignRequest
router = APIRouter(prefix="/agent", tags=["Agent"])
@router.post("/run", response_model=ApiResponse[AgentResult])
async def run_agent(body: DesignRequest, request: Request):
return success_response(await request.app.state.agent_service.run(body))
@router.post("/run", response_class=AgentEventResponse, status_code=200)
async def stream_agent(body: DesignRequest, request: Request):
service = request.app.state.agent_service
return AgentEventResponse(service, service.stream_run(body), request)
@router.post("/resume", response_model=ApiResponse[AgentResult])
async def resume_agent(body: ResumeRequest, request: Request):
return success_response(await request.app.state.agent_service.resume(body))
@router.post("/resume", response_class=AgentEventResponse, status_code=200)
async def stream_resume_agent(body: ResumeRequest, request: Request):
service = request.app.state.agent_service
execution = await service.prepare_resume(body)
return AgentEventResponse(service, execution, request)