嵌入
BaseRagasEmbeddings
BaseRagasEmbeddings(cache: Optional[CacheInterface] = None)
基类: Embeddings
, ABC
Ragas embedding 的抽象基类。
此类继承自 Embeddings 类,提供用于 embedding 文本和管理运行配置的方法。
属性: run_config (RunConfig): 用于运行 embedding 操作的配置。
源代码位于 src/ragas/embeddings/base.py
embed_text async
embed_texts async
嵌入多个文本。
源代码位于 src/ragas/embeddings/base.py
HuggingfaceEmbeddings
HuggingfaceEmbeddings(cache: Optional[CacheInterface] = None)
用于使用预训练模型生成 embedding 的 Hugging Face embedding 类。
此类提供了加载和使用 Hugging Face 模型来生成文本输入 embedding 的功能。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
model_name
|
str
|
要使用的预训练模型的名称,默认为 DEFAULT_MODEL_NAME。 |
必需 |
cache_folder
|
str
|
存储下载模型的路径。也可以通过 SENTENCE_TRANSFORMERS_HOME 环境变量设置。 |
必需 |
model_kwargs
|
dict
|
传递给模型的额外关键字参数。 |
必需 |
encode_kwargs
|
dict
|
传递给编码方法的额外关键字参数。 |
必需 |
属性
名称 | 类型 | 描述 |
---|---|---|
model |
Union[SentenceTransformer, CrossEncoder]
|
加载的 Hugging Face 模型。 |
is_cross_encoder |
bool
|
指示模型是否为 cross-encoder 的标志。 |
方法
名称 | 描述 |
---|---|
embed_query |
嵌入单个查询文本。 |
embed_documents |
嵌入多个文档。 |
predict |
使用 cross-encoder 模型进行预测。 |
注意
此类需要安装 sentence_transformers
和 transformers
包。
示例
>>> embeddings = HuggingfaceEmbeddings(model_name="bert-base-uncased")
>>> query_embedding = embeddings.embed_query("What is the capital of France?")
>>> doc_embeddings = embeddings.embed_documents(["Paris is the capital of France.", "London is the capital of the UK."])
源代码位于 src/ragas/embeddings/base.py
embed_query
embed_documents
嵌入多个文档。
源代码位于 src/ragas/embeddings/base.py
predict
使用 cross-encoder 模型进行预测。
源代码位于 src/ragas/embeddings/base.py
LangchainEmbeddingsWrapper
LangchainEmbeddingsWrapper(embeddings: Embeddings, run_config: Optional[RunConfig] = None, cache: Optional[CacheInterface] = None)
langchain 中任何 embedding 的包装器。
源代码位于 src/ragas/embeddings/base.py
embed_query
embed_documents
aembed_query async
aembed_documents async
set_run_config
set_run_config(run_config: RunConfig)
为 embedding 操作设置运行配置。
源代码位于 src/ragas/embeddings/base.py
LlamaIndexEmbeddingsWrapper
LlamaIndexEmbeddingsWrapper(embeddings: BaseEmbedding, run_config: Optional[RunConfig] = None, cache: Optional[CacheInterface] = None)
llama-index 中任何 embedding 的包装器。
此类提供了 llama-index embedding 的包装器,使其可在 Ragas 框架中使用。它支持查询和文档的同步和异步 embedding 操作。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
embeddings
|
BaseEmbedding
|
要包装的 llama-index embedding 模型。 |
必需 |
run_config
|
RunConfig
|
运行配置。如果未提供,将使用默认 RunConfig。 |
无
|
属性
名称 | 类型 | 描述 |
---|---|---|
embeddings |
BaseEmbedding
|
包装的 llama-index embedding 模型。 |
示例
>>> from llama_index.embeddings import OpenAIEmbedding
>>> from ragas.embeddings import LlamaIndexEmbeddingsWrapper
>>> llama_embeddings = OpenAIEmbedding()
>>> wrapped_embeddings = LlamaIndexEmbeddingsWrapper(llama_embeddings)
>>> query_embedding = wrapped_embeddings.embed_query("What is the capital of France?")
>>> document_embeddings = wrapped_embeddings.embed_documents(["Paris is the capital of France.", "London is the capital of the UK."])
源代码位于 src/ragas/embeddings/base.py
HaystackEmbeddingsWrapper
HaystackEmbeddingsWrapper(embedder: Any, run_config: Optional[RunConfig] = None, cache: Optional[CacheInterface] = None)
用于在 Ragas 框架中使用 Haystack embedder 的包装器。
此类允许你使用同步和异步方法(embed_query
/embed_documents
和 aembed_query
/aembed_documents
)通过 Haystack embedder 生成 embeddings。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
embedder
|
AzureOpenAITextEmbedder | HuggingFaceAPITextEmbedder | OpenAITextEmbedder | SentenceTransformersTextEmbedder
|
受支持的 Haystack embedder 类实例。 |
必需 |
run_config
|
RunConfig
|
用于管理 embedding 执行设置的配置对象,默认为 None。 |
无
|
cache
|
CacheInterface
|
用于存储和检索 embedding 结果的缓存实例,默认为 None。 |
无
|
源代码位于 src/ragas/embeddings/haystack_wrapper.py
embedding_factory
embedding_factory(model: str = 'text-embedding-ada-002', run_config: Optional[RunConfig] = None) -> BaseRagasEmbeddings
创建并返回一个 BaseRagasEmbeddings 实例。用于 Ragas 中使用的默认 embedding (OpenAI)。
此工厂函数创建并用 LangchainEmbeddingsWrapper 包装一个 OpenAIEmbeddings 实例,以提供与 BaseRagasEmbeddings 兼容的对象。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
model
|
str
|
要使用的 OpenAI embedding 模型的名称,默认为 "text-embedding-ada-002"。 |
'text-embedding-ada-002'
|
run_config
|
RunConfig
|
运行配置,默认为 None。 |
无
|
返回值
类型 | 描述 |
---|---|
BaseRagasEmbeddings
|
使用指定参数配置的 BaseRagasEmbeddings 实例。 |