The GET /chats/shared endpoint was loading full Chat rows including the entire conversation history JSON blob, only to discard it and return SharedChatResponse (id, title, share_id, timestamps). Now uses with_entities() to select only the 5 needed columns, avoiding deserialization of potentially large chat JSON for every shared chat.
This commit is contained in:
@@ -887,18 +887,13 @@ async def get_shared_session_user_chat_list(
|
||||
if direction:
|
||||
filter["direction"] = direction
|
||||
|
||||
chat_list = [
|
||||
SharedChatResponse(**chat.model_dump())
|
||||
for chat in Chats.get_shared_chat_list_by_user_id(
|
||||
user.id,
|
||||
filter=filter,
|
||||
skip=skip,
|
||||
limit=limit,
|
||||
db=db,
|
||||
)
|
||||
]
|
||||
|
||||
return chat_list
|
||||
return Chats.get_shared_chat_list_by_user_id(
|
||||
user.id,
|
||||
filter=filter,
|
||||
skip=skip,
|
||||
limit=limit,
|
||||
db=db,
|
||||
)
|
||||
|
||||
|
||||
############################
|
||||
|
||||
Reference in New Issue
Block a user