개요
이 개요는 텍스트 기반 임베딩 모델을 다룹니다. LangChain은 현재 멀티모달 임베딩을 지원하지 않습니다.
작동 방식
- 벡터화 — 모델이 각 입력 문자열을 고차원 벡터로 인코딩합니다.
- 유사도 점수화 — 벡터들을 수학적 메트릭을 사용하여 비교함으로써 기본 텍스트들이 얼마나 밀접하게 관련되어 있는지 측정합니다.
유사도 메트릭
임베딩을 비교하는 데 일반적으로 사용되는 여러 메트릭이 있습니다:- 코사인 유사도 — 두 벡터 사이의 각도를 측정합니다.
- 유클리드 거리 — 점들 사이의 직선 거리를 측정합니다.
- 내적 — 한 벡터가 다른 벡터에 얼마나 투영되는지 측정합니다.
인터페이스
LangChain은 Embeddings 인터페이스를 통해 텍스트 임베딩 모델(예: OpenAI, Cohere, Hugging Face)에 대한 표준 인터페이스를 제공합니다. 두 가지 주요 메서드를 사용할 수 있습니다:embed_documents(texts: List[str]) → List[List[float]]: 문서 목록을 임베딩합니다.embed_query(text: str) → List[float]: 단일 쿼리를 임베딩합니다.
인터페이스는 쿼리와 문서를 서로 다른 전략으로 임베딩할 수 있도록 허용하지만, 대부분의 제공업체는 실제로 동일한 방식으로 처리합니다.
주요 통합
캐싱
임베딩을 다시 계산할 필요가 없도록 저장하거나 임시로 캐시할 수 있습니다. 임베딩 캐싱은CacheBackedEmbeddings를 사용하여 수행할 수 있습니다. 이 래퍼는 임베딩을 키-값 저장소에 저장하며, 텍스트를 해시하고 해시를 캐시의 키로 사용합니다.
CacheBackedEmbeddings를 초기화하는 주요 지원 방법은 from_bytes_store입니다. 다음 매개변수를 받습니다:
underlying_embedder: 임베딩에 사용할 임베더입니다.document_embedding_cache: 문서 임베딩을 캐싱하기 위한ByteStore입니다.batch_size: (선택사항, 기본값None) 저장소 업데이트 사이에 임베딩할 문서 수입니다.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 Gemini
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.