Streaming -WCF -AntwortC#

Ein Treffpunkt für C#-Programmierer
Guest
 Streaming -WCF -Antwort

Post by Guest »

Ich habe einen WCF -Webdienst, der ein generatives Modell mit dem OpenAI C# -Client aufruft. Ich möchte diese Antwort auf den WCF -Client streamen. Mein aktueller Übertragungsmodus wird mit einem Schrank von 1 Sekunde auf "gestreamt" eingestellt. Eine vereinfachte Version des Code, den der Dienst derzeit ausführtvar collectionResult = openAiClient.CompleteChatStreaming(new[] { userMsg }, options: modelOptions);
var stream = new MemoryStream();
var sw = new StreamWriter(stream)
{
AutoFlush = true
};

Task.Run(async () =>
{
foreach (var col in collectionResult)
foreach (var data in col.ContentUpdate)
sw.Write(data.Text);
});
stream.Position = 0;
return stream;
< /code>
Wenn ich dies debuggierte, sehe ich, dass vor Beginn der äußeren Schleife die Verbindung geschlossen ist und ich nicht herausfinden kann, warum. Dies handeltusing (var sr = new StreamReader(stream))
{
var data = "";
while ((data = await sr.ReadLineAsync()) != null)
{
Console.WriteLine(data);
}
}
< /code>
Gibt es überhaupt eine Möglichkeit, diese Art von Streaming -Antwort in WCF zu erreichen, bei dem der Server eine Art Mittelsmann zwischen den Daten und dem Streaming von Daten ist? Wie würde es richtig implementiert werden? Der Kunde muss in der Lage sein, die Modellausgabe so zu sehen, als würde er mit einem normalen Chatbot chatten. Daher kann ich es kaum erwarten, dass die gesamte Antwort vor dem Antworten generiert wird.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post