#5 Переименованы IM->CM(IncomigMessage->ClientMessage),OM->SM(OutgoingMessage->ServerMessage)

This commit is contained in:
Ярослав Малинин 2026-03-31 11:02:45 +03:00
parent 8fd5c462ed
commit 42c6571d3a
3 changed files with 31 additions and 31 deletions

View file

@ -3,10 +3,10 @@ from enum import Enum
from typing import Literal, Annotated, Union
class IM:
class CM:
"""
Namespace для моделей входящих сообщений (от клиента к серверу).\n
IM = Incoming Message
CM = Client Message
"""
class Type(str, Enum):
@ -18,7 +18,7 @@ class IM:
"""
Полное сообщение от пользователя.
"""
type: Literal[IM.Type.USER_MESSAGE]
type: Literal[CM.Type.USER_MESSAGE]
text: str
"""
Текст сообщения.
@ -26,7 +26,7 @@ class IM:
ClientMessage = Annotated[
Union[IM.UserMessage,],
Union[CM.UserMessage,],
Field(discriminator="type")
]
"""
@ -37,10 +37,10 @@ msg = ClientMessage.model_validate_json(json)
"""
class OM:
class SM:
"""
Namespace для моделей исходящих сообщений (от сервера к клиенту).\n
OM = Outgoing Message
SM = Server Message
"""
class Type(str, Enum):
@ -54,7 +54,7 @@ class OM:
Отправляется сервером при открытии соединения с клиентом.
Будет дополнен информацией о готовности агента принимать сообщения.
"""
type: Literal[OM.Type.STATUS]
type: Literal[SM.Type.STATUS]
class AgentEventType(str, Enum):
TEXT_CHUNK = "TEXT_CHUNK"
@ -65,28 +65,28 @@ class OM:
Базовый класс для ивентов, которые стримит агент во время генерации ответа.
Конкретный класс для ивента определяется по ``subtype``.
"""
type: Literal[OM.Type.AGENT_EVENT]
subtype: OM.AgentEventType
type: Literal[SM.Type.AGENT_EVENT]
subtype: SM.AgentEventType
class EventTextChunk(AgentEvent):
"""
Чанк текста ответа агента.
"""
subtype: Literal[OM.AgentEventType.TEXT_CHUNK]
subtype: Literal[SM.AgentEventType.TEXT_CHUNK]
text: str
class EventEnd(AgentEvent):
"""
Агент закончил генерацию ответа.
"""
subtype: Literal[OM.AgentEventType.END]
subtype: Literal[SM.AgentEventType.END]
tokens_used: int
class Error(BaseModel):
"""
Неопределенная ошибка в работе агента.
"""
type: Literal[OM.Type.ERROR]
type: Literal[SM.Type.ERROR]
code: str
details: str
@ -97,11 +97,11 @@ class OM:
Приход этого сообщения означает, что агент осознанно завершает работу с клиентом по какой-то причине.
Для дальнейшего взаимодействия нужно снова обратиться к мастеру.
"""
type: Literal[OM.Type.GRACEFUL_DISCONNECT]
type: Literal[SM.Type.GRACEFUL_DISCONNECT]
ServerMessage = Annotated[
Union[OM.Status, OM.AgentEvent, OM.Error, OM.GracefulDisconnect],
Union[SM.Status, SM.AgentEvent, SM.Error, SM.GracefulDisconnect],
Field(discriminator="type")
]
"""