cerebras
Cerebras LLM provider (OpenAI-compatible chat endpoint).
fastvideo.entrypoints.streaming.prompt.providers.cerebras.complete_openai_compatible
complete_openai_compatible(*, api_key: str | None, api_key_hint: str, base_url: str, provider_name: str, request: LLMRequest) -> LLMResponse
Issue a chat-completions call and decode the OpenAI response.
fastvideo.entrypoints.streaming.prompt.providers.cerebras.LLMRequest
LLMRequest(messages: list[LLMMessage], model: str, max_tokens: int | None = None, temperature: float | None = None, timeout_ms: int | None = None)
fastvideo.entrypoints.streaming.prompt.providers.cerebras.LLMResponse
LLMResponse(content: str, provider: str, model: str, latency_ms: float, fallback_used: bool = False)
fastvideo.entrypoints.streaming.prompt.providers.cerebras.CerebrasProvider
CerebrasProvider(api_key: str | None = None, base_url: str = _DEFAULT_BASE_URL, name: str = 'cerebras')
Cerebras inference adapter.
api_key falls back to CEREBRAS_API_KEY when unset.
Source
@dataclass
class CerebrasProvider:
"""Cerebras inference adapter.
``api_key`` falls back to ``CEREBRAS_API_KEY`` when unset.
"""
api_key: str | None = None
base_url: str = _DEFAULT_BASE_URL
name: str = "cerebras"
def __post_init__(self) -> None:
if self.api_key is None:
self.api_key = os.environ.get(_API_KEY_ENV)
async def complete(self, request: LLMRequest) -> LLMResponse:
return await complete_openai_compatible(
api_key=self.api_key,
api_key_hint=_API_KEY_ENV,
base_url=self.base_url,
provider_name=self.name,
request=request,
)</code></pre></details>
fastvideo.entrypoints.streaming.prompt.providers.cerebras.CerebrasProvider.complete
complete(request: LLMRequest) -> LLMResponse
Source
async def complete(self, request: LLMRequest) -> LLMResponse:
return await complete_openai_compatible(
api_key=self.api_key,
api_key_hint=_API_KEY_ENV,
base_url=self.base_url,
provider_name=self.name,
request=request,
)