pyrit.models.group_conversation_message_pieces_by_sequence#
- group_conversation_message_pieces_by_sequence(message_pieces: Sequence[MessagePiece]) MutableSequence[Message][source]#
Groups message pieces from the same conversation into Messages.
This is done using the sequence number and conversation ID.
- Parameters:
message_pieces (Sequence[MessagePiece]) – A list of MessagePiece objects representing individual message pieces.
- Returns:
- A list of Message objects representing grouped message
pieces. This is ordered by the sequence number.
- Return type:
MutableSequence[Message]
- Raises:
ValueError – If the conversation ID of any message piece does not match the conversation ID of the first message piece.
Example: >>> message_pieces = [ >>> MessagePiece(conversation_id=1, sequence=1, text=”Given this list of creatures, which is your >>> favorite:”), >>> MessagePiece(conversation_id=1, sequence=2, text=”Good question!”), >>> MessagePiece(conversation_id=1, sequence=1, text=”Raccoon, Narwhal, or Sloth?”), >>> MessagePiece(conversation_id=1, sequence=2, text=”I’d have to say raccoons are my favorite!”), >>> ] >>> grouped_responses = group_conversation_message_pieces(message_pieces) … [ … Message(message_pieces=[ … MessagePiece(conversation_id=1, sequence=1, text=”Given this list of creatures, which is your … favorite:”), … MessagePiece(conversation_id=1, sequence=1, text=”Raccoon, Narwhal, or Sloth?”) … ]), … Message(message_pieces=[ … MessagePiece(conversation_id=1, sequence=2, text=”Good question!”), … MessagePiece(conversation_id=1, sequence=2, text=”I’d have to say raccoons are my favorite!”) … ]) … ]