diff --git a/letta/schemas/message.py b/letta/schemas/message.py index 0e58bacf..0d2f77a7 100644 --- a/letta/schemas/message.py +++ b/letta/schemas/message.py @@ -4,7 +4,7 @@ import warnings from datetime import datetime, timezone from typing import List, Literal, Optional -from pydantic import Field, field_validator +from pydantic import BaseModel, Field, field_validator from letta.constants import ( DEFAULT_MESSAGE_TOOL, @@ -54,7 +54,7 @@ class BaseMessage(OrmMetadataBase): __id_prefix__ = "message" -class MessageCreate(BaseMessage): +class MessageCreate(BaseModel): """Request to create a message""" # In the simplified format, only allow simple roles @@ -66,7 +66,7 @@ class MessageCreate(BaseMessage): name: Optional[str] = Field(None, description="The name of the participant.") -class MessageUpdate(BaseMessage): +class MessageUpdate(BaseModel): """Request to update a message""" role: Optional[MessageRole] = Field(None, description="The role of the participant.") diff --git a/tests/test_client_legacy.py b/tests/test_client_legacy.py index fff0e466..2ee92293 100644 --- a/tests/test_client_legacy.py +++ b/tests/test_client_legacy.py @@ -15,7 +15,7 @@ from letta.constants import DEFAULT_PRESET from letta.orm import FileMetadata, Source from letta.schemas.agent import AgentState from letta.schemas.embedding_config import EmbeddingConfig -from letta.schemas.enums import MessageStreamStatus +from letta.schemas.enums import MessageRole, MessageStreamStatus from letta.schemas.letta_message import ( AssistantMessage, FunctionCallMessage, @@ -27,7 +27,7 @@ from letta.schemas.letta_message import ( ) from letta.schemas.letta_response import LettaResponse, LettaStreamingResponse from letta.schemas.llm_config import LLMConfig -from letta.schemas.message import Message +from letta.schemas.message import MessageCreate from letta.schemas.usage import LettaUsageStatistics from letta.services.organization_manager import OrganizationManager from letta.services.tool_manager import ToolManager @@ -671,7 +671,7 @@ def test_initial_message_sequence(client: Union[LocalClient, RESTClient], agent: empty_agent_state = client.create_agent(name="test-empty-message-sequence", initial_message_sequence=[]) cleanup_agents.append(empty_agent_state.id) - custom_sequence = [Message(**{"text": "Hello, how are you?", "role": "user"})] + custom_sequence = [MessageCreate(**{"text": "Hello, how are you?", "role": MessageRole.user})] custom_agent_state = client.create_agent(name="test-custom-message-sequence", initial_message_sequence=custom_sequence) cleanup_agents.append(custom_agent_state.id) assert custom_agent_state.message_ids is not None