반응형
LLM 활용 일반 시나리오
사용자 입력 전처리
입력 정규화
입력: "강남역에서 홍대까지 지하철로 가는법좀"
정규화: "강남역에서 홍대까지 지하철로 가는 방법"
다국어 지원 및 방언의 처리
- 한국어 : 근처, 주변, 가까운 곳
- 영어 : nearby around, close to
- 음성 입력 오류 보정
의도 분석 (Intent Classification)
주요 의도 카테고리
{
"ROUTING": ["길찾기", "경로", "가는법", "route", "direction"],
"SEARCH": ["찾기", "검색", "어디", "find", "search", "locate"],
"ANALYSIS": ["분석", "통계", "변화", "비교", "analyze", "compare"],
"RECOMMENDATION": ["추천", "좋은", "맛집", "recommend", "suggest"],
"INFORMATION": ["정보", "알려줘", "뭐야", "what", "info", "tell me"]
}
의도 분류 모델
- Fine-tuned BERT/KoBERT for 한국어
- Few-shot learning with GPT-4 for edge cases
- 의도 신뢰도 점수 기반 fallback 처리
엔티티 추출 (Named Entity Recognition)
지리공간 엔티티
{
"LOCATION": {
"POI": ["강남역", "롯데월드타워", "N서울타워"],
"ADDRESS": ["서울시 강남구", "123번길 45"],
"REGION": ["강남구", "서울", "부산"],
"LANDMARK": ["한강", "남산", "해운대해수욕장"]
},
"SPATIAL_RELATION": {
"DISTANCE": ["근처", "주변", "500m 이내", "도보 10분"],
"DIRECTION": ["북쪽", "남동쪽", "앞", "뒤"],
"BOUNDARY": ["안에", "밖에", "경계선"]
},
"TRANSPORTATION": ["지하철", "버스", "도보", "자전거", "자동차"],
"CATEGORY": ["카페", "맛집", "병원", "주차장", "ATM"],
"TIME": ["지금", "오후 3시", "내일", "주말"]
}
공간 쿼리 변환
쿼리 템플릿 매핑
# 예시: 근거리 검색 쿼리 변환
사용자_입력 = "강남역 근처 카페 찾아줘"
추출된_엔티티 = {
"location": "강남역",
"category": "카페",
"spatial_relation": "근처"
}
공간_쿼리 = {
"type": "proximity_search",
"center": get_coordinates("강남역"), # [127.027926, 37.497175]
"radius": 500, # 기본값 500m
"category": "cafe",
"limit": 20
}
복합 쿼리 처리
# "주차장 있는 강남역 근처 카페"
복합_쿼리 = {
"type": "multi_criteria_search",
"base_query": proximity_search,
"filters": [
{"attribute": "parking", "value": True},
{"category": "cafe"}
],
"spatial_join": {
"type": "within_distance",
"distance": 100 # 주차장이 100m 이내
}
}
고급 활용 시나리오
컨텍스트 기반 대화형 검색
사용자: "강남역 근처 맛집 알려줘"
AI: "어떤 종류의 음식을 선호하시나요?"
사용자: "한식이면 좋겠어"
AI: "예산은 어느 정도 생각하고 계신가요?"
사용자: "2만원 정도"
→ 대화 컨텍스트를 유지하며 점진적 쿼리 정제
시간적 공간 분석
시간_공간_쿼리 = {
"분석_유형": "temporal_spatial_analysis",
"쿼리": "이 지역 인구밀도가 어떻게 변했는지 분석해줘",
"파라미터": {
"지역": "강남구",
"시간_범위": ["2020", "2024"],
"분석_방법": "시계열_분석",
"시각화": "히트맵_애니메이션"
}
}
다중 조건 라우팅
복합_라우팅 = {
"출발지": "집",
"도착지": "회사",
"경유지": ["스타벅스", "편의점"],
"제약조건": {
"교통수단": "대중교통",
"도착시간": "오전 9시 이전",
"선호사항": "환승 최소화"
},
"날씨_고려": True,
"실시간_교통": True
}
반응형
'Dev Stories > AI|ML(인공지능|머신러닝)' 카테고리의 다른 글
| LLM을 활용한 자연어 처리 파이프라인: 의도 분류용 프롬프트 (0) | 2025.09.17 |
|---|---|
| 최초 선택과 옵션 보정으로 LLM 결과 정확도 높이기 (0) | 2025.09.16 |
| 다중 의도 처리 (Multi-intent Handling) (0) | 2025.09.03 |
| 가장 많이 사용되는 임베딩(Embedding) 모델 (0) | 2025.07.07 |
| [AI] LLM 모델의 평가 및 검증 (0) | 2025.07.07 |