AzureOpenAIEmbedder 类用于通过 Azure OpenAI API 将文本数据嵌入为向量。请在此处 https://ai.azure.com/ 获取您的密钥。
设置
设置您的 API 密钥
export AZURE_EMBEDDER_OPENAI_API_KEY=xxx
export AZURE_EMBEDDER_OPENAI_ENDPOINT=xxx
export AZURE_EMBEDDER_DEPLOYMENT=xxx
运行 PgVector
docker run -d \
-e POSTGRES_DB=ai \
-e POSTGRES_USER=ai \
-e POSTGRES_PASSWORD=ai \
-e PGDATA=/var/lib/postgresql/data/pgdata \
-v pgvolume:/var/lib/postgresql/data \
-p 5532:5432 \
--name pgvector \
agnohq/pgvector:16
用法
cookbook/embedders/azure_embedder.py
from agno.agent import AgentKnowledge
from agno.vectordb.pgvector import PgVector
from agno.embedder.azure_openai import AzureOpenAIEmbedder
# 将句子嵌入数据库
embeddings = AzureOpenAIEmbedder().get_embedding("The quick brown fox jumps over the lazy dog.")
# 打印嵌入及其维度
print(f"Embeddings: {embeddings[:5]}")
print(f"Dimensions: {len(embeddings)}")
# 在知识库中使用 embedder
knowledge_base = AgentKnowledge(
vector_db=PgVector(
db_url="postgresql+psycopg://ai:ai@localhost:5532/ai",
table_name="azure_openai_embeddings",
embedder=AzureOpenAIEmbedder(),
),
num_documents=2,
)
参数
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
model | str | "text-embedding-ada-002" | 用于生成嵌入的模型名称。 |
dimensions | int | 1536 | 模型生成的嵌入的维度。 |
encoding_format | Literal['float', 'base64'] | "float" | 嵌入被编码的格式。选项是“float”或“base64”。 |
user | str | - | 与 API 请求关联的用户。 |
api_key | str | - | 用于身份验证请求的 API 密钥。 |
api_version | str | "2024-02-01" | 用于请求的 API 版本。 |
azure_endpoint | str | - | API 请求的 Azure 端点。 |
azure_deployment | str | - | API 请求的 Azure 部署名称。 |
base_url | str | - | API 端点的基本 URL。 |
azure_ad_token | str | - | 用于身份验证的 Azure Active Directory 令牌。 |
azure_ad_token_provider | Any | - | 用于获取 Azure AD 令牌的提供者。 |
organization | str | - | 与 API 请求关联的组织。 |
request_params | Optional[Dict[str, Any]] | - | 要包含在 API 请求中的其他参数。可选。 |
client_params | Optional[Dict[str, Any]] | - | 用于配置 API 客户端的其他参数。可选。 |
openai_client | Optional[AzureOpenAIClient] | - | 用于进行 API 请求的 AzureOpenAIClient 实例。可选。 |
开发者资源
- 查看食谱