DaG 이란?

  • - DaG LLM은 DaG LAB에서 개발한 거대언어모델로, 잘 정제된 작은 데이터셋으로 거대 언어모델을 미세조정(fine-tuning) 하였습니다.
  • - 작고 효율적인 데이터셋 구축과 적절한 프롬프트 인젝션(prompt injection), 그리고 언어특성을 반영한 미세조정으로 거대언어모델을 공략하려는 시도입니다.

DaG 개발 배경 및 기대 효과

  • - 현존하는 LLM(Large Language Model)은 openAI, Google, 네이버 와 같은 대기업에서 개발한 PaLM, Clova X 등의 비공개 모델과 Meta AI, Eleuther AI 에서 개발한 LLaMA, Polyglot-ko 등의 공개 모델로 양분되어 있습니다.
  • - LLM이 대기업을 중심으로 개발되는 이유는 LLM 구축에 엄청난 규모의 데이터와 컴퓨팅 파워가 필요하기 때문입니다.
  • - 이런 이유로 대학, 연구소, 일반 기업처럼 제한된 리소스를 가진 기관이 직접 LLM을 개발하기는 점점 어려워지고 있어, 대부분 공개된 거대모델을 기반으로 미세조정(fine-tuning)하여 LLM을 구축하고 있습니다.
  • - 대기업에서 개발한 비공개 모델을 사용하는 경우 라이센스 기반의 api를 통한 접속으로 그 모델을 활용하여 자체 모델을 개발하기 어려운 상황입니다.
  • - DaG LLM은 공개된 한국어 LLM인 Polyglot-Ko-5.8b를 근간으로 하여 작지만 다양한 분야의 잘 정제된 데이터셋으로 미세조정하고 적절한 프롬프트 인젝션을 통해 비공개 LLM에 필적하려는 시도입니다!
  • - 이러한 시도는 거대언어모델의 구축의 다양한 생태계로의 확장과 일반적인 데이터로 구축한 DaG LLM을 법률, 금융, 의료 등 전문 분야에 특화된 한국어 LLM 개발을 위한 토대를 마련하기 위해서 입니다.
  • - 전문분야에 특화된 시스템 데모로, KATALOG(Korean Assistant for Traffic Accident Liability Overview Guidance)도 함께 공개합니다.

DaG 기술 사양

  • - Polyglot-Ko-5.8b기반으로 훈련되었습니다.
  • - 분야 별 균형적인 데이터를 높은 수준으로 정제하여 Polyglot-Ko-5.8b가 가지고 있던 편향성과 학습 품질 문제를 해결하고자 하였습니다.
  • - 효과적인 Instruction-tuning을 위한 지시문(instruction) 생성과 분야 별 적절한 분배에 대한 경험적 지식이 응축되어 있습니다.
  • - 전문분야의 적용을 위해 전문 분야에 특화된 프롬프트를 구성하고 이를 생성시 주입하는 방법을 개발하였습니다.

데이터

대분류소분류비율설명
generalnlp48.7%Klue, kobest, hatescore 등의 nlp 데이터
etc50.3%인터넷 공개 자료, math_korean 등의 일반 텍스트 데이터
finance1%한국은행 경제금융용어집
lawtraffic73.4%자동차사고 과실상계유형, 도로교통법 데이터
Judicial precedent21.5%판례 데이터
Legal QA5.1%법률 상담 데이터
  • - Instruction instance 생성 방식
    한국어 raw data를 정제하고, 번역된 데이터를 검수 및 정제하여 태스크 별 템플릿으로 인스턴스화하였습니다.
  • 예시.
    [다음 두 문장이 의미상으로 유사한지 그 여부를 판단해줘. {input_sentence1}, {input_sentence2}.]

Katalog(Korean Assistant for Traffic Accident Liability Overview Guidance)란?

  • - 공개된 한국어 LLM인 Polyglot-Ko-5.8b를 근간으로, 다양한 법률 데이터로 미세조정한 법률 특화 한국어 LLM입니다.
  • - Katalog는 교통사고과실상계에 특화된 모델입니다.
  • - 교통사고와 관련한 과실을 “몇 대 몇” 형식으로 살펴볼 수 있으며, 과실을 산정하는 기본요소와 여러 상황을 고려한 수정요소가 반영된 비율을 보여줍니다. 관련된 판례가 있을 경우는 해당 판례도 보여 줍니다.
  • - Katalog 훈련은 과실비율정보포털의 데이터를 기반으로 이루어졌습니다. 훈련에 사용된 자료의 양이 충분하지 않고 법원 판례의 다양성이 떨어지기 때문에 완벽한 답변을 하지 못할 수 있습니다.
  • - 더 많은 데이터가 확보되고, 이미지와 동영상 등의 멀티모달 자료까지 학습한다면 성능 개선이 이루어질 것으로 예상됩니다.
  • - Katalog는 전문분야에 특화된 한국어 LLM의 발전 가능성을 보여주는 데모입니다.

Katalog 학습 데이터

  • - Katalog는 과실비율정보포털에서 제공하는 과실비율인정기준을 기본 데이터로 하여 다양한 instruction 데이터셋으로 변환하였습니다.
  • - 관련 도로교통법 등의 데이터를 추가하였습니다.
  • - 다양한 교통사고 과실 비율 산정과 관련해 다양하게 질문을 할 수 있으나, 원 자료의 데이터의 구조상 가급적 자세하게 기술할 경우 그 결과가 더 정확할 수 있습니다.
  • - 다음은 과실비율인정기준 에서 제시하고 있는 예와 이를 좀 더 다양한 질문 형식으로 바꾼 예입니다. 이런 식으로 질의를 할 경우 더 자세한 결과를 얻을 수 있습니다.
    • • 도로가 좁아지는 곳에서 본선을 달리다 합류 차량과 박았습니다
    • • 안전지대를 이미 벗어난 상태에서 직진을 하고 있었는데 좌회전 차로로 차선을 바꾸고 있던 상대차와 사고가 났습니다
    • • 어린이 보호구역 내 신호등이 없는 사거리에서 우회전을 하고 있었는데 보행자가 갑작스럽게 도로를 건너는 바람에 충격했습니다
    • • 신호등이 없는 사거리에서 진행 중인 제 좌회전 차량이 사거리 내부의 동일한 폭의 도로를 횡단하는 보행자를 충격했습니다. 이때 보행자가 어린이였는데 제가 제한속도도 위반했습니다
    • • 신호 있는 사거리로 신호 내에 진입해 바뀔 때까지 못 나간 차량과 다른 방향에서 녹색 신호에 직진하는 제 차량이 충돌했습니다
    • • 폭이 같은 도로가 교차하는 사거리였는데 신호등도 없었고 저는 직진 중이었습니다. 그런데 갑자기 제 오른쪽에서 상대 차량이 좌회전해서 사거리에 진입하는 바람에 결국 부딪혀서 사고가 났습니다. 상대 차량은 회전 신호를 하지 않았을뿐더러 시속 20km 이상으로 제한속도를 위반했습니다
  • - Katalog가 생성하는 과실비율 결과는 과실비율인정기준 에서 제시한 것과 실제 여러 다른 요소들이 더 고려되는 법원 판결과는 차이가 있을 수 있습니다.

한계

  • - 유해한 (Toxic ) 질문 및 답변에 대한 필터링 기능을 첨가했으나 여전히 유해한 질문에 대한 답과 무해한 질문한 대한 유해한 답이 생성될 수 있습니다. 더 나은 필터링 적용을 위해 노력하고 있습니다.
  • - Agent나 외부 플러그인을 사용하지 않은 학습모델을 기반으로 하는 순수 생성형 언어모델 기반이기 때문에 실시간 정보확인 및 환각(hallucination) 및 정보성 질문에 대해 완벽히 신뢰할 수 없는 문제가 있습니다. 생성된 결과에 대해서 이 시스템이 책임을 지지 않으니, 반드시 사실 여부를 확인하시길 바랍니다.

Acknowledgement

  • - 서울대 언어학과 컴퓨터언어학/자연어처리 연구실 학생들의 헌신적인 노력으로 구축되었습니다.
  • - 특정 연구 과제의 직접적인 지원 없이 자체 노력으로 개발되었습니다.
  • - 모델 학습에는 본 연구실이 보유하고 있는 GPU-cluster (A100_80GB, 10대)로 시작하였으며 본격적인 학습은 바로 AI에서 테스트 용으로 지원한 Poseidon Ultimate 4000U (H100 *4대) 2대와 TIE Clustering이 사용되었습니다.

기타

  • - 모델 체크포인트는 Github Huggingface에 공개될 예정입니다.
  • - 연구용으로 배포되며, 재가공 및 추가 학습 시 라이센스 상담이 필요하며 DaG 사용임을 밝혀야 합니다.

연락