"""Abstract base type for evaluation model backends.""" from __future__ import annotations from abc import ABC, abstractmethod class ModelAdapter(ABC): """Minimal async completion interface used by ``eval.harness``.""" @property @abstractmethod def name(self) -> str: """Stable identifier for this model (logged in eval results).""" @abstractmethod async def complete(self, prompt: str) -> str: """Return raw model output for the given user/system prompt."""