Jina AI
Jina AI 提供多种 Embedding 模型。seekdb 提供 JinaEmbeddingFunction(基于 LiteLLM),用于在写入 documents 或使用 query_texts 查询时,自动生成向量并完成相似性检索。
提示
使用 Jina AI 服务需要遵循 Jina AI 的收费规则,可能产生相应费用。请在继续前,访问其官网或查阅相关文档,确认并接受其收费标准。如不同意,请勿继续操作。
依赖与鉴权
JinaEmbeddingFunction 基于 LiteLLM 调用 Jina AI 的 Embedding 接口。通常需要:
- Jina AI API Key(具备调用 Embedding 模型的权限)
- Python 环境安装
pyseekdb与litellm
鉴权通常通过环境变量提供(默认读取 JINA_API_KEY);如果您使用了不同的环境变量名,可通过 api_key_env 指定。
示例:创建 Jina Embedding Function
-
基础用法
from pyseekdb.utils.embedding_functions import JinaEmbeddingFunction
ef = JinaEmbeddingFunction(model_name="jina-embeddings-v2-base-en") -
多语言模型
from pyseekdb.utils.embedding_functions import JinaEmbeddingFunction
ef = JinaEmbeddingFunction(model_name="jina-embeddings-v2-base-multilingual") -
指定 API Key 环境变量名(api_key_env)
当您的 API Key 不在默认的
JINA_API_KEY环境变量中时,可以通过api_key_env指定变量名:from pyseekdb.utils.embedding_functions import JinaEmbeddingFunction
ef = JinaEmbeddingFunction(
model_name="jina-embeddings-v2-base-en",
api_key_env="JINA_API_KEY",
)
参数说明:
model_name:Jina AI Embedding 模型名称,例如jina-embeddings-v2-base-en、jina-embeddings-v2-base-multilingual。api_key_env:API Key 所在的环境变量名,默认是JINA_API_KEY。