Add chat_session_id + message_pair_num (#2220)

This commit is contained in:
Chris Weaver 2024-08-22 20:55:21 -07:00 committed by GitHub
parent e89dc67e5d
commit b1302303b2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -102,6 +102,10 @@ class ChatSessionSnapshot(BaseModel):
class QuestionAnswerPairSnapshot(BaseModel):
chat_session_id: int
# 1-indexed message number in the chat_session
# e.g. the first message pair in the chat_session is 1, the second is 2, etc.
message_pair_num: int
user_message: str
ai_response: str
retrieved_documents: list[AbridgedSearchDoc]
@ -127,6 +131,8 @@ class QuestionAnswerPairSnapshot(BaseModel):
return [
cls(
chat_session_id=chat_session_snapshot.id,
message_pair_num=ind + 1,
user_message=user_message.message,
ai_response=ai_message.message,
retrieved_documents=ai_message.documents,
@ -136,11 +142,13 @@ class QuestionAnswerPairSnapshot(BaseModel):
user_email=get_display_email(chat_session_snapshot.user_email),
time_created=user_message.time_created,
)
for user_message, ai_message in message_pairs
for ind, (user_message, ai_message) in enumerate(message_pairs)
]
def to_json(self) -> dict[str, str]:
return {
"chat_session_id": str(self.chat_session_id),
"message_pair_num": str(self.message_pair_num),
"user_message": self.user_message,
"ai_response": self.ai_response,
"retrieved_documents": "|".join(