Llama-cpp

임베딩

텍스트를 벡터로 변환하는 다양한 임베딩 모델을 다룬다.

AI
RAG
LangChain
저자

Kwangmin Kim

공개

2024년 12월 31일

이 노트북은 LangChain 내에서 Llama-cpp 임베딩을 사용하는 방법에 대해 설명합니다.

llama-cpp-python 패키지를 최신 버전으로 업그레이드하는 pip 명령어입니다.

# API KEY를 환경변수로 관리하기 위한 설정 파일
from dotenv import load_dotenv

# API KEY 정보로드
load_dotenv()
# LangSmith 추적을 설정합니다. https://smith.langchain.com
# !pip install langchain-teddynote
from langchain_teddynote import logging

# 프로젝트 이름을 입력합니다.
logging.langsmith("CH08-Embeddings")
# 설치
# !pip install -qU llama-cpp-python

LlamaCppEmbeddings는 LLaMA 모델을 사용하여 텍스트 임베딩을 생성하는 클래스입니다. 이 클래스는 LangChain 커뮤니티에서 제공하는 확장 기능 중 하나로, C++로 구현된 LLaMA 모델을 활용하여 빠르고 효율적인 임베딩 생성을 지원합니다.

from langchain_community.embeddings import LlamaCppEmbeddings
# LlamaCpp 임베딩 모델을 초기화하고, 모델 경로를 지정합니다.
llama = LlamaCppEmbeddings(model_path="/path/to/model/ggml-model-q4_0.bin")
text = "This is a test document."  # 테스트용 문서 텍스트를 정의합니다.

llama.embed_query(text)는 입력된 텍스트를 임베딩 벡터로 변환하는 함수입니다.

이 함수는 텍스트를 벡터 공간에 매핑하여 의미적 유사성을 계산하거나 검색에 활용할 수 있는 벡터 표현을 얻는 데 사용됩니다.

# 텍스트를 임베딩하여 쿼리 결과를 생성합니다.
query_result = llama.embed_query(text)

llama.embed_documents([text]) 함수를 호출하여 text 문서를 임베딩합니다.

# 텍스트를 임베딩하여 문서 결과를 생성합니다.
doc_result = llama.embed_documents([text])

Subscribe

Enjoy this blog? Get notified of new posts by email: