创建自定义嵌入函数
您可以通过实现 EmbeddedFunction 协议来创建自定义嵌入函数。该功能包括以下内容:
-
执行 call 方法,该方法能够接受
Documents (str or List[str])和返回Embeddings (List[List[float]])。 -
选择性的实现一个维度属性以返回向量维度。
前提条件
创建自定义嵌入函数时,请确保以下内容:
-
实现
__call__方法:- 每个向量必须具有相同的维度。
- 传入:单个或者多个 documents 的类型为:str 或者 List[str]。
- 返回:嵌入向量的字段类型为:
List[List[float]]。
-
(推荐)实现 dimension 属性:
- 返回:此函数生成的向量类型为
int。 - 创建 collections 有助于验证唯一性。
- 返回:此函数生成的向量类型为
-
处理特殊情况
- 单个字符串输入应转为列表。
- 空输入应返回空列表。
- 输出中的所有向量必须具有相同的维度。