검색 증강 세대 (RAG)는 대형 언어 모델로 생성 된 텍스트의 품질을 향상시키는 방법으로 점점 인기를 얻고 있습니다. 멀티 모달 LLM이 vouge에 있으므로 이제 헝겊을 멀티 모달 데이터로 확장 할 때입니다.
여러 가지 양식에서 데이터를 검색하고 검색하는 기능을 추가하면 오늘날 가장 강력한 AI 모델과 상호 작용할 수있는 강력한 도구를 얻습니다. 그러나 우리는 또한 프로세스에 새로운 복잡성을 추가합니다.
우리가 고려해야 할 고려 사항 중 일부는 다음과 같습니다.
보다 실용적인 수준에서, 우리가 돌릴 수있는 기본 손잡이는 다음과 같습니다.
이 프로젝트는 이러한 질문 등을 탐색하기위한 테스트 베드입니다. 그것은 오픈 소스 라이브러리의 3 가지 오픈 소스 라이브러리를 사용하여 멀티 모달 데이터로 작업하고 다양한 멀티 모달 래그 기술을 실험하고 가능한 한 쉽게 사용하는 데 가장 적합한 것을 찾는 프로세스를 만들어냅니다.
또한 llamaindex는 자주 API를 업데이트합니다. 이것이 Llamaindex 버전과 관련 패키지가 모두 고정 된 이유입니까?
먼저 50 절을 설치하십시오.
pip install fiftyone다음으로 FiftyOne의 CLI 구문을 사용하여 FiftyOne Multimodal Rag 플러그인을 다운로드하여 설치합니다.
fiftyone plugins download https://github.com/jacobmarks/fiftyone-multimodal-rag-pluginLlamaindex에는 장점 설치 프로세스가 있습니다 (최소한 다중 모드를 구축하려는 경우). 다행 스럽게도이 (및 기타 모든 설치 종속성)는 다음 명령으로 처리됩니다.
fiftyone plugins requirements @jacobmarks/multimodal_rag --install시작하려면 Fiftyone 앱을 시작하십시오. 다음을 실행하여 터미널에서 그렇게 할 수 있습니다.
fiftyone app launch또는 다음 파이썬 코드를 실행할 수 있습니다.
import fiftyone as fo
session = fo . launch_app () 이제 백티크 키 ( ` )를 누르고 create_dataset_from_llama_documents 입력하십시오. Enter 누르면 운영자의 모달을 엽니 다. 이 연산자는 멀티 모달 데이터 (이미지, 텍스트 파일, PDF 등)가 포함 된 디렉토리를 선택하고 50one 데이터 세트를 생성 할 수있는 UI를 제공합니다.
디렉토리를 선택하면 연산자를 실행하십시오. Fiftyone 세션에서 새 데이터 세트를 생성합니다. 텍스트 파일의 경우 잘린 텍스트의 이미지 렌더링이 표시됩니다. 이미지의 경우 이미지 자체가 표시됩니다.
add_llama_documents_to_dataset 연산자를 사용하여 멀티 모달 데이터의 추가 디렉토리를 추가 할 수 있습니다.
멀티 모달 데이터 세트가 있으므로 Llamaindex 및 Milvus로 색인 할 수 있습니다. 이 프로세스를 입력하려면 create_multimodal_rag_index 연산자를 사용하십시오. 이 연산자는 인덱스의 이름을 지정하라는 메시지를 표시하며 클립 임베딩 또는 캡션을 통해 이미지를 색인화 할 수있는 옵션을 제공합니다. 캡션을 선택하면 캡션으로 사용할 텍스트 필드를 선택하라는 메시지가 표시됩니다.
데이터 세트에 캡션이없는 경우 Fiftyone Image Captioning 플러그인에 관심이있을 수 있습니다.
fiftyone plugins download https://github.com/jacobmarks/fiftyone-image-captioning-plugin 일단 인덱스를 생성하면 get_multimodal_rag_index_info 연산자를 실행하고 드롭 다운에서 검사하려는 색인을 선택하여 색인을 검사 할 수 있습니다.
마지막으로 query_multimodal_rag_index 연산자로 색인을 쿼리 할 수 있습니다. 이 연산자는 쿼리 문자열과 쿼리의 색인을 입력하라는 메시지를 표시합니다.
검색된 결과를 생성하는 데 사용할 수있는 멀티 모달 모델과 검색 할 이미지 및 텍스트 결과의 수를 지정할 수도 있습니다.