extensão azure_ai no Base de Dados do Azure para PostgreSQL Flexible Server

A extensão azure_ai em Base de Dados do Azure para PostgreSQL permite a utilização dentro da base de dados de grandes modelos de linguagem (LLMs) para construir aplicações de IA generativa. Permite que a base de dados ligue para Azure OpenAI nos modelos Microsoft Foundry, Serviço Azure OpenAI, Serviços Cognitivos do Azure (Azure Language in Foundry Tools) e Serviços de Aprendizagem Máquina do Azure, simplificando o desenvolvimento através da integração sem descontinuidades com estes serviços.

Habilite a extensão azure_ai

Antes de poderes usar a extensão azure_ai, precisas de a permitir e depois instalá-la na tua instância Base de Dados do Azure para PostgreSQL. Siga os passos abaixo para começar.

Permitir a extensão

Adicione azure_ai à lista de permissões do seu servidor Base de Dados do Azure para PostgreSQL flexível, conforme descrito em como usar extensões PostgreSQL. Verifica se foi adicionado corretamente ao executar a SHOW azure.extensions; consulta.

Instalar a extensão

Ligue-se à sua base de dados e execute o CREATE EXTENSION comando:

CREATE EXTENSION IF NOT EXISTS azure_ai;

Repita este comando para cada base de dados onde a extensão for necessária.

Quando instala azure_ai, são criados os seguintes esquemas:

  • azure_ai: esquema principal para configuração e funções relacionadas
  • azure_openai: funções e tipos para Azure OpenAI nos Modelos Foundry e nos modelos OpenAI na Microsoft Foundry
  • azure_cognitive: funções e tipos para os Serviços Cognitivos do Azure (Azure Language in Foundry Tools)
  • azure_ml: funções e tipos para os serviços Azure Machine Learning

Sugestão

Talvez também queira ativar a opção de "Ativar e usar o pgvector em Base de Dados do Azure para PostgreSQL", pois é frequentemente utilizado com .

Observação

Para remover a extensão da base de dados atual, execute DROP EXTENSION azure_ai;.

Configurar a extensão azure_ai

Para configurar a extensão, forneça endpoints e detalhes de autenticação (chave API ou Identidade Gerida) para os serviços de IA + machine learning do Azure que pretende usar. Use a azure_ai.set_setting função de configuração com várias chaves de configuração para armazenar estes valores.

Permissions

A extensão define um papel azure_ai_settings_manager que concede permissão para ler e escrever definições de configuração utilizando as funções azure_ai.set_getting e azure_ai.set_setting. Apenas superutilizadores e membros desta função podem chamar estas funções. No Base de Dados do Azure para PostgreSQL Servidor Flexível, a função azure_pg_admin concede esta função por defeito.

Funções de configuração

azure_ai_set_setting

Define a configuração IA + aprendizagem automática.

Utilização:

-- Syntax
azure_ai.set_setting(key TEXT, value TEXT)

-- Usage example: Set the Endpoint and an API Key for Azure OpenAI
select azure_ai.set_setting('azure_openai.endpoint','https://<endpoint>.openai.azure.com');
select azure_ai.set_setting('azure_openai.subscription_key', '<API Key>');

Lista de chaves e valores de configuração suportados:

key value
azure_openai.endpoint Endpoint OpenAI suportado (por exemplo, https://example.openai.azure.com).
azure_openai.auth_type subscription-key ou managed-identity
azure_openai.subscription_key Uma chave de subscrição para um recurso OpenAI.
azure_cognitive.endpoint Endpoint de Serviços Cognitivos Suportados (por exemplo, https://example.cognitiveservices.azure.com)
azure_cognitive.auth_type subscription-key ou managed-identity
azure_cognitive.subscription_key Uma chave de subscrição para um recurso dos Serviços Cognitivos.
azure_ml.scoring_endpoint URI de endpoint online suportado para Machine Learning.
azure_ml.auth_type subscription-key ou managed-identity
azure_ml.endpoint_key Uma chave de endpoint para um endpoint Azure ML.

azure_ai.get_setting

Obtém valores de configuração atuais para um dado key (ver chaves suportadas na lista acima). Retornos TEXT que representam o valor atual da definição selecionada.

Utilização:

-- Syntax
azure_ai.get_setting(key TEXT)

-- Usage example: Get the Endpoint and API Key for Azure OpenAI
select azure_ai.get_setting('azure_openai.endpoint');
select azure_ai.get_setting('azure_openai.subscription_key');

azure_ai.version

Retorna TEXT representando a versão atual da extensão azure_ai.

Utilização:

SELECT azure_ai.version()

Ativar autenticação de identidade gerida

A extensão azure_ai para Base de Dados do Azure para PostgreSQL suporta identidade gerida atribuída ao sistema (SAMI), que oferece benefícios de segurança reforçados. Ao usar o Microsoft Entra ID, pode autenticar-se sem chaves de acesso, reduzindo o risco de acesso não autorizado e simplificando a gestão das credenciais.

Para permitir a autenticação de identidade gerida, consulte este guia prático.

Capacidades da azure_ai extensão

Funções de IA

A extensão azure_ai permite chamadas dentro da base de dados para modelos alojados no Foundry e Azure OpenAI através das seguintes funções AI (Preview):

Funcionalidades adicionais

A extensão também suporta invocação

Atualizar a extensão de IA + aprendizagem automática

Para verificar a versão instalada e as atualizações disponíveis, execute:

SELECT * FROM pg_available_extensions
WHERE name = 'azure_ai'

Para atualizar a extensão para a versão mais recente suportada, execute:

ALTER EXTENSION azure_ai UPDATE;