고객 지원 봇, 내부 지식 그래프 또는 Q&A 시스템을 구축하기 위해 고객은 종종 사전 학습된 모델과 독점 데이터를 함께 활용하는 검색 증강 생성(RAG) 애플리케이션을 사용합니다. 그러나 안전한 자격증명 관리 및 오용 방지를 위한 가드레일이 부족하여 고객이 이러한 애플리케이션에 대한 액세스와 개발을 민주화하지 못하고 있습니다. 최근 유니티는 조직이 LLM을 관리하고 실험 및 프로덕션에 사용할 수 있도록 지원하는 확장성이 뛰어난 엔터프라이즈급 API 게이트웨이인 MLflow AI 게이트웨이를 발표했습니다. 오늘 저희는 RAG 애플리케이션을 더 잘 지원하기 위해 AI 게이트웨이를 확장한다는 소식을 알려드리게 되어 기쁩니다. 조직은 이제 프라이빗 호스팅 모델 APIs (Databricks 모델 서빙을 통해), 독점 모델 APIs (OpenAI, Co:here, Anthropic), 그리고 이제 MosaicML을 통해 개방형 모델 APIs 의 거버넌스를 중앙 집중화하여 안심하고 RAG 애플리케이션을 개발 및 배포할 수 있습니다.
이 블로그 게시물에서는 Databricks 텍스트 생성을 위한 Llama2-70B-Chat 모델과 텍스트 임베딩을 위한 Instructor-XL 모델을 사용하여 레이크하우스 AI 플랫폼에서 RAG 애플리케이션을 구축하고 배포하는 방법을 살펴보고, 이 모델은 MosaicML의 스타터 계층 추론을 통해 호스팅 APIs 및 최적화됩니다. 호스팅 모델을 사용하면 낮은 처리량으로 빠르게 시작하고 비용 효율적으로 실험을 진행할 수 있습니다.
이 블로그에서 구축 중인 RAG 애플리케이션은 원예 관련 질문에 대한 답변과 식물 관리 권장 사항을 제공합니다.
이미 RAG에 익숙하고 이 모든 것이 어떻게 결합되는지 예시를 보고 싶으시다면, Llama2, MosaicML 추론 및 벡터 검색을 사용해 RAG 애플리케이션을 구축하는 방법을 보여주는 데모 (예제 노트북 포함)를 Databricks 에서 확인해보세요.
RAG란?
RAG는 고객이 자체 데이터를 활용하여 모델 성능을 개선할 수 있는 인기 있는 아키텍처입니다. 이는 관련 데이터 / 문서를 검색하여 LLM의 컨텍스트로 제공하는 방식으로 이루어집니다. RAG는 최신 정보를 유지하거나 도메인별 지식에 액세스해야 하는 챗봇과 Q&A 시스템에서 성공을 거두었습니다.
AI 게이트웨이를 사용하여 호출 모델에 가드레일 설치하기 APIs
최근에 발표된 MLflow AI 게이트웨이를 통해 조직은 라우트라는 개체를 통해 거버넌스, 자격 증명 관리 및 SaaS LLM을 포함한 모델( APIs)의 요금 제한을 중앙 집중화할 수 있습니다. 라우트 배포를 통해 조직은 LLM에 대한 액세스를 민주화하는 동시에 사용자 행동이 시스템을 남용하거나 다운시키지 않도록 할 수 있습니다. 또한 AI 게이트웨이는 새로운 최신 모델이 출시될 때 경로 뒤의 모델을 쉽게 업그레이드할 수 있도록 LLM을 쿼리하는 표준 인터페이스를 제공합니다.
일반적으로 조직은 사용 사례별로 경로를 생성하며, 많은 경로가 동일한 모델 API 엔드포인트를 가리킬 수 있으므로 이를 충분히 활용하고 있는지 확인할 수 있습니다.
이 RAG 애플리케이션의 경우 임베딩 모델용과 텍스트 생성 모델용의 두 가지 AI 게이트웨이 경로를 만들고자 합니다. 향후 공급업체 종속을 피하기 위해 미세 조정 또는 프라이빗 호스팅을 위한 지원 경로를 확보하기 위해 두 가지 모두에 개방형 모델을 사용하고 있습니다. 이를 위해 MosaicML의 추론 API를 사용합니다. APIs에서 최신 오픈 소스 모델에 빠르고 쉽게 액세스하여 빠른 실험과 토큰 기반 가격 책정을 할 수 있습니다. MosaicML은 텍스트 완성을 위한 MPT 및 Llama2 모델과 텍스트 임베딩을 위한 Instructor 모델을 지원합니다. 이 예시에서는 2조 개의 토큰으로 학습되고 메타에 의해 대화, 안전 및 유용성을 위해 미세 조정된 Llama2-70b-Chat과 HKUNLP의 12억 parameter 인스트럭션 미세 조 정 임베딩 모델인 Instructor-XL을 사용하겠습니다.
AI 게이트웨이의 새로운 MosaicML 추론 지원( APIs )을 사용하여 Llama2-70B-Chat의 경로를 쉽게 생성할 수 있습니다:
위에서 구성한 텍스트 완성 경로와 유사하게 MosaicML 추론 API를 통해 사용할 수 있는 Instructor-XL에 대한 또 다른 경로를 만들 수 있습니다.
MosaicML 호스팅 모델에 대한 API 키를 받으려면 여기에서 등록하세요.
LangChain을 사용하여 검색 및 텍스트 생성을 통합하기
이제 실시간으로 문서 유사도 조회를 수행할 수 있도록 문서 임베딩에서 벡터 인덱스를 구축해야 합니다. LangChain을 사용하여 임베딩 모델에 대한 AI 게이트웨이 경로를 가리킬 수 있습니다:
그런 다음 프롬프트 템플릿과 텍스트 생성 모델을 연결해야 합니다:
RetrievalQA 체인은 두 구성 요소를 서로 연결하여 벡터 데이터베이스에서 검색된 문서가 텍스트 요약 모델의 컨텍 스트에 시드를 제공하도록 합니다:
이제 MLflow LangChain 플레이버를 사용하여 체인을 로깅하고 Databricks CPU 모델 서빙 엔드포인트에 배포할 수 있습니다. MLflow를 사용하면 모델 버전 관리 기능을 자동으로 제공하여 프로덕션 프로세스를 더욱 엄격하게 관리할 수 있습니다.
개념 증명을 완료한 후, 실험 품질 개선을 위한 요소
요구 사항에 따라 다양한 실험을 실행하여 애플리케이션을 프로덕션 환경으로 전환하는데 적합한 최적화를 찾을 수 있습니다. MLflow 추적 및 평가 APIs를 사용하여 모든 parameter, 기본 모델, 성능 메트릭 및 모델 출력을 기록하여 비교할 수 있습니다. MLflow의 새로운 평가 UI를 사용하면 모델 결과물을 나란히 쉽게 비교할 수 있으며, 모든 MLflow 추적 및 평가 데이터는 추가 분석을 위해 쿼리 가능한 형식으로 저장됩니다. 우리가 흔히 볼 수 있는 몇 가지 실험:
- 지연 시간 - 지연 시간과 비용을 줄이려면 더 작은 모델을 사용해보세요.
- 품질 - 자체 데이터로 오픈 소스 모델을 미세 조정해보세요. 이렇게 하면 도메인별 지식과 원하는 응답 형식을 준수하는 데 도움이 될 수 있습니다.
- 개인 정보 보호 - Databricks 에서 모델을 비공개로 호스팅하여 사용 사례 전반에서 엔드포인트를 최대한 활용하기 위한 LLM 최적화 GPU 모델 서비스 및 AI 게이트웨이를 사용해보세요.
지금 바로 레이크하우스 AI에서 MosaicML을 사용하여 RAG 애플리케이션 개발 시작하기
Databricks 레이크하우스 AI 플랫폼을 통해 개발자는 자신 있게 제너레이티브 AI 애플리케이션을 빠르게 구축하고 배포할 수 있습니다.
위의 채팅 애플리케이션을 조직에 복제하려면 레이크하우스에서 Llama2, MosaicML 추론 및 Vector Search를 사용하여 워크스페이스에 직접 전체 RAG 챗봇 데모를 설치하세요.
RAG 애플리케이션을 더 자세히 살펴보고 개선하세요:
- Databricks GPU 모델 서비스 미리보기에 가입하여 최신 오픈 소스 또는 사용자 지정 모델을 비공개로 호스팅하세요.
- Databricks Vector Search 프리뷰에 참여하여 레이크하우스 AI와 긴밀하게 통합된 서버리스, 확장 가능한 벡터 유사도 검색을 살펴보세요.
- Databricks AutoML 임베딩 미리보기를 통해 도메인별 비공개 데이터에 맞게 임베딩을 사용자 지정하세요.
- MosaicML로 자체 LLM을 미세 조정하거나 사전 학습하여 IP를 소유하세요.