QianfanEmbeddingsEndpoint#

class langchain_community.embeddings.baidu_qianfan_endpoint.QianfanEmbeddingsEndpoint[source]#

Bases: BaseModel, Embeddings

Baidu Qianfan Embeddings embedding models.

Setup:

To use, you should have the qianfan python package installed, and set environment variables QIANFAN_AK, QIANFAN_SK.

pip install qianfan
export QIANFAN_AK="your-api-key"
export QIANFAN_SK="your-secret_key"
Instantiate:
from langchain_community.embeddings import QianfanEmbeddingsEndpoint

embeddings = QianfanEmbeddingsEndpoint()
Embed:
# embed the documents
vectors = embeddings.embed_documents([text1, text2, ...])

# embed the query
vectors = embeddings.embed_query(text)

# embed the documents with async
vectors = await embeddings.aembed_documents([text1, text2, ...])

# embed the query with async
vectors = await embeddings.aembed_query(text)

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

param chunk_size: int = 16#

Chunk size when multiple texts are input

param client: Any = None#

Qianfan client

param endpoint: str = ''#

Endpoint of the Qianfan Embedding, required if custom model used.

param init_kwargs: Dict[str, Any] [Optional]#

init kwargs for qianfan client init, such as query_per_second which is associated with qianfan resource object to limit QPS

param model: str | None = None#

Model name you could get from https://cloud.baidu.com/doc/WENXINWORKSHOP/s/Nlks5zkzu

for now, we support Embedding-V1 and - Embedding-V1 ๏ผˆ้ป˜่ฎคๆจกๅž‹๏ผ‰ - bge-large-en - bge-large-zh

preset models are mapping to an endpoint. model will be ignored if endpoint is set

param model_kwargs: Dict[str, Any] [Optional]#

extra params for model invoke using with do.

param qianfan_ak: SecretStr | None = None (alias 'api_key')#

Qianfan application apikey

param qianfan_sk: SecretStr | None = None (alias 'secret_key')#

Qianfan application secretkey

async aembed_documents(texts: List[str]) โ†’ List[List[float]][source]#

Asynchronous Embed search docs.

Parameters:

texts (List[str]) โ€“ List of text to embed.

Returns:

List of embeddings.

Return type:

List[List[float]]

async aembed_query(text: str) โ†’ List[float][source]#

Asynchronous Embed query text.

Parameters:

text (str) โ€“ Text to embed.

Returns:

Embedding.

Return type:

List[float]

embed_documents(texts: List[str]) โ†’ List[List[float]][source]#

Embeds a list of text documents using the AutoVOT algorithm.

Parameters:

texts (List[str]) โ€“ A list of text documents to embed.

Returns:

A list of embeddings for each document in the input list.

Each embedding is represented as a list of float values.

Return type:

List[List[float]]

embed_query(text: str) โ†’ List[float][source]#

Embed query text.

Parameters:

text (str) โ€“ Text to embed.

Returns:

Embedding.

Return type:

List[float]

classmethod validate_environment(values: Dict) โ†’ Dict[source]#

Validate whether qianfan_ak and qianfan_sk in the environment variables or configuration file are available or not.

init qianfan embedding client with ak, sk, model, endpoint

Parameters:
  • values (Dict) โ€“ a dictionary containing configuration information, must include the

  • qianfan_sk (fields of qianfan_ak and)

Returns:

a dictionary containing configuration information. If qianfan_ak and qianfan_sk are not provided in the environment variables or configuration file,the original values will be returned; otherwise, values containing qianfan_ak and qianfan_sk will be returned.

Raises:
  • ValueError โ€“ qianfan package not found, please install it with `pip install

  • qianfan` โ€“

Return type:

Dict

Examples using QianfanEmbeddingsEndpoint