왜 우리는 언어 모델을 미세 조정합니까? LLM에 새로운 기술을 가르치 거나 특정 영역에서의 이해를 향상시켜야 할 때 미세 조정이 필수적입니다.
이 프로젝트에서 우리는 작은 언어 모델 (SLM)의 Smollm (LLM)을위한 Smollm을 포함한 소규모 및 대규모 교육/채팅 언어 모델을 미세 조정하는 것을 목표로합니다.
사용 된 주요 예제 데이터 세트는 Anki Medical Curriculum Flashcards에서 파생 된 medalpaca/medical_meadow_medical_flashcards 입니다. 의대생들이 정기적으로 만들고 정기적으로 업데이트 된이 플래시 카드는 해부학, 생리학, 병리학 및 약리학과 같은 광범위한 의학적 주제를 다루며 간결한 요약 및 니모네틱을 통해 효과적인 학습 및 유지를 지원하도록 설계되었습니다.
이 프로젝트는 Medical_Meadow_Medical_flashcards 데이터 세트를 사용하지만 질문/응답 및 교육/응답 작업을 위해 다른 데이터 세트에 적응할 수 있습니다. 구성 파일을 수정하여 다양한 데이터 세트의 통합을 쉽게 수행 할 수 있습니다.
이 프로젝트는 또한 양자화를 지원하므로 더 겸손한 하드웨어 설정에서 Mistral 및 LLAMA와 같은 대형 모델을 미세 조정할 수 있습니다.
미세 조정 된 Smollm 모델은 HuggingFace에서 사용할 수 있습니까?
기본 모델의 응답은 일반적이며 마크 다운 형식을 따르지만 미세 조정 모델은 특히 예상되는 응답 스타일을 복제하는 데 훈련 된 전문 기술을 효과적으로 통합 한 것으로 보입니다. 그러나 의학적 배경이없는 사람으로서, 나는 어느 모델에서 제공하는 응답의 정확성이나 품질을 평가할 수 없습니다. 아래는 원본 모델, 기본 모델 및 미세 조정 모델의 의료 질문에 대한 응답을 비교하는 표입니다.
| 질문 | 원래 응답 | 기본 모델 응답 | 미세 조정 모델 응답 |
|---|---|---|---|
| Plasmodium hypnozoites에 대해 어떤 항 말라리아 약물이 활동 하는가? | Primaquine은 Plasmodium hypnozoites에 대한 활성을 가진 항 말라리아 약물입니다. | 항 말라리아 약물은 플라스 모디움 기생충에 효과적인 약물로 말라리아를 유발하는 약물입니다. 말라리아를 치료하는 데 사용되는 가장 흔한 항 말라리아 약물은 다음을 포함한다 : 1. 암피실린 (암포 테리 신 B) : 플라스 모디움 종에 효과적인 광범위한 항생제. 2. Fosamivir (Fosamivir) : Plasmodium 종에 효과적인 광범위한 항 바이러스. 3. 인플루드르 (Implovir) : 플라스 모디움 종에 효과적인 광범위한 항 바이러스. 4. ** 암피실린 | 에리스로 마이신은 플라스 모디움 hypnozoites에 대한 활성을 가진 항 말라리아 약물입니다. |
| 단위 시간당 Bowman의 공간에서 여과 된 물질의 양을 설명하는 데 사용되는 용어는 무엇입니까? | 단위 시간당 Bowman의 공간에서 여과 된 물질의 양을 필터링 하중이라고합니다. | "Bowman 's Space"라는 용어는 우주선이 궤도로 발사되는 가상의 공간 인 Bowman의 공간에서 여과 된 물질의 양을 설명하는 데 사용되는 구어체입니다. 이 개념은 우주선을 궤도로 시작한 다음 지구로 돌아갈 수 있다는 아이디어를 기반으로하며 우주선은 공간에 존재했을 수있는 남은 입자 나 잔해물을 필터링하여 지구로 돌아갑니다. "Bowman 's Space"라는 용어는 종종 Bowman의 공간에서 여과 된 물질의 양을 설명하는 데 사용되는데, 이는 우주선이 궤도로 발사되어 지구로 돌아 오는 가상 공간입니다. 그만큼 | 단위 시간당 Bowman의 공간에서 여과 된 물질의 양을 설명하는 데 사용되는 용어를 여과 효율이라고합니다. |
| 정맥에 포함 된 혈액량을 설명하는 데 사용되는 용어는 무엇입니까? | 정맥에 포함 된 혈액량을 스트레스를받지 않는 부피라고합니다. | "혈액량"이라는 용어는 신체의 순환계를 통해 순환하는 혈액의 양을 나타냅니다. 혈액과 조직 사이의 산소, 영양소 및 폐기물의 교환을 포함하는 복잡한 과정입니다. 혈액량은 전형적으로 리터 (L) 또는 밀리리터 (ML)로 측정되며 일반적으로 순환계를 통해 신체 전체에 분포됩니다. 혈액량에 기여하는 몇 가지 주요 성분이 있습니다. 1. 적혈구 : 이들은 폐에서 조직으로 산소를 운반하는 세포입니다. 직경은 약 1.5mm이며 헤모글로빈으로 구성됩니다. | 정맥에 포함 된 혈액량을 설명하는 데 사용되는 용어를 정맥 혈액이라고합니다. |
| 전이 세포 암의 예후를 결정하는 데 가장 중요한 요소는 무엇입니까? | 전이 세포 암종의 예후를 결정하는 가장 중요한 요소는 침습의 정도입니다. | 전이 세포 암종 (TCC)의 예후를 결정하는 것은 환자의 삶의 질, 치료 옵션 및 전반적인 생존에 크게 영향을 줄 수 있기 때문에 중요합니다. TCC의 예후를 결정하는 가장 중요한 요소는 명확한 진단, 잘 정의 된 종양 및 유리한 예후의 존재입니다. 다음은 TCC의 예후에 영향을 줄 수있는 몇 가지 주요 요인입니다. 1. 명확한 진단 : TCC는 명확한 종양으로 진단되므로 양성 또는 양성과 같은 성장이 있습니다. TCC는 또한 유리한 예후로 진단됩니다. | 전이 세포 암종의 예후를 결정하는 가장 중요한 요소는 고급의 존재입니다. |
응답의 정확도 : 미세 조정 된 모델은 예상 형식과 스타일을 복제하지만 일부 부정확성을 보여줍니다. 예를 들어, 에리스로 마이신은 플라스 모디움 hypnozoites에 대해 효과적인 항 말라리아 약물로 잘못 확인된다. 정답은 Primaquine이어야합니다.
기본 모델 문제 : Bowman의 공간과 혈액량에 대한 잘못된 설명에서 볼 수 있듯이 기본 모델의 반응은 특히 의료 맥락에서 과도하게 일반화되고 때로는 주제가 아닙니다.
참고 : 이 결과는 단 10 개의 시대 훈련 후에 얻어졌습니다. 더 많은 시대를위한 훈련은 더 나은 결과를 얻을 수 있습니다. ¯ (ツ) /¯.
이 프로젝트를 원활하게 실행하려면 Python 3.10이 필요합니다. 이 프로젝트는 Python 3.10.13에서 테스트 및 확인되었습니다. 아래 단계를 따라 환경을 설정하십시오.
가상 환경 생성 :
python -m venv env
가상 환경 활성화 :
source env/bin/activate
필요한 종속성 설치 :
pip install -r requirements.txt
환경 변수 설정 : .env.example 파일을 복사하여 .env로 이름을 바꿉니다.
mv .env.example .env
Jupyter 노트북을 사용하여 교육 단계를 탐색 할 수 있습니다.
cd notebooks
jupyter-lab
또는 미세 조정 프로세스를 직접 시작할 수 있습니다. 미세 조정에 사용되는 매개 변수는 configs 폴더 내의 구성 파일에 지정되어 있습니다. 기본 Smallm 모델로 미세 조정 프로세스를 시작하려면 실행하십시오.
python train.py
다른 모델을 교육하려면 구성 파일 이름을 인수로 전달하여 모델 구성을 지정할 수 있습니다.
python train.py --model Mistral
Mistral을 원하는 모델 구성 파일의 이름으로 바꾸십시오. 새 모델을 훈련 시키려면 원하는 설정으로 새 구성 파일을 만들고 적절한 모델 이름으로 Train.py를 실행하십시오.