langchain_community.embeddings.oci_generative_ai.OCIGenAIEmbeddings

class langchain_community嵌入。oci代人工智能。OCIGenAIEmbeddings[source]

基类: BaseModel, Embeddings

OCI嵌入模型。

为了认证,OCI客户端使用以下方法:https://docs.oracle.com/en-us/iaas/Content/API/Concepts/sdk_authentication_methods.htm

认证方法通过auth_type传递,可以是以下之一:API_KEY(默认值)、SECURITY_TOKEN、INSTANCE_PRINCIPLE、RESOURCE_PRINCIPLE

请确保你有访问OCI生成式人工智能服务的必要策略(配置文件/角色)。如果使用特定的配置文件,你必须通过auth_profile传递配置文件的名称(~/.oci/config)。

使用时,你必须提供 compartment id 和 endpoint url,以及作为命名参数传递的 model id 给构造函数。

示例

from langchain.embeddings import OCIGenAIEmbeddings

embeddings = OCIGenAIEmbeddings(
    model_id="MY_EMBEDDING_MODEL",
    service_endpoint="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com",
    compartment_id="MY_OCID"
)

通过分析和验证关键字参数中的输入数据创建新的模型。

如果无法将输入数据解析为有效模型,则抛出 ValidationError。

param auth_profile: Optional[str] = 'DEFAULT'

在 ~/.oci/config 中的配置文件名称。如果没有指定,则使用 DEFAULT

param auth_type: Optional[str] = 'API_KEY'

认证类型,可以是

API_KEY、SECURITY_TOKEN、INSTANCE_PRINCIPLE、RESOURCE_PRINCIPLE

如果没有指定,则使用 API_KEY

param batch_size: int = 96

OCI GenAI嵌入请求的批大小。OCI GenAI可以处理每个请求多达96个文本

param compartment_id: str = None

compartment 的 OCID

param model_id: str = None

要调用的模型ID,例如,cohere.embed-english-light-v2.0

参数 model_kwargs : Optional[Dict] = None

传递给模型的键值参数

参数 service_endpoint : str = None

服务端点URL

参数 truncate : Optional[str] = 'END'

从起始或结束处截断过长的嵌入(“NONE”|“START”|“END”)

异步 aembed_documents(texts: List[str]) List[List[float]]

异步嵌入文档搜索。

参数

texts (列表[字符串]) – 要嵌入的文本列表。

返回

嵌入列表。

返回类型

列表[列表[浮点数]]

异步 aembed_query(text: str) List[float]

异步嵌入查询文本。

参数

text (字符串) – 要嵌入的文本。

返回

嵌入。

返回类型

列表[浮点数]

embed_documents(texts: List[str]) List[List[float]][源代码]

调用 OCIGenAI 的嵌入端点。

参数

texts (列表[字符串]) – 要嵌入的文本列表。

返回

每个文本的嵌入列表。

返回类型

列表[列表[浮点数]]

embed_query(text: str) List[float][源代码]

调用 OCIGenAI 的嵌入端点。

参数

text (str) – 要嵌入的文本。

返回

文本的嵌入。

返回类型

列表[浮点数]

使用 OCIGenAIEmbeddings 的示例