이전 글에서는 Azure AI Language의 기본 기능인 NER, PII, 감정 분석, 핵심 구 추출처럼 텍스트에서 정보를 뽑거나 분류하는 기능을 살펴봤습니다. 이번 글에서는 그보다 한 단계 더 대화형 서비스에 가까운 Conversational Language Understanding, 줄여서 CLU를 실습해보겠습니다.
CLU는 사용자의 문장을 읽고, 사용자가 무엇을 하려는지 분류하고, 그 문장 안에서 필요한 정보까지 뽑아내는 기능입니다. 예를 들어 사용자가 “내일 오후 2시에 미팅 잡아줘”라고 말하면, AI는 이 문장의 의도를 일정 생성으로 판단하고, “내일 오후 2시”라는 시간을 엔티티로 추출할 수 있습니다.
이번 실습은 코드 구현보다는 Azure Foundry Portal에서 CLU 프로젝트를 가져오고, 학습하고, 테스트하는 전체 흐름을 이해하는 데 초점을 둡니다. 나중에 챗봇, 고객센터 자동 분류, 이메일 자동 분류 같은 기능을 만들 때 이 구조가 그대로 기반이 됩니다.
이번 글의 핵심 질문
사용자의 발화가 들어왔을 때 AI는 어떻게 “무슨 요청인지”와 “필요한 정보가 무엇인지”를 구분할까요? 이번 글에서는 CLU 프로젝트를 가져와 Intent와 Entity를 확인하고, 모델을 학습한 뒤 테스트하는 흐름을 실습합니다.
https://github.com/yunalee-dev/Azure-AI-Services-Labs
GitHub - yunalee-dev/Azure-AI-Services-Labs
Contribute to yunalee-dev/Azure-AI-Services-Labs development by creating an account on GitHub.
github.com
목차
1. CLU란?
CLU는 Conversational Language Understanding의 약자입니다. 한국어로 풀어 쓰면 “대화 언어 이해” 정도로 볼 수 있습니다. 이름 그대로 사용자의 대화 문장을 이해해서, 사용자가 어떤 작업을 원하고 있는지 판단하는 기능입니다.
여기서 중요한 단어가 두 가지 있습니다. 바로 Intent와 Entity입니다. Intent는 사용자의 목적이고, Entity는 그 목적을 수행하는 데 필요한 세부 정보입니다.
| 개념 | 쉬운 설명 | 예시 |
|---|---|---|
| Intent | 사용자가 하려는 일 | 이메일 보내기, 일정 예약, 주문 취소 |
| Entity | 그 일을 처리하는 데 필요한 정보 | 받는 사람, 날짜, 시간, 상품명 |
| Utterance | 사용자가 실제로 입력한 문장 | “민수에게 내일 회의 메일 보내줘” |
쉽게 말하면 CLU는 문장을 읽고 “이 사람은 지금 무엇을 하고 싶어 하지?”를 먼저 판단한 뒤, “그 일을 처리하려면 어떤 정보가 필요하지?”를 찾아내는 역할을 합니다.
한 줄로 정리하면
CLU는 사용자의 문장을 Intent로 분류하고, 문장 안에서 필요한 Entity를 추출하는 Azure AI Language의 대화 이해 기능입니다.
2. 대화형 AI에서 Intent와 Entity가 중요한 이유
챗봇이나 자동 응답 시스템을 만들 때 가장 먼저 필요한 것은 “사용자가 무슨 말을 했는가”가 아닙니다.
더 중요한 것은 사용자가 무엇을 원했는가입니다.
예를 들어 사용자가 아래처럼 말할 수 있습니다.
- “주문 취소하고 싶어요.”
- “방금 결제한 거 취소 가능해요?”
- “이거 환불하려면 어떻게 해요?”
문장은 모두 다르지만 사용자의 목적은 비슷합니다. AI 입장에서는 이 문장들을 모두 주문 취소 또는 환불 문의라는 Intent로 묶을 수 있어야 합니다. 그래야 같은 업무 흐름으로 연결할 수 있습니다.
반대로 Entity는 같은 Intent 안에서도 실제 처리에 필요한 세부 정보를 구분합니다.
예를 들어 “내일 오후 3시에 민수에게 회의 메일 보내줘”라는 문장에서는 Intent는 이메일 전송이고, Entity는 받는 사람, 시간, 주제입니다.
| 사용자 발화 | Intent | Entity |
|---|---|---|
| “민수에게 회의 메일 보내줘” | 이메일 보내기 | 민수, 회의 |
| “내일 오후 2시에 일정 잡아줘” | 일정 생성 | 내일 오후 2시 |
| “지난 주문 취소하고 싶어요” | 주문 취소 | 지난 주문 |
즉, Intent는 방향을 정하고 Entity는 필요한 재료를 채워 넣습니다. 요리로 비유하면 Intent는 “김치찌개 만들기”이고, Entity는 김치, 돼지고기, 두부 같은 재료입니다.
3. 실습 목표
이번 실습에서는 Azure Foundry Portal에서 CLU 프로젝트를 가져와서 학습하고 테스트합니다.
직접 처음부터 모든 발화를 입력하고 라벨링하지는 않고, 실습용 JSON 파일을 가져와 이미 정의된 프로젝트를 확인하는 방식으로 진행합니다.
실습에서 확인할 핵심 내용은 다음과 같습니다.
- Azure Portal에서 리소스 그룹을 만드는 흐름
- Foundry 리소스를 생성하고 Azure Foundry Portal로 이동하는 방법
- 미세조정 메뉴에서 대화 언어 이해 작업을 선택하는 방법
- 기존 CLU 프로젝트 JSON 파일을 가져오는 방법
- Intent와 Entity가 프로젝트 안에서 어떻게 구성되어 있는지 확인하는 방법
- 모델을 학습하고 평가 지표를 확인하는 방법
- 배포 후 테스트 문장을 입력해 Prediction 결과를 확인하는 방법
이번 글의 실습 흐름
리소스 그룹 생성 → Foundry 리소스 생성 → Foundry Portal 이동 → 미세조정 메뉴 진입 → 대화 언어 이해 선택 → 기존 프로젝트 가져오기 → Intent와 Entity 확인 → 모델 학습 → 평가 → 배포 → 테스트
4. 이번 실습과 레포지토리 구조
이 실습은 Azure AI Language 계열이지만, 일반적인 NER, PII, 감정 분석과는 성격이 조금 다릅니다. CLU는 프로젝트를 만들고, 발화를 라벨링하고, 모델을 학습하는 흐름이 들어가기 때문에 레포지토리에서는 03-clu 폴더로 따로 분리하는 것이 좋습니다.
azure-ai-services-labs/
├── 02-ai-language/
│ ├── 01-ner/
│ ├── 02-pii-detection/
│ ├── 03-sentiment-analysis/
│ ├── 04-key-phrase-extraction/
│ ├── 05-translation/
│ ├── notebooks/
│ ├── sample-data/
│ └── outputs/
│
├── 03-clu/
│ ├── README.md
│ ├── 01-project-import/
│ │ ├── EmailAppDemo.json
│ │ └── import-notes.md
│ ├── 02-intent-classification/
│ │ ├── intent-examples.md
│ │ └── test-utterances.md
│ ├── 03-entity-extraction/
│ │ ├── entity-examples.md
│ │ └── labeling-guide.md
│ ├── notebooks/
│ ├── sample-data/
│ └── outputs/
| 폴더 | 역할 | 이번 글과의 관계 |
|---|---|---|
| 02-ai-language | NER, PII, 감정 분석, 핵심 구 추출, 번역 실습 | Azure AI Language의 기본 기능 정리 |
| 03-clu | CLU 프로젝트 가져오기, Intent 분류, Entity 추출 실습 | 이번 글에서 사용하는 핵심 폴더 |

5. 리소스 그룹 만들기
Azure에서 실습을 시작할 때는 먼저 리소스 그룹을 만듭니다. 리소스 그룹은 Azure 리소스를 담아두는 폴더 같은 개념입니다. 나중에 실습이 끝났을 때 리소스 그룹 단위로 정리할 수 있어서, 실습용 리소스는 별도 그룹으로 묶어두는 것이 좋습니다.
CLU 실습에서는 Region 선택이 중요합니다. 일부 지역에서는 CLU 작업이 가능하다고 표시되더라도 실제 실습 과정에서 오류가 발생할 수 있습니다. 따라서 실습에서는 East US2를 선택하는 흐름으로 진행하는 것이 안전합니다.
| 항목 | 설명 | 권장 설정 |
|---|---|---|
| Subscription | Azure 서비스를 사용할 구독 | 실습용 구독 선택 |
| Resource Group Name | 실습 리소스를 묶을 이름 | rg-ai-language-clu 또는 rg-azure-ai-labs |
| Region | 리소스가 배포될 지역 | East US2 권장 |
| Tag | 리소스 관리용 메타데이터 | 선택 사항 |
주의
Region은 단순히 위치를 고르는 설정처럼 보이지만, 실제로는 사용할 수 있는 AI 기능과 화면 흐름에 영향을 줍니다. CLU 실습에서는 자료와 같은 화면을 맞추기 위해 East US2를 선택하는 것이 좋습니다.
6. Foundry 리소스 생성하기

리소스 그룹을 만들었다면 이제 Foundry 리소스를 생성합니다. Azure Portal에서 방금 만든 리소스 그룹으로 이동한 뒤, 만들기를 클릭하고 Marketplace에서 Foundry를 검색합니다.
검색 결과에서 Microsoft Foundry를 선택하고 리소스를 만듭니다. 이때 앞에서 만든 리소스 그룹을 선택하고, Region도 동일하게 East US2로 맞추는 것이 좋습니다.
| 단계 | 작업 | 확인할 점 |
|---|---|---|
| 1 | 리소스 그룹으로 이동 | 앞에서 만든 실습용 리소스 그룹인지 확인 |
| 2 | 만들기 클릭 | Marketplace 검색 화면으로 이동 |
| 3 | Foundry 검색 | Azure 서비스만 필터를 체크하면 찾기 쉬움 |
| 4 | Microsoft Foundry 선택 후 만들기 | 리소스 그룹과 Region이 맞는지 확인 |
Foundry 리소스 배포가 완료되면 해당 리소스로 이동합니다. 이 리소스가 이후 Azure Foundry Portal에서 CLU 프로젝트를 만들고 학습하는 기반이 됩니다.
7. Azure Foundry Portal로 이동하기

Foundry 리소스를 만들었다면 이제 Azure Foundry Portal로 이동합니다. 리소스 화면에서 Foundry Portal로 이동하는 버튼을 클릭하면, 별도의 Foundry 작업 환경으로 넘어갑니다.
여기서 주의할 점은 계정입니다. Azure Portal에서 사용한 계정과 Foundry Portal에서 사용하는 계정이 다르면 방금 만든 리소스나 프로젝트가 보이지 않을 수 있습니다. 특히 여러 Microsoft 계정으로 로그인되어 있는 경우에는 반드시 현재 계정을 확인해야 합니다.
주의
Foundry Portal로 넘어갔는데 리소스가 보이지 않는다면, 리소스를 다시 만들기 전에 먼저 로그인 계정과 구독이 같은지 확인하세요. 계정이 다르면 정상적으로 만든 리소스도 보이지 않을 수 있습니다.
Foundry Portal에 들어가면 왼쪽 메뉴에서 미세조정 메뉴를 찾습니다. 이번 실습에서는 사전 학습된 모델을 그대로 쓰는 것이 아니라, 대화 언어 이해 프로젝트를 가져와 학습하고 테스트하기 때문에 미세조정 메뉴로 이동합니다.
8. CLU 프로젝트 만들기


Foundry Portal의 미세조정 메뉴로 들어가면 여러 종류의 AI 서비스 미세조정 작업을 선택할 수 있습니다. 여기서 대화 언어 이해를 선택합니다. 이 항목이 바로 CLU 프로젝트를 만드는 입구입니다.
새 프로젝트를 처음부터 만들 수도 있지만, 이번 실습에서는 실습용 JSON 파일을 가져오는 방식으로 진행합니다. 처음부터 Intent와 Entity를 하나씩 만들면 개념 이해보다 입력 작업에 시간이 많이 걸릴 수 있기 때문입니다.
| 방식 | 설명 | 이번 실습에서의 사용 여부 |
|---|---|---|
| 새 프로젝트 만들기 | Intent, Entity, 발화 예시를 직접 설계 | 개념 확장용으로 적합 |
| 기존 프로젝트 가져오기 | JSON 파일에 정의된 프로젝트를 불러옴 | 이번 실습에서 사용 |
실무에서는 처음부터 프로젝트를 설계하는 경우도 많지만, 학습 단계에서는 먼저 완성된 예제를 가져와 구조를 보는 것이 좋습니다. 어떤 Intent가 있고, 어떤 발화가 연결되어 있고, 어떤 Entity가 표시되어 있는지 먼저 보는 편이 이해가 빠릅니다.
9. 기존 프로젝트 가져오기
cognitive-services-sample-data-files/language-service/CLU/EmailAppDemo.json at master · Azure-Samples/cognitive-services-sample
Cognitive Services sample data files. Contribute to Azure-Samples/cognitive-services-sample-data-files development by creating an account on GitHub.
github.com

이번 실습에서는 기존 프로젝트 가져오기를 선택하고, 실습용 JSON 파일을 업로드합니다. 이 JSON 파일 안에는 프로젝트의 스키마, Intent, Entity, 라벨링된 발화 예시가 들어 있습니다.
JSON은 JavaScript Object Notation의 약자로, 데이터를 주고받을 때 많이 쓰는 텍스트 형식입니다. 여기서는 CLU 프로젝트의 설정과 학습 데이터를 담아두는 파일이라고 보면 됩니다.
위 코드는 실제 파일 전체가 아니라 구조를 이해하기 위한 단순화 예시입니다. 핵심은 CLU 프로젝트가 단순히 모델 이름만 저장하는 것이 아니라, Intent 목록, Entity 목록, 발화 예시를 함께 가지고 있다는 점입니다.
주의
실습용 JSON을 가져온 경우에는 이미 스키마와 라벨링 데이터가 들어 있으므로 처음부터 Intent와 Entity를 직접 만드는 과정을 건너뛸 수 있습니다. 다만 직접 프로젝트를 만들 때는 이 과정을 반드시 설계해야 합니다.
10. Intent와 Entity 확인하기
프로젝트를 가져온 뒤에는 먼저 Intent와 Entity가 어떻게 정의되어 있는지 확인합니다. 이 단계는 단순 확인처럼 보이지만 실제로는 가장 중요합니다. 모델은 우리가 준 예시를 기준으로 학습하기 때문에, Intent와 Entity 설계가 애매하면 예측 결과도 애매해집니다.
Intent 확인하기
Intent는 사용자가 대화를 통해 해결하고 싶은 목표입니다. 예를 들어 이메일 앱을 만든다고 가정하면, 사용자는 이메일을 보내거나, 답장을 하거나, 삭제하거나, 검색하고 싶을 수 있습니다. 이 각각의 목표가 Intent가 됩니다.
| Intent | 의미 | 예시 발화 |
|---|---|---|
| SendEmail | 이메일 보내기 | “Send an email to Alex” |
| DeleteEmail | 이메일 삭제 | “Delete the last email” |
| SearchEmail | 이메일 검색 | “Find emails from Mina” |
Entity 확인하기
Entity는 챗봇이 문장에서 뽑아내야 하는 정보입니다. 이메일 보내기라는 Intent만 알아서는 실제 작업을 수행할 수 없습니다. 누구에게 보낼지, 어떤 내용을 보낼지, 언제 보낼지 같은 정보가 필요합니다. 이때 필요한 값들이 Entity입니다.
| Entity | 의미 | 예시 |
|---|---|---|
| ContactName | 받는 사람 이름 | Alex, Mina, John |
| Message | 이메일 내용 | 회의 일정, 파일 요청, 감사 메시지 |
| DateTime | 날짜와 시간 | tomorrow, 3 PM, next Monday |
Few-shot 예시를 만들 때도 이 구조가 중요합니다. 비슷한 문장만 많이 넣으면 모델이 특정 표현에 치우칠 수 있습니다. 그래서 같은 Intent라도 여러 표현 방식의 발화를 넣어야 합니다. “메일 보내줘”, “이메일 작성해줘”, “Alex에게 연락해줘”처럼 다양한 표현을 학습시켜야 실제 사용자 문장에도 잘 대응할 수 있습니다.
데이터 편향 주의
특정 Intent에만 예시가 많거나, 특정 표현만 반복되면 모델이 그 패턴에 과하게 익숙해질 수 있습니다. 실무에서는 Intent별 예시 수를 균형 있게 맞추고, 실제 사용자가 말할 법한 표현을 다양하게 넣는 것이 중요합니다.
이미지 넣기 추천
[이미지 7 넣기: Intent와 Entity가 표시된 프로젝트 화면]
추천 캡처: 스키마 메뉴, Intent 목록, Entity 목록, 라벨링된 발화 예시가 보이는 화면
11. 모델 학습과 테스트
Intent와 Entity 구조를 확인했다면 이제 모델을 학습합니다. 학습은 모델이 발화 예시를 보고, 어떤 표현이 어떤 Intent에 해당하는지, 문장 안의 어떤 부분이 Entity인지 배우는 과정입니다.


Foundry 화면에서 모델 학습 메뉴로 이동한 뒤, 학습 모델명과 학습 모드, 데이터 분리 방식을 설정합니다. 실습 자료에서는 학습 데이터와 테스트 데이터를 자동으로 나누는 흐름이 사용됩니다.
| 설정 항목 | 의미 | 실습에서 보는 포인트 |
|---|---|---|
| 모델 이름 | 학습 결과 모델을 구분하는 이름 | email 등 알아보기 쉬운 이름 사용 |
| 학습 모드 | 모델을 어떤 방식으로 학습할지 선택 | 기본 또는 표준 학습 모드 사용 |
| 데이터 분리 | 학습용 데이터와 테스트용 데이터를 나누는 방식 | 예: 학습 80%, 테스트 20% |
훈련 데이터와 테스트 데이터를 나누는 이유는 모델이 정말 일반화되었는지 확인하기 위해서입니다. 훈련 데이터는 문제집이고, 테스트 데이터는 모의고사라고 보면 됩니다. 문제집에 나온 문장만 맞히는 모델은 실제 서비스에서 잘 동작한다고 보기 어렵습니다.
평가 지표 확인하기



학습이 끝나면 모델 평가 화면에서 성능 지표를 확인할 수 있습니다. 여기서 자주 등장하는 지표가 Precision, Recall, F1 Score입니다. 처음 보면 어렵지만, 간단히 말하면 모델이 얼마나 정확하고 빠짐없이 맞혔는지를 보는 기준입니다.
| 지표 | 쉬운 설명 | 중요한 상황 |
|---|---|---|
| Precision | 모델이 맞다고 한 것 중 실제로 맞은 비율 | 잘못된 자동 처리의 비용이 클 때 |
| Recall | 실제로 맞아야 하는 것 중 모델이 찾아낸 비율 | 놓치면 안 되는 요청이 많을 때 |
| F1 Score | Precision과 Recall의 균형을 보는 지표 | 전체 성능을 한눈에 비교할 때 |
실습에서는 지표 숫자를 외우는 것보다, “내 모델이 어떤 Intent를 잘 맞히고 어떤 Intent에서 헷갈리는지”를 보는 것이 중요합니다. 성능이 낮은 Intent가 있다면 그 Intent의 발화 예시가 부족하거나, 다른 Intent와 표현이 너무 비슷할 가능성이 있습니다.
현재 지표를 기반으로 할 때
지금 문제 = 엔터티 라벨 기준이 애매함
예: Message랑 EmailSubject를 모델이 헷갈림
해결 = 학습 데이터에서 각 엔터티의 경계를 더 명확히 라벨링해야 함
12. 모델 배포와 예측 테스트


학습이 끝난 모델을 실제로 사용하려면 배포가 필요합니다. 학습된 모델은 아직 “완성된 파일”에 가깝고, 배포를 해야 애플리케이션이나 API에서 호출할 수 있는 상태가 됩니다.
배포 후에는 테스트 화면에서 사용자의 문장을 입력해볼 수 있습니다. 이때 모델은 입력 문장에 대해 예측된 Intent와 Entity를 반환합니다.

입력 문장:
Send an email to Alex about tomorrow meeting.
예상 결과:
Intent: SendEmail
Entities:
- ContactName: Alex
- Message: tomorrow meeting


이 결과를 보면 모델이 단순히 문장을 읽은 것이 아니라, 문장의 목적과 필요한 정보를 나누어 이해했다는 것을 알 수 있습니다. 이 구조를 챗봇에 연결하면 Intent에 따라 다른 업무 흐름을 실행할 수 있습니다.
| 단계 | 의미 | 결과 |
|---|---|---|
| 학습 | 발화 예시로 모델을 학습 | Intent와 Entity 패턴을 학습한 모델 생성 |
| 평가 | 테스트 데이터로 성능 확인 | F1, Precision, Recall 지표 확인 |
| 배포 | 모델을 사용할 수 있는 상태로 공개 | 테스트 또는 API 호출 가능 |
| 예측 | 새 문장을 입력해 결과 확인 | Intent와 Entity 반환 |
13. 실습 중 발생할 수 있는 오류
CLU 실습은 화면을 따라가면 어렵지 않지만, 리소스와 계정, 지역 설정 때문에 막히는 경우가 많습니다. 아래 항목을 먼저 확인하면 대부분의 문제를 빠르게 좁힐 수 있습니다.
| 문제 상황 | 가능한 원인 | 확인 방법 |
|---|---|---|
| CLU 메뉴가 보이지 않음 | Region 또는 리소스 종류 문제 | East US2로 리소스를 만들었는지 확인 |
| Foundry Portal에서 리소스가 보이지 않음 | Azure Portal과 다른 계정으로 로그인 | 오른쪽 상단 계정과 구독 확인 |
| JSON 업로드 실패 | 파일 형식이나 프로젝트 버전 문제 | 실습용 JSON 파일을 다시 다운로드 |
| 학습 결과가 낮음 | 발화 예시 부족 또는 Intent 간 표현 겹침 | Intent별 예시 수와 표현 다양성 확인 |
| 테스트 결과가 예상과 다름 | 배포 모델이 최신 학습 모델이 아닐 수 있음 | 최신 모델을 다시 배포했는지 확인 |
Speech의 Intent Recognition과 헷갈리지 않기
Speech 자료에서도 Intent Recognition이 등장하지만, 이번 글의 CLU는 텍스트 기반 대화 이해에 집중합니다. 음성 기반 의도 인식은 음성을 텍스트로 바꾼 뒤 의도를 해석하는 흐름과 연결되므로, Speech 글에서 별도로 비교하는 것이 좋습니다.
14. 정리
이번 글에서는 Azure AI Language 계열의 Conversational Language Understanding, 즉 CLU 실습 흐름을 정리했습니다. CLU는 사용자의 발화를 읽고 Intent를 분류하며, 문장 안에서 필요한 Entity를 추출하는 기능입니다.
실습에서는 Azure Portal에서 리소스 그룹을 만들고, Foundry 리소스를 생성한 뒤 Azure Foundry Portal로 이동했습니다. 그다음 미세조정 메뉴에서 대화 언어 이해 작업을 선택하고, 기존 프로젝트 JSON 파일을 가져와 Intent와 Entity를 확인했습니다.
모델 학습 단계에서는 발화 예시를 기반으로 모델을 학습하고, 평가 단계에서는 F1 Score, Precision, Recall 같은 지표를 확인했습니다. 마지막으로 배포 후 테스트 문장을 입력해 모델이 어떤 Intent와 Entity를 예측하는지 확인했습니다.
CLU를 잘 이해하면 챗봇, 고객센터 자동 분류, 이메일 자동 분류, 업무 요청 라우팅 같은 기능을 만들 때 사용자 문장을 업무 흐름으로 연결할 수 있습니다. 즉, CLU는 대화형 AI가 단순히 문장을 읽는 것을 넘어 실제 행동으로 이어지게 만드는 중간 다리 역할을 합니다.
15. 전체 흐름 한 번에 정리
Azure Portal 접속
→ 리소스 그룹 생성
→ Region을 East US2로 설정
→ Foundry 리소스 생성
→ Azure Foundry Portal로 이동
→ 미세조정 메뉴 선택
→ 대화 언어 이해 선택
→ 기존 프로젝트 JSON 가져오기
→ Intent와 Entity 구조 확인
→ 모델 학습
→ 평가 지표 확인
→ 모델 배포
→ 테스트 문장 입력
→ Prediction 결과에서 Intent와 Entity 확인
이 흐름을 한 번 이해해두면, 이후에는 직접 프로젝트를 만들고 발화를 추가하면서 나만의 고객센터 챗봇이나 이메일 분류 모델을 구성할 수 있습니다.
이미지 넣기 추천
[이미지 11 넣기: CLU 전체 실습 흐름도]
추천 이미지: 리소스 그룹 → Foundry 리소스 → Foundry Portal → CLU 프로젝트 → JSON 가져오기 → 학습 → 평가 → 배포 → 테스트 흐름도
16. 핵심 키워드 정리
| 키워드 | 의미 |
|---|---|
| CLU | 사용자의 발화를 이해해 의도와 정보를 분류하는 대화 언어 이해 기능 |
| Conversational Language Understanding | Azure AI Language의 대화형 문장 이해 기능 |
| Intent | 사용자가 수행하려는 목적이나 작업 |
| Entity | Intent를 처리하기 위해 문장에서 추출해야 하는 정보 |
| Utterance | 사용자가 실제로 입력한 문장 또는 발화 |
| Foundry | Azure에서 AI 프로젝트를 만들고 관리하는 포털 환경 |
| Fine-tuning | 특정 작업에 맞게 모델을 조정하거나 학습하는 과정 |
| Project | Intent, Entity, 발화 예시를 담고 있는 CLU 작업 단위 |
| Training | 발화 예시를 기반으로 모델을 학습시키는 과정 |
| Testing | 새 문장을 입력해 모델 결과를 확인하는 과정 |
| Prediction | 모델이 입력 문장에 대해 예측한 Intent와 Entity 결과 |
| F1 Score | Precision과 Recall의 균형을 나타내는 평가 지표 |
17. 다음 글 예고
이번 글에서는 Conversational Language Understanding 실습을 통해 Intent와 Entity를 분류하는 대화형 AI 모델의 기본 흐름을 살펴봤습니다. 다음 글에서는 CLU 프로젝트를 직접 구성하면서 Intent Classification과 Entity Extraction을 더 자세히 알아보겠습니다.
특히 다음 글에서는 사용자의 발화 예시를 어떻게 설계해야 하는지, Intent별 데이터 균형을 어떻게 맞춰야 하는지, 그리고 테스트 문장을 통해 모델이 어디서 헷갈리는지 확인하는 방법을 정리해보겠습니다.