langchain_community.embeddings.localai
.LocalAIEmbeddings¶
- class langchain_community.embeddings.localai.LocalAIEmbeddings[源码]¶
基类:
BaseModel
,Embeddings
LocalAI嵌入模型。
由于LocalAI和OpenAI的开闭API兼容性为1:1,此类使用
openai
Python包的openai.Embedding
作为其客户端。因此,您应该已安装openai
Python包,并且通过将其设置为随机字符串来破坏环境变量OPENAI_API_KEY
。您还需要指定OPENAI_API_BASE
以指向您的LocalAI服务端点。示例
from langchain_community.embeddings import LocalAIEmbeddings openai = LocalAIEmbeddings( openai_api_key="random-string", openai_api_base="http://localhost:8080" )
通过解析和验证关键字参数的输入数据来创建新的模型。
如果输入数据无法解析为有效的模型,则引发
ValidationError
。- 参数 allowed_special: Union[Literal['all'], Set[str]] = {}¶
- 参数 chunk_size: int = 1000¶
每批嵌入中嵌入的最大文本数量。
- 参数 deployment: str = 'text-embedding-ada-002'¶
- 参数 disallowed_special: Union[Literal['all'], Set[str], Sequence[str]] = 'all'¶
- 参数 embedding_ctx_length: int = 8191¶
一次嵌入的最多的标记数量。
- 参数 headers: Any = None¶
- 参数 max_retries: int = 6¶
生成时最大重试次数。
- 参数 model: str = 'text-embedding-ada-002'¶
- 参数 model_kwargs: Dict[str, Any] [可选]¶
用于创建调用但不显式指定的任何对模型有效的参数。
- 参数 openai_api_base: 可选[str] = None¶
- 参数 openai_api_key: 可选[str] = None¶
- 参数 openai_api_version: 可选[str] = None¶
- 参数 openai_organization: 可选[str] = None¶
- 参数openai_proxy: 可选[str] = None¶
- 参数request_timeout: 可选[Union[float,Tuple[float,float]]] = None¶
LocalAI请求的超时时间(秒)。
- 参数show_progress_bar: bool = False¶
在嵌入时是否显示进度条。
- 异步aembed_documents(texts: List[str], chunk_size: 可选[int] = 0) List[List[float]][源代码]¶
调用LocalAI的嵌入端点以异步嵌入搜索文档。
- 参数
texts (列表[字符串]) – 要嵌入的文本列表。
chunk_size (可选[整数]) – 嵌入的块大小。如果为空,将使用类中指定的块大小。
- 返回
嵌入列表,每个文本一个。
- 返回类型
列表[列表[浮点数]]
- async aembed_query(text: str) List[float] [source]¶
异步调用LocalAI的嵌入端点来嵌入查询文本。
- 参数
text (str) – 要嵌入的文本。
- 返回
文本的嵌入。
- 返回类型
列表[浮点数]