devlim's picture
Update README.md
9491519 verified
## λͺ¨λΈ κ°œμš”
이 ν”„λ‘œμ νŠΈλŠ” λŒ€κ·œλͺ¨ ν—¬μŠ€μΌ€μ–΄ 데이터셋을 기반으둜 μ‚¬μš©μžκ°€ μ‹ λ’°μ„± μžˆλŠ” 의료 정보λ₯Ό μ–Έμ œ μ–΄λ””μ„œλ“  얻을 수 μžˆλ„λ‘ λ•λŠ” ν”Œλž«νΌ ꡬ좕을 λͺ©ν‘œλ‘œ ν•˜μ˜€μŠ΅λ‹ˆλ‹€. **μ΄ˆκ±°λŒ€ AI ν—¬μŠ€μΌ€μ–΄ μ§ˆμ˜μ‘λ‹΅ 데이터**λ₯Ό ν™œμš©ν•˜μ—¬ 의료 λΆ„μ•Όμ˜ μ „λ¬Έ 지식을 ν¬ν•¨ν•œ λŒ€κ·œλͺ¨ AI λͺ¨λΈμ„ 기반으둜 ν•˜λ©°, ν™˜μžλ“€μ—κ²Œ μ‹ μ†ν•˜κ³  μ •ν™•ν•œ 의료 정보λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.
## λͺ¨λΈ 상세 μ„€λͺ…
- **λͺ¨λΈλͺ…**: RAFT + RAG 기반 의료 상담 챗봇
- **기반 λͺ¨λΈ**: Gemma-2-2b-it
- **ν•™μŠ΅ 방법**: GPT 4o-miniλ₯Ό ν™œμš©ν•œ 데이터 증강 및 RAFT 방법 적용
- **μ•„ν‚€ν…μ²˜**: Gemma-2-2b-itκ³Ό λ™μΌν•œ ꡬ쑰 μ‚¬μš©
## 데이터셋
- **데이터셋 이름**: μ΄ˆκ±°λŒ€ AI ν—¬μŠ€μΌ€μ–΄ μ§ˆμ˜μ‘λ‹΅ 데이터
- **좜처**: [AI ν—ˆλΈŒ](https://www.aihub.or.kr/aihubdata/data/view.do?dataSetSn=71762)
- **데이터 ꡬ성**:
- 40%: 정닡이 ν¬ν•¨λœ λ¬Έμ„œ 1개 + μ •λ‹΅κ³Ό κ΄€λ ¨ μ—†λŠ” λ¬Έμ„œ 1개
- 60%: μ •λ‹΅κ³Ό κ΄€λ ¨ μ—†λŠ” λ¬Έμ„œ 2개
## ν•™μŠ΅ 방법
λͺ¨λΈμ€ GPT 4o-miniλ₯Ό ν™œμš©ν•œ 데이터 증강 기법과 RAFT([Adapting Language Model to Domain Specific RAG](https://arxiv.org/abs/2403.10131)) 방법을 μ μš©ν•˜μ—¬ ν•™μŠ΅λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ 방법을 톡해 λͺ¨λΈμ€ λ³΅μž‘ν•œ λ¬Έλ§₯ 이해와 μ •ν™•ν•œ 정보 검색 λŠ₯λ ₯을 ν–₯μƒμ‹œμΌ°μŠ΅λ‹ˆλ‹€.
### μ˜ˆμ‹œ
````plaintext
<bos><start_of_turn>user
<Question>: μ‘±μ € 근막염 μž¬ν™œμ„ μœ„ν•΄ μ–΄λ–€ 쑰치λ₯Ό μ·¨ν•΄μ•Ό ν•˜λ‚˜μš”?
<Documents>: [
'μ‘±μ € 근막염 μž¬ν™œμ€ 발 건강을 νšŒλ³΅ν•˜κ³  톡증을 μ™„ν™”ν•˜κΈ° μœ„ν•΄ λ‹€μ–‘ν•œ μ‘°μΉ˜λ“€μ„ μ·¨ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€. ...',
'외상 ν›„ 슀트레슀 μž₯μ•  치료λ₯Ό μœ„ν•΄ μ•½λ¬Ό μΉ˜λ£Œκ°€ 선택될 수 μžˆμŠ΅λ‹ˆλ‹€. ...'
]
<end_of_turn>
<start_of_turn>model
<Answer>: μ‘±μ € 근막염 μž¬ν™œμ„ μœ„ν•΄ μ·¨ν•΄μ•Ό ν•  μ‘°μΉ˜λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€: ...
<end_of_turn><eos>
````
### μ˜ˆμ‹œ
#### 질문:
````plaintext
두톡이 자주 λ°œμƒν•˜λŠ” μ΄μœ κ°€ κΆκΈˆν•©λ‹ˆλ‹€. 슀트레슀 λ•Œλ¬ΈμΌκΉŒμš”, μ•„λ‹ˆλ©΄ λ‹€λ₯Έ 건강 λ¬Έμ œμΌκΉŒμš”? μ–΄λ–€ μƒν™©μ—μ„œ 두톡이 μ‹¬ν•΄μ§€λŠ”μ§€μ™€ ν•¨κ»˜ μ£Όμ˜ν•  점을 μ•Œκ³  μ‹Άμ–΄μš”.
````
#### λ‹΅λ³€:
````markdown
## λ‘ν†΅μ˜ 원인
두톡은 μ—¬λŸ¬ κ°€μ§€ μ›μΈμœΌλ‘œ λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€. κ°€μž₯ 일반적인 μ›μΈμœΌλ‘œλŠ” λ‹€μŒκ³Ό 같은 것듀이 μžˆμŠ΅λ‹ˆλ‹€:
1. **슀트레슀**: μΌμƒμƒν™œμ—μ„œμ˜ μŠ€νŠΈλ ˆμŠ€λŠ” 두톡을 μœ λ°œν•  수 μžˆμŠ΅λ‹ˆλ‹€. 특히 μ—…λ¬΄λ‚˜ ν•™μ—…, κ°€μ‘± κ΄€κ³„μ—μ„œμ˜ 압박감이 두톡을 μ•…ν™”μ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.
2. **신체적 μš”μΈ**: 근윑의 κΈ΄μž₯, ν˜ˆμ•‘ μˆœν™˜ 문제, 호λ₯΄λͺ¬ λ³€ν™” λ“± 신체적인 μš”μΈλ„ 두톡을 μœ λ°œν•  수 μžˆμŠ΅λ‹ˆλ‹€.
3. **μ˜μ–‘ 결핍**: 비타민 B6 κ²°ν•μ΄λ‚˜ λ‹¨λ°±μ§ˆ 뢀쑱은 두톡을 μΌμœΌν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.
4. **μ•½λ¬Ό**: νŠΉμ • μ•½λ¬Ό, 특히 ν•­μš°μšΈμ œλ‚˜ μ§„ν†΅μ œ 등이 두톡을 μœ λ°œν•  수 μžˆμŠ΅λ‹ˆλ‹€.
5. **λΉ„λ§Œ**: 체쀑이 κ³Όλ‹€ν•˜λ©΄ ν˜ˆμ•‘μˆœν™˜μ΄ μ €ν•˜λ˜μ–΄ 두톡이 λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€.
## λ‘ν†΅μ˜ 주의점
두톡이 자주 λ°œμƒν•˜λŠ” 경우, λ‹€μŒκ³Ό 같은 μ£Όμ˜μ μ„ λ”°λ₯΄λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€:
- **슀트레슀 관리**: 슀트레슀λ₯Ό 쀄이기 μœ„ν•΄ λͺ…상, μš”κ°€, μ‹¬ν˜Έν‘ λ“±μ˜ 방법을 μ‹œλ„ν•΄λ³΄μ„Έμš”.
- **κ±΄κ°•ν•œ μ‹μŠ΅κ΄€**: κ· ν˜• 작힌 식사λ₯Ό ν•˜κ³ , κ³Όμ‹μ΄λ‚˜ νƒ„μˆ˜ν™”λ¬Ό κ³Όλ‹€ μ„­μ·¨λ₯Ό ν”Όν•˜μ„Έμš”.
- **κ·œμΉ™μ μΈ μš΄λ™**: 맀일 짧은 μš΄λ™μ„ 톡해 ν˜ˆμ•‘μˆœν™˜μ„ κ°œμ„ ν•˜κ³  슀트레슀λ₯Ό μ€„μ΄λŠ” 데 도움이 λ©λ‹ˆλ‹€.
- **μΆ©λΆ„ν•œ 수면**: κ·œμΉ™μ μΈ 수면 νŒ¨ν„΄μ„ μœ μ§€ν•˜κ³ , 잠자기 μ „μ—λŠ” 슀트레슀λ₯Ό μ€„μ΄λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€.
- **μ „λ¬Έκ°€ 상담**: 두톡이 반볡적으둜 λ°œμƒν•˜κ±°λ‚˜ μ‹¬κ°ν•œ 증상이 μžˆμ„ 경우, μ˜μ‚¬μ™€ μƒλ‹΄ν•˜μ—¬ μ μ ˆν•œ 진단과 치료λ₯Ό λ°›λŠ” 것이 ν•„μš”ν•©λ‹ˆλ‹€.
두톡은 일반적으둜 μΌμƒμƒν™œμ— 큰 μ§€μž₯을 μ£Όμ§€ μ•Šμ§€λ§Œ, λ§Œμ•½ 자주 λ°œμƒν•˜κ±°λ‚˜ μ‹¬κ°ν•œ 증상이 λ‚˜νƒ€λ‚œλ‹€λ©΄ μ „λ¬Έκ°€μ˜ 도움을 λ°›λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.
````
## 평가 κ²°κ³Ό
λ³Έ μ—°κ΅¬μ—μ„œλŠ” RAFT + RAG λͺ¨λΈκ³Ό κΈ°μ‘΄ λͺ¨λΈμΈ Gemma-2-2b-it을 λΉ„κ΅ν•˜μ—¬ **RAGAS: Automated Evaluation of Retrieval Augmented Generation** 방법둠을 μ‚¬μš©ν•˜μ—¬ λ‹΅λ³€ μœ μ‚¬λ„λ₯Ό ν‰κ°€ν–ˆμŠ΅λ‹ˆλ‹€.
- **Gemma-2-2b-it λͺ¨λΈ**: 평균 **79.98%** 의 μœ μ‚¬λ„ 기둝
- **RAFT + RAG λͺ¨λΈ**: 평균 **96.02%** 의 μœ μ‚¬λ„ 기둝
- μ΅œμ†Œ μœ μ‚¬λ„: **92.39%**
- μ΅œλŒ€ μœ μ‚¬λ„: **98.56%**
μ•½ **16%** 의 μ„±λŠ₯ ν–₯상이 ν™•μΈλ˜μ—ˆμœΌλ©°, μ΄λŠ” RAFT + RAG λͺ¨λΈμ΄ λ³΅μž‘ν•œ λ¬Έλ§₯κ³Ό 정보 κ²€μƒ‰μ—μ„œ μš°μˆ˜ν•œ 처리 λŠ₯λ ₯을 λ³΄μœ ν•˜κ³  μžˆμŒμ„ λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
<img src="https://cdn-uploads.huggingface.co/production/uploads/64252e69120a3ed323304387/kcy1FWOJ2OxCtyhakfTGe.png" alt="image" width="80%">
## μ‚¬μš© 방법
μ‚¬μš© 방법과 μ•„ν‚€ν…μ²˜λŠ” **Gemma-2-2b-it** λͺ¨λΈκ³Ό λ™μΌν•©λ‹ˆλ‹€. λͺ¨λΈμ€ ν•œκ΅­μ–΄ 의료 μ§ˆμ˜μ— λŒ€ν•΄ 전문적인 닡변을 μ œκ³΅ν•©λ‹ˆλ‹€.
## λͺ¨λΈ 및 μ–‘μžν™” 버전
μ•„λž˜λŠ” λ³Έ λͺ¨λΈκ³Ό μ–‘μžν™”ν•œ 버전, 그리고 DSF(Domain-Specific Fine-tuning) λͺ¨λΈμ˜ λ§ν¬μž…λ‹ˆλ‹€:
- **RAFT λͺ¨λΈ**
- [devlim/Korea-HealthCare-RAFT-float16](https://huggingface.co/devlim/Korea-HealthCare-RAFT-float16)
- [devlim/Korea-HealthCare-RAFT-unit8](https://huggingface.co/devlim/Korea-HealthCare-RAFT-unit8)
- **DSF λͺ¨λΈ**
- [devlim/Korea-HealthCare-DSF-float16](https://huggingface.co/devlim/Korea-HealthCare-DSF-float16)
- [devlim/Korea-HealthCare-DSF-unit8](https://huggingface.co/devlim/Korea-HealthCare-DSF-unit8)
## μ œν•œ 사항 및 μ£Όμ˜μ‚¬ν•­
- **의료 μ‘°μ–Έ**: 이 λͺ¨λΈμ€ 의료 정보λ₯Ό μ œκ³΅ν•˜μ§€λ§Œ, 전문적인 의료 μƒλ‹΄μ΄λ‚˜ 진단을 λŒ€μ²΄ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 건강 κ΄€λ ¨ μ˜μ‚¬ 결정은 λ°˜λ“œμ‹œ 의료 전문가와 μƒμ˜ν•˜μ‹œκΈ° λ°”λžλ‹ˆλ‹€.
- **데이터 ν•œκ³„**: λͺ¨λΈμ€ ν•™μŠ΅λœ 데이터 λ²”μœ„ λ‚΄μ—μ„œ 닡변을 μ œκ³΅ν•©λ‹ˆλ‹€. μ΅œμ‹  의료 μ§€μΉ¨μ΄λ‚˜ κ°œμΈλ³„ 상황에 λŒ€ν•œ κ³ λ €λŠ” λΆ€μ‘±ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
- **μ±…μž„ ν•œκ³„**: 이 λͺ¨λΈμ˜ μ‚¬μš©μœΌλ‘œ λ°œμƒν•˜λŠ” 결과에 λŒ€ν•΄ κ°œλ°œμžλŠ” μ±…μž„μ„ μ§€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
## 인용
이 λͺ¨λΈμ„ μ‚¬μš©ν•˜κ±°λ‚˜ 연ꡬ에 μ°Έκ³ ν•˜μ‹€ 경우 λ‹€μŒ λ¬Έν—Œμ„ μΈμš©ν•΄μ£Όμ‹œκΈ° λ°”λžλ‹ˆλ‹€:
- **μ΄ˆκ±°λŒ€ AI ν—¬μŠ€μΌ€μ–΄ μ§ˆμ˜μ‘λ‹΅ 데이터**: AI ν—ˆλΈŒ, [μ΄ˆκ±°λŒ€ AI ν—¬μŠ€μΌ€μ–΄ μ§ˆμ˜μ‘λ‹΅ 데이터](https://www.aihub.or.kr/aihubdata/data/view.do?dataSetSn=71762)
- **Gemma 2 λͺ¨λΈ**: "Gemma 2: Improving Open Language Models at a Practical Size", *2023*.
- **RAFT 방법둠**: "Adapting Language Model to Domain Specific RAG", *arXiv preprint arXiv:2403.10131*, 2023.
- **RAGAS 평가 방법둠**: "RAGAS: Automated Evaluation of Retrieval Augmented Generation", *2023*.
## λΌμ΄μ„ μŠ€
이 λͺ¨λΈμ€ ν•΄λ‹Ή 데이터셋과 μ›μ²œ λͺ¨λΈμ˜ λΌμ΄μ„ μŠ€ 쑰건에 따라 μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ‚¬μš© 전에 λ°˜λ“œμ‹œ λΌμ΄μ„ μŠ€ λ‚΄μš©μ„ ν™•μΈν•˜μ‹œκΈ° λ°”λžλ‹ˆλ‹€.