Inhaltsverzeichnis

Klasse BaseAgent

Namespace
Microsoft.AutoGen.Core
Assembly
Microsoft.AutoGen.Core.dll

Stellt die Basisklasse für einen Agenten im AutoGen-System dar.

public abstract class BaseAgent : IHostableAgent, IAgent, ISaveState
Vererbung
BaseAgent
Implementiert
Geerbte Member

Konstruktoren

BaseAgent(AgentId, IAgentRuntime, string, ILogger<BaseAgent>?)

protected BaseAgent(AgentId id, IAgentRuntime runtime, string description, ILogger<BaseAgent>? logger = null)

Parameter

id AgentId
runtime IAgentRuntime
description string
logger ILogger<BaseAgent>

Felder

_logger

protected ILogger<BaseAgent> _logger

Feldwert

ILogger<BaseAgent>

s_source

Die Aktivitätsquelle für das Tracing.

public static readonly ActivitySource s_source

Feldwert

ActivitySource

Eigenschaften

Beschreibung

protected string Description { get; }

Eigenschaftswert

string

Id

Ruft die eindeutige Kennung des Agenten ab.

public AgentId Id { get; }

Eigenschaftswert

AgentId

Metadaten

Ruft Metadaten ab, die mit dem Agenten verknüpft sind.

public AgentMetadata Metadata { get; }

Eigenschaftswert

AgentMetadata

Runtime

protected IAgentRuntime Runtime { get; }

Eigenschaftswert

IAgentRuntime

Methoden

CloseAsync()

Wird aufgerufen, wenn die Laufzeitumgebung geschlossen wird.

public virtual ValueTask CloseAsync()

Rückgabe

ValueTask

Eine Aufgabe, die den asynchronen Vorgang darstellt.

OnMessageAsync(object, MessageContext)

Verarbeitet eine eingehende Nachricht für den Agenten. Dies sollte nur von der Laufzeitumgebung aufgerufen werden, nicht von anderen Agenten.

public ValueTask<object?> OnMessageAsync(object message, MessageContext messageContext)

Parameter

message object

Die empfangene Nachricht. Der Typ sollte mit einem der erwarteten Abonnementtypen übereinstimmen.

messageContext MessageContext

Der Kontext der Nachricht, der zusätzliche Metadaten enthält.

Rückgabe

ValueTask<object>

Eine Aufgabe, die den asynchronen Vorgang darstellt und eine Antwort auf die Nachricht zurückgibt. Die Antwort kann null sein, wenn keine Antwort erforderlich ist.

Ausnahmen

OperationCanceledException

Wird ausgelöst, wenn die Nachricht abgebrochen wurde.

CantHandleException

Wird ausgelöst, wenn der Agent die Nachricht nicht verarbeiten kann.

PublishMessageAsync(object, TopicId, string?, CancellationToken)

public ValueTask PublishMessageAsync(object message, TopicId topic, string? messageId = null, CancellationToken cancellationToken = default)

Parameter

message object
topic TopicId
messageId string
cancellationToken CancellationToken

Rückgabe

ValueTask

SendMessageAsync(object, AgentId, string?, CancellationToken)

public ValueTask<object?> SendMessageAsync(object message, AgentId recepient, string? messageId = null, CancellationToken cancellationToken = default)

Parameter

message object
recepient AgentId
messageId string
cancellationToken CancellationToken

Rückgabe

ValueTask<object>