본문 바로가기

AI

한글 더 잘하는 llama3 찾아서 ollama에 연결하기 (feat. Bllossom ELO)

728x90
반응형

최근 Bllossom 팀에서 더 많은 Data로 학습한 모델을 올려주셔서 

다시 한번 테스트 해본 내용을 작성하였다. 

(오늘은 2024-07-10 입니다.)

 

https://huggingface.co/MLP-KTLim/llama-3-Korean-Bllossom-8B

 

MLP-KTLim/llama-3-Korean-Bllossom-8B · Hugging Face

Update! [2024.06.18] 사전학습량을 250GB까지 늘린 Bllossom ELO모델로 업데이트 되었습니다. 다만 단어확장은 하지 않았습니다. 기존 단어확장된 long-context 모델을 활용하고 싶으신분은 개인연락주세요!

huggingface.co

 

4bit 양자화 모델도 따로 올려주셔서 그 모델을 ollama에 연결하고 Flowise까지 연결해 볼 생각이다. 

https://huggingface.co/MLP-KTLim/llama-3-Korean-Bllossom-8B-gguf-Q4_K_M

 

MLP-KTLim/llama-3-Korean-Bllossom-8B-gguf-Q4_K_M · Hugging Face

Update! [2024.06.18] 사전학습량을 250GB까지 늘린 Bllossom ELO모델로 업데이트 되었습니다. 다만 단어확장은 하지 않았습니다. 기존 단어확장된 long-context 모델을 활용하고 싶으신분은 개인연락주세요!

huggingface.co

 

일단 4기가가 조금 넘는 파일을 다운받았다. 

 

그리고 허깅페이스의 모델카드를 보고 Modelfile을 좀 수정했다. 

FROM llama-3-Korean-Bllossom-8B-Q4_K_M.gguf

SYSTEM """당신은 유용한 AI 어시스턴트입니다. 사용자의 질의에 대해 친절하고 정확하게 답변해야 합니다. You are a helpful AI assistant, you'll need to answer users' queries in a friendly and accurate manner. 모든 대답은 한국어(Korean)으로 대답해주세요."""


TEMPLATE """{{- if .System }}
<s>{{ .System }}</s>
{{- end }}
<s>Human:
{{ .Prompt }}</s>
<s>Assistant:
"""

PARAMETER temperature 0.6
PARAMETER num_predict 3000
PARAMETER num_ctx 4096
PARAMETER stop <s>
PARAMETER stop </s>
PARAMETER stop <|eot_id|>

 

 

이렇게 파일 두개를 놓고 

 ollama create ollama-ko-0710 -f .\Modelfile

 

모델이 만들어지면 ollama ui 를 실행시켜서 질문해 본다. 

꽤 빠른 속도로 응답함.

 

그리고 이 ollama 모델을 활용해서 간단한 RAG 를 만들어 보자.

 

빨리 만들어 보기 위해서 Flowise 를 사용했다. 

우선 내가 사용한 기능들은 이렇다. 

 

1. 문서를 자르는 기능은 Text Splitters에서 Recursive Character Text Splitter 를 골랐다. 

2. PDF로 된 DJI 드론 사용자 매뉴얼을 업로드 했다. 

3. Ollama 임베딩 모델 사용법을 준비하지 못해 우선 OpenAI 임베딩 모델을 사용했다. (발급받은 key 만 넣어주면 됨)

4. 다른 Vector DB 쓰기 전에 In-Memory Vector Store를 사용했다. 

5. llm 은 위에서 만들어 둔 ollama 한글 모델을 사용했다. 

6. 답변 생성 Chain 은 Retrival QA Chain을 사용했다. 

 

과연 잘 될 것인가?

 

대화 Test 전에 

 

우측 상단에 Upsert Vector Database 버튼을 누르면 업로드 정보가 나오고 

Data를 변환하여 저장하는 로직이 실행된다. 

 

업로드 되고 난 결과를 보여준다.

 

자 드디어 질문 Test~!!

짜잔~ 일부러 원문에서 비슷한 곳을 찾아서 같이 캡쳐 했다.

 

언뜻 문서를 훑어 볼때 RTH가 뭔가 싶어서 질문했는데 

llama 8B 모델 기반 4bit 양자화 모델인데도 괜찮게 답변하는 것을 볼 수 있다. 

 

잘 사용하면 무료로 llm 을 사용할 수 있을 것 같다~

생각보다 응답속도도 빠름

 

Flowise의 장점은

여러가지 모델이나 방식을 끌어다 놓고 

이것 저것 바꿔보며 Test 할 수 있어서 좋다. 

 

728x90
반응형