Appearance
Models API
OpenAIConnector
python
from elsai_model.openai import OpenAIConnectorpython
OpenAIConnector(
openai_api_key=None, # or OPENAI_API_KEY env var
model_name="gpt-4o",
temperature=0.1,
implementation="native",
)| Parameter | Type | Default | Description |
|---|---|---|---|
openai_api_key | str | None | None | OpenAI API key |
model_name | str | None | "gpt-4o" | OpenAI model name (e.g. gpt-4o, gpt-4o-mini) |
temperature | float | 0.1 | Sampling temperature |
implementation | str | "native" | Underlying driver implementation |
GeminiService
python
from elsai_model.gemini import GeminiServicepython
GeminiService(
api_key=None, # or GEMINI_API_KEY env var
model="gemini-2.5-flash",
)| Parameter | Type | Default | Description |
|---|---|---|---|
api_key | str | (required) | Google Gemini API key |
model | str | "gemini-2.5-flash" | Gemini model identifier |
BedrockConnector
python
from elsai_model.bedrock import BedrockConnectorpython
BedrockConnector(
aws_access_key=None,
aws_secret_key=None,
aws_session_token=None,
aws_region=None,
model_id=None,
max_tokens=500,
temperature=0.1,
config=None,
)| Parameter | Type | Default | Description |
|---|---|---|---|
aws_access_key | str | None | None | AWS access key |
aws_secret_key | str | None | None | AWS secret key |
aws_region | str | None | None | AWS region (e.g. us-east-1) |
model_id | str | None | None | Bedrock model ID |
max_tokens | int | 500 | Max tokens to generate |
temperature | float | 0.1 | Sampling temperature |
AzureOpenAIConnector
python
from elsai_model.azure_openai import AzureOpenAIConnectorpython
AzureOpenAIConnector(
azure_endpoint=None,
openai_api_key=None,
openai_api_version=None,
deployment_name=None,
temperature=0.1,
implementation="native",
)| Parameter | Type | Default | Description |
|---|---|---|---|
azure_endpoint | str | None | None | Azure resource endpoint URL |
openai_api_key | str | None | None | Azure OpenAI API key |
openai_api_version | str | None | None | API version (e.g. 2024-02-01) |
deployment_name | str | None | None | Azure model deployment name |
LiteLLMConnector
python
from elsai_model.litellm import LiteLLMConnectorpython
LiteLLMConnector(
model_name="gpt-4o",
temperature=0.1,
)| Parameter | Type | Default | Description |
|---|---|---|---|
model_name | str | (required) | Target model routing name (e.g. anthropic/claude-3, ollama/llama3) |
temperature | float | 0.1 | Sampling temperature |
AnthropicBedrockConnector
python
from elsai_model.anthropic_bedrock import AnthropicBedrockConnectorpython
AnthropicBedrockConnector(
aws_access_key=None,
aws_secret_key=None,
aws_session_token=None,
aws_region=None,
model_id=None,
max_tokens=500,
temperature=0.1,
config=None,
)| Parameter | Type | Default | Description |
|---|---|---|---|
aws_access_key | str | None | None | AWS access key |
aws_secret_key | str | None | None | AWS secret key |
model_id | str | None | None | Claude Bedrock model identifier |
Custom model
Implement the Model protocol:
python
from elsai.models.model import Model
from collections.abc import AsyncIterator
from typing import Any
class MyModel(Model):
@property
def config(self) -> dict:
return {"model_id": "my-model"}
@property
def stateful(self) -> bool:
return False
def converse(
self,
messages,
system_prompt=None,
tool_specs=None,
**kwargs,
) -> AsyncIterator[Any]:
# Call your API, yield events
...
def structured_output(self, output_model, messages, **kwargs):
...