BorisPolonsky/dify-helm
Deploy langgenious/dify, an LLM based app on kubernetes with helm chart.
해결하는 문제
이 프로젝트는 Kubernetes 클러스터에서 Dify(기반 LLM 챗봇 애플리케이션)를 간편하게 배포할 수 있도록 도와주는 Helm 차트를 제공합니다. 플랫폼을 대규모로 실행하기 위해 필요한 여러 백엔드 서비스, 데이터베이스, 프록시의 복잡한 오케스트레이션을 처리합니다.
작동 방식
Helm을 사용하여 다음과 같은 주요 구성 요소로 구성된 포괄적인 네트워크 아키텍처의 설치를 자동화합니다:
- 핵심 서비스: API 서버, 웹 UI 프론트엔드, 백그라운드 워커(Celery), 주기적 작업 스케줄러(Beat)를 배포.
- 실행 환경: 코드 실행을 위한 보안된 사전(Sandbox)과 에이전트 셸 실행을 위한 로컬 사전(Local Sandbox)을 설정.
- 에이전트 및 플러그인 인프라: 실행 오케스트레이션을 위한 에이전트 백엔드와 플러그인의 관리 및 실행을 위한 플러그인 데몬을 오케스트레이션.
- 트래픽 관리: Nginx 프록시를 사용하여 웹 프론트엔드, API 엔드포인트, 플러그인 서비스 간의 트래픽을 라우팅.
- 데이터 레이어: PostgreSQL, MySQL 등의 데이터베이스, Redis 등의 캐시, Weaviate, Qdrant, Milvus, PGVector 등의 벡터 데이터베이스와 통합.
- 스토리지: 로컬 PVC 또는 AWS S3, Azure Blob, Google Cloud Storage 등의 외부 객체 스토리지 지원.
대상 사용자
고가용성과 확장성을 보장하기 위해 Kubernetes에서 Dify를 배포하고 관리하고자 하는 DevOps 엔지니어 및 플랫폼 팀.
주요 특징
- 포괄적인 오케스트레이션: API, 웹, 워커, 사전 구성 요소를 포함한 Dify 스택 전체를 관리.
- 유연한 데이터 스토리지: 다양한 외부 데이터베이스, 벡터 DB, 객체 스토리지 제공업체를 지원.
- 엔터프라이즈 대응 네트워킹: SSRF 보안 프록시와 Nginx 리버스 프록시를 포함하여 안전하고 외부 트래픽 라우팅을 가능하게 함.
- Kubernetes 네이티브: Kubernetes 1.23+ 및 Helm 3.12+용으로 구축.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트