Share via


StructuredInputDefinition Class

Definition

An structured input that can participate in prompt template substitutions and tool argument binding.

public class StructuredInputDefinition : Azure.AI.AgentServer.Contracts.Generated.Common.IUtf8JsonSerializable, System.ClientModel.Primitives.IJsonModel<Azure.AI.AgentServer.Contracts.Generated.OpenAI.StructuredInputDefinition>, System.ClientModel.Primitives.IPersistableModel<Azure.AI.AgentServer.Contracts.Generated.OpenAI.StructuredInputDefinition>
type StructuredInputDefinition = class
    interface IUtf8JsonSerializable
    interface IJsonModel<StructuredInputDefinition>
    interface IPersistableModel<StructuredInputDefinition>
Public Class StructuredInputDefinition
Implements IJsonModel(Of StructuredInputDefinition), IPersistableModel(Of StructuredInputDefinition), IUtf8JsonSerializable
Inheritance
StructuredInputDefinition
Implements

Constructors

Name Description
StructuredInputDefinition()

Initializes a new instance of StructuredInputDefinition.

StructuredInputDefinition(String, BinaryData, IList<ToolArgumentBinding>, BinaryData, Nullable<Boolean>, IDictionary<String,BinaryData>)

Initializes a new instance of StructuredInputDefinition.

Properties

Name Description
DefaultValue

The default value for the input if no run-time value is provided.

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" }.

Description

A human-readable description of the input.

Required

Whether the input property is required when the agent is invoked.

Schema

The JSON schema for the structured input (optional).

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" }.

ToolArgumentBindings

When provided, the input value is binded to the specified tool arguments.

Methods

Name Description
DeserializeStructuredInputDefinition(JsonElement, ModelReaderWriterOptions)
FromResponse(Response)

Deserializes the model from a raw response.

JsonModelWriteCore(Utf8JsonWriter, ModelReaderWriterOptions)
ToRequestContent()

Convert into a RequestContent.

Explicit Interface Implementations

Name Description
IJsonModel<StructuredInputDefinition>.Create(Utf8JsonReader, ModelReaderWriterOptions)

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

IJsonModel<StructuredInputDefinition>.Write(Utf8JsonWriter, ModelReaderWriterOptions)

Writes the model to the provided Utf8JsonWriter.

IPersistableModel<StructuredInputDefinition>.Create(BinaryData, ModelReaderWriterOptions)

Converts the provided BinaryData into a model.

IPersistableModel<StructuredInputDefinition>.GetFormatFromOptions(ModelReaderWriterOptions)

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

IPersistableModel<StructuredInputDefinition>.Write(ModelReaderWriterOptions)

Writes the model into a BinaryData.

IUtf8JsonSerializable.Write(Utf8JsonWriter)

Applies to