- Einleitung
- Einrichten Ihres Kontos
- Ausgewogenheit
- Cluster
- Konzeptabweichung
- Abdeckung
- Datasets
- Allgemeine Felder
- Beschriftungen (Vorhersagen, Konfidenzniveaus, Beschriftungshierarchie und Beschriftungsstimmung)
- Modelle
- Streams
- Modellbewertung
- Projekte
- Präzision
- Rückruf
- Nachrichten mit und ohne Anmerkungen
- Extraktionsfelder
- Quellen
- Taxonomien
- Training
- „True“ und „false“ positive und negative Vorhersagen
- Validierung
- Messages
- Zugriffssteuerung und Administration
- Verwalten Sie Quellen und Datasets
- Verstehen der Datenstruktur und -berechtigungen
- Erstellen oder Löschen einer Datenquelle in der GUI
- Vorbereiten von Daten für den CSV-Upload
- Hochladen einer CSV-Datei in eine Quelle
- Ein Dataset wird erstellt
- Mehrsprachige Quellen und Datasets
- Aktivieren der Stimmung für ein Dataset
- Ändern der Dataset-Einstellungen
- Löschen einer Nachricht
- Löschen eines Datasets
- Exportieren eines Datasets
- Verwenden von Exchange-Integrationen
- Modelltraining und -wartung
- Grundlegendes zu Beschriftungen, allgemeinen Feldern und Metadaten
- Beschriftungshierarchie und Best Practices
- Vergleichen von Anwendungsfällen für Analyse und Automatisierung
- Konvertieren Ihrer Ziele in Bezeichnungen
- Übersicht über den Modelltrainingsprozess
- Generative Anmerkung
- Der Status des Datasets
- Best Practice für Modelltraining und Anmerkungen
- Training mit aktivierter Beschriftungs-Stimmungsanalyse
- Grundlegendes zu Datenanforderungen
- Trainieren
- Einführung in Verfeinerung
- Erläuterungen zu Präzision und Rückruf
- Präzision und Rückruf
- So funktioniert die Validierung
- Verstehen und Verbessern der Modellleistung
- Gründe für die geringe durchschnittliche Beschriftungsgenauigkeit
- Training mit Beschriftung „Überprüfen“ und Beschriftung „Verpasst“.
- Training mit der Bezeichnung „Teach“ (Verfeinern)
- Training mit der Suche (verfeinern)
- Verstehen und Erhöhen der Abdeckung
- Verbesserung des Abgleichs und Verwendung des Abgleichs
- Wann das Training Ihres Modells beendet werden soll
- Verwenden von allgemeinen Feldern
- Generative Extraktion
- Verwenden von Analyse und Überwachung
- Automations and Communications Mining™
- Entwickler (Developer)
- Verwenden der API
- API-Tutorial
- Quellen
- Datasets
- Anmerkungen
- Anhänge (Attachments)
- Vorhersagen
- Erstellen Sie einen Stream
- Aktualisieren Sie einen Stream
- Rufen Sie einen Stream nach Namen ab
- Rufen Sie alle Streams ab
- Löschen Sie einen Stream
- Ergebnisse aus Stream abrufen
- Kommentare aus einem Stream abrufen (Legacy)
- Bringen Sie einen Stream vor
- Einen Stream zurücksetzen
- Kennzeichnen Sie eine Ausnahme
- Entfernen Sie das Tag einer Ausnahme
- Prüfungsereignisse
- Alle Benutzer abrufen
- Hochladen von Daten
- Herunterladen von Daten
- Exchange Integration mit einem Azure-Dienstbenutzer
- Exchange-Integration mit der Azure-Anwendungsauthentifizierung
- Exchange-Integration mit Azure Application Authentication und Graph
- Abrufen von Daten für Tableau mit Python
- Elasticsearch-Integration
- Allgemeine Feldextraktion
- Selbst gehostete Exchange-Integration
- UiPath® Automatisierungs-Framework
- Offizielle UiPath®-Aktivitäten
- Wie Maschinen lernen, Wörter zu verstehen: eine Anleitung zu Einbettungen in NLP
- Eingabeaufforderungsbasiertes Lernen mit Transformers
- Ef Robots II: Wissensdegesterration und Feinabstimmung
- Effiziente Transformer I: Warnmechanismen
- Tief hierarchische, nicht überwachte Absichtsmodellierung: Nutzen ohne Trainingsdaten
- Beheben von Anmerkungsverzerrungen mit Communications Mining™
- Aktives Lernen: Bessere ML-Modelle in weniger Zeit
- Auf Zahlen kommt es an – Bewertung der Modellleistung mit Metriken
- Darum ist Modellvalidierung wichtig
- Vergleich von Communications Mining™ und Google AutoML für Conversation Data Intelligence
- Lizenzierung
- Häufige Fragen und mehr

Communications Mining-Benutzerhandbuch
/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict
Erforderliche Berechtigungen: Beschriftungen anzeigen, Quellen anzeigen
Abrechenbarer Vorgang
Ihnen werden 1 AI Unit oder 0,2 Platform Units pro Kommentar in Rechnung gestellt, der im Anforderungstext angegeben wird.
- Bash
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "documents": [ { "messages": [ { "body": { "text": "Hi Bob,\n\nCould you send me the figures for today?" }, "from": "alice@company.com", "sent_at": "2020-01-09T16:34:45Z", "signature": { "text": "Thanks,\nAlice" }, "subject": { "text": "Figures Request" }, "to": [ "bob@organisation.org" ] } ], "timestamp": "2013-09-12T20:01:20.000000+00:00", "user_properties": { "string:City": "London" } }, { "messages": [ { "body": { "text": "Alice,\n\nHere are the figures for today." }, "from": "bob@organisation.org", "sent_at": "2020-01-09T16:44:45Z", "signature": { "text": "Regards,\nBob" }, "subject": { "text": "Re: Figures Request" }, "to": [ "alice@company.com" ] } ], "timestamp": "2011-12-12T10:04:30.000000+00:00", "user_properties": { "string:City": "Bucharest" } } ], "threshold": 0.25 }'curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "documents": [ { "messages": [ { "body": { "text": "Hi Bob,\n\nCould you send me the figures for today?" }, "from": "alice@company.com", "sent_at": "2020-01-09T16:34:45Z", "signature": { "text": "Thanks,\nAlice" }, "subject": { "text": "Figures Request" }, "to": [ "bob@organisation.org" ] } ], "timestamp": "2013-09-12T20:01:20.000000+00:00", "user_properties": { "string:City": "London" } }, { "messages": [ { "body": { "text": "Alice,\n\nHere are the figures for today." }, "from": "bob@organisation.org", "sent_at": "2020-01-09T16:44:45Z", "signature": { "text": "Regards,\nBob" }, "subject": { "text": "Re: Figures Request" }, "to": [ "alice@company.com" ] } ], "timestamp": "2011-12-12T10:04:30.000000+00:00", "user_properties": { "string:City": "Bucharest" } } ], "threshold": 0.25 }' - Knoten
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { documents: [ { messages: [ { body: { text: "Hi Bob,\n\nCould you send me the figures for today?", }, from: "alice@company.com", sent_at: "2020-01-09T16:34:45Z", signature: { text: "Thanks,\nAlice" }, subject: { text: "Figures Request" }, to: ["bob@organisation.org"], }, ], timestamp: "2013-09-12T20:01:20.000000+00:00", user_properties: { "string:City": "London" }, }, { messages: [ { body: { text: "Alice,\n\nHere are the figures for today." }, from: "bob@organisation.org", sent_at: "2020-01-09T16:44:45Z", signature: { text: "Regards,\nBob" }, subject: { text: "Re: Figures Request" }, to: ["alice@company.com"], }, ], timestamp: "2011-12-12T10:04:30.000000+00:00", user_properties: { "string:City": "Bucharest" }, }, ], threshold: 0.25, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { documents: [ { messages: [ { body: { text: "Hi Bob,\n\nCould you send me the figures for today?", }, from: "alice@company.com", sent_at: "2020-01-09T16:34:45Z", signature: { text: "Thanks,\nAlice" }, subject: { text: "Figures Request" }, to: ["bob@organisation.org"], }, ], timestamp: "2013-09-12T20:01:20.000000+00:00", user_properties: { "string:City": "London" }, }, { messages: [ { body: { text: "Alice,\n\nHere are the figures for today." }, from: "bob@organisation.org", sent_at: "2020-01-09T16:44:45Z", signature: { text: "Regards,\nBob" }, subject: { text: "Re: Figures Request" }, to: ["alice@company.com"], }, ], timestamp: "2011-12-12T10:04:30.000000+00:00", user_properties: { "string:City": "Bucharest" }, }, ], threshold: 0.25, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "documents": [ { "messages": [ { "from": "alice@company.com", "to": ["bob@organisation.org"], "sent_at": "2020-01-09T16:34:45Z", "body": { "text": "Hi Bob,\n\nCould you send me the figures for today?" }, "subject": {"text": "Figures Request"}, "signature": {"text": "Thanks,\nAlice"}, } ], "timestamp": "2013-09-12T20:01:20.000000+00:00", "user_properties": {"string:City": "London"}, }, { "messages": [ { "from": "bob@organisation.org", "to": ["alice@company.com"], "sent_at": "2020-01-09T16:44:45Z", "body": { "text": "Alice,\n\nHere are the figures for today." }, "subject": {"text": "Re: Figures Request"}, "signature": {"text": "Regards,\nBob"}, } ], "timestamp": "2011-12-12T10:04:30.000000+00:00", "user_properties": {"string:City": "Bucharest"}, }, ], "threshold": 0.25, }, ) print(json.dumps(response.json(), indent=2, sort_keys=True))import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "documents": [ { "messages": [ { "from": "alice@company.com", "to": ["bob@organisation.org"], "sent_at": "2020-01-09T16:34:45Z", "body": { "text": "Hi Bob,\n\nCould you send me the figures for today?" }, "subject": {"text": "Figures Request"}, "signature": {"text": "Thanks,\nAlice"}, } ], "timestamp": "2013-09-12T20:01:20.000000+00:00", "user_properties": {"string:City": "London"}, }, { "messages": [ { "from": "bob@organisation.org", "to": ["alice@company.com"], "sent_at": "2020-01-09T16:44:45Z", "body": { "text": "Alice,\n\nHere are the figures for today." }, "subject": {"text": "Re: Figures Request"}, "signature": {"text": "Regards,\nBob"}, } ], "timestamp": "2011-12-12T10:04:30.000000+00:00", "user_properties": {"string:City": "Bucharest"}, }, ], "threshold": 0.25, }, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "entities": [ [ { "capture_ids": [], "formatted_value": "Bob", "id": "76aebf2646577a1d", "kind": "person", "name": "person", "probability": null, "span": { "char_end": 6, "char_start": 3, "content_part": "body", "message_index": 0, "utf16_byte_end": 12, "utf16_byte_start": 6 } }, { "capture_ids": [], "formatted_value": "2020-01-09 00:00 UTC", "id": "20beddf4c5f5bb61", "kind": "date", "name": "date", "probability": null, "span": { "char_end": 48, "char_start": 43, "content_part": "body", "message_index": 0, "utf16_byte_end": 96, "utf16_byte_start": 86 } } ], [] ], "model": { "time": "2020-02-06T20:42:58.047000Z", "version": 5 }, "predictions": [ [ { "name": ["Some Label"], "probability": 0.8896465003490448 }, { "name": ["Parent Label", "Child Label"], "probability": 0.26687008142471313, "sentiment": 0.8762539502232571 } ], [ { "name": ["Other Label"], "probability": 0.6406207121908665 } ] ], "status": "ok" }{ "entities": [ [ { "capture_ids": [], "formatted_value": "Bob", "id": "76aebf2646577a1d", "kind": "person", "name": "person", "probability": null, "span": { "char_end": 6, "char_start": 3, "content_part": "body", "message_index": 0, "utf16_byte_end": 12, "utf16_byte_start": 6 } }, { "capture_ids": [], "formatted_value": "2020-01-09 00:00 UTC", "id": "20beddf4c5f5bb61", "kind": "date", "name": "date", "probability": null, "span": { "char_end": 48, "char_start": 43, "content_part": "body", "message_index": 0, "utf16_byte_end": 96, "utf16_byte_start": 86 } } ], [] ], "model": { "time": "2020-02-06T20:42:58.047000Z", "version": 5 }, "predictions": [ [ { "name": ["Some Label"], "probability": 0.8896465003490448 }, { "name": ["Parent Label", "Child Label"], "probability": 0.26687008142471313, "sentiment": 0.8762539502232571 } ], [ { "name": ["Other Label"], "probability": 0.6406207121908665 } ] ], "status": "ok" }
live oder staging verwenden, um die aktuelle Live- oder Staging-Modellversion abzufragen.
| Name | Typ | Erforderlich | BESCHREIBUNG |
|---|---|---|---|
documents | array<Comment> | ja | Ein Batch von maximal 4096 Dokumenten in dem unter Kommentarreferenz beschriebenen Format. Größere Batches sind (pro Dokument) schneller als kleinere. |
threshold | Nummer | nein | Der Konfidenzschwellenwert, nach dem die Beschriftungsergebnisse gefiltert werden sollen. Eine Zahl zwischen 1.0 und 0.0. 0.0 enthält alle Ergebnisse. Legen Sie "auto" , um automatische Schwellenwerte zu verwenden. Wird diese Option nicht festgelegt, wird der Standardschwellenwert 0.25 verwendet.
|
labels | array<Label> | nein | Eine Liste der angeforderten Bezeichnungen, die mit optional beschriftungsspezifischen Schwellenwerten zurückgegeben werden sollen. |
Label das folgende Format:
| Name | Typ | Erforderlich | BESCHREIBUNG |
|---|---|---|---|
name | array<string> | ja | Der Name der zurückzugebenden Bezeichnung, formatiert als Liste hierarchischer Bezeichnungen. Beispielsweise hat die Beschriftung "Parent Label > Child Label" das Format ["Parent Label", "Child Label"].
|
threshold | Nummer | nein | Der Konfidenz-Schwellenwert, der für die Bezeichnung verwendet werden soll. Wenn nicht angegeben, wird standardmäßig der auf höchster Ebene angegebene Schwellenwert verwendet. |
| Name | Typ | BESCHREIBUNG |
|---|---|---|
status | string | ok wenn die Anforderung erfolgreich ist, oder error im Falle eines Fehlers. Weitere Informationen zu Fehlerantworten finden Sie unter Übersicht.
|
predictions | array<array<Label>> | Eine Liste von array<Label> in der gleichen Reihenfolge wie die Kommentare in der Anforderung, wobei jede Label das hier beschriebene Format hat.
|
entities | array<array<Entity>> | Eine Liste von array<Entity> in der gleichen Reihenfolge wie die Kommentare in der Anforderung, wobei jede Entity das hier beschriebene Format hat.
|
label_properties | array<LabelProperty> | Ein Array mit vorhergesagten Beschriftungseigenschaften für diesen Kommentar, bei dem jede LabelProperty das hier beschriebene Format hat.
|
model | Modell | Informationen über das Modell, mit dem die Vorhersagen erstellt wurden, in dem hier beschriebenen Format. |
latest anstelle einer angehefteten Modellversion.
/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-raw-emails
Erforderliche Berechtigungen: Beschriftungen anzeigen, Quellen anzeigen
Abrechenbarer Vorgang
Ihnen werden 1 AI Unit oder 0,2 Platform Units pro unformatierten E-Mail in Rechnung gestellt, die im Anforderungstext angegeben wird.
- Bash
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-raw-emails' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "documents": [ { "raw_email": { "body": { "plain": "Hi Bob,\n\nCould you send me the figures for today?\n\nThanks,\nAlice" }, "headers": { "parsed": { "Date": "Thu, 09 Jan 2020 16:34:45 +0000", "From": "alice@company.com", "Message-ID": "abcdef@company.com", "References": "<01234@company.com> <56789@company.com>", "Subject": "Figures Request", "To": "bob@organisation.org" } } }, "user_properties": { "string:City": "London" } }, { "raw_email": { "body": { "html": "<p>Alice,</p><p>Here are the figures for today.</p><p>Regards,<br/>Bob</p>" }, "headers": { "raw": "Message-ID: 012345@company.com\nDate: Thu, 09 Jan 2020 16:44:45 +0000\nSubject: Re: Figures Request\nFrom: bob@organisation.org\nTo: alice@company.com" } }, "user_properties": { "string:City": "Bucharest" } } ], "include_comments": false, "threshold": 0.25, "transform_tag": "generic.0.CONVKER5" }'curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-raw-emails' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "documents": [ { "raw_email": { "body": { "plain": "Hi Bob,\n\nCould you send me the figures for today?\n\nThanks,\nAlice" }, "headers": { "parsed": { "Date": "Thu, 09 Jan 2020 16:34:45 +0000", "From": "alice@company.com", "Message-ID": "abcdef@company.com", "References": "<01234@company.com> <56789@company.com>", "Subject": "Figures Request", "To": "bob@organisation.org" } } }, "user_properties": { "string:City": "London" } }, { "raw_email": { "body": { "html": "<p>Alice,</p><p>Here are the figures for today.</p><p>Regards,<br/>Bob</p>" }, "headers": { "raw": "Message-ID: 012345@company.com\nDate: Thu, 09 Jan 2020 16:44:45 +0000\nSubject: Re: Figures Request\nFrom: bob@organisation.org\nTo: alice@company.com" } }, "user_properties": { "string:City": "Bucharest" } } ], "include_comments": false, "threshold": 0.25, "transform_tag": "generic.0.CONVKER5" }' - Knoten
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-raw-emails", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { documents: [ { raw_email: { body: { plain: "Hi Bob,\n\nCould you send me the figures for today?\n\nThanks,\nAlice", }, headers: { parsed: { Date: "Thu, 09 Jan 2020 16:34:45 +0000", From: "alice@company.com", "Message-ID": "abcdef@company.com", References: "<01234@company.com> <56789@company.com>", Subject: "Figures Request", To: "bob@organisation.org", }, }, }, user_properties: { "string:City": "London" }, }, { raw_email: { body: { html: "<p>Alice,</p><p>Here are the figures for today.</p><p>Regards,<br/>Bob</p>", }, headers: { raw: "Message-ID: 012345@company.com\nDate: Thu, 09 Jan 2020 16:44:45 +0000\nSubject: Re: Figures Request\nFrom: bob@organisation.org\nTo: alice@company.com", }, }, user_properties: { "string:City": "Bucharest" }, }, ], include_comments: false, threshold: 0.25, transform_tag: "generic.0.CONVKER5", }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-raw-emails", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { documents: [ { raw_email: { body: { plain: "Hi Bob,\n\nCould you send me the figures for today?\n\nThanks,\nAlice", }, headers: { parsed: { Date: "Thu, 09 Jan 2020 16:34:45 +0000", From: "alice@company.com", "Message-ID": "abcdef@company.com", References: "<01234@company.com> <56789@company.com>", Subject: "Figures Request", To: "bob@organisation.org", }, }, }, user_properties: { "string:City": "London" }, }, { raw_email: { body: { html: "<p>Alice,</p><p>Here are the figures for today.</p><p>Regards,<br/>Bob</p>", }, headers: { raw: "Message-ID: 012345@company.com\nDate: Thu, 09 Jan 2020 16:44:45 +0000\nSubject: Re: Figures Request\nFrom: bob@organisation.org\nTo: alice@company.com", }, }, user_properties: { "string:City": "Bucharest" }, }, ], include_comments: false, threshold: 0.25, transform_tag: "generic.0.CONVKER5", }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-raw-emails", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "transform_tag": "generic.0.CONVKER5", "documents": [ { "raw_email": { "headers": { "parsed": { "Message-ID": "abcdef@company.com", "Date": "Thu, 09 Jan 2020 16:34:45 +0000", "Subject": "Figures Request", "From": "alice@company.com", "To": "bob@organisation.org", "References": "<01234@company.com> <56789@company.com>", } }, "body": { "plain": "Hi Bob,\n\nCould you send me the figures for today?\n\nThanks,\nAlice" }, }, "user_properties": {"string:City": "London"}, }, { "raw_email": { "headers": { "raw": "Message-ID: 012345@company.com\nDate: Thu, 09 Jan 2020 16:44:45 +0000\nSubject: Re: Figures Request\nFrom: bob@organisation.org\nTo: alice@company.com" }, "body": { "html": "<p>Alice,</p><p>Here are the figures for today.</p><p>Regards,<br/>Bob</p>" }, }, "user_properties": {"string:City": "Bucharest"}, }, ], "threshold": 0.25, "include_comments": False, }, ) print(json.dumps(response.json(), indent=2, sort_keys=True))import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-raw-emails", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "transform_tag": "generic.0.CONVKER5", "documents": [ { "raw_email": { "headers": { "parsed": { "Message-ID": "abcdef@company.com", "Date": "Thu, 09 Jan 2020 16:34:45 +0000", "Subject": "Figures Request", "From": "alice@company.com", "To": "bob@organisation.org", "References": "<01234@company.com> <56789@company.com>", } }, "body": { "plain": "Hi Bob,\n\nCould you send me the figures for today?\n\nThanks,\nAlice" }, }, "user_properties": {"string:City": "London"}, }, { "raw_email": { "headers": { "raw": "Message-ID: 012345@company.com\nDate: Thu, 09 Jan 2020 16:44:45 +0000\nSubject: Re: Figures Request\nFrom: bob@organisation.org\nTo: alice@company.com" }, "body": { "html": "<p>Alice,</p><p>Here are the figures for today.</p><p>Regards,<br/>Bob</p>" }, }, "user_properties": {"string:City": "Bucharest"}, }, ], "threshold": 0.25, "include_comments": False, }, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "entities": [ [ { "capture_ids": [], "formatted_value": "Bob", "id": "76aebf2646577a1d", "kind": "person", "name": "person", "probability": null, "span": { "char_end": 6, "char_start": 3, "content_part": "body", "message_index": 0, "utf16_byte_end": 12, "utf16_byte_start": 6 } }, { "capture_ids": [], "formatted_value": "2020-01-09 00:00 UTC", "id": "20beddf4c5f5bb61", "kind": "date", "name": "date", "probability": null, "span": { "char_end": 48, "char_start": 43, "content_part": "body", "message_index": 0, "utf16_byte_end": 96, "utf16_byte_start": 86 } } ], [] ], "model": { "time": "2020-02-06T20:42:58.047000Z", "version": 5 }, "predictions": [ [ { "name": ["Some Label"], "probability": 0.8896465003490448 }, { "name": ["Parent Label", "Child Label"], "probability": 0.26687008142471313, "sentiment": 0.8762539502232571 } ], [ { "name": ["Other Label"], "probability": 0.6406207121908665 } ] ], "status": "ok" }{ "entities": [ [ { "capture_ids": [], "formatted_value": "Bob", "id": "76aebf2646577a1d", "kind": "person", "name": "person", "probability": null, "span": { "char_end": 6, "char_start": 3, "content_part": "body", "message_index": 0, "utf16_byte_end": 12, "utf16_byte_start": 6 } }, { "capture_ids": [], "formatted_value": "2020-01-09 00:00 UTC", "id": "20beddf4c5f5bb61", "kind": "date", "name": "date", "probability": null, "span": { "char_end": 48, "char_start": 43, "content_part": "body", "message_index": 0, "utf16_byte_end": 96, "utf16_byte_start": 86 } } ], [] ], "model": { "time": "2020-02-06T20:42:58.047000Z", "version": 5 }, "predictions": [ [ { "name": ["Some Label"], "probability": 0.8896465003490448 }, { "name": ["Parent Label", "Child Label"], "probability": 0.26687008142471313, "sentiment": 0.8762539502232571 } ], [ { "name": ["Other Label"], "probability": 0.6406207121908665 } ] ], "status": "ok" }
live oder staging verwenden, um die aktuelle Live- oder Staging-Modellversion abzufragen.
| Name | Typ | Erforderlich | BESCHREIBUNG |
|---|---|---|---|
transform_tag | string | ja | Ein Tag, das angibt, wie die Rohdaten verarbeitet werden sollen. |
documents | array<Document> | ja | Ein Batch von höchstens 4096 Dokumenten im in der folgenden Tabelle beschriebenen Format. Größere Batches sind schneller (pro Dokument) als kleinere. |
threshold | Nummer | nein | Der Konfidenzschwellenwert, nach dem die Beschriftungsergebnisse gefiltert werden sollen. Eine Zahl zwischen 1.0 und 0.0. 0.0 enthält alle Ergebnisse. Legen Sie "auto" , um automatische Schwellenwerte zu verwenden. Wird diese Option nicht festgelegt, wird der Standardschwellenwert 0.25 verwendet.
|
labels | array<Label> | nein | Eine Liste der angeforderten Bezeichnungen, die mit optional beschriftungsspezifischen Schwellenwerten zurückgegeben werden sollen. |
include_comments | boolean | nein | Wenn auf true festgelegt, werden die aus den E-Mails analysierten Kommentare im Antworttext zurückgegeben.
|
Document das folgende Format:
| Name | Typ | Erforderlich | BESCHREIBUNG |
|---|---|---|---|
raw_email | RawEmail | ja | E-Mail-Daten im beschriebenen Format Kommentare. |
user_properties | map<string, string | number> | nein | Alle benutzerdefinierten Metadaten, die für den Kommentar gelten. Das Format wird Kommentare beschrieben.
Hinweis: Einige Benutzereigenschaften werden basierend auf dem E-Mail-Inhalt generiert. Stehen diese mit hochgeladenen Benutzereigenschaften in Konflikt, schlägt die Anforderung mit
422 Unprocessable Entity fehl.
|
Label das folgende Format:
| Name | Typ | Erforderlich | BESCHREIBUNG |
|---|---|---|---|
name | array<string> | ja | Der Name der zurückzugebenden Bezeichnung, formatiert als Liste hierarchischer Bezeichnungen. Beispielsweise hat die Beschriftung "Parent Label > Child Label" das Format ["Parent Label", "Child Label"].
|
threshold | Nummer | nein | Der Konfidenz-Schwellenwert, der für die Bezeichnung verwendet werden soll. Wenn nicht angegeben, wird standardmäßig der auf höchster Ebene angegebene Schwellenwert verwendet. |
| Name | Typ | BESCHREIBUNG |
|---|---|---|
status | string | ok wenn die Anforderung erfolgreich ist, oder error im Falle eines Fehlers. Weitere Informationen zu Fehlerantworten finden Sie unter Übersicht.
|
comments | array<Comment> | Eine Liste von Kommentaren, die aus den hochgeladenen unformatierten E-Mails analysiert wurden, in dem Format, das in der Kommentarreferenz beschrieben ist. Wird nur zurückgegeben, wenn Sie include_comments in der Anforderung festgelegt haben.
|
predictions | array<array<Label>> | Eine Liste von array<Label> in der gleichen Reihenfolge wie die Kommentare in der Anforderung, wobei jede Label das hier beschriebene Format hat.
|
entities | array<array<Entity>> | Eine Liste von array<Entity> in der gleichen Reihenfolge wie die Kommentare in der Anforderung, wobei jede Entity das hier beschriebene Format hat.
|
label_properties | array<LabelProperty> | Ein Array mit vorhergesagten Beschriftungseigenschaften für diesen Kommentar, bei dem jede LabelProperty das hier beschriebene Format hat.
|
model | Modell | Informationen über das Modell, mit dem die Vorhersagen erstellt wurden, in dem hier beschriebenen Format. |
Bei großen Anforderungen kann die Antwort dieses Endpunkts länger dauern. Sie sollten Ihr Client-Timeout erhöhen.
/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-comments
Erforderliche Berechtigungen: Beschriftungen anzeigen, Quellen anzeigen
- Bash
curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-comments' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "threshold": 0.25, "uids": [ "18ba5ce699f8da1f.0001", "18ba5ce699f8da1f.0002" ] }'curl -X POST 'https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-comments' \ -H "Authorization: Bearer $REINFER_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "threshold": 0.25, "uids": [ "18ba5ce699f8da1f.0001", "18ba5ce699f8da1f.0002" ] }' - Knoten
const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-comments", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { threshold: 0.25, uids: ["18ba5ce699f8da1f.0001", "18ba5ce699f8da1f.0002"], }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );const request = require("request"); request.post( { url: "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-comments", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, json: true, body: { threshold: 0.25, uids: ["18ba5ce699f8da1f.0001", "18ba5ce699f8da1f.0002"], }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-comments", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "uids": ["18ba5ce699f8da1f.0001", "18ba5ce699f8da1f.0002"], "threshold": 0.25, }, ) print(json.dumps(response.json(), indent=2, sort_keys=True))import json import os import requests response = requests.post( "https://<my_api_endpoint>/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/predict-comments", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, json={ "uids": ["18ba5ce699f8da1f.0001", "18ba5ce699f8da1f.0002"], "threshold": 0.25, }, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "model": { "time": "2020-02-06T20:42:58.047000Z", "version": 5 }, "predictions": [ { "entities": [ { "capture_ids": [], "formatted_value": "Bob", "id": "76aebf2646577a1d", "kind": "person", "name": "person", "probability": null, "span": { "char_end": 6, "char_start": 3, "content_part": "body", "message_index": 0, "utf16_byte_end": 12, "utf16_byte_start": 6 } }, { "capture_ids": [], "formatted_value": "2020-01-09 00:00 UTC", "id": "20beddf4c5f5bb61", "kind": "date", "name": "date", "probability": null, "span": { "char_end": 48, "char_start": 43, "content_part": "body", "message_index": 0, "utf16_byte_end": 96, "utf16_byte_start": 86 } } ], "labels": [ { "name": ["Some Label"], "probability": 0.8896465003490448 }, { "name": ["Parent Label", "Child Label"], "probability": 0.26687008142471313, "sentiment": 0.8762539502232571 } ], "uid": "18ba5ce699f8da1f.0001" }, { "entities": [], "labels": [ { "name": ["Other Label"], "probability": 0.6406207121908665 } ], "uid": "18ba5ce699f8da1f.0002" } ], "status": "ok" }{ "model": { "time": "2020-02-06T20:42:58.047000Z", "version": 5 }, "predictions": [ { "entities": [ { "capture_ids": [], "formatted_value": "Bob", "id": "76aebf2646577a1d", "kind": "person", "name": "person", "probability": null, "span": { "char_end": 6, "char_start": 3, "content_part": "body", "message_index": 0, "utf16_byte_end": 12, "utf16_byte_start": 6 } }, { "capture_ids": [], "formatted_value": "2020-01-09 00:00 UTC", "id": "20beddf4c5f5bb61", "kind": "date", "name": "date", "probability": null, "span": { "char_end": 48, "char_start": 43, "content_part": "body", "message_index": 0, "utf16_byte_end": 96, "utf16_byte_start": 86 } } ], "labels": [ { "name": ["Some Label"], "probability": 0.8896465003490448 }, { "name": ["Parent Label", "Child Label"], "probability": 0.26687008142471313, "sentiment": 0.8762539502232571 } ], "uid": "18ba5ce699f8da1f.0001" }, { "entities": [], "labels": [ { "name": ["Other Label"], "probability": 0.6406207121908665 } ], "uid": "18ba5ce699f8da1f.0002" } ], "status": "ok" }
live oder staging verwenden, um die aktuelle Live- oder Staging-Modellversion abzufragen.
| Name | Typ | Erforderlich | BESCHREIBUNG |
|---|---|---|---|
uids | array<string> | ja | Eine Liste von höchstens 4096 kombinierten source_id-s und comment_id-s im Format source_id.comment_id. Quellen müssen nicht zum aktuellen Dataset gehören – Sie können also Vorhersagen von Kommentaren für eine Quelle in einem anderen (oder keinem) Dataset anfordern. Größere Listen sind schneller (pro Kommentar) als kleinere.
|
threshold | Nummer | nein | Der Konfidenzschwellenwert, nach dem die Beschriftungsergebnisse gefiltert werden sollen. Eine Zahl zwischen 1.0 und 0.0. 0.0 enthält alle Ergebnisse. Legen Sie "auto" , um automatische Schwellenwerte zu verwenden. Wird diese Option nicht festgelegt, wird der Standardschwellenwert 0.25 verwendet.
|
labels | array<Label> | nein | Eine Liste der angeforderten Bezeichnungen, die mit optional beschriftungsspezifischen Schwellenwerten zurückgegeben werden sollen. |
Label das folgende Format:
| Name | Typ | Erforderlich | BESCHREIBUNG |
|---|---|---|---|
name | array<string> | ja | Der Name der zurückzugebenden Bezeichnung, formatiert als Liste hierarchischer Bezeichnungen. Beispielsweise hat die Beschriftung "Parent Label > Child Label" das Format ["Parent Label", "Child Label"].
|
threshold | Nummer | nein | Der Konfidenz-Schwellenwert, der für die Bezeichnung verwendet werden soll. Wenn nicht angegeben, wird standardmäßig der auf höchster Ebene angegebene Schwellenwert verwendet. |
| Name | Typ | BESCHREIBUNG |
|---|---|---|
status | string | ok wenn die Anforderung erfolgreich ist, oder error im Falle eines Fehlers. Weitere Informationen zu Fehlerantworten finden Sie unter Übersicht.
|
predictions | array<Prediction> | Eine Liste von Vorhersagen in dem in der folgenden Tabelle beschriebenen Format. |
model | Modell | Informationen über das Modell, mit dem die Vorhersagen erstellt wurden, in dem hier beschriebenen Format. |
Prediction das folgende Format:
| Name | Typ | BESCHREIBUNG |
|---|---|---|
uid | string | Eine Kombination aus source_id und comment_id im Format source_id.comment_id.
|
labels | array<Label> | Ein Array mit vorhergesagten Beschriftungen für diesen Kommentar, bei dem Label das hier beschriebene Format hat.
|
entities | array<Entity> | Ein Array mit vorhergesagten Entitäten für diesen Kommentar, wobei Entity das hier beschriebene Format hat.
|
label_properties | array<LabelProperty> | Ein Array mit vorhergesagten Beschriftungseigenschaften für diesen Kommentar, bei dem jede LabelProperty das hier beschriebene Format hat.
|
/api/v1/datasets/<project>/<dataset_name>/labellers/<version>/validation
Erforderliche Berechtigungen: Beschriftungen anzeigen, Quellen anzeigen
- Bash
curl -X GET 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/labellers/live/validation' \ -H "Authorization: Bearer $REINFER_TOKEN"curl -X GET 'https://<my_api_endpoint>/api/v1/datasets/project1/collateral/labellers/live/validation' \ -H "Authorization: Bearer $REINFER_TOKEN" - Knoten
const request = require("request"); request.get( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/labellers/live/validation", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } );const request = require("request"); request.get( { url: "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/labellers/live/validation", headers: { Authorization: "Bearer " + process.env.REINFER_TOKEN, }, }, function (error, response, json) { // digest response console.log(JSON.stringify(json, null, 2)); } ); - Python
import json import os import requests response = requests.get( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/labellers/live/validation", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True))import json import os import requests response = requests.get( "https://<my_api_endpoint>/api/v1/datasets/project1/collateral/labellers/live/validation", headers={"Authorization": "Bearer " + os.environ["REINFER_TOKEN"]}, ) print(json.dumps(response.json(), indent=2, sort_keys=True)) - Antwort
{ "status": "ok", "validation": { "coverage": 0.9119927883148193, "dataset_quality": "good", "labels": [ { "name": "Notification", "parts": ["Notification"] }, { "name": "Notification > Out of Office", "parts": ["Notification", "Out of Office"] }, { "name": "Notification > Public Holiday", "parts": ["Notification", "Public Holiday"] } ], "mean_average_precision_safe": 0.83, "num_amber_labels": 1, "num_labels": 3, "num_red_labels": 1, "num_reviewed_comments": 10251, "version": 5 } }{ "status": "ok", "validation": { "coverage": 0.9119927883148193, "dataset_quality": "good", "labels": [ { "name": "Notification", "parts": ["Notification"] }, { "name": "Notification > Out of Office", "parts": ["Notification", "Out of Office"] }, { "name": "Notification > Public Holiday", "parts": ["Notification", "Public Holiday"] } ], "mean_average_precision_safe": 0.83, "num_amber_labels": 1, "num_labels": 3, "num_red_labels": 1, "num_reviewed_comments": 10251, "version": 5 } }
version -Zahl angefordert werden. Sie können die Sonderwerte live und staging verwenden, um Statistiken für die aktuellen Live- oder Staging-Modellversionen abzurufen, oder den Sonderwert latest für die neueste verfügbare Modellversion.
latest, da Statistiken für nicht fixierte Modellversionen nicht garantiert verfügbar sind.
validation enthält die folgenden Felder:
| Name | Typ | BESCHREIBUNG |
|---|---|---|
mean_average_precision_safe | float | Mittlere durchschnittliche Genauigkeit (zwischen 0.0 und 1.0). Dieses Feld ist null , wenn MAP nicht verfügbar ist.
|
num_labels | Nummer | Anzahl der Bezeichnungen in der Taxonomie (zum Zeitpunkt des Anheftens der Modellversion). |
labels | array<Label> | Liste der Bezeichnungen in der Taxonomie (zum Zeitpunkt des Anheftens der Modellversion). Beachten Sie, dass, wie das Antwortbeispiel zeigt, übergeordnete Beschriftungen nicht nur als Teil von untergeordneten Beschriftungen, sondern auch als separate Beschriftung zurückgegeben werden. |
num_reviewed_comments | Nummer | Anzahl der überprüften Kommentare im Dataset (zum Zeitpunkt des Anheftens der Modellversion). |
version | Nummer | Modellversion. |
num_amber_labels | Nummer | Anzahl der Bezeichnungen im gelben Warnstatus. |
num_red_labels | Nummer | Anzahl der Beschriftungen im roten Warnstatus. |
dataset_score | Nummer | Gesamtpunktzahl des Datasets zwischen 0 und 100.
|
dataset_quality | string | Eine von "poor", "average", "good", "excellent", die für den gesamten Dataset-Qualitätsrang steht. Kann null sein, wenn nicht genügend Daten vorhanden sind.
|
balance | float | Ein Maß für die Ähnlichkeit zwischen überprüften und nicht überprüften Kommentaren (zwischen 0.0 und 1.0). Kann null sein, wenn nicht genügend Daten vorhanden sind.
|
balance_quality | string | Eine der "poor", "average", "good", "excellent", die den Grad der Balance-Qualität darstellen. Kann null sein, wenn nicht genügend Daten vorhanden sind.
|
coverage | float | Ein Teilwert der Bezeichnungsabdeckung im Dataset (zwischen 0.0 und 1.0). Kann null sein, wenn nicht genügend Daten vorhanden sind.
|
coverage_quality | string | Entweder "poor", "average", "good", "excellent", die den Grad der Abdeckungsqualität darstellen. Kann null sein, wenn nicht genügend Daten vorhanden sind.
|
all_labels_quality | string | Eine der "poor", "average", "good", "excellent", die den Qualitätsrang aller Beschriftungen darstellen. Kann null sein, wenn nicht genügend Daten vorhanden sind.
|
underperforming_labels_quality | string | Einer von "poor", "average", "good", "excellent", der den Qualitätsrang der Bezeichnungen mit unzureichender Leistung darstellt. Kann null sein, wenn nicht genügend Daten vorhanden sind.
|
Label das folgende Format:
| Name | Typ | BESCHREIBUNG |
|---|---|---|
name | string | Der Name der Bezeichnung, formatiert als Zeichenfolge. |
parts | array<string> | Der Name der Bezeichnung, formatiert als Liste hierarchischer Beschriftungen. Die Beschriftung "Parent Label > Child Label" hat beispielsweise das Format ["Parent Label", "Child Label"] . |