Cross Canon: 성경을 RAG 데이터베이스로 구현하기

Cross Canon: 성경을 RAG 데이터베이스로 구현하기

Cross Canon은 RAG를 통해 의미론적 성경 검색을 가능하게 합니다

Cross Canon은 성경을 검색 증강 생성(Retrieval-Augmented Generation, RAG) 데이터베이스로 취급하는 기술적 구현체로, 사용자가 성경 텍스트 전반에 걸쳐 의미론적 검색을 수행할 수 있도록 합니다. 전통적인 키워드 검색과 달리, 이 방식은 개념적 의미를 기반으로 구절을 검색할 수 있게 합니다. 예를 들어, 로마서 13장의 신학적 논의와 다니엘 및 에스라의 역사적 법령을 모두 포함하는 "government"에 대한 참조를 찾는 식입니다.

핵심 기능 및 사용자 경험

Cross Canon은 인덱싱된 성경을 쿼리하기 위한 특화된 인터페이스를 제공합니다. 이 시스템을 통해 사용자는 다음과 같은 작업을 수행할 수 있습니다:

  • 권별 필터링: 사용자는 특정 성경 권(예: Genesis, Matthew, Revelation)을 지정하여 검색 범위를 좁히거나, 필드를 비워두어 인덱싱된 전체 코퍼스를 검색할 수 있습니다.
  • 의미론적 검색: 엔진은 정확한 단어 일치가 아닌 쿼리의 의미를 기반으로 일치 항목을 식별합니다. 사용자들은 이것이 잘 알려진 Nephilim이나 Goliath 외에도 다양한 "giants"를 찾는 것과 같이 덜 명백한 참조를 찾아내는 데 효과적이라고 언급했습니다.

기술적 고려 사항 및 커뮤니티 피드백

프로젝트를 둘러싼 커뮤니티 논의는 종교 텍스트에 RAG를 적용할 때 내재된 몇 가지 기술적 기회와 한계를 강조합니다:

정전 범위 및 포용성

사용자들은 포괄적인 구현을 위해 데이터베이스에 성경 정전의 다양한 버전을 포함해야 한다고 제안했습니다. 구체적으로, 제2경전(Deuterocanonical books)을 추가하고 에티오피아, 가톨릭, 정교회 정전을 확장하여 인덱스에 포함함으로써 더욱 완전한 학술적 도구를 제공하라는 권장 사항이 포함되었습니다.

성능 및 구현

초기 사용자 피드백에 따르면 의미론적 결과는 개념적으로 정확하지만 시스템이 느릴 수 있습니다. 커뮤니티의 기술 기여자들은 RAG 파이프라인을 위한 몇 가지 최적화 방법을 제안했습니다:

  • Embedding Models: 빠르고 무료인 임베딩을 생성하기 위해 GTR-T5를 사용하는 것.
  • Hybrid Retrieval: 속도와 정확도를 높이기 위해 하이브리드 모드를 구현하는 것.
  • Entity Extraction: 그래프 기반 검색을 위해 소규모 로컬 모델을 사용하여 엔티티를 추출하는 것.

비교 종교 RAG 프로젝트

Cross Canon은 성경스러운 텍스트에 RAG를 적용하는 광범위한 트렌드의 일부입니다. 커뮤니티에서 언급된 유사한 프로젝트는 다음과 같습니다:

  • Reminder.dev: 꾸란(Quran)을 위한 오픈 소스 RAG 구현체로, OpenAI embeddings를 사용하여 Hadith와 Allah의 이름을 인덱싱합니다.
  • Crazy.church: "big three" 종교 간의 구절을 비교하기 위해 Cloudflare Vectorize를 임베딩에 사용하는 프로젝트입니다.

Sources