LLM과 LangChain으로 PDF, 문서, 동영상, 웹 페이지를 Neo4j에 저장되는 지식 그래프로 변환하는 웹 앱입니다.
docker/genai-stack
LangChain, Neo4j, Ollama를 활용한 GenAI 앱 개발용 Docker 기반 스타터 스택으로, 지원 봇, PDF 질의응답, API 데모를 제공합니다.
- 스타
- 5,423
- 포크
- 1,236
- 열린 이슈
- 99
- 마지막 커밋
- 11일 전
어떤 프로젝트인가요?
GenAI Stack은 Docker Compose로 생성형 AI 애플리케이션을 개발할 수 있는 스타터 키트입니다. 오케스트레이션에는 LangChain을, 지식 그래프와 벡터 임베딩을 모두 저장하는 데이터베이스에는 Neo4j를, 로컬 LLM 실행에는 Ollama를 사용합니다. 개발자는 구성 요소를 직접 조립하는 대신 여러 서비스가 함께 동작하는 설정으로 바로 시작할 수 있습니다.
이 저장소에는 데모 애플리케이션 5개가 포함되어 있습니다. 검색 증강 생성(RAG)을 적용했을 때와 적용하지 않았을 때의 답변을 비교하는 지원 에이전트 봇, Stack Overflow 데이터를 데이터베이스로 가져오는 로더, 로컬 PDF 질의응답 앱, 스트리밍 및 비스트리밍 엔드포인트를 갖춘 독립형 HTTP API, 그리고 해당 API를 호출하는 Svelte 프런트엔드입니다. 설정은 LLM과 임베딩 모델을 선택하는 `.env` 파일에서 관리합니다.
LLM은 로컬 Ollama 인스턴스에서 실행하거나 OpenAI, AWS Bedrock (Claude v2), Google 모델을 통해 제공할 수 있습니다. Linux에서는 CPU용 및 GPU용 Ollama 컨테이너에 별도 프로필을 사용할 수 있습니다.
핵심 기능
- 01LangChain, Neo4j, Ollama 서비스를 함께 실행하는 Docker Compose 구성
- 02검색에 활용할 지식 그래프와 벡터 임베딩을 Neo4j에 저장
- 03환경 변수로 로컬 Ollama 모델과 OpenAI, AWS Claude 또는 Google 임베딩 모델 간 전환
- 04RAG를 적용한 답변과 순수 LLM 답변을 비교하는 지원 봇
- 05SSE 스트리밍 엔드포인트를 갖춘 독립형 HTTP API
- 06Vite와 Tailwind로 빌드한 Svelte 프런트엔드
활용 사례
- 자체 문서나 데이터를 바탕으로 검색 증강 챗봇 프로토타입 만들기
- LLM 앱에서 지식 그래프와 벡터 검색을 결합하는 방법 학습하기
- 임베딩과 로컬 모델을 사용해 로컬 PDF와 대화하기
- 별도의 프런트엔드에서 사용할 LLM 기반 질의응답 API 제공하기
빠른 시작
- 1
템플릿 env.example에서 .env 파일을 만듭니다
- 2
macOS 또는 Windows에서는 별도의 터미널에서 Ollama를 설치하고 실행합니다(ollama serve)
ollama serve - 3
전체 스택을 시작합니다
docker compose up - 4
http://localhost:8501에서 Support Bot을 엽니다
사용 전 알아둘 점
- Docker와 Docker Compose가 필요하며, Docker Desktop 4.24.x에는 업그레이드가 필요한 알려진 성능 문제가 있습니다.
- macOS와 Windows에서 로컬 Ollama 모델을 사용하려면 Ollama를 별도로 설치해야 합니다. GPT-4 또는 Claude 옵션을 사용하려면 유료 API 키가 필요합니다.
- 일부 환경에서는 Linux GPU 프로필에 GPU가 필요합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- genai-stack은(는) 무엇인가요?
- LangChain, Neo4j, Ollama를 활용한 GenAI 앱 개발용 Docker 기반 스타터 스택으로, 지원 봇, PDF 질의응답, API 데모를 제공합니다. GenAI Stack은 Docker Compose로 생성형 AI 애플리케이션을 개발할 수 있는 스타터 키트입니다. 오케스트레이션에는 LangChain을, 지식 그래프와 벡터 임베딩을 모두 저장하는 데이터베이스에는 Neo4j를, 로컬 LLM 실행에는 Ollama를 사용합니다. 개발자는 구성 요소를 직접 조립하는 대신 여러 서비스가 함께 동작하는 설정으로 바로 시작할 수 있습니다.
- genai-stack은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- genai-stack은(는) CC0-1.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- genai-stack은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. genai-stack의 마지막 커밋은 2026년 10월 26일입니다.
- genai-stack은(는) 어디에 사용할 수 있나요?
- 자체 문서나 데이터를 바탕으로 검색 증강 챗봇 프로토타입 만들기 LLM 앱에서 지식 그래프와 벡터 검색을 결합하는 방법 학습하기 임베딩과 로컬 모델을 사용해 로컬 PDF와 대화하기 별도의 프런트엔드에서 사용할 LLM 기반 질의응답 API 제공하기
- genai-stack는 어떻게 설치하나요?
- 템플릿 env.example에서 .env 파일을 만듭니다 macOS 또는 Windows에서는 별도의 터미널에서 Ollama를 설치하고 실행합니다(ollama serve): ollama serve 전체 스택을 시작합니다: docker compose up http://localhost:8501에서 Support Bot을 엽니다
- genai-stack은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/docker/genai-stack
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
문서를 엔티티와 관계로 인덱싱해 검색 증강 LLM 답변을 제공하는 경량 지식 그래프 RAG 프레임워크이자 서버입니다.
Neo4j 그래프 데이터베이스와 LLM, 벡터 검색을 결합한 GraphRAG 애플리케이션 구축을 위한 공식 Python 패키지입니다.
Neo4j를 기반으로 대화 내용을 저장하고 지식 그래프를 구축하며 추론 과정을 기록하는, AI 에이전트용 그래프 네이티브 메모리 시스템입니다.
FalkorDB에서 지식 그래프를 활용해 관련 맥락을 검색하고 출처를 추적할 수 있는 LLM 답변용 GraphRAG 앱을 구축하는 Python SDK입니다.
Rust용 LangChain: 조합 가능한 체인, 에이전트, 도구, 벡터 스토어를 활용해 LLM 기반 애플리케이션을 구축하는 라이브러리입니다.