Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
24 lines
522 B
Python
24 lines
522 B
Python
from dataclasses import dataclass
|
|
from typing import Generic, TypeVar
|
|
|
|
T = TypeVar("T")
|
|
|
|
|
|
class ModelError(Exception):
|
|
def __init__(
|
|
self,
|
|
short_message: str,
|
|
prompt: str | list[dict[str, str]] | None = None,
|
|
response: str | None = None,
|
|
) -> None:
|
|
super().__init__(short_message)
|
|
self.short_message = short_message
|
|
self.prompt = prompt
|
|
self.response = response
|
|
|
|
|
|
@dataclass
|
|
class Result(Generic[T]):
|
|
value: T | None
|
|
error: ModelError | None
|