Providers reference

Use the providers package to send prompts to LLM backends and retrieve cited responses. LLMProvider defines the async protocol; ClaudeProvider and GeminiProvider are concrete implementations that lazy-import their SDKs, so the core package installs without requiring any provider SDK.

Module functions

Function Parameters Returns Description
list_available list[str] Returns the names of providers whose SDKs are importable.
get_provider name: str, **kwargs: Any LLMProvider Returns an instance of the named provider.

Raises

Function Exception Message
get_provider ValueError 'Unknown provider {...}. Known providers: {...}.'

Classes

Class Description
CitationDocument One source document passed to a citations-capable provider.
CitedResponse Response from a citations-capable provider.
LLMProvider An async LLM provider that consumes a prompt and returns text.
ClaudeProvider Thin async wrapper over Anthropic's Messages API. Requires the attune-rag[claude] extra.
GeminiProvider Thin async wrapper over Google's genai models API. Requires the attune-rag[gemini] extra.

CitationDocument

[dataclass] — One source document passed to a citations-capable provider.

Field Type Default
title str
text str

CitedResponse

[dataclass] — Response from a citations-capable provider.

Field Type Default
text str
claim_citations tuple[ClaimCitation, ...]

LLMProvider

Async protocol that both concrete providers implement.

Method Parameters Returns Description
generate prompt: str, model: str | None = None, max_tokens: int = 2048, cached_prefix: str | None = None str Sends a prompt and returns the model's text response.
generate_with_citations documents: list[CitationDocument], query: str, system: str | None = None, model: str | None = None, max_tokens: int = 2048 CitedResponse Queries the model against a document list and returns a response with claim-level citations.

ClaudeProvider

Thin async wrapper over Anthropic's Messages API. Requires the attune-rag[claude] extra.

Constructor

Parameter Type Default
api_key str | None None
client AsyncAnthropic | None None
Method Parameters Returns Description
generate prompt: str, model: str | None = None, max_tokens: int = 2048, cached_prefix: str | None = None str Sends a prompt and returns the model's text response.
generate_with_citations documents: list[CitationDocument], query: str, system: str | None = None, model: str | None = None, max_tokens: int = 2048 CitedResponse Queries the model against a document list and returns a response with claim-level citations.

GeminiProvider

Thin async wrapper over Google's genai models API. Requires the attune-rag[gemini] extra.

Constructor

Parameter Type Default
api_key str | None None
client GenAIClient | None None
Method Parameters Returns Description
generate prompt: str, model: str | None = None, max_tokens: int = 2048, cached_prefix: str | None = None str Sends a prompt and returns the model's text response.

Source files

Tags

providers, llm, claude, gemini