Ich bin neu in dieser Technologie, aber ich möchte Watson API-Konversation in einer .NET-Anwendung verwenden. Wie kann ich Watson Cloud Services in .NET aufrufen?Beispiel für den IBM Watson Conversation API-Client in C#/.net
Antwort
Ich denke, IBM hat ein ziemlich weit entferntes Verständnis von "einfach". Ihre sample apps sind eher obskur. Darüber hinaus haben sie kürzlich ihre alte API gebrannt/veraltet. Hier ist die new API description. Sie müssen zuerst einige Watsone-Anmeldedaten erhalten.
Sie sollten die v1 Converstaions API wie jede andere RESTful-API konsumieren können. Ich mag Flurl für diese Aufgabe.
namespace WhatsOn
{
using System;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using Flurl;
using Flurl.Http;
using Newtonsoft.Json;
public class Program
{
public static void Main()
{
TalkToWatson().Wait();
}
public static async Task TalkToWatson()
{
var baseurl = "https://gateway.watsonplatform.net/conversation/api";
var workspace = "25dfa8a0-0263-471b-8980-317e68c30488";
var username = "...get your own...";
var password = "...get your own...";
var context = null as object;
var input = Console.ReadLine();
var message = new { input = new { text = input }, context };
var resp = await baseurl
.AppendPathSegments("v1", "workspaces", workspace, "message")
.SetQueryParam("version","2016-11-21")
.WithBasicAuth(username, password)
.AllowAnyHttpStatus()
.PostJsonAsync(message);
var json = await resp.Content.ReadAsStringAsync();
var answer = new
{
intents = default(object),
entities = default(object),
input = default(object),
output = new
{
text = default(string[])
},
context = default(object)
};
answer = JsonConvert.DeserializeAnonymousType(json, answer);
var output = answer?.output?.text?.Aggregate(
new StringBuilder(),
(sb,l) => sb.AppendLine(l),
sb => sb.ToString());
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine($"{resp.StatusCode}: {output}");
Console.ForegroundColor = ConsoleColor.Gray;
Console.WriteLine(json);
Console.ResetColor();
}
}
}
Sie können jede der Watson Cloud-Dienste mit der REST-Schnittstelle aufrufen, wie in der vorherigen Antwort gezeigt. Stellen Sie sicher, dass Sie die JSON-Nutzdaten korrekt formatieren. Alle erforderlichen Informationen finden Sie in der Datei Conversation API Reference.
Das gesagt wird, gibt es eine SDK for .NET, obwohl es immer noch unreif sein kann. Sie können alle aktuellen SDKs und Dienstprogramme auf der Watson Developer Cloud Out auf GitHub gehen.
und was ist damit ?: https://github.com/watson-developer-cloud/dotnet-standard-sdk#installing-the-watson-net-standard-sdk. –
Das ist neu für mich .... aber es sieht so aus, als müsste es tun was du willst. –
- 1. IBM Watson - Conversation Antwort Zustand
- 2. IBM Watson Conversation mit bestehenden Datenbank-Integration
- 3. IBM Conversation mit Watson Workspace verbinden?
- 4. API zum Aktualisieren von Entitäten für IBM Watson Conversation
- 5. Vergleichen von Kontextvariablen mit Entitäten in IBM Watson Conversation
- 6. IBM Watson (Conversation) REST API mit Fetch (whatwg-fetch)
- 7. Formel in Watson Conversation
- 8. Unterschied zwischen IBM Watson Conversation und Natural Language Understanding
- 9. So überprüfen Sie #API-Aufrufe mit dem Ratenlimit für den IBM Watson Conversation-Service
- 10. So stellen Sie die deutsche Sprache für den IBM Watson Conversation-Dienst ein
- 11. Watson Conversation unterstützt verschachtelte Intents?
- 12. Watson Conversation: mehrsprachige Website-Ansatz
- 13. Watson IBM Anmeldedaten, Skript Python
- 14. Wie extrahiert man den Benutzernamen mithilfe der IBM Watson Conversation API?
- 15. So aktualisieren Sie den Dialog in Ibm Watson Conversation-Dienst programmgesteuert
- 16. Verwenden von Java zum Übergeben von Variablen an den IBM Watson Conversation-Dialog
- 17. Erhalten Sie Watson Conversation Workspaces
- 18. Watson Conversation Engine parallele Intents Verarbeitung
- 19. Mathematik Berechnung in Watson Conversation Antwort
- 20. IBM Watson Konversation keine Ausgabe Python
- 21. IBM Watson-Evaluierung - werden Trainingsdaten auf IBM Server hochgeladen/gespeichert?
- 22. Bedingtes "Springe zu" zu Watson Conversation
- 23. ibm watson Dokumentklassifikation
- 24. Wie man einen Knoten in der Benutzeroberfläche von IBM Watson Conversation benennt
- 25. Wie rufen Sie eine REST-API in Watson Conversation auf?
- 26. IBM Watson Conversation API immer Elternknoten zurückgeben, nicht in untergeordneten Knoten einfügen
- 27. docker push error für ibm bluemix watson
- 28. Loswerden mit doppelten Dialogknoten Watson Conversation
- 29. IBM Watson - Sys-Nummer nicht erhalten 0
- 30. Erste org.springframework.expression.spel.SpelParseException Fehler von Watson Conversation API
Bitte poste dies stattdessen auf der spanischen Website. Diese Seite ist nur Englisch. – Carcigenicate
Por favor preguntarlo [aqui] (http://es.stackoverflow.com/). –
Um klar zu sein, wäre dies eine schlechte Frage und immer noch unklar oder übertrieben wurde es in englischer Sprache gefragt. – Marcin