AI Edge RAG 가이드

AI Edge RAG SDK는 LLM 추론 API를 사용하여 검색 증강 생성 (RAG) 파이프라인을 구성하는 데 필요한 기본 구성요소를 제공합니다. RAG 파이프라인은 업데이트된 민감한 정보 또는 도메인별 정보가 포함될 수 있는 사용자 제공 데이터에 대한 액세스를 LLM에 제공합니다. RAG의 정보 검색 기능을 추가하면 LLM이 특정 사용 사례에 맞게 더 정확하고 맥락을 인식하는 응답을 생성할 수 있습니다.

AI Edge RAG SDK는 Android에서 사용할 수 있으며 기기에서 완전히 실행할 수 있습니다. RAG를 사용하여 샘플 애플리케이션의 기본 구현을 안내하는 Android 가이드에 따라 SDK 사용을 시작합니다.

RAG 파이프라인

AI Edge RAG SDK를 사용하여 RAG 파이프라인을 설정하는 작업에는 다음과 같은 주요 단계가 포함됩니다.

  1. 데이터 가져오기: LLM이 출력을 생성할 때 사용할 텍스트 데이터를 제공합니다.
  2. 데이터 분할 및 색인 생성: 데이터베이스에서 색인을 생성하기 위해 데이터를 작은 청크로 분할합니다.
  3. 임베딩 생성: 임베더를 사용하여 청크를 벡터화하여 벡터 데이터베이스에 저장합니다.
  4. 정보 검색: 사용자 메시지를 처리하기 위해 관련 정보를 식별하고 검색하는 방법을 정의합니다. 검색 구성요소는 지정된 프롬프트에 대해 벡터 데이터베이스를 검색하여 관련 정보를 식별합니다.
  5. LLM으로 텍스트 생성: 대규모 언어 모델을 사용하여 벡터 데이터베이스에서 가져온 정보를 기반으로 출력 텍스트를 생성합니다.

주요 모듈

AI Edge RAG SDK는 RAG 파이프라인에 다음과 같은 주요 모듈과 API를 제공합니다.

  • 언어 모델: 로컬(기기 내) 또는 서버 기반의 open-prompt API가 있는 LLM 모델입니다. 이 API는 LanguageModel 인터페이스를 기반으로 합니다.
  • 텍스트 임베딩 모델: 시맨틱 검색을 위해 구조화된 텍스트와 비정형 텍스트를 임베딩 벡터로 변환합니다. 이 API는 Embedder 인터페이스를 기반으로 합니다.
  • 벡터 저장소: 벡터 저장소는 데이터 청크에서 파생된 임베딩과 메타데이터를 보유합니다. 유사한 청크 또는 정확한 일치를 가져오기 위해 쿼리할 수 있습니다. 이 API는 VectorStore 인터페이스를 기반으로 합니다.
  • 시맨틱 메모리: 쿼리가 주어질 때 상위 k개 관련 청크를 검색하는 시맨틱 검색기 역할을 합니다. 이 API는 SemanticMemory 인터페이스를 기반으로 합니다.
  • 텍스트 청크 처리: 색인 생성을 용이하게 하기 위해 사용자 데이터를 더 작은 단위로 분할합니다. 이 API는 TextChunker 인터페이스를 기반으로 합니다.

SDK는 단일 파이프라인에 여러 RAG 구성요소를 결합하는 체인을 제공합니다. 체이닝을 사용하여 검색 및 쿼리 모델을 조정할 수 있습니다. 이 API는 Chain 인터페이스를 기반으로 합니다. 시작하려면 검색 및 추론 체인 또는 검색 체인을 사용해 보세요.