2.5.19
FlyteModel
Package: flyteplugins.agents.pydantic_ai
Wrap a pydantic_ai.models.Model so each model turn is durable.
request is recorded/replayed via durable_step. request_stream is
delegated unchanged: streamed turns are not memoized in this version (tool
calls remain durable regardless). model_name / system and any other
members are forwarded to the inner model.
Parameters
class FlyteModel(
inner: Model,
)Initialize the model with optional settings and profile.
| Parameter | Type | Description |
|---|---|---|
inner |
Model |
Properties
| Property | Type | Description |
|---|---|---|
model_name |
str |
The model name. |
system |
str |
The model provider, ex: openai. Use to populate the gen_ai.system OpenTelemetry semantic convention attribute, so should use well-known values listed in
https://opentelemetry.io/docs/specs/semconv/attributes-registry/gen-ai/#gen-ai-system when applicable. |
Methods
| Method | Description |
|---|---|
request() |
Make a request to the model. |
request_stream() |
Make a request to the model and return a streaming response. |
request()
def request(
messages: typing.Any,
model_settings: 'ModelSettings | None',
model_request_parameters: 'ModelRequestParameters',
) -> ModelResponseMake a request to the model.
This is ultimately called by pydantic_ai._agent_graph.ModelRequestNode._make_request(...).
| Parameter | Type | Description |
|---|---|---|
messages |
typing.Any |
|
model_settings |
'ModelSettings | None' |
|
model_request_parameters |
'ModelRequestParameters' |
request_stream()
def request_stream(
messages: typing.Any,
model_settings: 'ModelSettings | None',
model_request_parameters: 'ModelRequestParameters',
run_context: typing.Any = None,
) -> 'AsyncIterator[StreamedResponse]'Make a request to the model and return a streaming response.
| Parameter | Type | Description |
|---|---|---|
messages |
typing.Any |
|
model_settings |
'ModelSettings | None' |
|
model_request_parameters |
'ModelRequestParameters' |
|
run_context |
typing.Any |