Import von Trainingsbeispielen per API

Import von Trainingsbeispielen per API

Für den Import von Trainingsbeispielen zu einem Intent steht für Entwickler und Fortgeschrittene eine API zur Verfügung.
Um die Funktionsweise zu erläutern, stellen wir die Import-Schritte als Kommandozeilen-Befehle vor.
Auf diese Weise kann man auch ohne tiefere Programmierkenntnisse einen Mehrfachimport von Trainingsbeispielen für eine Absicht umsetzen.

Voraussetzung

  1. Kiko CMS-Konto mit System-Berechtigung "Admin" - https://www.kiko.bot/kostenlos-registrieren-chatbot-cms/
  2. Kommandozeile mit dem Befehl "curl" z.B. auf dem eigenen Rechner
  3. Kommandozeilentool "jsonpp" zur Formatierung der JSON-Ausgabe

Schritte im Kiko CMS

API Key holen

  1. Als Nutzer einloggen mit der System-Berechtigung "Admin".
  2. Oben rechts zu Profil gehen und den API Key merken.

ML-basierte Intent-Erkennung aktivieren

  1. Zur Bot-Liste gehen - z.B. zum Metabot - Aktionen: Bot bearbeiten
  2. Zum Feld "Verwendung von NLU / NLP" gehen und "Erkennung der Absichten anhand von Trainingssätzen (NLU) und Entitätstypen (NLP)" wählen.

Lege einen Intent fürs Training an

  1. Zu "Inhalt" gehen - Metabot - Absichten - Aktion: Neue Absicht hinzufügen
  2. Bezeichnung: Uhrzeit
  3. Ergebnis: Text - "Es ist 12 Uhr."

Per Kommandozeile

Variablen vorbereiten

  1. JSON-Textdatei "beispiele-uhrzeit.json" mit folgendem Inhalt speichern und Pfad zur Datei merken.
  1. {
  2.     "question": [
  3.         "Wie spät ist es?",
  4.         "Wie spät?",
  5.         "Was ist die Uhrzeit?"
  6.     ]
  7. }
  1. Start der Konsole oder Kommandozeile
  2. Variaben per Kommandozeile anlegen:
  1. APIKEY=...(gemerkten API Key hier einfügen)
  2. HOST=https://cloud02-7c83ec0.prod.1000grad.de/
  3. JSONFILE=/dateipfad/beispiele-uhrzeit.json

Ermittlung der Bot-ID

  1. Die Liste aller Bots per Kommandozeile ermitteln:
  1. curl -X GET "${HOST}/api/api/v1/bot" -H "Authorization: ${APIKEY}" | json_pp
  1. Nach Zeile suchen: "name" : "metabot"
  2. Die zugehörige ID des gewünschten Bots ermitteln, eine Zeile unter dem Namen
  3. Die Bot-ID in einer Variable speichern:
  1. BOTID=2badd3cc-xxxx-xxxx-85fa-d4e4d7dec8b4

Ermittlung der Intent-ID

  1. Die Liste aller Intents des Bots ermitteln:
  1. curl -X GET "${HOST}/api/api/v1/bot/${BOTID}/intent" -H "Authorization: ${APIKEY}" | json_pp
  1. Nach der Zeile suchen: "name" : "Uhrzeit"
  2. Die zugehörige ID des gewünschten Bots ermitteln, zwei Zeilen unter dem Namen.
  3. Die Intent-ID in einer Variable speichern:
  1. INTENTID=5ebe1f5e-xxxx-xxxx-85ec-c67a0abf037b

Beispiele zum Intent hinzufügen

  1. Variante 1 - per Json-Datei (s.o.):
  1. curl -X POST -d @${JSONFILE} "${HOST}/api/api/v1/bot/${BOTID}/intent/${INTENTID}/example-question" -H "Content-Type: application/json" -H "Authorization: ${APIKEY}"
  1. Variante 2 - direkte Speicherung der Trainingsbeispiele:
  1. curl -X POST "${HOST}/api/api/v1/bot/${BOTID}/intent/${INTENTID}/example-question" \
  2. -H "Content-Type: application/json; charset=utf-8" -H "Authorization: ${APIKEY}" \
  3. --data-binary @- << EOF
  4. {
  5.     "question": [
  6.         "Wie spät ist es?",
  7.         "Was ist die Uhrzeit?"
  8.     ]
  9. }
  10. EOF

Kontrolle der Inhalte im CMS

  1. Kiko CMS - Inhalt - metabot - Beispielfragen - Uhrzeit ... die drei Beispielfragen werden angezeigt

Kontrolle des Trainings

  1. Bot-Aktion "ML-Training starten" wählen
  2. In den Testchat tippen: "Wie spät ist es gerade?" --> "Es ist 12 Uhr."

Referenzen:
  1.  Kiko Chatbot API Referenz - Post Intent Example

    • Related Articles

    • PDF - Formular per Chat (Teil 1)

      In der öffentlichen Verwaltung und in den Unternehmen werden die bisherigen Papierformulare immer häufiger durch PDF-Dokumente ersetzt. Mithilfe des Service "pdf-fill-in" kann der Nutzer beim Ausfüllen eines solchen PDF-Formulars durch einen Chatbot ...
    • Anzeige von PDFs im Infobereich

      Über den Support können Sie sich den zusätzlichen WYSIWYG-Editor für Antworten freischalten lassen. Mit dem Editor können Sie eine externe Webseite oder eine PDF mit einer Textstelle der Antwort verlinken. Den Link können Sie dabei so konfigurieren, ...
    • Kiko Webchat-Widget abhängig von der Fensterbreite positionieren (responsiv)

      Moderne Webseiten passen das eigene Layout an die Größe des aktuellen Fensters an. Dabei kann es zu einer Überlappung des Widgets mit einem anderen Layout-Element der Hintergrund-Seite kommen. Eine mögliche Lösung für dieses Darstellungsproblem ist ...
    • Nutzerdaten abfragen und per Mail weiterleiten - Tutorial 1 für Fortgeschrittene (19 min)

      Aufgabe Ø Dauer 6. Mailer-Bot anlegen 5 min 7. Formular-Parameter einrichten 3 min 8. Formular-Einleitung erstellen 6 min 9. Formular-Weiterleitung einrichten 5 min In diesem Tutorial erkläre ich Ihnen, wie man eine Formular-Funktion anlegt. Bitte ...
    • Kiko Webservices

      Kiko Webservices erweitern den Kiko Service um zusätzliche Features, welche per Software-as-a-Service bereitgestellt werden. translate Adapter-Service zur Übersetzung aller ein- und ausgehenden Nachrichten Weitere Chatbot-Sprache durch eine ...