2023. 4. 19. 16:30ㆍGPT-4 Alternative, Competitor
의학, 의료전문 gpt, chatGPT인 MedAlpaca란?
medalpaca-13b는 의료 분야 작업을 위해 특별히 미세 조정된 대규모 언어 모델입니다.
LLaMA(대규모 언어 모델 메타 AI)를 기반으로 하며 130억 개의 파라미터를 포함합니다.
이 모델의 주요 목표는 의료, 의학에 적합한 질문과 답변 및 의료에 특화된 대화형 인공지능을 개선하는 것입니다.
MedAlpaca의 학습 데이터
medalpaca-13b의 프로젝트의 학습 데이터는 다양한 리소스에서 가져왔습니다.
먼저 Anki 플래시카드를 사용하여 카드 앞면에서 질문을 생성하고 카드 뒷면에서 답변을 자동으로 생성했습니다.
둘째, 위키닥(wikiDoc)에서 의학관련 질문과 답변 쌍을 생성했습니다.
관련 제목이 있는 단락을 추출하고 ChatGPT 3.5를 사용하여 제목에서 질문을 생성하고 해당 단락을 답변으로 사용했습니다.
이 데이터 세트는 아직 개발 중이며 이러한 질문과 답변 쌍의 약 70%가 의학적 사실에 부합하는 것으로 판단됩니다.
셋째, 5개 카테고리에서 가장 높은 평가를 받은 질문에서 질문-답변 쌍을 추출하기 위해 StackExchange를 사용했으며, 학계, 생물정보학, 생물학, 피트니스, 건강 등 StackExchange의 5개 카테고리에서 가장 높은 점수를 받은 질문과 답변을 쌍으로 추출했습니다.
또한 20만 개의 질문-답변 쌍으로 구성된 ChatDoctor의 데이터 세트 https://github.com/Kent0n-Li/ChatDoctor 를 사용했습니다.
MedAlpaca 모델 사용법
특정 데이터 세트에서 모델의 성능을 평가하려면 Hugging Face Transformers 라이브러리에 내장된 평가 스크립트를 사용할 수 있습니다.
자세한 내용은 Medalpaca의 평가 가이드를 참조하세요. (맨 아래 출처를 참고하세요)
Hugging Face Transformers 라이브러리를 사용하여 질문과 답변 및 의료 대화와 같은 추론 작업에 모델을 사용할 수 있습니다.
다음은 질문-답변 작업에 모델을 사용하는 방법의 예입니다. (다음 예시는 13b가 아닌 7b로 학습데이터의 양이 적은 7b 기준의 소스입니다)
from transformers import pipeline
qa_pipeline = pipeline("question-answering", model="medalpaca/medalpaca-7b", tokenizer="medalpaca/medalpaca-7b")
question = "What are the symptoms of diabetes?"
context = "Diabetes is a metabolic disease that causes high blood sugar. The symptoms include increased thirst, frequent urination, and unexplained weight loss."
answer = qa_pipeline({"question": question, "context": context})
print(answer)
MedAlpaca의 한계
이 모델은 의료 영역의 범위를 벗어나면 효과적으로 작동하지 않을 수 있습니다. 훈련 데이터는 주로 의대생의 지식 수준을 대상으로 하므로 보드 인증을 받은 의사의 요구 사항을 충족하는 데 한계가 있을 수 있습니다. 이 모델은 실제 애플리케이션에서 테스트되지 않았으므로 현재 그 효과와 정확성을 알 수 없습니다. 이 모델은 의사의 의견을 대체하는 용도로 사용해서는 안 되며 연구 도구로만 취급해야 합니다.
출처) https://huggingface.co/medalpaca/medalpaca-13b
https://huggingface.co/medalpaca/medalpaca-7b