File size: 417 Bytes
0d1866c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | from __future__ import annotations
from dataclasses import dataclass, field
from typing import Any
@dataclass
class ProviderResponse:
raw_text: str
latency_ms: float
metadata: dict[str, Any] = field(default_factory=dict)
class BaseProvider:
name = "base"
def generate(self, card: dict, messages: list[dict[str, str]], prompt_text: str) -> ProviderResponse:
raise NotImplementedError
|