안녕하세요! 오늘은 로컬 및 온라인 언어 모델을 간편하게 사용할 수 있는 Msty와 Open WebUI에 대해 알아보겠습니다. Msty는 클릭 한 번으로 인기 있는 대형 언어 모델과 상호 작용할 수 있는 직관적인 사용자 인터페이스를 제공하여 사용자가 AI 모델을 손쉽게 활용할 수 있으며, Open WebUI는 오프라인에서 작동하는 로컬 웹 인터페이스로, 다양한 Ollama 채팅 모델과 문서대화를 지원하여 사용자 친화적인 대화 경험을 제공합니다. 이 블로그에서는 Msty와 Open WebUI의 개요와 특징, 설치방법, 주요 기능에 대해 살펴보겠습니다.
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
Msty
Msty는 Groq, Claude와 같은 온라인 언어 모델과 Ollama 로컬 언어 모델을 모두 지원하는 언어 모델 도구로, 대화창 분할, 그룹 동시채팅, 프롬프트 라이브러리 등 다양한 기능을 미니멀한 UI를 통해 제공합니다.
설치방법 및 주요 기능
Msty의 설치방법은 위 링크에서 운영체제에 맞는 설치파일을 다운로드하여 실행하면 되고, 윈도우즈의 경우 경고팝업이 뜨면 추가정보를 누르고 실행을 클릭하면 됩니다. 주요 기능은 아래 내용과 같습니다:
- 빠른 시작: AI에 대한 사전 지식이나 설정 경험이 없어도 사용자가 쉽게 시작할 수 있도록 개발되었습니다.
- 대화창 분할: 여러 AI 어시스턴트로부터 조언을 받고 결과를 비교하여 가장 적합한 것을 선택할 수 있습니다.
- 다양한 모델 혼합: 오프라인 및 온라인 모델을 혼합하여 한 대화에서 최상의 결과를 얻을 수 있습니다.
- 빠른 프롬프트: 프롬프트 라이브러리를 통해 빠르게 시작할 수 있으며 사용자 정의 프롬프트도 추가할 수 있습니다.
- 스티키 프롬프트: 반복적인 작업을 빠르게 완료하기 위해 스티키 프롬프트 기능을 사용할 수 있습니다.
- 모델 설정: 온도, 컨텍스트 길이, 시스템 프롬프트 등을 조정할 수 있습니다.
- 개인 정보 보호: 모든 데이터는 사용자의 로컬 컴퓨터에 남아 있으므로 개인 정보 보호가 보장됩니다.
- 오프라인 모드: 인터넷 연결이 없어도 Msty를 사용할 수 있습니다.
Msty의 대표적인 특징인 대화창 분할 기능은 다양한 언어 모델의 응답을 동시에 비교할 수 있는 기능으로, 아래 화면과 같이 온라인 언어모델과 오프라인 언어 모델을 동시에 띄워놓고 대화할 수 있으며, 프롬프트 동기화 옵션을 통해 사용자가 입력하는 프롬프트가 모든 언어 모델에 동시에 입력됩니다.
온라인 및 오프라인 모델 사용법
먼저, 오프라인 모델은 화면 좌측 Local AI Module 아이콘을 클릭하고, 아래 화면과 같이 Meta, Google, Mistral, Dolphin, Command R과 같은 다양한 언어 모델을 원클릭으로 다운로드하면 대화를 시작할 수 있습니다. 이 기능은 Ollama의 언어 모델 pull 기능을 Msty 애플리케이션 내에 통합한 기능입니다.
원하는 모델의 다운로드 아이콘을 클릭하면 모델별 매개변수, 사용 메모리 용량, 디스크 소요 공간 등의 정보가 표시되어 자신의 컴퓨터 자원에 맞는 모델을 다운로드할 수 있습니다.
Ollama를 통해서 다운로드한 언어 모델은 아래 화면과 같이 Local AI 리스트에서 선택하여 사용할 수 있으며, 리스트에는 Local AI Module 아이콘을 통해 다운로드한 모델도 함께 보입니다.
다음은 온라인 언어 모델 사용방법입니다. 좌측 아이콘 메뉴에서 설정을 클릭하면, 아래 화면과 같이 API Keys 메뉴에서 OpenAI, Mistral, Google, Groq, Anthropic 이렇게 5개의 프로바이더를 선택할수 있으며, 본인이 발급받은 API Key를 입력하면 해당 온라인 언어 모델을 사용할 수 있습니다.
또한, Llava나 Claude와 같은 멀티모달 언어 모델을 선택하면 아래 화면과 같이 png, jpg 등과 같은 이미지와 텍스트 프롬프트를 함께 입력할 수 있습니다.
Msty의 프롬프트 관련기능 중 Sticky 프롬프트 기능을 활용하면 매번 대화창에 입력하지 않아도 원하는 프롬프트가 대화창에 고정으로 표시되어, 해당 프롬프트에 집중해서 계속 대화할 수 있습니다. Sticky 프롬프트 메뉴 위치는 이미지 첨부 아이콘 오른쪽 세 점 메뉴입니다. 아래 예시는 "블랙홀에 대해 궁금해"라는 프롬프트를 고정하여 진행한 대화입니다.
또한 Msty는 프롬프트 라이브러리와 퀵 프롬프트 기능을 통해 다양한 프리셋 프롬프트를 활용하여 언어 모델의 역할과 채팅 스타일을 변경할 수 있습니다.
Msty는 온라인 언어 모델과 오프라인 언어 모델을 모두 사용할 수 있고, 동시에 여러 모델의 응답을 비교하여 최적의 결과를 얻을 수 있으며, 다양한 프롬프트 관련 기능을 원하는 사용자에게 좋은 선택이 될 것 같습니다.
Open WebUI
Open WebUI는 Ollama WebUI의 후속 프로그램으로, Ollama 및 OpenAI 호환 API를 통한 LLM 구동방식을 지원하며, 오프라인에서 작동하는 확장 가능한 로컬 웹 사용자 인터페이스입니다.
https://github.com/open-webui/open-webui
설치방법 및 주요 기능
Open WebUI의 설치방법은 Ollama와 도커(Docker) 데스크탑이 설치된 상태에서 아래 명령어를 실행하시면 됩니다.
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
명령어를 실행하면 다음 화면과 같이 필요한 구성요소가 설치됩니다.
설치가 완료되면 아래와 같이 Docker 컨테이너가 생성되고 실행됩니다.
Docker 컨테이너가 실행되면 http://localhost:3000/ 주소에서 Open WebUI 초기화면이 열립니다.
Open WebUI의 주요 특징은 다음과 같습니다:
- 로컬 RAG 통합: 문서 상호작용을 채팅 경험에 통합하여 로컬 RAG 지원을 제공합니다.
- RAG 임베딩 지원: 문서 설정에서 RAG 임베딩 모델을 직접 변경하여 문서 처리를 개선합니다.
- 웹 브라우징 기능: URL 뒤에 # 명령을 사용하여 웹 사이트를 채팅 경험에 통합할 수 있습니다.
- 프롬프트 프리셋 지원: / 명령을 사용하여 미리 정의된 대화 시작자를 즉시 액세스할 수 있습니다.
- 모델 다운로드/삭제: 웹 UI에서 모델을 쉽게 다운로드하거나 제거할 수 있습니다.
- 모델 파일 빌더: 웹 UI를 통해 쉽게 Ollama 모델 파일을 생성할 수 있습니다.
- 음성 입력 지원: 음성 상호작용을 통해 모델과 상호작용할 수 있습니다.
- OpenAI API 통합: OpenAI 호환 API를 사용하여 다양한 대화를 통합할 수 있습니다.
- 다국어 지원: 다국어 지원을 통해 선호하는 언어로 Open WebUI를 사용할 수 있습니다.
초기화면 우측 모서리 설정 아이콘을 선택하면 사용언어와 인터페이스, 모델 가져오기 등을 설정할 수 있습니다.
모델 선택 및 변경은 상단 모델선택 메뉴를 통해 설정할 수 있습니다. Ollama에서 다운로드한 모델이 표시됩니다.
Open WebUI는 Ollama pull 명령을 통해 다운로드한 모델뿐만 아니라, "설정-모델" 메뉴에서 실험적 보이기를 클릭하면 GGUF 모델 업로드 메뉴가 보이게 되고, 허깅페이스 GGUF 모델의 파일이나 URL주소를 통해 언어 모델을 가져올 수 있습니다. 허깅페이스 GGUF 모델은 아래 링크에서 확인하실 수 있습니다.
https://huggingface.co/models?sort=trending&search=gguf
로컬 RAG 및 Embedding 기능
Open WebUI는 PC에 있는 pdf나 txt와 같은 문서를 기반으로 대화할 수 있는 RAG 기능을 내장하고 있으며, 문서 설정을 통해 임베딩 모델 설정, 문서 나누기 설정, 벡터 스토리지 초기화와 같은 기능을 설정할 수 있습니다. 저는 아래 화면과 같이 임베딩 모델을 "Nomic 임베드 모델"을 선택하여 테스트해 보았습니다.
아래 화면은 VASA-1과 OpenELM 논문으로 대화한 내용입니다. 테스트에서는 Llama-3 기본 모델을 바탕으로 대화형 QA 데이터를 통합하고 테이블 및 산술 계산 기능을 강화한 Llama3-ChatQA-1.5 모델의 GGUF 버전인 "bartowski/Llama-3-ChatQA-1.5-8B-GGUF" 모델을 사용하였습니다. RAG 성능은 언어 모델과 임베딩 모델의 성능에 따라 다를 수 있습니다.
음성응답 및 멀티모달
아래 화면은 TTS설정을 통해 텍스트 응답을 음성으로 변환해서 자동재생하도록 하는 설정으로, 한국어 1개, 영어 3개의 음성을 제공합니다. 음성응답은 텍스트 출력이 완료된 후 재생됩니다.
아래 화면은 Llava 모델을 통한 이미지 설명 응답화면입니다. 이미지 질문을 하다보면 전혀 다른 응답을 하기도 합니다.
맺음말
오늘 블로그에서는 Msty와 Open WebUI라는 두 가지 유용한 언어 모델 도구를 소개했습니다. Msty는 온라인 및 오프라인 언어 모델을 간편하게 사용할 수 있도록 하는 직관적인 사용자 인터페이스를 제공하며, Open WebUI는 Ollama 및 OpenAI 호환 API를 통한 LLM 구동 방식을 지원하는 확장 가능한 로컬 웹 사용자 인터페이스입니다.
다음은 두 언어 모델 도구를 비교해서 요약한 내용입니다. Ollama를 선호하시는 분은 Open WebUI를, 다양한 언어 모델 사용을 선호하시는 분은 Msty를 이용하시면 좋을 것 같습니다.
구 분 | Msty | Open WebUI |
주요 특징 | 미니멀 UI, 다중 모델 동시채팅 | Ollama 특화, 문서 대화 |
설치방식 | 설치파일 다운로드 및 실행 | 도커(Docker) 컨테이너 실행 |
RAG 지원 | X | O |
음성 응답 | X | O |
다중 모델 동시채팅 | O | X |
온라인 언어 모델 지원 | O | X |
블로그 내용은 여기까지입니다. 오늘 소개해드린 언어 모델 도구가 여러분의 AI 활용에 도움이 되기를 바라면서 저는 다음시간에 더 유익한 정보를 가지고 다시 찾아뵙겠습니다. 감사합니다.
2024.04.13 - [AI 언어 모델] - [AI 논문] 올해의 한국어 LLM에 선정된 야놀자 언어 모델, EEVE
'AI 도구' 카테고리의 다른 글
LM Studio의 CLI를 활용한 EEVE 챗봇 만들기 (1) | 2024.05.10 |
---|---|
Ollama 기반 인공지능 노트 앱 Reor: 한국어 모델 EEVE 적용 및 설정 가이드 (0) | 2024.05.10 |
누구나 할 수 있는 AI 코딩! Llama3와 Claude3로 벽돌깨기 게임 1분 컷! (0) | 2024.05.04 |
[LLAMA3 활용] ComfyUI 프롬프트 자동 작성 및 유튜브 동영상 요약 10초 완료! (6) | 2024.05.01 |
LLAMA3 RAG 시스템: AI 어시스턴트로 10초만에 자동 보고서 만들기 (30) | 2024.04.30 |