Appearance
Models API
Agent-grade model providers live in elsai-model (elsai Core). Pass a *Model instance — or one built with the LLM factory — to Agent(model=...). The agent loop calls the model on every turn, handling tool specs, system prompts, and streaming events uniformly across providers.
For install, credentials, and full copy-paste kits, see Model Providers. For standalone invoke / stream without agents, see LLM Models.
Signature
python
import os
from elsai import Agent
from elsai_model import LLM, Provider
# or: from elsai_model.openai import OpenAIModel
agent = Agent(
model=LLM(
provider=Provider.OPENAI,
model="gpt-4o",
api_key=os.environ["OPENAI_API_KEY"],
)
)
# agent = Agent(model=OpenAIModel(model_id="gpt-4o", client_args={"api_key": ...}))Install with a provider extra (example: "elsai-model[openai]==2.1.0"). See LLM Models — Optional package extras.
Supported providers
| Provider | Model class | Import module | Factory |
|---|---|---|---|
| OpenAI | OpenAIModel | elsai_model.openai | Provider.OPENAI |
| Azure OpenAI | AzureOpenAIModel | elsai_model.azure_openai | Provider.AZURE_OPENAI |
| Amazon Bedrock | BedrockModel | elsai_model.bedrock | Provider.BEDROCK |
| Anthropic (direct) | AnthropicModel | elsai_model.anthropic | Provider.ANTHROPIC |
| Anthropic via Bedrock SDK | AnthropicBedrockModel | elsai_model.anthropic_bedrock | Provider.ANTHROPIC_BEDROCK |
| Google Gemini | GeminiModel | elsai_model.gemini | Provider.GEMINI |
| LiteLLM | LiteLLMModel | elsai_model.litellm | Provider.LITELLM |
| Ollama | OllamaModel | elsai_model.ollama | Provider.OLLAMA |
| Mistral | MistralModel | elsai_model.mistral | Provider.MISTRAL |
| Writer | WriterModel | elsai_model.writer | Provider.WRITER |
| Meta Llama API | LlamaAPIModel | elsai_model.llamaapi | Provider.LLAMA_API |
| llama.cpp server | LlamaCppModel | elsai_model.llama_cpp | Provider.LLAMA_CPP |
| OpenAI Responses | OpenAIResponsesModel | elsai_model.openai_responses | Provider.OPENAI_RESPONSES |
| SageMaker | SageMakerAIModel | elsai_model.sagemaker | Provider.SAGEMAKER |
Per-provider constructor parameters, environment variables, and examples are documented in LLM Models and the Model Providers concept pages.
Common parameters
| Parameter | Description |
|---|---|
provider | Provider enum or string when using LLM(provider=…, model=…) |
model_id | Provider model or deployment ID (on *Model classes) |
model | Same role when using LLM(provider=…, model=…) |
api_key | Factory shorthand merged into client_args |
client_args | SDK client options (API keys, endpoints, regions) |
params | Generation settings (temperature, max_tokens, …) |
Factory examples (signatures)
python
import os
from elsai_model import LLM, Provider
LLM(
provider=Provider.BEDROCK,
model="global.anthropic.claude-sonnet-4-6",
region_name="us-west-2",
)
LLM(
provider=Provider.OPENAI,
model="gpt-4o",
api_key=os.environ["OPENAI_API_KEY"],
params={"temperature": 0.7},
)See Amazon Bedrock and OpenAI for full kits.
Legacy connectors
Legacy v1.4.x *Connector classes and GeminiService are not supported with Agent. Pass agent-grade *Model classes from elsai-model==2.1.0 (or build them with LLM) instead. See elsai Core v3.0 release notes.
Related
- LLM Models — LLM factory
- Model Providers — install, credentials, and provider selection
- LLM Models — full provider API reference for
elsai-model - Agent API —
Agent(model=…)and runtime options