Cloudflare-RAG, Cloudflare의 AI Workers 및 D1 등의 서비스를 활용한 RAG 애플리케이션

Clouldflare RAG 프로젝트 소개

Cloudflare RAG 프로젝트는 ChatWithCloud의 개발자 Rafal Wilinski가 공개한 프로젝트입니다. Cloudflare RAG 프로젝트는 Cloudflare에서 제공하는 다양한 서비스(Workers, Pages, D1, KV, R2, AI Gateway와 Workers AI)들을 활용하여 RAG(Retrieval Augmented Generation) 앱을 구축할 수 있는 방법을 소개하는 프로젝트입니다.

이 프로젝트는 Cloudflare의 다양한 기술 스택을 활용해 RAG 앱을 구축하는 예제를 제공합니다. RAG는 주어진 질문에 대해 데이터베이스에서 관련 정보를 검색하고, 이를 이용해 AI 모델의 응답을 보강하는 방법입니다. Cloudflare의 D1을 활용한 전통적인 전체 텍스트 검색과 Vectorize를 활용한 벡터 검색을 결합해 보다 정교한 검색 결과를 제공합니다. 사용자는 여러 AI 제공자(OpenAI, Groq, Anthropic 등) 간의 전환이 가능하며, Cloudflare의 AI Gateway를 통해 자동 폴백 기능도 지원합니다.

이 프로젝트는 전통적인 RAG 시스템과 달리, Cloudflare의 인프라를 최대한 활용해 보다 빠르고 효율적인 검색을 제공합니다. 기존의 RAG는 주로 하나의 검색 방식(예: 전체 텍스트 검색 또는 벡터 검색)에 의존하지만, Cloudflare RAG는 두 가지 방식을 동시에 사용해 더욱 정확한 검색 결과를 제공합니다.

주요 기능

  • 실시간 스트리밍: Server-Sent Events를 사용하여 서버에서 클라이언트로 실시간 스트리밍을 통해 사용자 인터페이스에 결과를 빠르게 표시합니다.

  • 하이브리드 검색: Cloudflare D1을 통한 전체 텍스트 검색과 Vectorize를 통한 벡터 검색을 결합하여 정확도를 높입니다.

  • 다양한 AI 제공자 전환: OpenAI, Groq, Anthropic 등의 다양한 AI 제공자를 지원하며, AI Gateway를 통해 자동 폴백 기능을 제공합니다.

  • IP 기반 속도 제한: Cloudflare KV를 이용한 IP 기반의 속도 제한 기능으로 안정적인 서비스 제공.

  • OCR 기능: Cloudflare Worker 내에서 실행되는 unpdf를 이용해 OCR 기능을 제공합니다.

  • 스마트 작업 위치 설정: 워크로드를 최적의 위치에 자동으로 배치하여 지연 시간을 최소화합니다.

:framed_picture: Demo 페이지

https://cloudflare-rag.pages.dev/

:github: Cloudflare-RAG 프로젝트 저장소




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:kr:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:gift: 아래:arrow_lower_right:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: