mirror of
https://github.com/khoaliber/khoj.git
synced 2026-03-02 21:19:12 +00:00
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:
@@ -76,6 +76,7 @@ def chat_history(
|
|||||||
request: Request,
|
request: Request,
|
||||||
common: CommonQueryParams,
|
common: CommonQueryParams,
|
||||||
conversation_id: Optional[int] = None,
|
conversation_id: Optional[int] = None,
|
||||||
|
n: Optional[int] = None,
|
||||||
):
|
):
|
||||||
user = request.user.object
|
user = request.user.object
|
||||||
validate_conversation_config()
|
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(
|
update_telemetry_state(
|
||||||
request=request,
|
request=request,
|
||||||
telemetry_type="api",
|
telemetry_type="api",
|
||||||
|
|||||||
Reference in New Issue
Block a user