Descrever a extensão de IA do Azure

Concluído

A extensão azure_ai é uma ferramenta poderosa criada pela equipe do Microsoft Postgres que fornece integração perfeita entre sua instância de servidor flexível do Banco de Dados do Azure para PostgreSQL e vários Serviços de IA do Azure. Essa integração simplifica o processo de desenvolvimento e permite que você incorpore recursos de IA em seus aplicativos sem esforço.

Você pode acessar os Serviços de IA do Azure, como processamento de linguagem natural, análise de texto e modelos de linguagem de IA generativa a partir de suas consultas SQL usando uma chamada de função simples. Essa extensão permite que você use o poder da IA do Azure e do Machine Learning para adicionar análises e insights avançados aos seus aplicativos sem sair do banco de dados PostgreSQL.

A extensão facilita a integração do Azure OpenAI, dos Serviços de IA do Azure e do Azure Machine Learning em seu banco de dados. No geral, a azure_ai extensão é um divisor de águas para desenvolvedores que procuram adicionar recursos de IA generativa aos seus aplicativos. Seus recursos avançados e integração perfeita com os serviços de IA e Machine Learning do Azure simplificam o processo de desenvolvimento e permitem que você crie aplicativos avançados de IA diretamente em seu banco de dados PostgreSQL.

Qual é a extensão azure_ai?

A azure_ai extensão fornece um conjunto abrangente de ferramentas que podem aprimorar a funcionalidade de um banco de dados PostgreSQL integrando a IA do Azure e os Serviços de Aprendizado de Máquina. Com a azure_ai extensão, você pode incorporar perfeitamente recursos de IA generativa em seu banco de dados. Esta extensão permite-lhe criar novo conteúdo com base nas informações existentes. Essas ferramentas incluem uma coleção de esquemas, funções definidas pelo usuário (UDFs) e tipos compostos que podem ser perfeitamente integrados em qualquer banco de dados PostgreSQL. Quando utiliza o poder dos Serviços de IA do Azure, pode beneficiar de análises avançadas, aprendizagem automática e outras capacidades orientadas por IA para obter informações mais aprofundadas e tomar melhores decisões. Com a azure_ai extensão, PostgreSQL, você pode desbloquear um novo nível de funcionalidade e desempenho. A extensão fornece três integrações de serviço principais:

Serviços de IA do Azure

A extensão permite que seu banco de dados chame vários Serviços de IA do Azure para extrair informações de dados, como resumo de texto, tradução e extração de entidade. Esses serviços simplificam o processo de desenvolvimento, tornando a integração de recursos de IA em seus aplicativos mais acessível.

Azure OpenAI

A integração do Serviço OpenAI do Azure permite que você invoque a API do Azure OpenAI diretamente do seu banco de dados para gerar incorporações vetoriais. Combinado com a vector extensão, você pode armazenar as incorporações geradas diretamente em seu banco de dados PostgreSQL. Essas incorporações permitem recursos poderosos, como pesquisa semântica, recomendações e deteção de anomalias.

Azure Machine Learning

A extensão permite que você se conecte ao Aprendizado de Máquina do Azure para executar inferência. Você pode usar um modelo de aprendizado de máquina treinado para fazer previsões ou gerar saídas com base em dados novos e invisíveis.

Habilitando a extensão azure_ai

Antes de poder usar a azure_ai extensão, ela deve ser permitida e instalada com seu banco de dados:

  1. Configuração da lista de permissões: adicione a extensão à sua lista de permissões executando SHOW azure.extensions;.
  2. Instalação: Conecte-se ao banco de dados de destino e execute o seguinte comando para instalar a extensão:
CREATE EXTENSION IF NOT EXISTS azure_ai;

Criação de esquema

Uma vez instalada, a extensão cria quatro esquemas dentro do banco de dados:

Esquema Description
azure_ai Contém a tabela de configuração e funções para interagir com a extensão.
azure_cognitive Contém funções e tipos compostos relacionados aos Serviços Cognitivos do Azure.
azure_ml Contém funções relacionadas à inferência do Azure Machine Learning.
azure_openai Contém as funções relacionadas ao Azure OpenAI.

Configurar a extensão

A extensão cria a azure_ai.settings tabela, que é crucial para configurar e gerenciar as configurações da extensão. A tabela hospeda com segurança as configurações de ponto de extremidade e chave relacionadas aos Serviços de IA do Azure que você integra ao seu banco de dados. Para configurar a extensão, forneça os pontos de extremidade e chaves de API necessários para autenticação.

  1. Definição de valores:

    • A azure_ai.set_setting() função permite definir vários valores de configuração para os serviços de IA do Azure. Você pode atribuir valores a teclas específicas usando essa função.
    • Por exemplo, você pode definir o ponto de extremidade do Azure OpenAI e fornecer a chave de assinatura correspondente usando os seguintes comandos:
    SELECT azure_ai.set_setting('azure_openai.endpoint', '{endpoint}');
    SELECT azure_ai.set_setting('azure_openai.subscription_key', '{api-key}');
    
  2. Recuperando configurações:

    • A azure_ai.get_setting() função permite recuperar os valores definidos anteriormente usando set_setting()o .
    • Especifique a chave da configuração que você deseja exibir e a função retorna o valor associado.
    • Por exemplo, para verificar as configurações escritas na tabela de configuração, use:
    SELECT azure_ai.get_setting('azure_openai.endpoint');
    SELECT azure_ai.get_setting('azure_openai.subscription_key');
    

Chaves de acesso e segurança

Suas chaves de acesso do Azure AI são semelhantes às senhas de root da sua conta. É crucial tratá-los com cuidado. A melhor abordagem é usar o Azure Key Vault para gerenciar e girar suas chaves.

Os usuários que precisam gerenciar chaves de serviço usadas pela extensão exigem a azure_ai_settings_manager função no banco de dados. As funções que requerem essa função incluem azure_ai.set_setting() e azure_ai.get_setting().

Como funciona a extensão azure_ai?

Aqui está um exemplo rápido de como é fácil usar a azure_ai extensão em um banco de dados do Azure para servidor flexível PostgreSQL:

  • Gerando incorporações: você pode criar incorporações chamando uma função definida pelo usuário (UDF) embutida do SQL. Por exemplo:

    SELECT azure_openai.create_embeddings('text-embedding-ada-002', 'Learn about building intelligent applications with azure_ai extension and vector');
    
  • Serviços linguísticos: Precisa de análise de sentimento? É tão simples quanto uma chamada UDF do SQL:

    SELECT a.* FROM azure_cognitive.analyze_sentiment('The GenAI session was awesome', 'en') a;
    
  • Recursos adicionais: Você pode adicionar colunas vetoriais a tabelas, criar índices HNSW (Hierarchical Navigable Small World) e realizar pesquisas semânticas - tudo alimentado azure_ai pela extensão.