새 Context
모델 로딩 중...

Intent를 선택하거나 추가하세요

왼쪽 사이드바에서 Intent, Slot, Macro를 관리할 수 있습니다

Speech to Intent 문법 치트시트

빠른 참조

📝
Phrase (문구) 일반 텍스트 커피 한 잔 주세요
( )
Optional (선택) 있어도 되고 없어도 되는 (뜨거운) 커피
[ ]
Choice (택일) 여러 개 중 하나 선택 [커피, 라떼]
$
Slot (슬롯) 값을 추출하는 변수 $음료:주문음료
@
Macro (매크로) 재사용 가능한 문구 모음 @주문
📝

Phrase (문구)

사용자가 말하는 단어나 문장을 정확하게 매칭합니다.

단어1 단어2 ... 단어N
1 커피 한 잔 주세요 "커피 한 잔 주세요"라고 정확히 말해야 인식
( )

Optional (선택)

괄호 안의 내용은 말해도 되고 안 해도 됩니다.

(선택적 내용)
1 (뜨거운) 커피 주세요 "뜨거운 커피 주세요" 또는 "커피 주세요" 모두 인식
2 (@존칭) 커피 주세요 Optional 안에 매크로 사용 가능
Optional만 단독으로 사용할 수 없습니다. 반드시 하나 이상의 고정 문구가 필요합니다.
[ ]

Choice (택일)

대괄호 안에 콤마로 구분된 여러 항목 중 하나가 매칭됩니다.

[항목1, 항목2, ..., 항목N]
1 [커피, 라떼, 아메리카노] 주세요 "커피 주세요", "라떼 주세요", "아메리카노 주세요" 모두 인식
2 [켜줘, 꺼줘] "불 켜줘" 또는 "불 꺼줘" 인식
$

Slot (슬롯)

사용자가 말한 특정 값을 추출합니다. 슬롯 타입과 변수명으로 구성됩니다.

$슬롯타입:변수명
1 $음료:주문음료 주세요 음료 슬롯에 정의된 값 중 하나를 인식하고 추출
2 $크기:사이즈 $음료:음료 주세요 여러 슬롯을 동시에 사용
3 $음료:첫번째 하고 $음료:두번째 주세요 같은 슬롯 타입을 다른 변수명으로 여러 번 사용
인식 결과 예시
"톨 아메리카노 주세요" → { intent: "orderBeverage", 사이즈: "톨", 음료: "아메리카노" }
같은 슬롯 타입을 여러 번 사용할 경우, 변수명을 다르게 지정해야 합니다.
@

Macro (매크로)

슬롯과 비슷하지만 값을 추출하지 않습니다. 자주 사용되는 표현들을 묶어서 재사용합니다.

@매크로이름
1 커피 @주문 @주문에 정의된 값(주세요, 줘, 부탁해 등) 중 하나로 인식
인식 결과 예시
"커피 주세요" → { intent: "orderBeverage" }
"커피 줘" → { intent: "orderBeverage" }

Slot vs Macro 비교

구분 Slot ($) Macro (@)
문법 $타입:변수명 @이름
값 추출 ✅ 추출됨 ❌ 추출 안됨
용도 사용자 선택을 알아야 할 때 다양한 표현을 묶을 때

복합 예시

1 ($크기:사이즈) $음료:음료 (@단위) @주문 "톨 아메리카노 한 잔 주세요", "라떼 줘", "그란데 카페모카 두 잔 부탁해" 등
2 $장소:위치 [불, 조명, 전등] [켜줘, 꺼줘] "거실 불 켜줘", "침실 조명 꺼줘", "화장실 전등 켜줘" 등