Share via


ThreadRun Class

Definition

Data representing a single evaluation run of an agent thread.

public class ThreadRun : System.ClientModel.Primitives.IJsonModel<Azure.AI.Projects.ThreadRun>, System.ClientModel.Primitives.IPersistableModel<Azure.AI.Projects.ThreadRun>
type ThreadRun = class
    interface IJsonModel<ThreadRun>
    interface IPersistableModel<ThreadRun>
Public Class ThreadRun
Implements IJsonModel(Of ThreadRun), IPersistableModel(Of ThreadRun)
Inheritance
ThreadRun
Implements

Properties

AssistantId

The ID of the agent associated with the thread this run was performed against.

CancelledAt

The Unix timestamp, in seconds, representing when this was cancelled.

CompletedAt

The Unix timestamp, in seconds, representing when this completed.

CreatedAt

The Unix timestamp, in seconds, representing when this object was created.

ExpiresAt

The Unix timestamp, in seconds, representing when this item expires.

FailedAt

The Unix timestamp, in seconds, representing when this failed.

Id

The identifier, which can be referenced in API endpoints.

IncompleteDetails

Details on why the run is incomplete. Will be null if the run is not incomplete.

Instructions

The overridden system instructions used for this agent thread run.

LastError

The last error, if any, encountered by this agent thread run.

MaxCompletionTokens

The maximum number of completion tokens specified to have been used over the course of the run.

MaxPromptTokens

The maximum number of prompt tokens specified to have been used over the course of the run.

Metadata

A set of up to 16 key/value pairs that can be attached to an object, used for storing additional information about that object in a structured format. Keys may be up to 64 characters in length and values may be up to 512 characters in length.

Model

The ID of the model to use.

ParallelToolCalls

Determines if tools can be executed in parallel within the run.

RequiredAction

The details of the action required for the agent thread run to continue. Please note RequiredAction is the base class. According to the scenario, a derived class of the base class might need to be assigned here, or this property needs to be casted to one of the possible derived classes. The available derived classes include SubmitToolOutputsAction.

RequiredActions

The list of required actions that must have their results submitted for the run to continue.

ResponseFormat

The response format of the tool calls used in this run.

To assign an object to this property use FromObjectAsJson<T>(T, JsonSerializerOptions).

To assign an already formatted json string to this property use FromString(String).

Examples:

  • BinaryData.FromObjectAsJson("foo"): Creates a payload of "foo".
  • BinaryData.FromString("\"foo\""): Creates a payload of "foo".
  • BinaryData.FromObjectAsJson(new { key = "value" }): Creates a payload of { "key": "value" }.
  • BinaryData.FromString("{\"key\": \"value\"}"): Creates a payload of { "key": "value" }.

StartedAt

The Unix timestamp, in seconds, representing when this item was started.

Status

The status of the agent thread run.

Temperature

The sampling temperature used for this run. If not set, defaults to 1.

ThreadId

The ID of the thread associated with this run.

ToolChoice

Controls whether or not and which tool is called by the model.

To assign an object to this property use FromObjectAsJson<T>(T, JsonSerializerOptions).

To assign an already formatted json string to this property use FromString(String).

Examples:

  • BinaryData.FromObjectAsJson("foo"): Creates a payload of "foo".
  • BinaryData.FromString("\"foo\""): Creates a payload of "foo".
  • BinaryData.FromObjectAsJson(new { key = "value" }): Creates a payload of { "key": "value" }.
  • BinaryData.FromString("{\"key\": \"value\"}"): Creates a payload of { "key": "value" }.

ToolResources

Override the tools the agent can use for this run. This is useful for modifying the behavior on a per-run basis.

Tools

The overridden enabled tools used for this agent thread run. Please note ToolDefinition is the base class. According to the scenario, a derived class of the base class might need to be assigned here, or this property needs to be casted to one of the possible derived classes. The available derived classes include AzureAISearchToolDefinition, BingGroundingToolDefinition, CodeInterpreterToolDefinition, FileSearchToolDefinition, FunctionToolDefinition, MicrosoftFabricToolDefinition and SharepointToolDefinition.

TopP

The nucleus sampling value used for this run. If not set, defaults to 1.

TruncationStrategy

The strategy to use for dropping messages as the context windows moves forward.

Usage

Usage statistics related to the run. This value will be null if the run is not in a terminal state (i.e. in_progress, queued, etc.).

Methods

JsonModelWriteCore(Utf8JsonWriter, ModelReaderWriterOptions)

Explicit Interface Implementations

IJsonModel<ThreadRun>.Create(Utf8JsonReader, ModelReaderWriterOptions)

Reads one JSON value (including objects or arrays) from the provided reader and converts it to a model.

IJsonModel<ThreadRun>.Write(Utf8JsonWriter, ModelReaderWriterOptions)

Writes the model to the provided Utf8JsonWriter.

IPersistableModel<ThreadRun>.Create(BinaryData, ModelReaderWriterOptions)

Converts the provided BinaryData into a model.

IPersistableModel<ThreadRun>.GetFormatFromOptions(ModelReaderWriterOptions)

Gets the data interchange format (JSON, Xml, etc) that the model uses when communicating with the service.

IPersistableModel<ThreadRun>.Write(ModelReaderWriterOptions)

Writes the model into a BinaryData.

Applies to