LanguageModelV1: Language Model V1 (Abstract Base Class)

LanguageModelV1R Documentation

Language Model V1 (Abstract Base Class)

Description

Abstract interface for language models. All LLM providers must implement this class. Uses do_ prefix for internal methods to prevent direct usage by end-users.

Public fields

specification_version

The version of this specification.

provider

The provider identifier (e.g., "openai").

model_id

The model identifier (e.g., "gpt-4o").

capabilities

Model capability flags.

Methods

Public methods


Method new()

Initialize the model with provider and model ID.

Usage
LanguageModelV1$new(provider, model_id, capabilities = list())
Arguments
provider

Provider name.

model_id

Model ID.

capabilities

Optional list of capability flags.


Method has_capability()

Check if the model has a specific capability.

Usage
LanguageModelV1$has_capability(cap)
Arguments
cap

Capability name.

Returns

Logical.


Method generate()

Public generation method.

Usage
LanguageModelV1$generate(...)
Arguments
...

Call options passed to do_generate().

Returns

A GenerateResult object.


Method stream()

Public streaming method.

Usage
LanguageModelV1$stream(callback, ...)
Arguments
callback

Callback invoked with ⁠(text, done)⁠.

...

Call options passed to do_stream().

Returns

A GenerateResult object.


Method do_generate()

Generate text (non-streaming). Abstract method.

Usage
LanguageModelV1$do_generate(params)
Arguments
params

A list of call options.

Returns

A GenerateResult object.


Method do_stream()

Generate text (streaming). Abstract method.

Usage
LanguageModelV1$do_stream(params, callback)
Arguments
params

A list of call options.

callback

Callback invoked with ⁠(text, done)⁠.

Returns

A GenerateResult object.


Method format_tool_result()

Format a tool execution result for the provider API.

Usage
LanguageModelV1$format_tool_result(tool_call_id, tool_name, result_content)
Arguments
tool_call_id

The tool call identifier.

tool_name

The tool name.

result_content

The tool execution result.

Returns

A provider-specific tool result message.


Method get_history_format()

Get the message history format used by this model.

Usage
LanguageModelV1$get_history_format()
Returns

A character string such as "openai" or "anthropic".


Method clone()

The objects of this class are cloneable with this method.

Usage
LanguageModelV1$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.


aisdk documentation built on May 29, 2026, 9:07 a.m.