Support getting latest N chat messages via chat history API

Get latest N if N > 0, else return all messages except latest N from
the conversation
This commit is contained in:
Debanjum Singh Solanky 2024-04-15 13:59:59 +05:30
parent e5ff85f6fb
commit 9e5585776c

View file

@ -76,6 +76,7 @@ def chat_history(
request: Request,
common: CommonQueryParams,
conversation_id: Optional[int] = None,
n: Optional[int] = None,
):
user = request.user.object
validate_conversation_config()
@ -109,6 +110,13 @@ def chat_history(
}
)
# Get latest N messages if N > 0
if n > 0:
meta_log["chat"] = meta_log["chat"][-n:]
# Else return all messages except latest N
else:
meta_log["chat"] = meta_log["chat"][:n]
update_telemetry_state(
request=request,
telemetry_type="api",