onyx

AI Chat UIsDevOpsPython

★ 32,042주당 +116조회 5

무엇인가

Onyx는 LLM 위에 얹히는 애플리케이션 계층이다. 모델을 학습시키거나 서빙하는 도구가 아니라, 이미 돌고 있는 모델에 대화·검색·에이전트 실행을 붙여 주는 서버와 웹 UI의 묶음이다. 자체 호스팅을 전제로 배포되며, MIT 라이선스의 Community Edition과 조직용 기능이 추가된 Enterprise Edition으로 나뉜다.

어떻게 동작하나

핵심 동작은 하이브리드 인덱스(벡터 + 키워드) 위에서 AI 에이전트가 검색을 반복해 답을 조립하는 방식이다. 50개 이상의 색인 기반 커넥터가 외부 소스에서 문서를 끌어와 동기화하고, MCP로 외부 도구를 에이전트에 연결한다. 웹 검색은 Serper, Google PSE, Brave, SearXNG 같은 백엔드를 쓰며 자체 크롤러와 Firecrawl/Exa를 함께 지원한다. 코드 실행은 샌드박스 컨테이너에서 이루어지고, 문서·그래픽 같은 산출물은 아티팩트로 생성된다. 표준 배포에서는 작업 큐와 워커 컨테이너가 커넥터 동기화를 처리하고, Redis 인메모리 캐시와 MinIO 블롭 스토어가 대규모 사용을 받친다.

무엇과 다른가

배포 모드는 두 가지로 갈린다. Lite는 메모리 1GB 미만에서 도는 채팅 UI로, 벡터·키워드 인덱스와 백그라운드 워커, 추론 서버가 빠져 있다. Standard는 이 컴포넌트를 모두 포함해 RAG와 커넥터 동기화를 온전히 수행한다. 라이브러리 형태의 LLM 프레임워크와 달리 완성된 서버 애플리케이션이고, 상용 SaaS 채팅 서비스와 달리 인프라와 데이터가 사용자 쪽에 남는다.

어떻게 쓰나

설치는 Docker, Kubernetes, Helm/Terraform 배포를 지원하며 단일 명령 배포 경로를 안내한다. 배포 후에는 LLM 제공자를 연결한다. Ollama, LiteLLM, vLLM 같은 자체 호스팅 런타임과 Anthropic, OpenAI, Gemini 같은 상용 API가 모두 대상이다. 이어서 커넥터를 등록하면 지정한 소스의 문서가 인덱스로 들어오고, 에이전트에 지침과 지식, 액션을 묶어 정의할 수 있다.

전제와 한계

전제 조건이 분명하다. Lite 모드에서는 RAG 인덱스, 백그라운드 워커, 추론 서버, Redis, MinIO를 쓸 수 없다. SSO(Google OAuth, OIDC, SAML), SCIM 프로비저닝, RBAC, 사용량 분석, 쿼리 이력, 화이트레이블링은 Enterprise Edition에 속한다. Community Edition은 MIT 라이선스로 채팅·RAG·에이전트·액션의 핵심 기능을 담는다. Standard 배포는 여러 컨테이너와 그에 맞는 자원을 요구한다.

관련 논문 5

유사 도구