Skip to content

Latest commit

 

History

History
236 lines (137 loc) · 15.6 KB

README.md

File metadata and controls

236 lines (137 loc) · 15.6 KB

법률 조언 웹 서비스 ‘LawBot’

         HuggingFace FastAPI

Screenshot 2023-07-31 at 11 27 53 AM

LawBot은 유사 판례 및 법률 조항과 함께 가벼운 법률 상담 서비스를 제공합니다. LLM 모델의 기학습된 방대한 정보와 더불어 fine-tuning에 사용한 법률 지식을 사용하여 다양하고 특수한 상황에 유연하게 대응하여 답변을 생성할 수 있으며, 유사도 기반의 AI 모델을 이용하여 관련된 내용에 대한 유사 판례를 제공합니다.


🖥 LawBot 웹서비스 체험하기

※ 본 웹 서비스는 포스트 세션 종료일인 2023년 8월 18일까지만 이용하실 수 있으니 참고바랍니다. 종료일까지 서비스 고도화 및 성능 개선 작업이 이루어질 예정입니다.


⌘ Project BackGround

기획 의도 및 기대효과

Screenshot 2023-07-31 at 11 36 29 AM
  • 배경 : 국제적으로 리걸 테크 산업은 매우 빠르게 발전하고 있으며, 국내에서도 관련 서비스 수요가 꾸준히 증가하고 있습니다. 그러나 법률 용어나 법률 문장은 해석하기 어려워 일반인들에게 이해도는 낮은 편이며, 관련 정보를 얻기 위해서는 많은 비용이 필요합니다.

  • 목표: 윤슬 팀은 이러한 상황을 해결하기 위해 법률 상황에 대해 이해하기 쉬운 가이드라인을 제시하고, 관련된 유사 판례 및 법률 조항을 제공함으로써 법의 장벽을 낮출 수 있는 가벼운 법률 상담 서비스를 제공하고자 합니다.


LawBot 서비스의 차별점

  • 기존의 주류 Legal Tech 서비스는 변호사를 매칭시켜주거나 여전히 어려운 법률조항 및 판례에 대한 직접적인 검색만을 제공합니다. LawBot은 이와 다르게 AI 모델을 이용하여 법적 분쟁 상황에 대한 유사판례를 찾아주고, 빠른 시간 내에 가벼운 가이드라인을 직접 생성해서 유저에게 제공한다는 점에서 차별점을 가지고 있습니다.

⚙️ Use Case

예시-케이스

  1. 웹 서버 접속
  2. 메시지 프롬프트 창에 자신이 처한 법적 분쟁 상황 및 연관된 질문 입력
  3. AI 모델이 상황 맥락을 이해하여 가이드라인을 메시지 형태로 제공
  4. 우측 사이드바에서 사용자가 입력한 상황과 비슷한 최대 3가지의 유사 판례 제공
  5. 링크를 통해 법 조항 등 관련된 법령 정보를 직접 확인 가능

🧑🏻‍💻 Team Introduction & Members

💬 팀 소개

조화와 지속 가능한 성장을 추구하는 팀 윤슬입니다!

팀 개개인 모두 주어진 위치에 상관없이 모든 일에 오너십을 가지고 적극적으로 참여하는 것을 최우선으로 생각하였습니다. 좋은 동료가 되기 위해 치열하게 고민하고, 학습하고, 성장하고 있습니다.


👨🏼‍💻 Members

강민재 김주원 김태민 신혁준 윤상원

👨🏼‍💻 역할 분담

Screenshot 2023-08-20 at 11 21 39 PM

🗓️ Project TimeLine

  • 초기에 핵심 기능을 우선적으로 개발하였고, 그 후 팀원들의 의견을 수렴하여 지속적으로 발전시키는 애자일적인 접근 방식을 적용하여 서비스 고도화 작업을 진행했습니다.
Screenshot 2023-07-31 at 11 54 44 AM

⌘ Service Archiecture

Screenshot 2023-07-31 at 12 03 17 PM

네이버 커넥트 재단으로부터 제공받은 V100 서버 4대를 모두 활용하기 위해 첫 설계 때부터 서비스 확장이 쉬운 마이크로 서비스 아키텍처를 고려했습니다. 또한 서비스 간의 상호 의존도를 낮춰 서버에 장애가 발생할 경우 전체 서비스가 중단되는 것을 방지하고자 하여 위와 같이 웹 서버, 모델 서버를 독립적으로 분리하고 API를 통해 서로 통신하는 구조로 설계했습니다. 이를 통해 한 대의 V100 서버에 장애가 발생하더라도 나머지 서비스는 전혀 영향을 받지 않고 서비스를 제공할 수 있습니다.



💿 Data

Screenshot 2023-07-31 at 12 30 46 PM
  • 데이터는 위와 같이 단계별로 나누어 목표를 설정하고 데이터를 탐색, 수집, EDA 및 전처리, 생성모델을 통한 증강을 하여 학습데이터 셋을 구축하였습니다.

Screenshot 2023-07-31 at 12 31 04 PM
  • 데이터 파이프라인을 도식화한 순환 DMOps 구조도는 위와 같습니다.

1️⃣ 법률 QA 데이터

데이터셋 이름 데이터 개수 출처
easylaw_kr 2,195 https://huggingface.co/datasets/juicyjung/easylaw_kr
LegalQA 1,830 https://github.com/haven-jeon/LegalQA
대한법률구조공단의 법률상담사례 데이터 9994 https://www.klac.or.kr/legalinfo/counsel.do
대한법률구조공단의 국내 사이버상담 데이터 2463 https://www.klac.or.kr/legalstruct/cyberConsultation.do
Open AI GPT증강 8666 -

2️⃣ 판례 데이터

데이터셋 이름 데이터 개수 출처
법률/규정 (판결서, 약관 등) 텍스트 분석 데이터 77382 https://www.aihub.or.kr/aihubdata/data/view.do?currMenu=115&topMenu=100&aihubDataSe=realm&dataSetSn=580


📊 Model

Overview

Screenshot 2023-07-31 at 12 17 55 PM

먼저 유저가 입력하면 모델에서는 Question Filtering 모델을 통해 법률적인 질문인지 아닌지 구분하게 됩니다. 법률적인 질문이라면 Similar Precedent Mode과 Law LLM Model 통해 유사판례와 법률적인 조언을 생성합니다.


1️⃣ Question Filtering Model

Screenshot 2023-07-31 at 12 47 58 PM

2️⃣ Similar Precedent Model

Screenshot 2023-07-31 at 12 48 08 PM

3️⃣LLM 모델

Screenshot 2023-07-31 at 12 48 28 PM
  • 구축한 모델 리스트(활용한 데이터 + Backbone 모델)
    Screenshot 2023-08-21 at 5 35 27 PM

평가지표

  • LLM 모델은 명확한 평가지표가 없어 직접 평가지표를 만들어 평가했습니다. 평가지표를 만들 때 고려했던 부분은 도메인 특성상 법률적인 정확도가 중요하므로 법률적인 정확도와 언어의 자연스러움 두가지 모두 평가할 수 있도록 metric을 제작하여 평가했습니다.

[ Dialogue Evaluation Metric ]

  • Kullm 모델의 Dialogue Evaluation Metric 평가요소를 도메인에 맞게 변형하여 활용하였고, 해당 지표를 직접 변호사에게 의뢰하여 답변을 평가했습니다. 추가로 모든 모델들은 모델 A, B, C ... 등 모델 이름을 가리는 블라인드 평가를 진행했으며, 명확한 평가지표를 만들기 위해 ChatGPT, BARD 모델과 함께 평가를 진행하였습니다. 최종적으로 저희가 구축한 kfkas/legal-llama-2-ko-7b-Chat 모델이 가장 좋은 성능을 보였습니다.
Screenshot 2023-07-31 at 12 56 06 PM

[ Perplexity ]

  • 얼마나 생성모델이 법률적인 용어를 생성해내는지 평가하기 위해 Perplexity 평가지표를 활용하였습니다. 낮을 수록 좋은 값을 나타내는 metric인데, 크롤링 데이터와 탐색한 데이터로 학습한 모델들이 대체로 높은 성능을 나타내는 경향을 보였습니다.
    Screenshot 2023-07-31 at 12 58 26 PM

💻 Getting Started

아래 Readme를 통해 직접 프로젝트를 실행할 수 있으며, 구현된 코드를 살펴볼 수 있습니다.

📊 Model

💽 Data

🎨 Frontend

💻 Backend


📚 Further Information

1️⃣ 개발 스택 및 개발 환경

Screenshot 2023-07-31 at 12 44 34 PM

2️⃣ 협업 Tools

  • 노션 :

    • Kanban Board를 이용하여 체계적으로 To do List 관리
    • 노션 협업기구를 활용해 회의 및 기록 체계화åScreenshot 2023-07-31 at 12 38 10 PM
  • GitHub :

    • GitHub Flow를 이용하여 브랜치 전략 수립
    • PR Template, Issue Template을 이용하여 체계젹으로 관리.
    • Ground Rule을 정해 모두 일관된 Commit convention을 유지Screenshot 2023-07-31 at 12 38 50 PM

3️⃣ Links :