Ich habe die Vorlage „Chat With Your Data“ verwendet und Azure OpenAI ausgewählt, da wir Azure OpenAI-Kunden sind .
Dann habe ich die RenderDataAsync()-Methode geändert, um eine von mir erstellte externe API aufzurufen und die Ausgabe an Teams zurückzugeben:
Code: Select all
public async Task RenderDataAsync(ITurnContext context, IMemory memory, ITokenizer tokenizer, int maxTokens, CancellationToken cancellationToken)
{
string? query = memory.GetValue("temp.input") as string;
if (query == null)
{
return new RenderedPromptSection(string.Empty, 0);
}
else
{
using var httpClient = new HttpClient();
var requestUri = "http:///query";
var requestBody = new
{
query = query,
mode = "local"
};
var json = System.Text.Json.JsonSerializer.Serialize(requestBody);
var content = new StringContent(json, Encoding.UTF8, "application/json");
using var request = new HttpRequestMessage(HttpMethod.Post, requestUri)
{
Headers =
{
{ "accept", "application/json" }
},
Content = content
};
var response = await httpClient.SendAsync(request);
var responseContent = await response.Content.ReadAsStringAsync();
var answer = responseContent;
return new RenderedPromptSection(formatDocument(answer), answer.Length);
}
}
Aber was muss ich an meinen Kunden in einer anderen Office-365-Organisation verteilen? Wenn ich ihm mein appPackage.dev.zip gebe, kann er es installieren, aber der Bot erhält nie eine Antwort, ich sehe nicht einmal, dass Anfragen an meine API gestellt werden.
Was Fehle ich?
Ich habe dem Kunden appPackage.dev.zip gegeben, er hat es in seiner eigenen Office-365-Organisation installiert, ich habe das gleiche Verhalten wie in meiner eigenen Organisation erwartet, aber es ist fehlgeschlagen.