참조 : https://python.langchain.com/docs/modules/data_connection/
Retrieval
LLM 애플리케이션에서 user-specific data를 필요로함 -> 이를 위해 RAG (Retrieval Augmented Generation) 제공
Concept
Item | Desc | Etc. |
Document loaders | 많은 다른 source로부터 document를 load함 | |
Text Splitting | Retrieval에서 key가 되는 부분은 문서에서 해당하는 부분만 가져오는 것 이를 위해서 split을 통해서 좀더 작은 chunk로 잘라야 함 |
|
Text embedding models |
문서의 임베딩을 만드는 것으로 임배딩은 Text의 의미론적 의미를 포착해서 유사한 텍스트의 다른 부분을 빠르고 효율적으로 찾을 수 있음 | |
Vector stores | 임베딩의 저장 및 검색을 지원하는 DB | |
Retrievers | DB에 있는 데이터를 검색하기위한 검색 알고리즘 및 방법 - Parent Document Retriever - 상위 문서당 여러 임베딩 생성 - Self Query Retriever - 사용자 질문에 있는 다른 메타쿼리의 의미부분을 구문분석 - Ensemble Retriever - 여러 다른 소스 또는 알고리즘을 사용하도록 엮어줌 |
|
Indexing | 인덱싱을 통해 다음을 지원 -> 이를 통해 시간과 비용을 절약, 백터검색결과 향상 - Avoid duplicated content - Avoid re-writing unchanged content - Avoid re-computing embeddings over unchanged content |
'ML&DL and LLM' 카테고리의 다른 글
LangChain - 2.3 Text Splitter (0) | 2024.04.02 |
---|---|
LangChain - 2.2 Document loaders (0) | 2024.04.01 |
LangChain 1.5.1 Types of output parser (0) | 2024.03.29 |
LangChain - 1.3.1 LLM QuickStart (0) | 2024.03.28 |
LangChain - 1.2.5 MessagePromptTemplate (0) | 2024.03.28 |