한국어 프롬프트 작성 전략
한국어로 프롬프트를 작성할 때 알아두면 유용한 팁들입니다.존댓말/반말 지정
System Prompt에서 응답 어투를 명시하면 일관성 있는 출력을 얻을 수 있습니다.한영 혼용 전략
- 기술 용어는 영어 유지가 더 정확합니다: “Transformer의 Attention 메커니즘을 설명하세요”가 “트랜스포머의 어텐션 메커니즘을 설명하세요”보다 정확한 응답을 생성합니다
- 프롬프트 자체를 영어로 작성하고 “한국어로 답변하세요”를 추가 하면 더 정확한 경우도 있습니다 (특히 최신 기술 주제)
한국어 토큰 비용 절감 팁
한국어는 영어 대비 동일 의미를 전달하는 데 더 많은 토큰을 소비합니다. 비용 절감을 위해 프롬프트를 간결하게 작성하세요.참고 팁: 불필요한 조사, 어미, 경어 표현을 줄이고 키워드 중심으로 프롬프트를 작성하면 토큰을 크게 절약할 수 있습니다. 다만 System Prompt의 역할 정의와 제약 조건은 정확성을 위해 충분히 상세하게 유지하세요.
한국어 특화 주의사항
| 주의사항 | 설명 | 대응 방법 |
|---|---|---|
| 동음이의어 | ”배” (과일/선박/복부), “차” (음료/자동차) 등 | 문맥을 명확히 제공하거나, 괄호로 의미 한정 |
| 높임법 체계 | 격식체/비격식체가 뒤섞이면 어색한 출력 | System Prompt에서 어투를 명확히 지정 |
| 숫자/날짜 형식 | ”2026년 3월 31일” vs “3/31/2026” vs “2026-03-31” | 출력 형식에 날짜 포맷을 명시 |
프롬프트 디버깅: 원하는 결과가 안 나올 때
프롬프트가 제대로 작동하지 않을 때, 직감에 의존하지 말고 체계적으로 진단 해야 합니다.증상별 진단 체크리스트
| 증상 | 가능한 원인 | 해결법 |
|---|---|---|
| 응답이 너무 일반적 | 지시가 모호함 | 구체적 요구사항 추가 (형식, 길이, 대상 독자) |
| 형식이 불안정 | 출력 형식 명시 부족 | JSON 스키마 또는 예시 명시 |
| 핵심 정보 누락 | 컨텍스트 부족 | 관련 배경 정보 추가 |
| 환각 발생 | 모델이 모르는 정보 요구 | RAG 추가 또는 “모르면 모른다고 답하라” 지시 |
| Few-shot 예시와 다른 형식 | 예시와 실제 입력 패턴 불일치 | 예시를 실제 입력과 유사하게 수정 |
| 지시를 무시함 | 지시가 너무 길거나 모순적 | 핵심 지시를 앞쪽에, 우선순위 명시 |
프롬프트 반복 개선 프로세스 (Iterative Refinement)
프롬프트 최적화는 한 번에 완성되지 않습니다. 다음 사이클을 반복하세요:- 기본 프롬프트 작성— 핵심 지시와 기대 출력 형식을 정의
- 5~10개 테스트 케이스로 실행— 다양한 입력 유형을 포함
- 실패 케이스 분석— 어떤 유형의 입력이 실패하는가?
- 실패 원인별 프롬프트 수정— 위 진단 체크리스트 참조
- 다시 테스트— 수정이 기존 성공 케이스를 깨뜨리지 않는지 확인
- 반복— 목표 정확도에 도달할 때까지
성공 핵심: 프롬프트 엔지니어링은 “한 번에 완벽하게”가 아닌 “빠르게 반복하며 개선”하는 과정입니다. AI Playground에서 10번 반복하는 것이 30분 고민하는 것보다 효과적입니다.
토크나이저별 한국어 비교 데이터
동일한 한국어 문장이 토크나이저에 따라 완전히 다른 토큰 수 로 변환됩니다. 이는 비용과 컨텍스트 활용에 직접적인 영향을 미칩니다.비교 테이블: 같은 문장, 다른 토큰 수
| 문장 | GPT-4 (cl100k) | Claude (anthropic) | Llama 3 (sentencepiece) |
|---|---|---|---|
| “데이터브릭스는 통합 데이터 분석 플랫폼입니다” | 8 토큰 | 5 토큰 | 10 토큰 |
| ”Unity Catalog의 3단계 네임스페이스를 설명하세요” | 11 토큰 | 8 토큰 | 14 토큰 |
| ”머신러닝 모델의 학습 과정을 요약해 주세요” | 12 토큰 | 7 토큰 | 15 토큰 |
| ”고객 이탈 예측을 위한 피처 엔지니어링 방법은?“ | 14 토큰 | 9 토큰 | 18 토큰 |
| (동일 의미 영어) “What are feature engineering methods for customer churn prediction?“ | 10 토큰 | 10 토큰 | 11 토큰 |
비용 영향 계산
주의 비용 절감 전략: 프롬프트 지시문(System Prompt)은 영어로 작성하고, 사용자 입력과 출력만 한국어로 처리하면 토큰 비용을 20~30% 절감할 수 있습니다. “Respond in Korean”만 추가하면 됩니다.
한국어 최적화 모델
범용 모델 외에 한국어에 특화된 학습 을 수행한 모델이 있습니다. 한국어 비중이 높은 서비스에서는 이들을 고려할 가치가 있습니다.주요 한국어 특화 모델
| 모델 | 개발사 | 파라미터 | 한국어 특화 방식 | 오픈소스 |
|---|---|---|---|---|
| HyperCLOVA X | NAVER | 비공개 | 한국어 중심 사전학습 (한국어 비중 40%+) | X |
| EXAONE 3.5 | LG AI Research | 7.8B / 32B | 한영 이중언어 학습, 기업용 특화 | O (7.8B) |
| SOLAR | Upstage | 10.7B | Depth Up-Scaling 기법, 한국어 최적화 | O |
| Llama 3 Korean | 커뮤니티 | 8B / 70B | Llama 3 기반 한국어 CPT (Continued Pre-Training) | O |
벤치마크 비교 (KLUE, KorQuAD 기준)
| 모델 | KLUE-NLI (정확도) | KLUE-STS (상관계수) | KorQuAD 2.0 (F1) | 비고 |
|---|---|---|---|---|
| GPT-4o | 91.2% | 0.93 | 88.5% | 범용 최강. 한국어도 상위 |
| Claude 4 Sonnet | 90.8% | 0.92 | 87.2% | GPT-4o와 동급 |
| HyperCLOVA X | 92.5% | 0.94 | 91.3% | 한국어 최고 성능 |
| EXAONE 3.5 32B | 89.1% | 0.91 | 85.7% | 오픈소스 중 한국어 최상위 |
| SOLAR 10.7B | 84.3% | 0.87 | 79.8% | 크기 대비 우수 |
| Llama 3.3 70B | 86.5% | 0.89 | 82.1% | 범용. 한국어는 중상위 |
언제 한국어 특화 모델을 선택하는가?
| 상황 | 추천 | 이유 |
|---|---|---|
| 한국어 90%+ 서비스 | HyperCLOVA X 또는 EXAONE | 한국어 정확도 최우선 |
| 한영 혼용 서비스 | GPT-4o, Claude 4 Sonnet | 다국어 범용 성능 우수 |
| 데이터 주권 필수 | EXAONE 3.5, SOLAR | 오픈소스, 자체 호스팅 가능 |
| 비용 제한 + 한국어 중심 | SOLAR 10.7B | 작은 모델, 한국어 특화 |
한국어 RAG 최적화
한국어 RAG 파이프라인에서는 형태소 분석 과 한국어 임베딩 모델 을 적절히 활용해야 검색 정확도가 올라갑니다.형태소 분석으로 검색 정확도 향상
한국어는 교착어로, 같은 단어가 조사에 따라 다양한 형태로 나타납니다. “데이터를”, “데이터의”, “데이터에서” 모두 “데이터”를 포함하지만, 단순 텍스트 매칭으로는 연결되지 않습니다.한국어 임베딩 모델 비교
| 모델 | 차원 | 한국어 STS 성능 | 다국어 지원 | 특징 |
|---|---|---|---|---|
| KoSimCSE-roberta | 768 | 83.5% | X (한국어 전용) | 한국어 STS 특화 |
| multilingual-e5-large | 1024 | 82.1% | O (100+ 언어) | 다국어 범용. Databricks 지원 |
| bge-m3 | 1024 | 81.8% | O (100+ 언어) | Dense + Sparse + ColBERT 혼합 |
| Cohere embed-multilingual-v3 | 1024 | 84.2% | O (100+ 언어) | 최고 성능. API 형태 |
| databricks-bge-large-en | 1024 | 75.3% | 영어 중심 | Databricks 기본 제공. 한국어는 약함 |
주의 주의: Databricks 기본 제공 임베딩 모델(databricks-bge-large-en)은 영어 중심 입니다. 한국어 RAG에서는multilingual-e5-large또는bge-m3를 Model Serving에 배포하여 사용하는 것을 권장합니다.
한국어 하이브리드 검색
한국어에서는 벡터 검색(semantic)만으로 부족한 경우가 많습니다. 키워드 검색(BM25)과 벡터 검색을 결합 하면 정확도가 크게 향상됩니다.한국어 고유 도전과 프롬프트 대응 전략
띄어쓰기 문제
한국어는 띄어쓰기가 없어도 의미가 통하는 경우가 많아, 사용자 입력에 띄어쓰기 오류가 빈번합니다.| 입력 | 의미 해석 |
|---|---|
| ”아버지가방에들어가신다" | "아버지가 방에 들어가신다” vs “아버지 가방에 들어가신다" |
| "내가그린기린그림" | "내가 그린 기린 그림” |
동음이의어 처리
존댓말 체계와 프롬프트
| 어투 | 사용 상황 | System Prompt 지시 |
|---|---|---|
| 합쇼체(-습니다, -입니다) | 공식 고객 대응, 보고서 | ”격식체(합쇼체)로 정중하게 답변하세요” |
| 해요체(-해요, -이에요) | 일반 챗봇, CS | ”해요체로 친근하면서 정중하게 답변하세요” |
| 해라체(-다, -이다) | 기술 문서, 매뉴얼 | ”해라체(서술체)로 간결하게 기술하세요” |
| 반말(-야, -어) | 내부 도구, 캐주얼 봇 | ”반말로 간결하게 답해. 인사말 생략” |
참고 팁: 존댓말 체계를 혼용하면 매우 어색한 출력이 됩니다. System Prompt에서 하나의 어투만 명확히 지정 하고, Few-shot 예시에도 동일한 어투를 사용하세요.
Structured Output 한국어 주의사항
JSON 내 한국어 이슈
한국어 정렬/정렬 문제
한국어 벤치마크 데이터
KLUE (Korean Language Understanding Evaluation)
한국어 NLU 표준 벤치마크입니다. 8개 과제로 구성됩니다.| 과제 | 설명 | 평가 메트릭 |
|---|---|---|
| KLUE-TC | 주제 분류 (뉴스 기사) | F1 |
| KLUE-STS | 문장 유사도 (0~5점) | Pearson 상관계수 |
| KLUE-NLI | 자연어 추론 (참/거짓/중립) | 정확도 |
| KLUE-NER | 개체명 인식 (인물, 장소 등) | F1 |
| KLUE-RE | 관계 추출 | F1 |
| KLUE-DP | 의존 구문 분석 | UAS/LAS |
| KLUE-MRC | 기계 독해 | EM/F1 |
| KLUE-DST | 대화 상태 추적 | JGA |
KorQuAD 2.0
한국어 기계 독해 벤치마크입니다. 위키백과 기반 10,000+ Q&A 쌍으로 구성됩니다.| 모델 | KorQuAD 2.0 EM | KorQuAD 2.0 F1 |
|---|---|---|
| HyperCLOVA X | 85.2% | 91.3% |
| GPT-4o | 82.7% | 88.5% |
| Claude 4 Sonnet | 81.5% | 87.2% |
| EXAONE 3.5 32B | 79.8% | 85.7% |
| Llama 3.3 70B | 76.4% | 82.1% |
| SOLAR 10.7B | 72.1% | 79.8% |
참고 벤치마크 활용 팁: KLUE와 KorQuAD 점수는 참고용 입니다. 실제 서비스 품질은 자사 도메인 데이터로 직접 평가해야 합니다. Databricks MLflow Evaluate를 사용하여 자사 한국어 Q&A 데이터셋으로 모델을 비교 평가하세요.