Szybki start: omówienie języka konwersacji
Skorzystaj z tego artykułu, aby rozpocząć pracę z usługą Conversational Language Understanding przy użyciu programu Language Studio i interfejsu API REST. Wykonaj następujące kroki, aby wypróbować przykład.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz jedną bezpłatnie.
Zaloguj się do programu Language Studio
Przejdź do programu Language Studio i zaloguj się przy użyciu konta platformy Azure.
W wyświetlonym oknie Wybierz zasób języka znajdź subskrypcję platformy Azure i wybierz zasób Język. Jeśli nie masz zasobu, możesz utworzyć nowy.
Szczegóły wystąpienia Wartość wymagana Subskrypcja platformy Azure Swoją subskrypcję platformy Azure. Grupa zasobów platformy Azure Nazwa grupy zasobów platformy Azure. Nazwa zasobu platformy Azure Nazwa zasobu platformy Azure. Lokalizacja Jeden z obsługiwanych regionów zasobu Language. Na przykład "Zachodnie stany USA 2". Warstwa cenowa Jedna z prawidłowych warstw cenowych zasobu Language. Aby wypróbować usługę, możesz użyć warstwy Bezpłatna (F0).
Tworzenie projektu interpretacji języka konwersacji
Po wybraniu zasobu Język utwórz projekt interpretacji języka konwersacji. Projekt to obszar roboczy umożliwiający tworzenie niestandardowych modeli uczenia maszynowego na podstawie danych. Dostęp do projektu można uzyskać tylko do Ciebie i innych osób, które mają dostęp do używanego zasobu Language.
Na potrzeby tego przewodnika Szybki start możesz pobrać ten przykładowy plik projektu i zaimportować go. Ten projekt może przewidywać zamierzone polecenia na podstawie danych wejściowych użytkownika, takich jak odczytywanie wiadomości e-mail, usuwanie wiadomości e-mail i dołączanie dokumentu do wiadomości e-mail.
W sekcji Informacje o pytaniach i języku konwersacyjnym w programie Language Studio wybierz pozycję Omówienie języka konwersacji.
Spowoduje to wyświetlenie strony projektów interpretacji języka konwersacji. Obok przycisku Utwórz nowy projekt wybierz pozycję Importuj.
W wyświetlonym oknie przekaż plik JSON, który chcesz zaimportować. Upewnij się, że plik jest zgodny z obsługiwanym formatem JSON.
Po zakończeniu przekazywania zostanie wyświetlona strona Definicja schematu. W tym przewodniku Szybki start schemat został już skompilowany, a wypowiedzi są już oznaczone intencjami i jednostkami.
Szkolenie modelu
Zazwyczaj po utworzeniu projektu należy utworzyć wypowiedzi schematu i etykiet. Na potrzeby tego przewodnika Szybki start zaimportowaliśmy już gotowy projekt ze skompilowanym schematem i oznaczonymi etykietami wypowiedzi.
Aby wytrenować model, musisz rozpocząć zadanie szkoleniowe. Dane wyjściowe pomyślnego zadania szkoleniowego to wytrenowany model.
Aby rozpocząć trenowanie modelu z poziomu programu Language Studio:
Wybierz pozycję Train model (Trenowanie modelu ) z menu po lewej stronie.
Wybierz pozycję Start a training job (Rozpocznij zadanie szkoleniowe) z górnego menu.
Wybierz pozycję Train a new model (Trenowanie nowego modelu) i wprowadź nową nazwę modelu w polu tekstowym. W przeciwnym razie, aby zastąpić istniejący model modelem wytrenowanym na nowych danych, wybierz pozycję Zastąp istniejący model , a następnie wybierz istniejący model. Zastępowanie wytrenowanego modelu jest nieodwracalne, ale nie wpłynie to na wdrożone modele do momentu wdrożenia nowego modelu.
Wybierz tryb trenowania. Możesz wybrać standardowe szkolenie w celu szybszego szkolenia , ale jest dostępne tylko dla języka angielskiego. Możesz też wybrać opcję Zaawansowane szkolenie , które jest obsługiwane w przypadku innych języków i projektów wielojęzycznych, ale obejmuje dłuższe czasy trenowania. Dowiedz się więcej o trybach trenowania.
Wybierz metodę dzielenia danych. Możesz wybrać opcję Automatyczne dzielenie zestawu testów z danych treningowych, w których system podzieli wypowiedzi między zestawy treningowe i testowe, zgodnie z określonymi wartościami procentowymi. Możesz też użyć ręcznego podziału danych treningowych i testowych, ta opcja jest włączona tylko wtedy, gdy dodano wypowiedzi do zestawu testów po oznaczeniu wypowiedzi.
Wybierz przycisk Train (Trenuj).
Wybierz identyfikator zadania szkoleniowego z listy. Zostanie wyświetlony panel, w którym można sprawdzić postęp trenowania, stan zadania i inne szczegóły dotyczące tego zadania.
Uwaga
- Tylko pomyślnie ukończone zadania szkoleniowe będą generować modele.
- Trenowanie może potrwać od kilku minut do kilku godzin na podstawie liczby wypowiedzi.
- Jednocześnie może być uruchomione tylko jedno zadanie trenowania. Nie można uruchomić innych zadań szkoleniowych w tym samym projekcie, dopóki uruchomione zadanie nie zostanie ukończone.
- Uczenie maszynowe używane do trenowania modeli jest regularnie aktualizowane. Aby wytrenować poprzednią wersję konfiguracji, wybierz pozycję Wybierz tutaj, aby zmienić się na stronie Rozpocznij zadanie trenowania i wybierz poprzednią wersję.
Wdrażanie modelu
Zazwyczaj po trenowaniu modelu należy przejrzeć jego szczegóły oceny. W tym przewodniku Szybki start wdrożysz model i udostępnisz go do wypróbowania w programie Language Studio lub możesz wywołać interfejs API przewidywania.
Aby wdrożyć model z poziomu programu Language Studio:
Wybierz pozycję Deploying a model (Wdrażanie modelu ) z menu po lewej stronie.
Wybierz pozycję Dodaj wdrożenie , aby uruchomić Kreatora dodawania wdrożenia .
Wybierz pozycję Utwórz nową nazwę wdrożenia, aby utworzyć nowe wdrożenie i przypisać wytrenowany model z listy rozwijanej poniżej. W przeciwnym razie możesz wybrać pozycję Zastąp istniejącą nazwę wdrożenia, aby skutecznie zastąpić model używany przez istniejące wdrożenie.
Uwaga
Zastępowanie istniejącego wdrożenia nie wymaga zmian wywołania interfejsu API przewidywania, ale uzyskane wyniki będą oparte na nowo przypisanym modelu.
Wybierz wytrenowany model z listy rozwijanej Model .
Wybierz pozycję Wdróż , aby uruchomić zadanie wdrożenia.
Po pomyślnym wdrożeniu obok zostanie wyświetlona data wygaśnięcia. Wygaśnięcie wdrożenia jest wtedy, gdy wdrożony model będzie niedostępny do przewidywania, co zwykle występuje dwanaście miesięcy po wygaśnięciu konfiguracji trenowania.
Test wdrożony model
Aby przetestować wdrożone modele z poziomu programu Language Studio:
Wybierz pozycję Testowanie wdrożeń z menu po lewej stronie.
W przypadku projektów wielojęzycznych z listy rozwijanej Wybierz język tekstu wybierz język testowej wypowiedzi.
Z listy rozwijanej Nazwa wdrożenia wybierz nazwę wdrożenia odpowiadającą modelowi, który chcesz przetestować. Można testować tylko modele przypisane do wdrożeń.
W polu tekstowym wprowadź wypowiedź do przetestowania. Jeśli na przykład utworzono aplikację dla wypowiedzi związanych z pocztą e-mail, możesz wprowadzić pozycję Usuń tę wiadomość e-mail.
W górnej części strony wybierz pozycję Uruchom test.
Po uruchomieniu testu w wyniku powinna zostać wyświetlona odpowiedź modelu. Wyniki można wyświetlić w widoku kart jednostek lub wyświetlić je w formacie JSON.
Czyszczenie zasobów
Jeśli projekt nie jest już potrzebny, możesz usunąć projekt przy użyciu programu Language Studio. Wybierz pozycję Projekty z menu nawigacji po lewej stronie, wybierz projekt, który chcesz usunąć, a następnie wybierz pozycję Usuń z górnego menu.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz jedną bezpłatnie.
Tworzenie nowego zasobu w witrynie Azure Portal
Zaloguj się do witryny Azure Portal , aby utworzyć nowy zasób języka AI platformy Azure.
Wybierz pozycję Utwórz nowy zasób
W wyświetlonym oknie wyszukaj pozycję Usługa językowa
Wybierz pozycję Utwórz
Utwórz zasób języka, postępując zgodnie z poniższymi szczegółami.
Szczegóły wystąpienia Wartość wymagana Region (Region) Jeden z obsługiwanych regionów zasobu Language. Nazwisko Wymagana nazwa zasobu language Warstwa cenowa Jedna z obsługiwanych warstw cenowych dla zasobu Język.
Pobieranie kluczy zasobów i punktu końcowego
Przejdź do strony przeglądu zasobu w witrynie Azure Portal.
Z menu po lewej stronie wybierz pozycję Klucze i punkt końcowy. Użyjesz punktu końcowego i klucza dla żądań interfejsu API
Importowanie nowego przykładowego projektu CLU
Po utworzeniu zasobu Język utwórz projekt interpretacji języka konwersacyjnego. Projekt to obszar roboczy umożliwiający tworzenie niestandardowych modeli uczenia maszynowego na podstawie danych. Dostęp do projektu można uzyskać tylko do Ciebie i innych osób, które mają dostęp do używanego zasobu Language.
Na potrzeby tego przewodnika Szybki start możesz pobrać ten przykładowy projekt i zaimportować go. Ten projekt może przewidywać zamierzone polecenia na podstawie danych wejściowych użytkownika, takich jak odczytywanie wiadomości e-mail, usuwanie wiadomości e-mail i dołączanie dokumentu do wiadomości e-mail.
Wyzwalanie zadania importowania projektu
Prześlij żądanie POST przy użyciu następującego adresu URL, nagłówków i treści JSON, aby zaimportować projekt.
Adres URL żądania
Podczas tworzenia żądania interfejsu API użyj następującego adresu URL. Zastąp wartości symboli zastępczych własnymi wartościami.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:import?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Wartość |
---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść
Treść wysyłanego kodu JSON jest podobna do poniższego przykładu. Aby uzyskać więcej informacji na temat obiektu JSON, zobacz dokumentację referencyjną.
{
"projectFileVersion": "{API-VERSION}",
"stringIndexType": "Utf16CodeUnit",
"metadata": {
"projectKind": "Conversation",
"settings": {
"confidenceThreshold": 0.7
},
"projectName": "{PROJECT-NAME}",
"multilingual": true,
"description": "Trying out CLU",
"language": "{LANGUAGE-CODE}"
},
"assets": {
"projectKind": "Conversation",
"intents": [
{
"category": "intent1"
},
{
"category": "intent2"
}
],
"entities": [
{
"category": "entity1"
}
],
"utterances": [
{
"text": "text1",
"dataset": "{DATASET}",
"intent": "intent1",
"entities": [
{
"category": "entity1",
"offset": 5,
"length": 5
}
]
},
{
"text": "text2",
"language": "{LANGUAGE-CODE}",
"dataset": "{DATASET}",
"intent": "intent2",
"entities": []
}
]
}
}
Klucz | Symbol zastępczy | Wartość | Przykład |
---|---|---|---|
{API-VERSION} |
Wersja wywoływanego interfejsu API. | 2023-04-01 |
|
projectName |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest uwzględniana w wielkości liter. | EmailAppDemo |
language |
{LANGUAGE-CODE} |
Ciąg określający kod języka wypowiedzi używanych w projekcie. Jeśli projekt jest projektem wielojęzycznym, wybierz kod języka większości wypowiedzi. | en-us |
multilingual |
true |
Wartość logiczna, która umożliwia posiadanie dokumentów w wielu językach w zestawie danych. Po wdrożeniu modelu można wykonywać zapytania dotyczące modelu w dowolnym obsługiwanym języku , w tym w językach, które nie są uwzględnione w dokumentach szkoleniowych. | true |
dataset |
{DATASET} |
Zobacz , jak wytrenować model , aby uzyskać informacje na temat dzielenia danych między zestaw testowy i treningowy. Możliwe wartości dla tego pola to Train i Test . |
Train |
Po pomyślnym żądaniu odpowiedź interfejsu API będzie zawierać operation-location
nagłówek z adresem URL, którego można użyć do sprawdzenia stanu zadania importu. Jest on sformatowany w następujący sposób:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Pobieranie stanu zadania importu
Po wysłaniu pomyślnego żądania importu projektu pełny adres URL żądania sprawdzania stanu zadania importu (w tym punktu końcowego, nazwy projektu i identyfikatora zadania) jest zawarty w nagłówku operation-location
odpowiedzi.
Użyj następującego żądania GET , aby wykonać zapytanie dotyczące stanu zadania importu. Możesz użyć adresu URL otrzymanego z poprzedniego kroku lub zastąpić wartości symboli zastępczych własnymi wartościami.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Opis | Wartość |
---|---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. | {YOUR-PRIMARY-RESOURCE-KEY} |
Treść odpowiedzi
Po wysłaniu żądania otrzymasz następującą odpowiedź. Nie sonduj tego punktu końcowego, dopóki parametr stanu nie zmieni się na "powodzenie".
{
"jobId": "xxxxx-xxxxx-xxxx-xxxxx",
"createdDateTime": "2022-04-18T15:17:20Z",
"lastUpdatedDateTime": "2022-04-18T15:17:22Z",
"expirationDateTime": "2022-04-25T15:17:20Z",
"status": "succeeded"
}
Rozpoczynanie trenowania modelu
Zazwyczaj po utworzeniu projektu należy utworzyć schemat i wypowiedzi tagów. Na potrzeby tego przewodnika Szybki start zaimportowaliśmy już gotowy projekt ze skompilowanym schematem i oznakowanymi wypowiedziami.
Utwórz żądanie POST przy użyciu następującego adresu URL, nagłówków i treści JSON w celu przesłania zadania szkoleniowego.
Adres URL żądania
Podczas tworzenia żądania interfejsu API użyj następującego adresu URL. Zastąp wartości symboli zastępczych własnymi wartościami.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Wartość |
---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść żądania
Użyj następującego obiektu w żądaniu. Model zostanie nazwany po wartości używanej dla parametru po zakończeniu modelLabel
trenowania.
{
"modelLabel": "{MODEL-NAME}",
"trainingMode": "{TRAINING-MODE}",
"trainingConfigVersion": "{CONFIG-VERSION}",
"evaluationOptions": {
"kind": "percentage",
"testingSplitPercentage": 20,
"trainingSplitPercentage": 80
}
}
Klucz | Symbol zastępczy | Wartość | Przykład |
---|---|---|---|
modelLabel |
{MODEL-NAME} |
Nazwa modelu. | Model1 |
trainingConfigVersion |
{CONFIG-VERSION} |
Wersja modelu konfiguracji trenowania. Domyślnie jest używana najnowsza wersja modelu. | 2022-05-01 |
trainingMode |
{TRAINING-MODE} |
Tryb trenowania, który ma być używany do trenowania. Obsługiwane tryby to standardowe szkolenie, szybsze trenowanie, ale dostępne tylko w przypadku szkoleń angielskich i zaawansowanych obsługiwanych w innych językach i projektach wielojęzycznych, ale obejmuje dłuższy czas szkolenia. Dowiedz się więcej o trybach trenowania. | standard |
kind |
percentage |
Metody podzielone. Możliwe wartości to percentage lub manual . Aby uzyskać więcej informacji, zobacz , jak wytrenować model . |
percentage |
trainingSplitPercentage |
80 |
Procent oznakowanych danych, które mają zostać uwzględnione w zestawie treningowym. Zalecana wartość to 80 . |
80 |
testingSplitPercentage |
20 |
Procent oznakowanych danych, które mają zostać uwzględnione w zestawie testów. Zalecana wartość to 20 . |
20 |
Uwaga
Wartości trainingSplitPercentage
i testingSplitPercentage
są wymagane tylko wtedy, gdy Kind
jest ustawiona wartość percentage
, a suma obu wartości procentowych powinna być równa 100.
Po wysłaniu żądania interfejsu API otrzymasz odpowiedź wskazującą 202
powodzenie. W nagłówkach odpowiedzi wyodrębnij operation-location
wartość. Zostanie on sformatowany w następujący sposób:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Możesz użyć tego adresu URL, aby uzyskać stan zadania szkoleniowego.
Uzyskiwanie stanu zadania szkoleniowego
Ukończenie szkolenia może zająć trochę czasu — czasami od 10 do 30 minut. Następujące żądanie umożliwia kontynuowanie sondowania stanu zadania szkoleniowego do momentu pomyślnego ukończenia zadania.
Po wysłaniu pomyślnego żądania szkoleniowego pełny adres URL żądania sprawdzania stanu zadania (w tym punktu końcowego, nazwy projektu i identyfikatora zadania) jest zawarty w nagłówku operation-location
odpowiedzi.
Użyj następującego żądania GET , aby uzyskać stan postępu trenowania modelu. Zastąp poniższe wartości symboli zastępczych własnymi wartościami.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Wartość |
---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść odpowiedzi
Po wysłaniu żądania otrzymasz następującą odpowiedź. Nie sonduj tego punktu końcowego , dopóki parametr stanu nie zmieni się na "powodzenie".
{
"result": {
"modelLabel": "{MODEL-LABEL}",
"trainingConfigVersion": "{TRAINING-CONFIG-VERSION}",
"trainingMode": "{TRAINING-MODE}",
"estimatedEndDateTime": "2022-04-18T15:47:58.8190649Z",
"trainingStatus": {
"percentComplete": 3,
"startDateTime": "2022-04-18T15:45:06.8190649Z",
"status": "running"
},
"evaluationStatus": {
"percentComplete": 0,
"status": "notStarted"
}
},
"jobId": "xxxxx-xxxxx-xxxx-xxxxx-xxxx",
"createdDateTime": "2022-04-18T15:44:44Z",
"lastUpdatedDateTime": "2022-04-18T15:45:48Z",
"expirationDateTime": "2022-04-25T15:44:44Z",
"status": "running"
}
Key | Wartość | Przykład |
---|---|---|
modelLabel |
Nazwa modelu | Model1 |
trainingConfigVersion |
Wersja konfiguracji trenowania. Domyślnie jest używana najnowsza wersja . | 2022-05-01 |
trainingMode |
Wybrany tryb trenowania. | standard |
startDateTime |
Czas rozpoczęcia szkolenia | 2022-04-14T10:23:04.2598544Z |
status |
Stan zadania szkoleniowego | running |
estimatedEndDateTime |
Szacowany czas zakończenia zadania szkoleniowego | 2022-04-14T10:29:38.2598544Z |
jobId |
Identyfikator zadania szkoleniowego | xxxxx-xxxx-xxxx-xxxx-xxxxxxxxx |
createdDateTime |
Data i godzina utworzenia zadania trenowania | 2022-04-14T10:22:42Z |
lastUpdatedDateTime |
Data i godzina ostatniego zaktualizowania zadania szkoleniowego | 2022-04-14T10:23:45Z |
expirationDateTime |
Data i godzina wygaśnięcia zadania trenowania | 2022-04-14T10:22:42Z |
Wdrażanie modelu
Zazwyczaj po trenowaniu modelu należy przejrzeć jego szczegóły oceny. W tym przewodniku Szybki start wdrożysz model i wywołasz interfejs API przewidywania, aby wykonać zapytanie dotyczące wyników.
Przesyłanie zadania wdrożenia
Utwórz żądanie PUT przy użyciu następującego adresu URL, nagłówków i treści JSON, aby rozpocząć wdrażanie modelu interpretacji języka konwersacji.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Wartość |
---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść żądania
{
"trainedModelLabel": "{MODEL-NAME}",
}
Klucz | Symbol zastępczy | Wartość | Przykład |
---|---|---|---|
trainedModelLabel | {MODEL-NAME} |
Nazwa modelu, która zostanie przypisana do wdrożenia. Można przypisywać tylko pomyślnie wytrenowane modele. Ta wartość jest uwzględniana w wielkości liter. | myModel |
Po wysłaniu żądania interfejsu API otrzymasz odpowiedź wskazującą 202
powodzenie. W nagłówkach odpowiedzi wyodrębnij operation-location
wartość. Zostanie on sformatowany w następujący sposób:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Możesz użyć tego adresu URL, aby uzyskać stan zadania wdrożenia.
Pobieranie stanu zadania wdrożenia
Po wysłaniu pomyślnego żądania wdrożenia pełny adres URL żądania sprawdzania stanu zadania (w tym punktu końcowego, nazwy projektu i identyfikatora zadania) jest zawarty w nagłówku operation-location
odpowiedzi.
Użyj następującego żądania GET , aby uzyskać stan zadania wdrożenia. Zastąp wartości symboli zastępczych własnymi wartościami.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Wartość |
---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść odpowiedzi
Po wysłaniu żądania otrzymasz następującą odpowiedź. Nie sonduj tego punktu końcowego , dopóki parametr stanu nie zmieni się na "powodzenie".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Model zapytań
Po wdrożeniu modelu można rozpocząć korzystanie z niego w celu przewidywania za pomocą interfejsu API przewidywania.
Po pomyślnym wdrożeniu można rozpocząć wykonywanie zapytań względem wdrożonego modelu pod kątem przewidywań.
Utwórz żądanie POST przy użyciu następującego adresu URL, nagłówków i treści JSON, aby rozpocząć testowanie modelu interpretacji języka konwersacji.
Adres URL żądania
{ENDPOINT}/language/:analyze-conversations?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Wartość |
---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść żądania
{
"kind": "Conversation",
"analysisInput": {
"conversationItem": {
"id": "1",
"participantId": "1",
"text": "Text 1"
}
},
"parameters": {
"projectName": "{PROJECT-NAME}",
"deploymentName": "{DEPLOYMENT-NAME}",
"stringIndexType": "TextElement_V8"
}
}
Klucz | Symbol zastępczy | Wartość | Przykład |
---|---|---|---|
participantId |
{JOB-NAME} |
"MyJobName |
|
id |
{JOB-NAME} |
"MyJobName |
|
text |
{TEST-UTTERANCE} |
Wypowiedź, z której chcesz przewidzieć jego intencję i wyodrębnić jednostki. | "Read Matt's email |
projectName |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest uwzględniana w wielkości liter. | myProject |
deploymentName |
{DEPLOYMENT-NAME} |
Nazwa wdrożenia. Ta wartość jest uwzględniana w wielkości liter. | staging |
Po wysłaniu żądania otrzymasz następującą odpowiedź na potrzeby przewidywania
Treść odpowiedzi
{
"kind": "ConversationResult",
"result": {
"query": "Text1",
"prediction": {
"topIntent": "inten1",
"projectKind": "Conversation",
"intents": [
{
"category": "intent1",
"confidenceScore": 1
},
{
"category": "intent2",
"confidenceScore": 0
},
{
"category": "intent3",
"confidenceScore": 0
}
],
"entities": [
{
"category": "entity1",
"text": "text1",
"offset": 29,
"length": 12,
"confidenceScore": 1
}
]
}
}
}
Klucz | Przykładowa wartość | opis |
---|---|---|
zapytanie | "Przeczytaj e-mail Matta" | tekst przesłany do zapytania. |
topIntent | "Odczyt" | Przewidywana intencja z najwyższym współczynnikiem ufności. |
Zamiarów | [] | Lista wszystkich intencji, które zostały przewidywane dla tekstu zapytania, każdy z nich z oceną ufności. |
encje | [] | tablica zawierająca listę wyodrębnionych jednostek z tekstu zapytania. |
Odpowiedź interfejsu API dla projektu konwersacji
W projekcie konwersacji uzyskasz przewidywania zarówno dla intencji, jak i jednostek, które znajdują się w projekcie.
- Intencje i jednostki obejmują współczynnik ufności z zakresu od 0,0 do 1,0 skojarzony z tym, jak pewny jest, że model przewiduje określony element w projekcie.
- Najwyżej oceniana intencja jest zawarta we własnym parametrze.
- Tylko przewidywane jednostki będą wyświetlane w odpowiedzi.
- Jednostki wskazują:
- Tekst wyodrębnionej jednostki
- Jego lokalizacja początkowa oznaczona wartością przesunięcia
- Długość tekstu jednostki oznaczona wartością długości.
Czyszczenie zasobów
Jeśli projekt nie jest już potrzebny, możesz usunąć projekt przy użyciu interfejsów API.
Utwórz żądanie DELETE przy użyciu następującego adresu URL, nagłówków i treści JSON, aby usunąć projekt interpretacji języka konwersacji.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}?api-version={API-VERSION}
Nagłówki
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Key | Wartość |
---|---|
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Po wysłaniu żądania interfejsu API otrzymasz odpowiedź wskazującą 202
powodzenie, co oznacza, że projekt został usunięty.