생물.컴퓨터.통계

나만의 데이터로 GPT 활용-local LLM 구축 도전기 (2): Ollama-LLaMa

프로페서 H 2024. 1. 19. 20:55

 

지난 번 글에서는 LangChain기반 AI 모델 구축의 일반적인 내용을 담았고 이번에는 실제 구축한 LLM 모델에 대해 설명하고자 한다. 

이로서 인터넷 서버를 통하지 않고 local computer인 내 노트북, 내 데스크톱 PC에서 LLM을 구축하고 내가 쌓은 의학지식을 이용한 Retrieval Augmented Generation-기반 LLM 모델을 가지게 되는 것이다. 

 

https://medtalk.tistory.com/entry/나만의-데이터로-GPT를-활용하자-LangChain기반-맞춤형-AI-모델-구축-도전기-1-AI-시대의-맞춤형-데이터-활용

 

나만의 데이터로 GPT 활용: LangChain기반 AI 모델 구축 도전기 (1)

나만의 데이터로 GPT 활용: LangChain기반 AI 모델 구축 도전기 (1) 1. 나의 컴퓨터가 말을 하기 시작하다! 만약 우리의 노트북, 컴퓨터가 단순한 학습 도구를 넘어서서 지식 파트너가 된다면 어떨까?

medtalk.tistory.com

 

내가 도전했던 local GPT의 유형은 크게 3가지이다. 

1) Ollama

https://ollama.ai

 

Ollama

Get up and running with large language models, locally.

ollama.ai

2) localGPT

https://github.com/PromtEngineer/localGPT

 

GitHub - PromtEngineer/localGPT: Chat with your documents on your local device using GPT models. No data leaves your device and

Chat with your documents on your local device using GPT models. No data leaves your device and 100% private. - GitHub - PromtEngineer/localGPT: Chat with your documents on your local device using ...

github.com

 

3) privateGPT 2.0

https://github.com/imartinez/privateGPT

 

GitHub - imartinez/privateGPT: Interact with your documents using the power of GPT, 100% privately, no data leaks

Interact with your documents using the power of GPT, 100% privately, no data leaks - GitHub - imartinez/privateGPT: Interact with your documents using the power of GPT, 100% privately, no data leaks

github.com

이중에서 제일 설치가 쉽고 chatGPT와 유사한 UI 환경을 구성할 수 있는 Ollama에 대해 소개하고자 한다. localGPT, privateGPT는 다음 글에서 이어 작성할 예정이다.

 

 

Ollama는 유명한 LLM (LLaMa 2, Mistral, Mixtral, codellama, 등등)은 거의 모두 설치하여 사용할 수 있는 장점이 있다. 

다운로드 클릭하여 설치 후 terminal에서 간단한 명령어 (ollama run LLM모델이름)만으로 실행이 가능하다.

설치방법은 다음 유투브 동영샹을 참고하면 된다.

https://www.youtube.com/watch?v=rIRkxZSn-A8&t=27s

 

다음과 같이 터미널 창을 두개를 열어 LLM 모델 두 개를 동시에 사용할 수도 있다.

 

 

터미널창에서 명령어 프롬프트로 대화를 하는 것이 가능하지만 이것만으로는 나의 문서를 활용한 대화를 하기 어렵고 chatGPT와 같은 UI 구성이 되어 있지 않아 초보자들에게는 다소 생소하다 이를 좀더 편리하게 하기 위해 Ollama WebUI를 설치해 보자.

 

RAG-LLM 모델 구축을 위한 Ollama WebUI 설치

https://github.com/ollama-webui/ollama-webui

 

GitHub - ollama-webui/ollama-webui: ChatGPT-Style Web UI Client for Ollama 🦙

ChatGPT-Style Web UI Client for Ollama 🦙. Contribute to ollama-webui/ollama-webui development by creating an account on GitHub.

github.com

 

설치가 완료되어 실행하면 다음화면과 같이 chatGPT와 유사한 환경이 구현된다.

 

Document 메뉴를 클릭하면 다음과 같이 pdf, text등의 문서 파일을 업로드할 수 있고 이들 문서에서 내용을 추출하여 대화가 가능해진다. 

 

제일 설치가 쉬웠던 케이스였다. 만약 오류가 발생하거나 다소 어렵게 느껴진다면 chatGPT의 code interperter를 활용하여 질문하면서 설치하면 문제가 해결될 것이다(유투브 동영상도 매우 잘되어 있어 따라 하기만 하면 된다. )

 

다음은 실제 CMML의 진단기준을 WHO 5판에 근거하여 대답을 해주고 있는 것을 알 수 있다 (약간 오류는 있지만 이는 text 포멧이 복잡한 문제, 여전한 hallucination 등이 복합적으로 작용하는 듯하다. 업로드 하는 문서의 포맷, 복잡도, 표, 그림등에 따라 정확도에 영향을 미칠 수 있다). 

당연하지만 prompt를 어떻게 잘 작성하느냐에 따라 대답의 정도가 차이가 있으니 원하는 답을 얻기 위해서는 이부분도 중요하다. 

 

 

이상 Ollama WebUI, local LLM을 이용한 구축과정을 간단히 살펴보았다. 본인 컴퓨터 사양도 좀 좋아야 버벅되지 않는다. 

현재 chatGPT4.0의 경우 문서 파일을 최대 20개까지도 업로드 가능하고 한글도 어려움 없이 이해하고 답변을 한글로 너무나 자연스럽게 하지만,

아직 local LLM의 경우 한글이 자유롭지 않은 단점이 있다.

 

다음은 내가 좀더 기대하는 localGPT 설치와 사용경험에 대해 작성할 예정이다.