Coverage for eval_harness / providers / base.py: 100%

2 statements  

« prev     ^ index     » next       coverage.py v7.13.5, created at 2026-05-02 20:06 +0200

1from abc import ABC, abstractmethod 

2 

3 

4class Provider(ABC): 

5 """Abstract LLM backend. 

6 

7 Concrete providers are constructed with their own config (model name, 

8 base URL, timeouts, sampling params) and expose a single async call 

9 that maps a prompt to a completion string. Keeping the interface this 

10 narrow lets scorers and tests treat any backend identically. 

11 """ 

12 

13 @abstractmethod 

14 async def generate(self, prompt: str) -> str: ...