gpt4 book ai didi

c# - 阐明 GenerateMessages() 方法的用法

转载 作者:太空宇宙 更新时间:2023-11-03 15:02:21 26 4
gpt4 key购买 nike

使用 Prompter 方法在 FormFlow 中发送自定义卡片。查看代码发现有一个 GenerateMessages() 方法,对于下面的代码,它总是返回 false。有人可以阐明为什么/何时使用此方法吗?

https://docs.botframework.com/en-us/csharp/builder/sdkreference/d7/d6d/class_microsoft_1_1_bot_1_1_builder_1_1_form_flow_1_1_advanced_1_1_extensions.html#abff216af1ae24937c78767e621477935

 .Prompter(async (context, prompt, state, field) => {
var preamble = context.MakeMessage();
var promptMessage = context.MakeMessage();

if (prompt.GenerateMessages(preamble, promptMessage))
{
await context.PostAsync(preamble);
}
else
{
promptMessage.Text = prompt.Prompt;
var attachment = Helper.GetAttachment();
promptMessage.Attachments.Add(attachment);
await context.PostAsync(promptMessage);
}

最佳答案

.GenerateMessages 的代码可以在这里找到:https://github.com/Microsoft/BotBuilder/blob/497252e8d9949be20baa2cebaa6ce56de04461cf/CSharp/Library/Microsoft.Bot.Builder/FormFlow/IPrompt.cs#L248

似乎会返回 false,除非有:

  1. 描述中的按钮或图片 AND
  2. 提示符中的一个或多个 Environment.NewLine 字符

我个人没有用过,不过感觉这个方法在使用FormFlow定义多行提示信息的时候会很有用。由于并非所有 channel 都支持 Markdown ,因此此方法提供了某种解决方法:启用多行消息。

关于c# - 阐明 GenerateMessages() 方法的用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45572732/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com