뒤로
김정래
김정래 ·

할루시네이션이 거의 없는 챗봇(Graph db 사용)

제가 만든 챗봇 링크입니다.

https://carillon-legal-chatbot.streamlit.app/

데모라 streamlit에 올렸습니다.

그래서 제가 만든게 뭐냐면,

1. 근로기준법과 관련 행정해석, 판례를 graph db 넣은 후

2. 유저의 질문과 관련된 데이터를 graph db에서 뽑아낸 뒤에

3. 이를 바탕으로 유저에게 답해주는 챗봇입니다.

아래 이미지처럼 법과 관련된 판례, 행정해석들을 서로 연결하여 저장했습니다. 그리고 유저가 질문을 하면 아래 그래프에서 법과 그 법과 연결된 판례 및 행정해석을 뽑아낸 후 프롬프트에 해당 내용을 추가합니다. 쉽게 오픈북 테스트를 보는 챗봇라고 보시면 됩니다. 유저가 낸 문제를 책(graph db)에서 찾아서 유저가 낸 문제의 맞는 형태로 답변을 줍니다.

graphdb.png

넣은 판례 데이터가 해고, 휴가, 근로계약 쪽이라 이 부분과 관련해서 물어보면 잘 답변해줍니다.

추천 질문
1. 최근에 일을 못한다고 갑자기 짤렸는데, 어떻게 해야 하나요?
2. 병원이 영업정지를 당했는데, 영업정지 오기로 했던 간호사에게 휴업수당을 줘야 하나요? 그 간호사는 한번도 일하지 않았습니다.
3. 지각했다고 휴가를 뺏었는데 말이 되는건가요?

네이버지식인 예시(해당 링크)

질문 : 해고시기와 해고사유에 관하여 이메일(e-mail)로 통지를 받았어요. 유효한 해고로 볼 수 있을까요?

챗봇 답변 :
따라서, 이메일로 해고 통지를 받은 경우라도 다음 조건이 충족되면 유효한 해고로 인정될 수 있습니다.
1. 이메일에 해고사유와 해고시기가 명확히 기재되어 있을 것.
2. 근로자가 이메일을 수신하여 그 내용을 알고 있을 것.
만약 이러한 조건이 충족된다면, 이메일에 의한 해고 통지는 유효한 서면 통지로 간주될 수 있습니다. 관련 판례는 여기에서 확인할 수 있습니다.

지식인답변(대한법률구조공단) :
따라서 단지 이메일로만 통지를 받았다는 사유만으로 해고가 무효로 되는 것이 아니라 구체적인 사정을 따져보아 근로자가 해고시기와 해고사유에 대해서 알 수 있었던 경우로 인정되는 때에는 유효한 방식의 해고로 인정될 수 있다고 보아야 합니다.
(지식인의 자세한 답변은 위 링크에서 볼 수 있습니다.)

챗봇 전체 답변

만들면서 느낀 점

  1. LLM 성능이 좋아지면서 graph db에서 데이터를 검색하는 명령어를 LLM이 잘 만들어낸다. gpt-3.5에서는 안됐었는데, gpt-4 부터는 매우 잘해줍니다.

  2. Graph db + vector similarity 를 활용한 Graphrag 는 성능이 좋지만 비용이 비싸다(gpt-4o 기준으로 1번 검색에 100원정도 들었던거 같아요)

  3. Graph db를 LLM이 만들어도 되지만, 직접 만들면 성능이 더 좋습니다.

비개발자를 위한 매우 간략한 설명

Graph database(그래프 데이터베이스)

기존 데이터베이스는 엑셀처럼 데이터를 표 형태로 저장한다면, graph db는 마인드맵처럼 정보들을 점(node) 형태로 저장하고, 그 점들의 관계를 연결하는 형태의 데이터베이스입니다.

아래 예시 이미지처럼 Alice와 Bob이라는 점을 만들고, 둘이 서로 2001/10/03부터 알고 지냈다는 관례를 만들어 저장합니다.

GraphDatabase_PropertyGraph.png

An example of a Labeled-property graph<by Ole Mussmann, wikipedia>

궁금한게 있으시면, 편하게 물어봐주세요. 사실 저도 잘 모르기 때문에 뻔뻔하게 답변드릴 수 있습니다 :)

챗봇은 법률상담이나 예측 등 법률사무를 하지 않습니다. 결과는 단순 참고용으로만 사용하시고, 정확한 상담은 변호사에 문의하시기 바랍니다.

10X AI Club 그룹의 글
10

댓글

로그인 후 댓글을 남길 수 있습니다.

김창회
김창회

그래프디비를 쓰는 게 이점이 있나요?

김정래
김정래

데이터들끼리 관계가 복잡할 때 좋은거 같아요. 가령 근로기준법 제107조(벌칙) 제7조, 제8조, 제9조, 제23조제2항 또는 제40조를 위반한 자는 5년 이하의 징역 또는 5천만원 이하의 벌금에 처한다. <개정 2017. 11. 28.> 이렇게 다른 조항을 참조하는 조항이 있고, 그리고 그 제7조를 참고하는 판례(서울남부지방법원 2023. 7. 11. 선고 2022가단294880 판결)가 있다면, 제107조 -> 제7조 -> 판례(서울남부지방법원 2023. 7. 11. 선고 2022가단294880 판결) 와 같은 관계성으로 데이터를 쉽게 정리하고 찾을 수 있는거 같습니다. 점점 관계가 늘어나도 큰 문제가 없고, 새로 데이터를 추가해도 연결선만 추가하면 되기 때문에 데이터처리 하기가 좋았던거 같아요.

Doeon Kwon 권도언
Doeon Kwon 권도언

정래님 메이커로그가 이번 주 뉴스레터에 소개되었어요🙂 https://dis.qa/6TxRw

김정래
김정래

우와 감사합니다. 어쩐지 챗봇이 갑자기 작동이 안됐는데 뭔가 했습니다. 다른 디스콰이엇 유저분들께서 엄청 들어와 주셨었네요

Doeon Kwon 권도언
Doeon Kwon 권도언

헉 그랬었군요!!