LUIS 앱에 대한 DatetimeV2 미리 빌드된 엔터티
Important
LUIS는 2025년 10월 1일에 사용 중지되며 2023년 4월 1일부터 새 LUIS 리소스를 만들 수 없습니다. 지속적인 제품 지원 및 다국어 기능을 활용하려면 LUIS 애플리케이션을 대화 언어 이해로 마이그레이션하는 것이 좋습니다.
datetimeV2 미리 작성된 엔터티는 날짜 및 시간 값을 추출합니다. 이러한 값은 사용할 클라이언트 프로그램에 대해 표준화된 형식으로 결정됩니다. 발화에 완료되지 않은 날짜 또는 시간이 있는 경우 LUIS는 엔드포인트 응답에 과거 및 이후 값을 모두 포함합니다. 이 엔터티를 이미 학습했기 때문에 datetimeV2를 애플리케이션 의도에 포함하는 예제 발언을 추가할 필요가 없습니다.
datetimeV2 형식
DatetimeV2는 Recognizers-text GitHub 리포지토리에서 관리됩니다.
예제 JSON
다음 발화 및 부분 JSON 응답은 다음과 같습니다.
8am on may 2nd 2019
"entities": {
"datetimeV2": [
{
"type": "datetime",
"values": [
{
"timex": "2019-05-02T08",
"resolution": [
{
"value": "2019-05-02 08:00:00"
}
]
}
]
}
]
}
datetimeV2의 하위 형식
datetimeV2 미리 빌드된 엔터티에는 다음과 같은 하위 형식이 있으며, 각 엔터티의 예제는 다음 표에 제공됩니다.
date
time
daterange
timerange
datetimerange
해상도 값
- 발화의 날짜 또는 시간이 완전히 지정되고 명확하지 않은 경우 배열에는 하나의 요소가 있습니다.
- datetimeV2 값이 모호한 경우 배열에는 두 개의 요소가 있습니다. 모호성에는 특정 연도, 시간 또는 시간 범위의 부족이 포함됩니다. 예제는 모호한 날짜를 참조하세요. 오전(A.M.) 또는 오후(P.M.) 시간이 모호한 경우, 두 값이 모두 포함됩니다.
- 발화에 모호성이 있는 두 요소가 있는 경우 배열에는 네 개의 요소가 있습니다. 이 모호성에는 다음과 같은 요소가 포함됩니다.
- 연도와 같이 모호한 날짜 또는 날짜 범위
- 오전(A.M.) 또는 오후(P.M.)가 모호한 시간 또는 시간 범위(예: 4월 3일 3:00).
values
배열의 각 요소에는 다음 필드가 있을 수 있습니다.
Property name | 속성 설명 |
---|---|
timex | TIMEML 언어를 사용하는 주석에 대한 ISO 8601 표준 및 TIMEX3 특성을 따르는 TIMEX 형식으로 표현된 시간, 날짜 또는 날짜 범위입니다. |
mod | 와 같은 before after 값을 사용하는 방법을 설명하는 데 사용되는 용어입니다. |
type | 하위 형식은 다음 항목 중 하나일 수 있습니다. datetime , , time date , daterange timerange , duration datetimerange set . |
value | 선택 사항. yyyy-MM-dd(날짜), HH:mm:ss(시간) yyyy-MM-dd HH:mm:ss(날짜/시간) 형식의 날짜/시간 개체입니다. 이 duration 경우 type 값은 초(기간)입니다.type 이 datetime 또는 date , time 또는 기간인 경우에만 사용됩니다. |
유효한 날짜 값
datetimeV2는 다음 범위 간의 날짜를 지원합니다.
Min | Max |
---|---|
1900년 1월 1일 | 2099년 12월 31일 |
모호한 날짜
날짜가 과거 또는 미래인 경우 LUIS에서는 모든 값을 제공합니다. 예를 들어 연도 없이 월 및 날짜를 포함하는 발언이 있습니다.
예를 들어 다음과 같은 발화가 제공됩니다.
May 2nd
- 오늘 날짜가 2017년 5월 3일인 경우 LUIS는 "2017-05-02" 및 "2018-05-02"를 모두 값으로 제공합니다.
- 오늘 날짜가 2017년 5월 1일인 경우 LUIS는 "2016-05-02" 및 "2017-05-02"를 모두 값으로 제공합니다.
다음 예제에서는 엔터티 "may 2nd"의 해상도를 보여 주세요. 이 결의안은 오늘 날짜가 2017년 5월 2일부터 2018년 5월 1일 사이의 날짜라고 가정합니다.
필드에 있는 X
timex
필드는 발화에 명시적으로 지정되지 않은 날짜의 일부입니다.
날짜 확인 예제
다음 발화 및 부분 JSON 응답은 다음과 같습니다.
May 2nd
"entities": {
"datetimeV2": [
{
"type": "date",
"values": [
{
"timex": "XXXX-05-02",
"resolution": [
{
"value": "2019-05-02"
},
{
"value": "2020-05-02"
}
]
}
]
}
]
}
숫자 날짜에 대한 날짜 범위 확인 예제
datetimeV2
엔터티는 날짜 및 시간 범위를 추출합니다. start
및 end
필드는 범위의 시작과 끝을 지정합니다. 발화May 2nd to May 5th
의 경우 LUIS는 현재 연도와 다음 연도 모두에 대한 날짜 범위 값을 제공합니다. timex
필드에서 값은 XXXX
연도의 모호성을 나타냅니다. P3D
는 기간이 3일임을 나타냅니다.
다음 발화 및 부분 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"
}
]
}
]
}
]
}
요일의 날짜 범위 확인 예제
다음 예제에서는 LUIS가 datetimeV2를 사용하여 발화를 Tuesday to Thursday
확인하는 방법을 보여줍니다. 이 예제에서 현재 날짜는 6월 19일입니다. LUIS에는 현재 날짜 앞에 오는 날짜 범위와 이후의 두 날짜 범위에 대한 날짜 범위 값이 포함됩니다.
다음 발화 및 부분 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"
}
]
}
]
}
]
}
모호한 시간
시간 또는 시간 범위가 모호한 경우 값 배열에는 두 개의 시간 요소가 포함됩니다. 모호한 시간이 있는 경우 값에 오전(A.M.) 또는 오후(P.M.) 시간이 모두 포함됩니다.
시간 범위 해결 방법 예제
API V3에서 DatetimeV2 JSON 응답이 변경되었습니다. 다음 예제에서는 LUIS가 datetimeV2를 사용하여 시간 범위가 있는 발화를 확인하는 방법을 보여 있습니다.
API V2의 변경 내용:
datetimeV2.timex.type
속성은 부모 수준에서datetimev2.type
반환되므로 더 이상 반환되지 않습니다.datetimeV2.value
속성의 이름이datetimeV2.timex
로 변경되었습니다.
다음 발화 및 부분 JSON 응답은 다음과 같습니다.
from 6pm to 7pm
다음 JSON의 verbose
매개 변수가 false
로 설정되어 있습니다.
"entities": {
"datetimeV2": [
{
"type": "timerange",
"values": [
{
"timex": "(T18,T19,PT1H)",
"resolution": [
{
"start": "18:00:00",
"end": "19:00:00"
}
]
}
]
}
]
}
시간 해결 방법 예
다음 발화 및 부분 JSON 응답은 다음과 같습니다.
8am
"entities": {
"datetimeV2": [
{
"type": "time",
"values": [
{
"timex": "T08",
"resolution": [
{
"value": "08:00:00"
}
]
}
]
}
]
}
더 이상 사용되지 않는 미리 빌드된 datetime
datetime
미리 빌드된 엔터티는 사용되지 않으며 datetimeV2로 대체됩니다.
LUIS 앱에서 datetime
을 datetimeV2
로 바꾸려면 다음 단계를 완료합니다.
- LUIS 웹 인터페이스의 엔터티 창을 엽니다.
- datetime 미리 빌드된 엔터티를 삭제합니다.
- 미리 빌드된 엔터티 추가를 선택합니다.
- datetimeV2를 선택하고 저장을 클릭합니다.