Class: TemporalModel
googleAdkAgentsWorkflow.TemporalModel
A BaseLlm whose inference is durable under Temporal.
Swap a user's model: 'gemini-2.5-flash' for
model: new TemporalModel('gemini-2.5-flash') — every model call inside the
Workflow becomes a retryable, observable Activity, while the surrounding
ADK agent loop replays deterministically.
Hierarchy
-
BaseLlm↳
TemporalModel
Constructors
constructor
• new TemporalModel(model, options?): TemporalModel
Parameters
| Name | Type | Description |
|---|---|---|
model | string | A model name registered in the ADK LLMRegistry (or resolvable by a custom modelProvider on the plugin). |
options? | TemporalModelOptions | Per-model Activity configuration. |
Returns
Overrides
BaseLlm.constructor
Properties
[BASE_MODEL_SYMBOL]
• Readonly [BASE_MODEL_SYMBOL]: true
A unique symbol to identify BaseLlm classes.
Inherited from
BaseLlm.[BASE_MODEL_SYMBOL]
model
• Readonly model: string
Inherited from
BaseLlm.model
supportedModels
▪ Static Readonly supportedModels: (string | RegExp)[]
List of supported models in regex for LlmRegistry.
Inherited from
BaseLlm.supportedModels
Methods
connect
▸ connect(llmRequest): Promise<BaseLlmConnection>
Live bidirectional (BIDI) connections are not supported inside a Workflow — a long-lived two-way stream does not map onto the request/response Activity boundary. Outside a Workflow this delegates to the real model.
Parameters
| Name | Type |
|---|---|
llmRequest | LlmRequest |
Returns
Promise<BaseLlmConnection>
Overrides
BaseLlm.connect
generateContentAsync
▸ generateContentAsync(llmRequest, stream?, abortSignal?): AsyncGenerator<LlmResponse, void, unknown>
Generates content for llmRequest. Inside a Workflow this proxies the
model Activity; outside a Workflow it delegates to the real registered
model so the same object is usable in non-Temporal contexts.
Parameters
| Name | Type |
|---|---|
llmRequest | LlmRequest |
stream? | boolean |
abortSignal? | AbortSignal |
Returns
AsyncGenerator<LlmResponse, void, unknown>
Overrides
BaseLlm.generateContentAsync
maybeAppendUserContent
▸ maybeAppendUserContent(llmRequest): void
Appends a user content, so that model can continue to output.
Parameters
| Name | Type | Description |
|---|---|---|
llmRequest | LlmRequest | LlmRequest, the request to send to the LLM. |
Returns
void
Inherited from
BaseLlm.maybeAppendUserContent