olivlawolivlaw

Carte

Pydantic AI — documentația modelului TypeSafe (Jev)

de Pydantic (documentația oficială) · 2026 · 1 fișă de lectură

AutorPydantic (documentația oficială) →RafturiAgentic AI

1 fișă

  1. Pydantic AI — documentația modelului TypeSafe (Jev) · 2026

    La Jev, întrebarea stă pe câmpul tipizat al ieșirii, iar textul trimis e doar ce se judecă.

    Două căi în Python, același model. SDK-ul companiei (`typesafe-sdk`, Python 3.10+) expune un singur apel, `system_one(state, questions)`, cu obiectele Choice, Score și Noul; citește cheia din variabila de mediu TYPESAFE_API_KEY, reface automat cererile la limitare de rată și ridică excepții tipizate. A doua cale e Pydantic AI, care tratează Jev ca pe un model obișnuit (`typesafe:jev-latest`), dar cu o regulă răsturnată: nu scrii un prompt cu întrebarea, ci un `output_type` ale cărui câmpuri sunt întrebările, iar textul trimis e doar ce se judecă. Tabelul de tipuri e contractul. `bool` sau `Literal[True, False]` = da/nu, decis la pragul `typesafe_boolean_threshold` (implicit 0,5); `Literal[...]` sau `Enum` = alege una; `float` cu `ge=0, le=1` = o probabilitate; `IntEnum` cu docstring-uri = grilă de notare; `list[Literal]` = da/nu per opțiune; un model imbricat = întrebări compuse. `str`, `int` nemărginit, `datetime` sau uniuni de modele ridică `UserError` — modelul nu generează text și documentația refuză să se prefacă. Ce primești înapoi, dincolo de obiect: `result.response.provider_details` are `confidence` (marja față de prag, 0–1), `probabilities` (distribuția pe opțiuni) și `scores` (poziția nerotunjită pe grilă). Când `output_type` e o listă de tipuri sau agentul are unelte, Jev face două cereri: prima alege ruta, a doua umple câmpurile ei; `provider_details['requests']` spune câte au fost. Pentru cazurile pe care nu le poate judeca există `FallbackModel`, cu un LLM în spate.

    “Promptul este doar ceea ce se judecă, iar întrebarea aparține tipului de ieșire.”

    Deschide fișa →