v2.2.0 (#395)
Co-authored-by: Quentin Torroba <quentin.torroba@mistral.ai> Co-authored-by: Clément Siriex <clement.sirieix@mistral.ai> Co-authored-by: Kim-Adeline Miguel <kimadeline.miguel@mistral.ai> Co-authored-by: Michel Thomazo <michel.thomazo@mistral.ai> Co-authored-by: Clément Drouin <clement.drouin@mistral.ai>
This commit is contained in:
parent
51fecc67d9
commit
ec7f3b25ea
107 changed files with 8002 additions and 535 deletions
47
tests/test_message_merging.py
Normal file
47
tests/test_message_merging.py
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from vibe.core.llm.message_utils import merge_consecutive_user_messages
|
||||
from vibe.core.types import LLMMessage, Role
|
||||
|
||||
|
||||
def test_merge_consecutive_user_messages() -> None:
|
||||
messages = [
|
||||
LLMMessage(role=Role.system, content="System"),
|
||||
LLMMessage(role=Role.user, content="User 1"),
|
||||
LLMMessage(role=Role.user, content="User 2"),
|
||||
LLMMessage(role=Role.assistant, content="Assistant"),
|
||||
]
|
||||
result = merge_consecutive_user_messages(messages)
|
||||
assert len(result) == 3
|
||||
assert result[1].content == "User 1\n\nUser 2"
|
||||
|
||||
|
||||
def test_preserves_non_consecutive_user_messages() -> None:
|
||||
messages = [
|
||||
LLMMessage(role=Role.user, content="User 1"),
|
||||
LLMMessage(role=Role.assistant, content="Assistant"),
|
||||
LLMMessage(role=Role.user, content="User 2"),
|
||||
]
|
||||
result = merge_consecutive_user_messages(messages)
|
||||
assert len(result) == 3
|
||||
|
||||
|
||||
def test_empty_messages() -> None:
|
||||
assert merge_consecutive_user_messages([]) == []
|
||||
|
||||
|
||||
def test_single_message() -> None:
|
||||
messages = [LLMMessage(role=Role.user, content="Only one")]
|
||||
result = merge_consecutive_user_messages(messages)
|
||||
assert len(result) == 1
|
||||
|
||||
|
||||
def test_three_consecutive_user_messages() -> None:
|
||||
messages = [
|
||||
LLMMessage(role=Role.user, content="A"),
|
||||
LLMMessage(role=Role.user, content="B"),
|
||||
LLMMessage(role=Role.user, content="C"),
|
||||
]
|
||||
result = merge_consecutive_user_messages(messages)
|
||||
assert len(result) == 1
|
||||
assert result[0].content == "A\n\nB\n\nC"
|
||||
Loading…
Add table
Add a link
Reference in a new issue