이 프로젝트는 의미 론적 검색 및 강제력 LLM-Chat 응용 프로그램을 규모로 구현하는 것을 목표로합니다. 세 가지 주요 구성 요소로 구성됩니다.
1. Vector Store Database (chromadb_service): Manages and stores vector embeddings for efficient retrieval.
2. Backend LLM-Powered API Service (llm_service): Handles the core logic and interacts with the LLM model.
3. Frontend Application: Provides the user interface for interacting with the application.
모듈 식 디자인을 사용하면 각 구성 요소가 독립적으로 확장 될 수 있으므로 시스템이 필요에 따라 많은 트래픽 볼륨을 처리 할 수 있습니다.
실제 배포의 경우 ChromADB 대신 분산 벡터 데이터베이스 솔루션을 채택하는 것이 좋습니다. 또한 응용 프로그램 생산을 준비하려면 추가 향상이 필요합니다.
이 프로젝트 설정은 프로덕션 준비 채팅 기반 애플리케이션을 만들기 시작했습니다.
종속성을 설치하십시오 (Python> = 3.10 사용). 성공적인 LLMA-CPP-Python 설치를 위해 환경 변수 CMAKE_ARGS를 추가해야합니다. Apple Silicon MacBook의 경우 아래 명령을 사용하십시오. 다른 플랫폼 특정 지침은 LLMA-CPP-Python의 공식 문서를 확인하십시오. 링크
CMAKE_ARGS="-DLLAMA_METAL=on"
pip install -r requirements.txt
다음 순서에서 각 서비스를 실행합니다.
데이터 세트 항목을 작성, 수정 및 업데이트하는 벡터 데이터베이스 서비스입니다. 다음과 같은 지침을 따르십시오
이 API 서비스는 채팅 인터페이스의 LLAMA-2-7B 모델로 구동되며 컨텍스트 검색에 ChromADB_Service를 사용합니다. 다음과 같은 지침을 따르십시오
이것은 LLM_Service에 전원 챗봇 및 시맨틱 검색 기능에 의존하는 프론트 엔드 애플리케이션 (sleamlit)입니다.
아래에서 Frontend 앱 실행을 시작하려면 명령.
streamlit run frontend/1_Product_Chat.py
구현 및 TechonLogies와 관련된 질문은 LinkedIn에서 저에게 연락하십시오. 추가 개선을 위해 풀 수십을 열어주십시오. 감사합니다!