From 8744a9a7dafa40b800a2c9318b2709e9ee1aab94 Mon Sep 17 00:00:00 2001 From: Marcus Schiesser <mail@marcusschiesser.de> Date: Thu, 2 Nov 2023 16:24:07 +0700 Subject: [PATCH] fix: wrap non-streaming result for FastAPI in an result object --- templates/simple/fastapi/app/api/routers/chat.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/templates/simple/fastapi/app/api/routers/chat.py b/templates/simple/fastapi/app/api/routers/chat.py index 2d20a6f6..81f602ed 100644 --- a/templates/simple/fastapi/app/api/routers/chat.py +++ b/templates/simple/fastapi/app/api/routers/chat.py @@ -18,11 +18,15 @@ class _ChatData(BaseModel): messages: List[_Message] +class _Result(BaseModel): + result: _Message + + @r.post("") async def chat( data: _ChatData, index: VectorStoreIndex = Depends(get_index), -) -> _Message: +) -> _Result: # check preconditions and get last message if len(data.messages) == 0: raise HTTPException( @@ -47,4 +51,6 @@ async def chat( # query chat engine chat_engine = index.as_chat_engine() response = chat_engine.chat(lastMessage.content, messages) - return _Message(role=MessageRole.ASSISTANT, content=response.response) + return _Result( + result=_Message(role=MessageRole.ASSISTANT, content=response.response) + ) -- GitLab