이 리포지토리는 Azure Document Intelligence로 분석된 SQL Warehouse 및 문서를 비롯한 풍부한 데이터 소스로 RAG 애플리케이션을 개선하기 위한 샘플 코드를 제공합니다.
이 저장소에 제공되는 플러그인과 기술은 응답 품질을 향상시키기 위해 새 RAG 애플리케이션이나 기존 RAG 애플리케이션에 적용 및 추가됩니다.
중요한
uv
사용하여 종속성과 일반 유틸리티를 관리합니다. 시작하는 방법에 대한 자세한 내용은 uv를 참조하세요. ./text_2_sql
에는 데이터베이스에서 지식 기반으로 지원되는 질문에 답변하는 데 사용할 수 있는 Text2SQL 생성 및 쿼리를 위한 세 가지 멀티샷 구현이 포함되어 있습니다. 프롬프트 기반 및 벡터 기반 접근 방식이 표시되며 둘 다 SQL 쿼리에 응답하는 데 뛰어난 성능을 보여줍니다. 또한 생성 속도를 더욱 높이기 위해 쿼리 캐시를 사용하는 벡터 기반 접근 방식에 대한 추가 반복이 표시됩니다. 이러한 플러그인을 사용하면 RAG 애플리케이션은 이제 노출된 모든 SQL 테이블에서 데이터에 액세스하고 데이터를 가져와서 질문에 답할 수 있습니다../adi_function_app
에는 Azure Document Intelligence를 AI Search와 연결하여 차트와 이미지가 포함된 복잡한 문서를 처리하고 다중 모달 모델(gpt4o)을 사용하여 이를 해석하고 이해하는 코드가 포함되어 있습니다. 이 사용자 정의 기술을 사용하면 RAG 애플리케이션은 벡터 검색 중에 복잡한 차트와 이미지에서 통찰력을 얻을 수 있습니다. 이 기능 앱에는 유사한 문장을 지능적으로 그룹화하고 그림과 표를 함께 유지하면서 별개의 문장을 분리하는 것을 목표로 하는 의미론적 텍스트 청킹 방법도 포함되어 있습니다../deploy_ai_search
AI 검색 및 Text2SQL용 인덱스, 인덱서 및 해당 기술 세트를 배포하기 위한 간편한 Python 기반 유틸리티를 제공합니다.위의 구성 요소는 프로덕션 RAG 프로젝트에서 성공적으로 사용되어 응답 품질을 향상시켰습니다.
이 저장소에 제공된 코드는 구현 샘플이므로 프로덕션에서 사용하기 전에 조정해야 합니다.
다음 다이어그램은 Text2SQL 및 AI 검색 플러그인이 RAG 애플리케이션에 통합되는 방법에 대한 워크플로를 보여줍니다. LLM의 함수 호출 기능과 함께 사용 가능한 플러그인을 사용하여 LLM은 사고 사슬 추론을 수행하여 질문에 답하는 데 필요한 단계를 결정할 수 있습니다. 이를 통해 LLM은 의도를 인식하고 질문의 의도 또는 둘의 조합을 기반으로 적절한 데이터 소스를 선택할 수 있습니다.
이 프로젝트는 기여와 제안을 환영합니다. 대부분의 기여는 귀하가 귀하의 기여를 사용할 수 있는 권리를 갖고 있으며 실제로 그렇게 하고 있음을 선언하는 기여자 라이센스 계약(CLA)에 동의해야 합니다. 자세한 내용을 보려면 https://cla.opensource.microsoft.com을 방문하세요.
끌어오기 요청을 제출하면 CLA 봇이 자동으로 CLA 제공이 필요한지 여부를 결정하고 PR을 적절하게 장식합니다(예: 상태 확인, 댓글). 봇이 제공하는 지침을 따르기만 하면 됩니다. CLA를 사용하여 모든 저장소에서 이 작업을 한 번만 수행하면 됩니다.
이 프로젝트는 Microsoft 오픈 소스 행동 강령을 채택했습니다. 자세한 내용은 행동 강령 FAQ를 참조하거나 추가 질문이나 의견이 있는 경우 [email protected]으로 문의하세요.
이 프로젝트에는 프로젝트, 제품 또는 서비스에 대한 상표나 로고가 포함될 수 있습니다. Microsoft 상표 또는 로고의 승인된 사용에는 Microsoft의 상표 및 브랜드 지침이 적용되며 이를 따라야 합니다. 이 프로젝트의 수정된 버전에 Microsoft 상표 또는 로고를 사용하면 혼동을 일으키거나 Microsoft 후원을 암시해서는 안 됩니다. 제3자 상표 또는 로고의 사용에는 해당 제3자의 정책이 적용됩니다.