stanford-oval/suql

SUQL: Conversational Search over Structured and Unstructured Data with LLMs

What it solves

SUQL은 구조화된(관계형) 정보와 비구조화된(자유 텍스트) 정보를 모두 포함하는 하이브리드 데이터 소스를 쿼리하는 문제를 해결합니다. 전통적인 SQL은 구조화된 데이터에는 효과적이지만, 자유 텍스트 검색은 처리할 수 없습니다. SUQL은 SQL에 자유 텍스트 프리미티브를 추가하여 하이브리드 데이터베이스에 대한 쿼리를 정밀하고 간결하게 표현할 수 있도록 SQL을 확장합니다.

How it works

SUQL은 검색 모델, 대규모 언어 모델(LLMs), 그리고 전통적인 SQL을 통합합니다. 비구조화된 데이터에는 검색 모델과 LLM을 사용하고, 구조화된 데이터에는 관계형 SQL을 사용합니다. 핵심 구성 요소는 answer 함수로, 사용자가 자유 텍스트 제약 조건과 구조화된 제약 조건을 결합할 수 있게 해줍니다. 대규모 데이터를 처리하기 위해 확장성을 위한 PostgreSQL을 사용하며, HNSW 및 product quantizer와 같은 밀집 벡터 처리 방식을 사용하여 자유 텍스트 필드를 인덱싱하기 위해 FAISS를 사용합니다.

Who it’s for

구조화된 평점과 구조화된 리뷰를 모두 포함하는 레스토랑 데이터베이스와 같이 하이브리드 데이터 소스에 접근해야 하는 대화형 에이전트 또는 챗봇을 구축하는 개발자.

Highlights

  • Hybrid Data Access: SQL과 자유 텍스트 검색을 단일 쿼리 언어로 원활하게 결합합니다.
  • Scalability: PostgreSQL 및 FAISS 인덱싱을 통해 대규모 데이터베이스를 지원합니다.
  • LLM Optimization: 비용이 많이 드는 LLM 호출을 최소화하기 위한 최적화가 포함되어 있습니다.
  • SQL Compatibility: JOINs 및 GROUP BYs와 같은 일반적인 SQL 작업을 지원합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트