Files
ams-weather/agents/custom/weather/schema.py
T

22 lines
1.0 KiB
Python

"""Входные параметры агента «Погода».
AMS валидирует входящие params этой моделью до вызова handler.step.
Важно: loader AMS создаёт `Params()` без аргументов (для интроспекции UI),
поэтому у всех полей обязаны быть значения по умолчанию. Пустой город
отсекается уже в handler'е понятным сообщением.
"""
from pydantic import BaseModel, ConfigDict, Field
class Params(BaseModel):
# Обрезаем случайные пробелы по краям — « Казань » и «Казань» эквивалентны.
model_config = ConfigDict(str_strip_whitespace=True)
city: str = Field(
default="",
max_length=100,
description="Название города (кириллица или латиница), например «Казань»",
json_schema_extra={"ui_type": "input", "ui_main": True},
)