Dm Invoker
[BETA] Modules concerning the decisions model invokers used in Gen AI applications.
OpenRouterDMInvoker(model_name, api_key=None, provider=None, default_hyperparameters=None, retry_config=None)
Bases: BaseDMInvoker
[BETA] A decisions model invoker to interact with OpenRouter API.
Supported features
- Structured state input.
- Noul, Choice, and Score questions.
- OpenRouter provider routing preferences.
- Retry and timeout handling through the shared invoker policy.
- Per-call client lifecycle management.
Example
dm_invoker = OpenRouterDMInvoker(
model_name="typesafe/jev-1.13",
api_key="<OPENROUTER_API_KEY>",
provider=["typesafe"],
)
result = await dm_invoker.invoke(
state="A customer requests a refund.",
questions={"refund": DMQuestion.noul(instructions="Is a refund requested?")},
)
Initialize the beta OpenRouter decisions model invoker.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
model_name
|
str
|
TypeSafe decisions model name available through OpenRouter. |
required |
api_key
|
str | None
|
OpenRouter API key. Defaults to the |
None
|
provider
|
str | list[str] | dict[str, Any] | None
|
OpenRouter provider routing preferences.
A provider name or list becomes an |
None
|
default_hyperparameters
|
dict[str, Any] | None
|
Default request options for each invocation. Defaults to None. |
None
|
retry_config
|
RetryConfig | dict[str, Any] | None
|
Shared retry and timeout configuration. Defaults to None. |
None
|
Raises:
| Type | Description |
|---|---|
ValueError
|
If the API key is missing. |