# 10 Provider Variation Script: `example/10_provider_variation.py`. Provider variation keeps agent/session/tool code fixed and swaps only the `Provider`. ```bash python example/10_provider_variation.py python example/10_provider_variation.py anthropic ``` | Path | Config | | --- | --- | | OpenAI-compatible | `OPENAI_API_KEY`, optional `OPENAI_BASE_URL`, `OPENAI_DEFAULT_MODEL`. | | Anthropic | `ANTHROPIC_API_KEY`, `Provider(provider_kind="anthropic", ...)`. | | LiteLLM | Install `openrath[litellm]`, then use `Provider(provider_kind="litellm", model="provider/model")`. | | Embedding | `llm.embedding_provider` plus `EmbeddingProvider`. | | VLM | `llm.vlm_provider` plus `VLMProvider`. | Use this example as the starting point for documenting provider choice in application code. The v1.2.2 script itself demonstrates OpenAI-compatible and Anthropic paths. LiteLLM uses the same `Provider`/`chat_client_for` registry boundary but requires the optional extra. [← Runnable Examples](index.md)