Wstępnie skompilowana jednostka DatetimeV2 dla aplikacji usługi LUIS
Ważne
Usługa LUIS zostanie wycofana 1 października 2025 r. i od 1 kwietnia 2023 r. nie będzie można utworzyć nowych zasobów usługi LUIS. Zalecamy migrację aplikacji LUIS do interpretacji języka konwersacyjnego, aby korzystać z ciągłej pomocy technicznej i wielojęzycznych możliwości produktów.
Wstępnie utworzona jednostka datetimeV2 wyodrębnia wartości daty i godziny. Te wartości są rozpoznawane w standardowym formacie używanym przez programy klienckie. Gdy wypowiedź ma datę lub godzinę, która nie jest kompletna, usługa LUIS zawiera zarówno wcześniejsze, jak i przyszłe wartości w odpowiedzi punktu końcowego. Ponieważ ta jednostka jest już wytrenowana, nie trzeba dodawać przykładowych wypowiedzi zawierających wartość datetimeV2 do intencji aplikacji.
Typy daty/godziny 2
Funkcja DatetimeV2 jest zarządzana z repozytorium GitHub Recognizers-text .
Przykładowy kod JSON
Poniżej przedstawiono następującą wypowiedź i jego częściową odpowiedź JSON.
8am on may 2nd 2019
"entities": {
"datetimeV2": [
{
"type": "datetime",
"values": [
{
"timex": "2019-05-02T08",
"resolution": [
{
"value": "2019-05-02 08:00:00"
}
]
}
]
}
]
}
Podtypy daty/godziny 2
Wstępnie utworzona jednostka datetimeV2 ma następujące podtypy, a przykłady z nich znajdują się w poniższej tabeli:
date
time
daterange
timerange
datetimerange
Wartości rozpoznawania
- Tablica ma jeden element, jeśli data lub godzina w wypowiedzi jest w pełni określona i jednoznaczna.
- Tablica zawiera dwa elementy, jeśli wartość datetimeV2 jest niejednoznaczna. Niejednoznaczność obejmuje brak określonego roku, czasu lub zakresu czasu. Zobacz Niejednoznaczne daty, aby zapoznać się z przykładami . Gdy czas jest niejednoznaczny dla A.M. lub PM, oba wartości są uwzględniane.
- Tablica zawiera cztery elementy, jeśli wypowiedź ma dwa elementy z niejednoznacznością. Ta niejednoznaczność obejmuje elementy, które mają:
- Data lub zakres dat, który jest niejednoznaczny co do roku
- Zakres czasu lub czasu, który jest niejednoznaczny co do M.M. lub PM. Na przykład 3:00 3 kwietnia.
Każdy element tablicy values
może mieć następujące pola:
Nazwa właściwości | Opis właściwości |
---|---|
Timex | godzina, data lub zakres dat wyrażony w formacie TIMEX zgodny ze standardem ISO 8601 i atrybutami TIMEX3 dla adnotacji przy użyciu języka TimeML. |
mod | termin używany do opisywania sposobu używania wartości, takiej jak before , after . |
type | Podtyp, który może być jednym z następujących elementów: datetime , , time date , . set daterange timerange datetimerange duration |
wartość | Opcjonalny. Obiekt datetime w formacie rrrr-MM-dd (data), HH:mm:ss (czas) rrrr-MM-dd HH:mm:ss (data/godzina). Jeśli type wartość to duration , wartość to liczba sekund (czas trwania) Używane tylko wtedy, gdy type czas trwania to datetime lub date , time lub . |
Prawidłowe wartości daty
Data /godzinaV2 obsługuje daty między następującymi zakresami:
Min | Max |
---|---|
1 stycznia 1900 r. | 31 grudnia 2099 r. |
Niejednoznaczne daty
Jeśli data może być w przeszłości lub w przyszłości, usługa LUIS udostępnia obie wartości. Przykładem jest wypowiedź zawierająca miesiąc i datę bez roku.
Na przykład, biorąc pod uwagę następującą wypowiedź:
May 2nd
- Jeśli bieżąca data to 3 maja 2017 r., usługa LUIS udostępnia wartości "2017-05-02" i "2018-05-02".
- Gdy dzisiejsza data to 1 maja 2017 r., usługa LUIS udostępnia wartości "2016-05-02" i "2017-05-02".
W poniższym przykładzie pokazano rozdzielczość jednostki "may 2nd". W tej rezolucji przyjęto założenie, że dzisiejsza data to data między 2 maja 2017 r. a 1 maja 2018 r.
Pola w X
timex
polu to części daty, które nie są jawnie określone w wypowiedzi.
Przykład rozwiązania daty
Poniżej przedstawiono następującą wypowiedź i jego częściową odpowiedź JSON.
May 2nd
"entities": {
"datetimeV2": [
{
"type": "date",
"values": [
{
"timex": "XXXX-05-02",
"resolution": [
{
"value": "2019-05-02"
},
{
"value": "2020-05-02"
}
]
}
]
}
]
}
Przykłady rozpoznawania zakresu dat dla daty liczbowej
Jednostka datetimeV2
wyodrębnia zakresy dat i godzin. Pola start
i end
określają początek i koniec zakresu. W przypadku wypowiedzi May 2nd to May 5th
usługa LUIS udostępnia wartości daterange dla bieżącego roku i następnego roku. timex
W polu XXXX
wartości wskazują niejednoznaczność roku. P3D
wskazuje, że okres wynosi trzy dni.
Poniżej przedstawiono następującą wypowiedź i jego częściową odpowiedź JSON.
May 2nd to May 5th
"entities": {
"datetimeV2": [
{
"type": "daterange",
"values": [
{
"timex": "(XXXX-05-02,XXXX-05-05,P3D)",
"resolution": [
{
"start": "2019-05-02",
"end": "2019-05-05"
},
{
"start": "2020-05-02",
"end": "2020-05-05"
}
]
}
]
}
]
}
Przykłady rozwiązywania zakresu dat dla dnia tygodnia
W poniższym przykładzie pokazano, jak usługa LUIS używa daty/godziny 2 do rozpoznawania wypowiedzi Tuesday to Thursday
. W tym przykładzie bieżąca data to 19 czerwca. Usługa LUIS zawiera wartości daterange dla obu zakresów dat, które poprzedzają i są zgodne z bieżącą datą.
Poniżej przedstawiono następującą wypowiedź i jego częściową odpowiedź JSON.
Tuesday to Thursday
"entities": {
"datetimeV2": [
{
"type": "daterange",
"values": [
{
"timex": "(XXXX-WXX-2,XXXX-WXX-4,P2D)",
"resolution": [
{
"start": "2019-10-08",
"end": "2019-10-10"
},
{
"start": "2019-10-15",
"end": "2019-10-17"
}
]
}
]
}
]
}
Niejednoznaczny czas
Tablica wartości zawiera dwa elementy czasu, jeśli czas lub zakres czasu jest niejednoznaczny. Gdy jest niejednoznaczny czas, wartości mają zarówno godziny A.M., jak i PM.
Przykład rozdzielczości zakresu czasu
Odpowiedź JSON datetimeV2 została zmieniona w interfejsie API w wersji 3. W poniższym przykładzie pokazano, jak usługa LUIS używa daty/godziny 2 do rozpoznawania wypowiedzi, która ma zakres czasu.
Zmiany z interfejsu API w wersji 2:
datetimeV2.timex.type
Właściwość nie jest już zwracana, ponieważ jest zwracana na poziomie nadrzędnym .datetimev2.type
- Nazwa
datetimeV2.value
właściwości została zmieniona nadatetimeV2.timex
.
Poniżej przedstawiono następującą wypowiedź i jego częściową odpowiedź JSON.
from 6pm to 7pm
Poniższy kod JSON ma verbose
parametr ustawiony na false
wartość :
"entities": {
"datetimeV2": [
{
"type": "timerange",
"values": [
{
"timex": "(T18,T19,PT1H)",
"resolution": [
{
"start": "18:00:00",
"end": "19:00:00"
}
]
}
]
}
]
}
Przykład rozwiązywania czasu
Poniżej przedstawiono następującą wypowiedź i jego częściową odpowiedź JSON.
8am
"entities": {
"datetimeV2": [
{
"type": "time",
"values": [
{
"timex": "T08",
"resolution": [
{
"value": "08:00:00"
}
]
}
]
}
]
}
Przestarzała wstępnie utworzona data/godzina
Wstępnie utworzona datetime
jednostka jest przestarzała i zastępowana datą /godziną 2.
Aby zastąpić ciąg datetime
ciągiem datetimeV2
w aplikacji usługi LUIS, wykonaj następujące kroki:
- Otwórz okienko Jednostki interfejsu internetowego usługi LUIS.
- Usuń wstępnie skompilowaną jednostkę datetime .
- Wybierz pozycję Dodaj wstępnie utworzoną jednostkę
- Wybierz pozycję datetimeV2 i kliknij przycisk Zapisz.
Następne kroki
Dowiedz się więcej o wymiarze, jednostkach poczty e-mail i numerze.