개요
이 개요는 텍스트 기반 임베딩 모델을 다룹니다. LangChain은 현재 멀티모달 임베딩을 지원하지 않습니다.
작동 방식
- Vectorization — 모델이 각 입력 문자열을 고차원 벡터로 인코딩합니다.
- Similarity scoring — 벡터를 수학적 지표로 비교하여 해당 텍스트들이 얼마나 밀접하게 관련되어 있는지 측정합니다.
유사도 지표
임베딩을 비교할 때 일반적으로 다음 지표를 사용합니다:- Cosine similarity — 두 벡터 사이의 각도를 측정합니다.
- Euclidean distance — 점들 사이의 직선 거리를 측정합니다.
- Dot product — 한 벡터가 다른 벡터에 투영되는 정도를 측정합니다.
인터페이스
LangChain은 Embeddings 인터페이스를 통해 텍스트 임베딩 모델(예: OpenAI, Cohere, Hugging Face)을 위한 표준 인터페이스를 제공합니다. 두 가지 주요 메서드를 사용할 수 있습니다:embed_documents(texts: List[str]) → List[List[float]]: 문서 목록을 임베딩합니다.embed_query(text: str) → List[float]: 단일 쿼리를 임베딩합니다.
이 인터페이스는 쿼리와 문서를 서로 다른 전략으로 임베딩할 수 있도록 허용하지만, 실제로 대부분의 제공자는 이를 동일한 방식으로 처리합니다.
주요 통합
캐싱
임베딩은 다시 계산할 필요가 없도록 저장하거나 일시적으로 캐싱할 수 있습니다. 임베딩 캐싱은CacheBackedEmbeddings를 사용해 수행할 수 있습니다. 이 래퍼는 임베딩을 key-value 스토어에 저장하며, 텍스트를 해시하고 그 해시를 캐시의 key로 사용합니다.
CacheBackedEmbeddings를 초기화하는 기본 지원 방법은 from_bytes_store입니다. 이 메서드는 다음 매개변수를 받습니다:
underlying_embedder: 임베딩에 사용할 embedder.document_embedding_cache: 문서 임베딩 캐싱을 위한ByteStore.batch_size: (선택 사항, 기본값None) 스토어 업데이트 사이에 임베딩할 문서 수.namespace: (선택 사항, 기본값"") 문서 캐시에 사용할 namespace. 충돌을 피하는 데 도움이 됩니다(예: 임베딩 모델 이름으로 설정).query_embedding_cache: (선택 사항, 기본값None) 쿼리 임베딩 캐싱을 위한ByteStore또는document_embedding_cache와 동일한 스토어를 재사용하려면True.
모든 임베딩 모델
Aleph Alpha
Anyscale
Ascend
AI/ML API
AwaDB
AzureOpenAI
Baichuan Text Embeddings
Baidu Qianfan
Baseten
Bedrock
BGE on Hugging Face
Bookend AI
Clarifai
Cloudflare Workers AI
Clova Embeddings
Cohere
DashScope
Databricks
DeepInfra
EDEN AI
Elasticsearch
Embaas
Fake Embeddings
FastEmbed by Qdrant
Fireworks
Google Vertex AI
GPT4All
Gradient
GreenNode
Hugging Face
IBM watsonx.ai
Infinity
Instruct Embeddings
IPEX-LLM CPU
IPEX-LLM GPU
Intel Extension for Transformers
Jina
John Snow Labs
LASER
Lindorm
Llama.cpp
LLMRails
LocalAI
MiniMax
MistralAI
Model2Vec
ModelScope
MosaicML
Naver
Nebius
Netmind
NLP Cloud
Nomic
NVIDIA NIMs
Oracle Cloud Infrastructure
Ollama
OpenClip
OpenAI
OpenVINO
Optimum Intel
Oracle AI Vector Search
OVHcloud
Pinecone Embeddings
PredictionGuard
PremAI
SageMaker
SambaNovaCloud
SambaStudio
Self Hosted
Sentence Transformers
Solar
SpaCy
SparkLLM
TensorFlow Hub
Text Embeddings Inference
TextEmbed
Titan Takeoff
Together AI
Upstage
Volc Engine
Voyage AI
Xinference
YandexGPT
ZhipuAI
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.