Descrever a extensão de IA do Azure

Concluído

A extensão azure_ai é uma poderosa ferramenta criada pela equipa Microsoft Postgres que proporciona uma integração perfeita entre a sua instância de servidor flexível Azure Database for PostgreSQL e várias ferramentas da Foundry. Essa integração simplifica o processo de desenvolvimento e permite que você incorpore recursos de IA em seus aplicativos sem esforço.

Pode aceder a Ferramentas Foundry, como processamento de linguagem natural, análise de texto e modelos de linguagem de IA generativa, a partir das suas consultas SQL, utilizando uma simples chamada de função. 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, Microsoft Foundry e Azure Machine Learning na sua base 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. Ao utilizar o poder das Foundry Tools, pode beneficiar de análises avançadas, aprendizagem automática e outras capacidades baseadas em IA para obter insights mais profundos 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:

Ferramentas de Fundição

A extensão permite que a sua base de dados aceda a várias Foundry Tools para extrair insights de dados, como resumo de texto, tradução e extração de entidades. 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 Descrição
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.

Configurando 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 aloja de forma segura definições de endpoint e chaves relacionadas com as Foundry Tools que integra na sua base de dados. Para configurar a extensão, forneça os endpoints e chaves de API necessários para autenticação.

  1. Definição de valores:

    • A azure_ai.set_setting() função permite-lhe definir vários valores de configuração para o Foundry Tools. 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-lhe recuperar os valores que definiu anteriormente usando set_setting().
    • 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 utilizadores que precisam gerir chaves de serviço usadas pela extensão precisam da azure_ai_settings_manager função na base 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.