Tony20100/langchain_full huggingface dataset:
deep (bool) – set to True to make a deep copy of the model
self (Model) – 
Returns
new model instance
Return type
Model
dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) → DictStrAny¶
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
Parameters
include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – 
exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – 
by_alias (bool) – 
skip_defaults (Optional[bool]) – 
exclude_unset (bool) – 
exclude_defaults (bool) – 
exclude_none (bool) – 
Return type
DictStrAny
embed_documents(texts: List[str], *, batch_size: int = 100, task_type: Optional[str] = None, titles: Optional[List[str]] = None, output_dimensionality: Optional[int] = None) → List[List[float]][source]¶
Embed a list of strings. Google Generative AI currently
sets a max batch size of 100 strings.
Parameters
texts (List[str]) – List[str] The list of strings to embed.
batch_size (int) – [int] The batch size of embeddings to send to the model
task_type (Optional[str]) – task_type (https://ai.google.dev/api/rest/v1/TaskType)
titles (Optional[List[str]]) – An optional list of titles for texts provided.
titles (Optional[List[str]]) – An optional list of titles for texts provided.
RETRIEVAL_DOCUMENT. (Only applicable when TaskType is) – 
output_dimensionality (Optional[int]) – Optional reduced dimension for the output embedding.
https – //ai.google.dev/api/rest/v1/models/batchEmbedContents#EmbedContentRequest
Returns
List of embeddings, one for each text.
Return type
List[List[float]]
embed_query(text: str, task_type: Optional[str] = None, title: Optional[str] = None, output_dimensionality: Optional[int] = None) → List[float][source]¶
Embed a text.
Parameters
text (str) – The text to embed.
task_type (Optional[str]) – task_type (https://ai.google.dev/api/rest/v1/TaskType)
title (Optional[str]) – An optional title for the text.
RETRIEVAL_DOCUMENT. (Only applicable when TaskType is) – 
output_dimensionality (Optional[int]) – Optional reduced dimension for the output embedding.
https – //ai.google.dev/api/rest/v1/models/batchEmbedContents#EmbedContentRequest
Returns
Embedding for the text.
Return type
List[float]
classmethod from_orm(obj: Any) → Model¶
Parameters
obj (Any) – 
Return type
Model
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) → unicode¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
Return type
DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) → unicode¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
dumps_kwargs (Any) – 
Return type
unicode
classmethod update_forward_refs(**localns: Any) → None¶
Try to update ForwardRefs on fields based on this Model, globalns and localns.
Parameters
localns (Any) – 
Return type
None
classmethod validate(value: Any) → Model¶
Parameters
value (Any) – 
Return type
Model
Examples using GoogleGenerativeAIEmbeddings¶
Google
Google Generative AI Embeddings
langchain_community.embeddings.gradient_ai.TinyAsyncGradientEmbeddingClient¶
class langchain_community.embeddings.gradient_ai.TinyAsyncGradientEmbeddingClient(*args, **kwargs)[source]¶
Deprecated, TinyAsyncGradientEmbeddingClient was removed.
This class is just for backwards compatibility with older versions
of langchain_community.
It might be entirely removed in the future.
Methods
__init__(*args, **kwargs)
__init__(*args, **kwargs) → None[source]¶
Return type
None
langchain_openai.embeddings.base.OpenAIEmbeddings¶
class langchain_openai.embeddings.base.OpenAIEmbeddings[source]¶
Bases: BaseModel, Embeddings
OpenAI embedding models.
To use, you should have the
environment variable OPENAI_API_KEY set with your API key or pass it
as a named parameter to the constructor.
In order to use the library with Microsoft Azure endpoints, use
AzureOpenAIEmbeddings.
Example
from langchain_openai import OpenAIEmbeddings
model = OpenAIEmbeddings(model="text-embedding-3-large")
Create a new model by parsing and validating input data from keyword arguments.
Raises ValidationError if the input data cannot be parsed to form a valid model.
param allowed_special: Optional[Union[Literal['all'], Set[str]]] = None¶
param check_embedding_ctx_length: bool = True¶
Whether to check the token length of inputs and automatically split inputs
longer than embedding_ctx_length.
param chunk_size: int = 1000¶
Maximum number of texts to embed in each batch
param default_headers: Optional[Mapping[str, str]] = None¶
param default_query: Optional[Mapping[str, object]] = None¶
param deployment: Optional[str] = 'text-embedding-ada-002'¶
param dimensions: Optional[int] = None¶
The number of dimensions the resulting output embeddings should have.
Only supported in text-embedding-3 and later models.
param disallowed_special: Optional[Union[Literal['all'], Set[str], Sequence[str]]] = None¶
param embedding_ctx_length: int = 8191¶
The maximum number of tokens to embed at once.
param headers: Any = None¶
param http_async_client: Optional[Any] = None¶
Optional httpx.AsyncClient. Only used for async invocations. Must specify
Optional httpx.AsyncClient. Only used for async invocations. Must specify
http_client as well if you’d like a custom client for sync invocations.
param http_client: Optional[Any] = None¶
Optional httpx.Client. Only used for sync invocations. Must specify
http_async_client as well if you’d like a custom client for async invocations.
param max_retries: int = 2¶
Maximum number of retries to make when generating.
param model: str = 'text-embedding-ada-002'¶
param model_kwargs: Dict[str, Any] [Optional]¶
Holds any model parameters valid for create call not explicitly specified.
param openai_api_base: Optional[str] = None (alias 'base_url')¶
Base URL path for API requests, leave blank if not using a proxy or service
emulator.
param openai_api_key: Optional[SecretStr] = None (alias 'api_key')¶
Automatically inferred from env var OPENAI_API_KEY if not provided.
Constraints
type = string
writeOnly = True
format = password
param openai_api_type: Optional[str] = None¶
param openai_api_version: Optional[str] = None (alias 'api_version')¶
Automatically inferred from env var OPENAI_API_VERSION if not provided.
param openai_organization: Optional[str] = None (alias 'organization')¶
Automatically inferred from env var OPENAI_ORG_ID if not provided.
param openai_proxy: Optional[str] = None¶
param request_timeout: Optional[Union[float, Tuple[float, float], Any]] = None (alias 'timeout')¶
Timeout for requests to OpenAI completion API. Can be float, httpx.Timeout or
None.
param retry_max_seconds: int = 20¶
Max number of seconds to wait between retries
param retry_max_seconds: int = 20¶
Max number of seconds to wait between retries
param retry_min_seconds: int = 4¶
Min number of seconds to wait between retries
param show_progress_bar: bool = False¶
Whether to show a progress bar when embedding.
param skip_empty: bool = False¶
Whether to skip empty strings when embedding or raise an error.
Defaults to not skipping.
param tiktoken_enabled: bool = True¶
Set this to False for non-OpenAI implementations of the embeddings API, e.g.
the –extensions openai extension for text-generation-webui
param tiktoken_model_name: Optional[str] = None¶
The model name to pass to tiktoken when using this class.
Tiktoken is used to count the number of tokens in documents to constrain
them to be under a certain limit. By default, when set to None, this will
be the same as the embedding model name. However, there are some cases
where you may want to use this Embedding class with a model name not
supported by tiktoken. This can include when using Azure embeddings or
when using one of the many model providers that expose an OpenAI-like
API but with different models. In those cases, in order to avoid erroring
when tiktoken is called, you can specify a model name to use here.
async aembed_documents(texts: List[str], chunk_size: Optional[int] = 0) → List[List[float]][source]¶
Call out to OpenAI’s embedding endpoint async for embedding search docs.
Parameters
texts (List[str]) – The list of texts to embed.
chunk_size (Optional[int]) – The chunk size of embeddings. If None, will use the chunk size
specified by the class.
Returns
List of embeddings, one for each text.
Return type
List[List[float]]
Returns
List of embeddings, one for each text.
Return type
List[List[float]]
async aembed_query(text: str) → List[float][source]¶
Call out to OpenAI’s embedding endpoint async for embedding query text.
Parameters
text (str) – The text to embed.
Returns
Embedding for the text.
Return type
List[float]
classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) → Model¶
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
Behaves as if Config.extra = ‘allow’ was set since it adds all passed values
Parameters
_fields_set (Optional[SetStr]) – 
values (Any) – 
Return type
Model
copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) → Model¶
Duplicate a model, optionally choose which fields to include, exclude and change.
Parameters
include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – fields to include in new model
exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – fields to exclude from new model, as with values this takes precedence over include
update (Optional[DictStrAny]) – values to change/add in the new model. Note: the data is not validated before creating
the new model: you should trust this data
deep (bool) – set to True to make a deep copy of the model
self (Model) – 
Returns
new model instance
Return type
Model
self (Model) – 
Returns
new model instance
Return type
Model
dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) → DictStrAny¶
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
Parameters
include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – 
exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – 
by_alias (bool) – 
skip_defaults (Optional[bool]) – 
exclude_unset (bool) – 
exclude_defaults (bool) – 
exclude_none (bool) – 
Return type
DictStrAny
embed_documents(texts: List[str], chunk_size: Optional[int] = 0) → List[List[float]][source]¶
Call out to OpenAI’s embedding endpoint for embedding search docs.
Parameters
texts (List[str]) – The list of texts to embed.
chunk_size (Optional[int]) – The chunk size of embeddings. If None, will use the chunk size
specified by the class.
Returns
List of embeddings, one for each text.
Return type
List[List[float]]
embed_query(text: str) → List[float][source]¶
Call out to OpenAI’s embedding endpoint for embedding query text.
Parameters
text (str) – The text to embed.
Returns
Embedding for the text.
Return type
List[float]
classmethod from_orm(obj: Any) → Model¶
Parameters
obj (Any) – 
Return type
Model
Parameters
obj (Any) – 
Return type
Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: Protocol = None, allow_pickle: bool = False) → Model¶
Parameters
b (Union[str, bytes]) – 
content_type (unicode) – 
encoding (unicode) – 
proto (Protocol) – 
allow_pickle (bool) – 
Return type
Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') → DictStrAny¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
Return type
DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) → unicode¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
dumps_kwargs (Any) – 
Return type
unicode
classmethod update_forward_refs(**localns: Any) → None¶
Try to update ForwardRefs on fields based on this Model, globalns and localns.
Parameters
localns (Any) – 
Return type
None
classmethod validate(value: Any) → Model¶
Parameters
value (Any) – 
Return type
Model
Examples using OpenAIEmbeddings¶
Activeloop Deep Lake
Activeloop Deep Memory
Alibaba Cloud OpenSearch
Amazon Document DB
AnalyticDB
Apache Cassandra
Apache Doris
Astra DB
Astra DB (Cassandra)
Azure AI Search
Azure Cosmos DB
Azure OpenAI
Build a Query Analysis System
Build a Question/Answering system over SQL data
Build a Retrieval Augmented Generation (RAG) App
Build an Agent
Caching
Cassandra
Build an Agent
Caching
Cassandra
China Mobile ECloud ElasticSearch VectorSearch
Chroma
ClickHouse
Confident
Conversational RAG
Couchbase 
Databricks Vector Search
Deep Lake
DingoDB
DocArray
DocArray HnswSearch
DocArray InMemorySearch
Docugami
Document Comparison
DuckDB
Elasticsearch
Epsilla
Faiss
Faiss (Async)
FlashRank reranker
Fleet AI Context
Hippo
Hologres
How deal with high cardinality categoricals when doing query analysis
How to add chat history
How to add retrieval to chatbots
How to add scores to retriever results
How to add values to a chain’s state
How to best prompt for Graph-RAG
How to better prompt when doing SQL question-answering
How to combine results from multiple retrievers
How to create and query vector stores
How to deal with large databases when doing SQL question-answering
How to do “self-querying” retrieval
How to do per-user retrieval
How to do retrieval with contextual compression
How to get a RAG application to add citations
How to get your RAG application to return sources
How to handle cases where no queries are generated
How to handle long text when doing extraction
How to handle multiple queries when doing query analysis
How to handle multiple retrievers when doing query analysis
How to inspect runnables
How to invoke runnables in parallel
How to load PDFs
How to pass through arguments from one step to the next
How to retrieve using multiple vectors per document
How to route between sub-chains
How to select examples by maximal marginal relevance (MMR)
How to select examples by similarity
How to split text based on semantic similarity
How to stream results from your RAG application
How to stream runnables
How to stream results from your RAG application
How to stream runnables
How to use a time-weighted vector store retriever
How to use a vectorstore as a retriever
How to use few shot examples
How to use few shot examples in chat models
How to use the LangChain indexing API
How to use the MultiQueryRetriever
How to use the Parent Document Retriever
Hybrid Search
Jaguar Vector Database
JaguarDB Vector Database
Javelin AI Gateway
KDB.AI
Kinetica Vectorstore API
Kinetica Vectorstore based Retriever
LLMLingua Document Compressor
LOTR (Merger Retriever)
LanceDB
Lantern
Meilisearch
Milvus
Milvus Hybrid Search
Model caches
Momento Vector Index (MVI)
MongoDB Atlas
MyScale
Neo4j Vector Index
OpenAI
OpenSearch
PGVector (Postgres)
Pinecone
Pinecone Hybrid Search
Postgres Embedding
Psychic
Qdrant
RAGatouille
RankLLM Reranker
RePhraseQuery
Redis
Rockset
SAP HANA Cloud Vector Engine
SVM
SingleStoreDB
StarRocks
Supabase (Postgres)
Tencent Cloud VectorDB
Text embedding models
TiDB Vector
Tigris
Timescale Vector (Postgres)
Timescale Vector (Postgres) 
Typesense
USearch
UpTrain
Upstash Vector
Vector stores and retrievers
Weaviate
Xata
Yellowbrick
YouTube audio
Zilliz
kNN
scikit-learn
viking DB
langchain_community.embeddings.baidu_qianfan_endpoint.QianfanEmbeddingsEndpoint¶
class langchain_community.embeddings.baidu_qianfan_endpoint.QianfanEmbeddingsEndpoint[source]¶
Bases: BaseModel, Embeddings
Baidu Qianfan Embeddings embedding models.
Create a new model by parsing and validating input data from keyword arguments.
Raises ValidationError if the input data cannot be parsed to form a valid model.
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 = 'Embedding-V1'¶
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: Optional[str] = None¶
Qianfan application apikey
param qianfan_sk: Optional[str] = None¶
Qianfan application secretkey
async aembed_documents(texts: List[str]) → List[List[float]][source]¶
Asynchronous Embed search docs.
Parameters
texts (List[str]) – 
Return type
List[List[float]]
Parameters
texts (List[str]) – 
Return type
List[List[float]]
async aembed_query(text: str) → List[float][source]¶
Asynchronous Embed query text.
Parameters
text (str) – 
Return type
List[float]
classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) → Model¶
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
Behaves as if Config.extra = ‘allow’ was set since it adds all passed values
Parameters
_fields_set (Optional[SetStr]) – 
values (Any) – 
Return type
Model
copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) → Model¶
Duplicate a model, optionally choose which fields to include, exclude and change.
Parameters
include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – fields to include in new model
exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – fields to exclude from new model, as with values this takes precedence over include
update (Optional[DictStrAny]) – values to change/add in the new model. Note: the data is not validated before creating
the new model: you should trust this data
deep (bool) – set to True to make a deep copy of the model
self (Model) – 
Returns
new model instance
Return type
Model
self (Model) – 
Returns
new model instance
Return type
Model
dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) → DictStrAny¶
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
Parameters
include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – 
exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – 
by_alias (bool) – 
skip_defaults (Optional[bool]) – 
exclude_unset (bool) – 
exclude_defaults (bool) – 
exclude_none (bool) – 
Return type
DictStrAny
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) – 
Return type
List[float]
classmethod from_orm(obj: Any) → Model¶
Parameters
obj (Any) – 
Return type
Model
Parameters
obj (Any) – 
Return type
Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: Protocol = None, allow_pickle: bool = False) → Model¶
Parameters
b (Union[str, bytes]) – 
content_type (unicode) – 
encoding (unicode) – 
proto (Protocol) – 
allow_pickle (bool) – 
Return type
Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') → DictStrAny¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
Return type
DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) → unicode¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
dumps_kwargs (Any) – 
Return type
unicode
classmethod update_forward_refs(**localns: Any) → None¶
Try to update ForwardRefs on fields based on this Model, globalns and localns.
Parameters
localns (Any) – 
Return type
None
classmethod validate(value: Any) → Model¶
Parameters
value (Any) – 
Return type
Model
Examples using QianfanEmbeddingsEndpoint¶
Baidu
Baidu Cloud ElasticSearch VectorSearch
Baidu Qianfan
ERNIE
langchain_core.embeddings.fake.FakeEmbeddings¶
class langchain_core.embeddings.fake.FakeEmbeddings[source]¶
Bases: Embeddings, BaseModel
Fake embedding model.
Create a new model by parsing and validating input data from keyword arguments.
Raises ValidationError if the input data cannot be parsed to form a valid model.
param size: int [Required]¶
The size of the embedding vector.
async aembed_documents(texts: List[str]) → List[List[float]]¶
Asynchronous Embed search docs.
Parameters
texts (List[str]) – 
Return type
List[List[float]]
async aembed_query(text: str) → List[float]¶
Asynchronous Embed query text.
Parameters
text (str) – 
Return type
List[float]
classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) → Model¶
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
Behaves as if Config.extra = ‘allow’ was set since it adds all passed values
Parameters
_fields_set (Optional[SetStr]) – 
values (Any) – 
Return type
Model
copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) → Model¶
Duplicate a model, optionally choose which fields to include, exclude and change.
Parameters
include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – fields to include in new model
Parameters
obj (Any) – 
Return type
Model
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: Protocol = None, allow_pickle: bool = False) → Model¶
Parameters
b (Union[str, bytes]) – 
content_type (unicode) – 
encoding (unicode) – 
proto (Protocol) – 
allow_pickle (bool) – 
Return type
Model
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') → DictStrAny¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
Return type
DictStrAny
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) → unicode¶
Parameters
by_alias (bool) – 
ref_template (unicode) – 
dumps_kwargs (Any) – 
Return type
unicode
classmethod update_forward_refs(**localns: Any) → None¶
Try to update ForwardRefs on fields based on this Model, globalns and localns.
Parameters
localns (Any) – 
Return type
None
classmethod validate(value: Any) → Model¶
Parameters
value (Any) – 
Return type
Model
Examples using FakeEmbeddings¶
Baidu VectorDB
DocArray
Fake Embeddings
Google Memorystore for Redis
PGVecto.rs
Relyt
Tair
Tencent Cloud VectorDB
Vectara
Vectara