zhongyu09/openchatbi
OpenChatBI is an intelligent chat-based BI tool powered by large language models, designed to help users query, analyze, and visualize data through natural language conversations. It uses LangGraph and LangChain to build chat agent and workflows that support natural language to SQL conversion and data analysis.
해결하는 문제
OpenChatBI는 자연어를 사용하여 데이터베이스에서 데이터를 질의하고 분석하며 시각화할 수 있는 채팅 기반의 지능형 비즈니스 인텔리전스(BI) 도구입니다. 사용자가 복잡한 SQL 쿼리를 수동으로 작성할 필요 없이, 자연어 질문을 실행 가능한 SQL 문장으로 자동 변환함으로써 데이터 분석의 접근성을 높입니다.
작동 방식
LangGraph 및 LangChain 생태계를 기반으로 구축되었으며, 다중 에이전트 아키텍처를 사용하여 데이터 작업을 조율합니다. 메인 에이전트는 일반적인 상호작용을 담당하고, 전문화된 데이터 분석 에이전트는 시계열 예측 및 이상 탐지와 같은 복잡한 작업을 처리합니다. 텍스트2SQL 파이프라인은 스키마 링킹과 프롬프트 엔지니어링을 활용하여 쿼리를 생성하고, 이를 데이터 웨어하우스에 실행합니다. 또한 벡터 기반 또는 BM25 기반 검색을 사용하여 데이터베이스 구조와 비즈니스 설명을 인덱싱하는 데이터 카탈로그 관리 시스템을 포함합니다.
대상 사용자
Presto, PostgreSQL, MySQL 등의 데이터 웨어하우스와 자연어 인터페이스를 통해 상호작용하고 싶지만 SQL에 깊은 기술적 전문 지식이 없는 비즈니스 사용자 및 데이터 분석가를 위한 도구입니다.
주요 기능
- 자연어 → SQL 변환: 사용자 질문을 자동으로 SQL 쿼리로 변환하며, 내장된 오류 복구 및 품질 관리를 위한 신뢰도 게이트를 제공합니다.
- 고급 분석 기능: 시계열 예측, 이상 탐지, 근본 원인 분석을 위한 전문 기능을 포함합니다.
- 유연한 데이터 카탈로그: 데이터베이스 테이블의 자동 탐지 및 메타데이터를 위한 유연한 저장 백엔드를 지원합니다.
- 통합 시각화: Plotly를 사용하여 직관적인 데이터 시각화를 생성합니다.
- 코드 실행: 사용자 정의 데이터 분석을 위한 사전화된 Python 실행 환경을 제공합니다.
- 관측성 및 메모리: 감사 로그, Langfuse를 통한 LLM 트레이싱, 그리고 고신뢰도 쿼리 패턴을 기억하여 향후 사용할 수 있는 '학습된 SQL 메모리'를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트