Xiaoyun Zhang 6bea055b26
[.Net] Add a generic IHandle interface so AgentRuntime doesn't need to deal with typed handler (#3985)
* add IHandle for object type

* rename handle -> handleObject

* remove duplicate file header setting

* update

* remove AgentId

* fix format
2024-10-30 11:53:37 -07:00

33 lines
1.0 KiB
C#

// Copyright (c) Microsoft Corporation. All rights reserved.
// AgentCodeSnippet.cs
using AutoGen.Core;
namespace AutoGen.BasicSample.CodeSnippet;
internal class AgentCodeSnippet
{
public async Task ChatWithAnAgent(IStreamingAgent agent)
{
#region ChatWithAnAgent_GenerateReplyAsync
var message = new TextMessage(Role.User, "Hello");
IMessage reply = await agent.GenerateReplyAsync([message]);
#endregion ChatWithAnAgent_GenerateReplyAsync
#region ChatWithAnAgent_SendAsync
reply = await agent.SendAsync("Hello");
#endregion ChatWithAnAgent_SendAsync
#region ChatWithAnAgent_GenerateStreamingReplyAsync
var textMessage = new TextMessage(Role.User, "Hello");
await foreach (var streamingReply in agent.GenerateStreamingReplyAsync([message]))
{
if (streamingReply is TextMessageUpdate update)
{
Console.Write(update.Content);
}
}
#endregion ChatWithAnAgent_GenerateStreamingReplyAsync
}
}