add descriptions in schemas.py
This commit is contained in:
parent
d277955a9a
commit
eca29af5e1
1 changed files with 22 additions and 12 deletions
|
|
@ -1,10 +1,12 @@
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
from typing import Optional, Any
|
from typing import Any
|
||||||
|
|
||||||
from pydantic import BaseModel, Field
|
from pydantic import BaseModel, Field
|
||||||
|
|
||||||
|
|
||||||
class TaskStatus(str, Enum):
|
class TaskStatus(str, Enum):
|
||||||
|
"""Состояние задачи браузерного агента."""
|
||||||
|
|
||||||
queued = "queued"
|
queued = "queued"
|
||||||
running = "running"
|
running = "running"
|
||||||
succeeded = "succeeded"
|
succeeded = "succeeded"
|
||||||
|
|
@ -12,30 +14,38 @@ class TaskStatus(str, Enum):
|
||||||
|
|
||||||
|
|
||||||
class BrowserTaskRequest(BaseModel):
|
class BrowserTaskRequest(BaseModel):
|
||||||
task: str = Field(..., description="Задача для браузера")
|
"""Запрос на запуск задачи в browser-use агенте."""
|
||||||
|
|
||||||
|
task: str = Field(..., description="Текстовая задача для browser-use агента")
|
||||||
timeout: int = Field(300, description="Максимальное время выполнения задачи в секундах")
|
timeout: int = Field(300, description="Максимальное время выполнения задачи в секундах")
|
||||||
metadata: dict[str, Any] | None = Field(default=None, description="Метаданные клиента")
|
metadata: dict[str, Any] | None = Field(default=None, description="Дополнительные метаданные клиента")
|
||||||
|
|
||||||
|
|
||||||
class BrowserTaskAcceptedResponse(BaseModel):
|
class BrowserTaskAcceptedResponse(BaseModel):
|
||||||
|
"""Ответ о том, что задача принята в обработку."""
|
||||||
|
|
||||||
task_id: str
|
task_id: str
|
||||||
status: TaskStatus
|
status: TaskStatus
|
||||||
|
|
||||||
|
|
||||||
class BrowserTaskStatusResponse(BaseModel):
|
class BrowserTaskStatusResponse(BaseModel):
|
||||||
|
"""Текущий статус задачи и временные отметки её выполнения."""
|
||||||
|
|
||||||
task_id: str
|
task_id: str
|
||||||
status: TaskStatus
|
status: TaskStatus
|
||||||
create_at: float
|
create_at: float = Field(..., description="Время создания задачи в Unix timestamp")
|
||||||
started_at: float | None = None
|
started_at: float | None = Field(default=None, description="Время начала выполнения в Unix timestamp")
|
||||||
finished_at: float | None = None
|
finished_at: float | None = Field(default=None, description="Время завершения выполнения в Unix timestamp")
|
||||||
error: str | None = None
|
error: str | None = Field(default=None, description="Текст ошибки, если задача завершилась с ошибкой")
|
||||||
|
|
||||||
|
|
||||||
class BrowserTaskResultResponse(BaseModel):
|
class BrowserTaskResultResponse(BaseModel):
|
||||||
|
"""Финальный результат выполнения задачи в browser-use."""
|
||||||
|
|
||||||
task_id: str
|
task_id: str
|
||||||
status: TaskStatus
|
status: TaskStatus
|
||||||
success: bool
|
success: bool = Field(..., description="Успешно ли выполнена задача")
|
||||||
execution_time: float
|
execution_time: float = Field(..., description="Фактическое время выполнения в секундах")
|
||||||
result: str | None = None
|
result: str | None = Field(default=None, description="Итоговый текстовый результат")
|
||||||
error: str | None = None
|
error: str | None = Field(default=None, description="Текст ошибки, если выполнение не удалось")
|
||||||
raw_response: dict[str, Any] | None = None
|
raw_response: dict[str, Any] | None = Field(default=None, description="Сырой ответ от browser-use RPC")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue