본문 바로가기
카테고리 없음

Open WebUI - 도구 및 기능

by 조병희 2025. 3. 19.

Open WebUI는 OpenAI 호환 API 기반으로 다양한 기능을 제공하는 AI 챗봇 프레임워크입니다. 강력한 모델 관리, 커스터마이징, 협업, 보안 기능을 갖추고 있어 개인 및 기업 사용자 모두에게 적합합니다. 지속적인 업데이트와 확장 가능한 구조를 통해 AI 활용을 극대화할 수 있습니다. 좀더 자세하게 들어가기 전에 잠시 살펴 보면 다음과 같습니다.


Open WebUI 주요 기능과 특징

번호 기능 설명
1 손쉬운 설치 Docker, Kubernetes, Podman, Helm Charts 등을 이용하여 간편하게 설치 가능
    Ollama 및 CUDA 지원 버전 제공
2 쉽고 명확한 초기 설정 설치 후 관리자 계정 생성 절차를 직관적으로 안내
3 OpenAI API 연동 지원 OpenAI 호환 API를 쉽게 연결하여 Ollama 모델과 함께 사용 가능
    다양한 외부 애플리케이션과 연동 가능
4 세부적인 사용자 권한 관리 관리자가 사용자 역할과 그룹을 설정하여 보안 및 접근 권한을 세밀하게 조정 가능
5 반응형 UI 및 PWA 지원 PC, 태블릿, 모바일에서 최적화된 화면 제공
    PWA(Progressive Web App)로 오프라인에서도 사용 가능
6 Markdown 및 LaTeX 지원 Markdown, LaTeX, Rich Text를 활용하여 다양한 포맷의 문서 지원
7 맞춤형 AI 모델 생성 Ollama 기반 모델을 직접 생성하고 캐릭터 및 에이전트를 추가 가능
8 RAG(Retrieval Augmented Generation) 기술 활용 문서를 업로드 후 특정 키워드를 사용하여 검색 가능
    웹 검색 기능과 결합하여 보다 정확한 정보 제공
9 이미지 생성 기능 제공 텍스트를 기반으로 이미지 생성 가능
10 다중 모델 동시 실행 가능 여러 AI 모델을 동시에 실행하여 최적의 응답 제공
11 역할 기반 접근 제어 기능 제공 관리자가 Ollama 모델 접근 권한을 지정할 수 있음
12 다국어 지원 가능 인터페이스에서 다양한 언어 선택 가능
13 지속적인 기능 업데이트 제공 새로운 기능과 개선 사항이 꾸준히 추가됨

 

Pipelines 플러그인 프레임워크

번호
기능 설명
1 유연한 확장성 및 커스터마이징 가능 Python 기반 플러그인 시스템을 활용하여 원하는 기능 추가 가능
2 웹 검색 및 자동 데이터 수집 기능 제공 다양한 검색 엔진과 연동하여 최신 데이터를 자동으로 검색
3 함수 호출 기능 제공 Pipelines을 활용하여 Open WebUI에서 고급 함수 호출 가능
4 API 요청 속도 제어 기능 포함 API 요청 제한을 설정하여 서버 부하 방지 가능
5 실시간 번역 기능 지원 LibreTranslate를 이용한 다국어 번역 지원
6 유해 메시지 필터링 기능 제공 Detoxify 필터를 적용하여 악성 메시지를 자동으로 감지 및 차단
7 LLM 보안 기능 추가 프롬프트 인젝션 공격 방지 기능 포함

 

향상된 사용자 경험

번호 기능 설명
1 ChatGPT 스타일의 직관적인 인터페이스 제공 간편한 사용을 위한 직관적인 UI 디자인 적용
2 빠른 응답 속도 최적화된 시스템으로 원활한 채팅 환경 제공
3 테마 및 UI 커스터마이징 가능 다양한 테마 및 배경 이미지 설정 가능
    다크 모드 지원
4 실시간 코드 편집 및 공유 기능 지원 코드 블록 내에서 실시간 편집 가능
    한 번의 클릭으로 코드 복사 및 공유 가능
5 Markdown 기반 텍스트 입력 지원 메시지 서식을 Markdown으로 작성 가능
6 비동기 채팅 기능 지원 채팅 도중 다른 작업을 수행해도 응답 유지
7 알림 및 웹훅 연동 가능 채팅 완료 시 UI 내 알림 표시
    웹훅을 통해 외부 시스템과 연동 가능
8 채팅 고정 및 즐겨찾기 기능 제공 중요한 채팅을 고정하거나 즐겨찾기에 추가 가능
9 PDF, TXT, JSON 다운로드 가능 채팅 내용을 다양한 파일 형식으로 저장 가능
10 모바일 최적화 지원 제스처 기반 사이드바 조작 기능 포함

 

모델 관리 및 최적화 기능

번호 기능 설명
1 Ollama 모델 빌드 및 편집 가능 Open WebUI에서 직접 모델을 생성 및 수정 가능
2 모델 프리셋 지원 자주 사용하는 모델 설정을 저장하고 쉽게 불러올 수 있음
3 Ollama 모델 GGUF 파일 업로드 지원 Hugging Face에서 다운로드한 GGUF 파일을 직접 업로드 가능
4 모델 업데이트 및 다운로드 기능 제공 모든 Ollama 모델을 한 번에 업데이트 가능
5 다양한 모델 지원 가능 GPT-4o, LLaVA 등 다양한 멀티모달 AI 모델과 연동 가능
6 모델 선택 단축키 지원 키보드 단축키를 이용하여 모델을 빠르게 변경 가능

보안 및 인증 기능

번호 기능 설명
1 사용자 인증 및 권한 관리 기능 제공 관리자가 사용자 그룹을 생성하고 접근 권한을 세부적으로 설정 가능
2 OAuth 및 LDAP 연동 지원 기업 환경에서도 활용할 수 있도록 OAuth 및 LDAP 인증 제공
3 API 키 관리 및 접근 제어 가능 API 요청을 제한하고 특정 모델에 대한 접근을 조정 가능
4 SSO 및 인증 프록시 기능 지원 단일 로그인(SSO)을 통해 사용자 관리 가능
5 자동 업데이트 알림 제공 Open WebUI 업데이트 시 관리자에게 알림 전송
6 고급 로드 밸런싱 기능 제공 여러 Ollama 인스턴스를 활용하여 부하를 분산하고 성능 최적화 가능

 

협업 및 커뮤니티 기능

번호 기능 설명
1 로컬 채팅 공유 기능 지원 특정 채팅을 링크로 생성하여 다른 사용자와 공유 가능
2 커뮤니티 공유 기능 제공 Open WebUI 커뮤니티에 채팅을 공유하여 협업 가능
3 리더보드 및 모델 비교 평가 기능 제공 사용자 피드백을 바탕으로 모델 성능 평가 가능
4 워크스페이스 기능 지원 모델, 프롬프트, 문서, 도구 등을 한 곳에서 관리 가능
    여러 사용자가 협업 가능

 

음성, 영상 및 접근성 기능 추가

번호 기능 설명
1 음성 입력 및 TTS 지원 가능 음성으로 채팅 가능하며, OpenAI API를 활용한 텍스트 음성 변환 기능 제공
2 실시간 번역 기능 제공 대화 중 자동 번역 기능 활용 가능
3 비디오 콜 기능 제공 LLaVA 및 GPT-4o와 연동하여 영상 기반 AI 상호작용 가능
4 SVG 및 Mermaid 다이어그램 지원 대화 중 복잡한 개념을 시각적으로 표현 가능

도구 및 기능

도구는 LLM의 능력을 확장하여 날씨, 주가 등과 같은 실제 실시간 데이터를 수집할 수 있도록 합니다.
기능은 Open WebUI 자체의 기능을 확장하여 새로운 AI 모델 지원(Anthropic 또는 Vertex AI와 같은)을 추가하거나 사용성을 향상시킬 수 있습니다(사용자 지정 버튼 또는 필터 생성과 같은).
파이프라인은 Open WebUI 기능을 API 호환 워크플로로 전환하려는 고급 사용자를 위한 것입니다. 주로 무거운 처리를 오프로드하기 위한 것입니다.

도구(Tools)

도구는 LLM이 단순히 텍스트를 처리하는 것 이상의 일을 할 수 있게 해주기 때문에 흥미로운 기능입니다. 그들은 LLM이 그렇지 않으면 스스로 가질 수 없는 외부 능력을 제공한다.

도구의 예:

LLM과 채팅하고 있으며 최신 날씨 업데이트 또는 주가를 실시간으로 제공하기를 원한다고 상상해보십시오. 일반적으로 LLM은 사전 훈련된 지식에 따라 작업하기 때문에 그렇게 할 수 없습니다. 이것이 바로 도구가 들어오는 곳입니다!

  • 도구는 LLM이 실제 실시간 데이터를 수집하는 데 사용할 수 있는 플러그인과 같습니다. 따라서 "날씨 도구"가 활성화되면 모델은 인터넷에 나가서 실시간 날씨 데이터를 수집하고 대화에 표시할 수 있습니다.

도구는 본질적으로 외부 세계와 상호 작용할 수 있도록 AI에 부여하는 능력입니다. 이를 추가함으로써 LLM은 대화의 맥락에 따라 유용한 정보를 "집어"하거나 전문적인 작업을 수행할 수 있습니다.

도구의 예(LLM의 능력 확장):

  1. 실시간 일기 예보 🛰️.
  2. 주가 리트리버 📈.
  3. 항공편 추적 정보 ✈️.

워크스페이스 > 모델 검색

결과를 비교 해보면,

llama3.1 Tool with llama 3.1

 

 

기능(Functions)

AI는 대화 중에 도구를 사용하지만, 기능은 Open WebUI 자체의 기능을 확장하거나 사용자 정의하는 데 도움이 됩니다. Open WebUI의 플러그인과 같은 것으로 Anthropic 또는 Vertex AI와 같은 새로운 AI 모델 공급자에 대한 지원을 추가하거나, 메시지 처리 방식을 조정하거나, 더 나은 사용성을 위해 인터페이스에 사용자 지정 버튼을 도입하는 등 기능을 확장하는 데 도움이 됩니다.

복잡한 통합이 필요할 수 있는 외부 도구와 달리, 함수는 내장되어 있으며 Open WebUI 환경 내에서 실행됩니다.즉, 빠르고 모듈식이며 외부 종속성에 의존하지 않습니다.

Functions를 필요한 것에 정확히 맞게 조정하여 WebUI가 작동하는 방식을 향상시킬 수 있는 모듈식 빌딩 블록이라고 생각하십시오. 가볍고, 고도로 사용자 정의가 가능하며, 순수 파이썬으로 작성되었으므로 새로운 AI 기반 워크플로부터 Google Search 또는 Home Assistant와 같이 사용하는 모든 것과의 통합에 이르기까지 무엇이든 자유롭게 만들 수 있습니다.

예를 들어:

  1. Anthropic과 같은 새로운 AI 모델을 WebUI에 추가하세요.
  2. 자주 사용하는 명령을 수행하는 사용자 지정 버튼을 도구 모음에 만듭니다.
  3. 들어오는 텍스트에서 부적절하거나 스팸 메시지를 포착하는 더 나은 필터 기능을 구현합니다.

Open WebUI의 이 프레임워크를 사용하면 이러한 기능을 쉽게 확장할 수 있습니다!

차이점 요약:

  • 도구는 LLM이 기본 능력(실제 정보 검색 또는 외부 데이터를 기반으로 사용자 지정 작업 수행) 이외의 작업을 수행할 수 있도록 하는 것입니다.
  • 기능은 WebUI 자체가 새로운 AI 모델을 추가하거나 데이터를 필터링하는 더 스마트한 방법을 만드는 것과 같은 더 많은 일을 하는 데 도움이 됩니다.

둘 다 플러그가 가능하도록 설계되어 커뮤니티에서 한 번의 클릭으로 쉽게 시스템으로 가져올 수 있습니다.

기능에는 크게 3가지 유형이 있습니다. 

1. 파이프 기능 - 사용자 지정 "에이전트/모델" 생성

파이프 함수는 사용자 지정 에이전트/모델 또는 통합을 생성한 다음 독립형 모델인 것처럼 인터페이스에 나타나는 방법입니다.

그것은 무엇을 합니까?

  • 파이프를 사용하면 복잡한 워크플로를 정의할 수 있습니다. 예를 들어, 데이터를 모델 A와 모델 B로 보내고, 출력을 처리하고, 결과를 하나의 최종 답변으로 결합하는 파이프를 만들 수 있습니다.
  • 파이프는 AI를 사용할 필요조차 없습니다! 검색 API, 날씨 데이터 또는 홈 어시스턴트와 같은 시스템을 위한 설정이 될 수 있습니다. 기본적으로 상호 작용하고 싶은 모든 것이 Open WebUI의 일부가 될 수 있습니다.

사용 사례 예:
Open WebUI에서 직접 Google 검색을 쿼리하고 싶다고 상상해 보세요. 다음과 같은 파이프 함수를 만들 수 있습니다.

  1. 당신의 메시지를 검색어로 받아.
  2. 쿼리를 Google Search의 API로 보냅니다.
  3. 응답을 처리하고 일반 "모델" 응답처럼 WebUI 내에서 반환합니다.

활성화되면 Pipe Functions가 자체 선택 가능한 모델로 표시됩니다. 인터페이스에서 모델처럼 작동하는 사용자 지정 기능이 필요할 때마다 Pipes를 사용하십시오.

자세한 가이드는 파이프 기능을 참조하십시오.

 

2. 필터 기능 - 입력 및 출력 수정

필터 기능은 AI로 전송되기 전이나 돌아온 후에 데이터를 조정하는 도구와 같습니다.

그것은 무엇을 합니까?
필터는 작업 흐름에서 "후크" 역할을 하며 두 가지 주요 부분으로 구성됩니다.

  • 입력: 모델로 전송되는 입력을 조정합니다. 예를 들어, 추가 지침, 키워드 또는 서식 조정을 추가합니다.
  • 콘센트: 모델에서 받는 출력을 수정합니다. 예를 들어, 응답을 정리하거나, 톤을 조정하거나, 데이터를 특정 스타일로 포맷하는 것입니다.

사용 사례 예:
정확한 서식이 필요한 프로젝트를 진행 중이라고 가정해 보자. 필터를 사용하여 다음을 확인할 수 있습니다.

  1. 입력은 항상 필요한 형식으로 변환됩니다.
  2. 모델의 출력은 표시되기 전에 정리됩니다.

필터는 특정 모델에 연결되거나 필요에 따라 모든 모델에 대해 활성화될 수 있습니다.

더 많은 예와 지침에 대한 전체 가이드를 확인하세요: 필터 기능.

 

3. 액션 기능 - 사용자 지정 버튼 추가

액션 기능은 채팅 인터페이스에 사용자 지정 버튼을 추가하는 데 사용됩니다.

그것은 무엇을 합니까?
작업을 사용하면 채팅에서 직접 특정 기능을 트리거하는 대화형 단축키를 정의할 수 있습니다. 이러한 버튼은 개별 채팅 메시지 아래에 나타나 정의한 작업에 대한 편리한 원클릭 액세스를 제공합니다.

사용 사례 예:
종종 긴 메시지를 요약하거나 번역과 같은 특정 출력을 생성해야 한다고 가정해 봅시다. 다음을 위해 액션 함수를 만들 수 있습니다.

  1. 모든 수신 메시지 아래에 "수정" 버튼을 추가합니다.
  2. 클릭하면 사용자 지정 함수가 트리거되어 해당 메시지를 처리하고 요약을 반환합니다.

버튼은 정의한 확장 기능과 상호 작용할 수 있는 깔끔하고 사용자 친화적인 방법을 제공합니다.

Action Functions Guide에서 설정하는 방법을 알아보세요.

요약하면

  • 파이프는 상호 작용할 수 있는 독립형 모델로 나타납니다.
  • 필터는 더 부드러운 AI 상호작용을 위해 입력/출력을 수정합니다.
  • 동작은 개별 채팅 메시지에 클릭 가능한 버튼을 추가합니다.

 

파이프라인(Pipelines)

파이프라인은 WebUI의 모든 부분을 OpenAI의 API 시스템과 상호 운용할 수 있도록 하는 데 중점을 둔 Open WebUI 이니셔티브의 일부입니다. 본질적으로, 그들은 도구와 기능 모두 이미 할 수 있는 것을 확장하지만, 이제는 훨씬 더 많은 유연성을 제공합니다. 이를 통해 기능을 OpenAI API 호환 형식으로 바꿀 수 있습니다. 🧠

초고급 설정을 다루지 않는 한 파이프라인이 필요하지 않을 것입니다.

  • 파이프라인은 누구를 위한 것인가? 일반적으로 전문가나 사람들이 더 복잡한 사용 사례를 실행합니다.
  • 언제 그것들이 필요하세요? 기본 Open WebUI 인스턴스에서 다른 컴퓨터로 처리를 오프로드하려는 경우(기본 시스템에 과부하가 걸리지 않도록).

대부분의 경우 초보자 또는 중급 사용자로서 파이프라인에 대해 걱정할 필요가 없습니다. 도구와 기능이 Open WebUI 경험에 가져다주는 이점을 즐기는 데만 집중하세요!

댓글