Introdução ao Azure OpenAI com assistentes e chamadas de função em JavaScript

Este artigo mostra-lhe como implementar e executar o guia de início rápido do Assistente sem servidor do Azure OpenAI. Este exemplo implementa uma aplicação de assistentes com JavaScript, assistentes do Serviço OpenAI do Azure com chamadas de função e Funções do Azure.

Descrição geral da arquitetura

Os Assistentes OpenAI do Azure permitem-lhe criar assistentes de IA adaptados às suas necessidades através de instruções personalizadas e aumentadas por ferramentas avançadas, como interpretador de código e funções personalizadas. Neste artigo, fornecemos um passo a passo detalhado sobre como começar a usar a API de assistentes.

Diagrama que mostra a arquitetura do cliente à aplicação de back-end.

Esta aplicação é construída em torno de dois componentes principais:

  • Uma página HTML simples, com ficheiros CSS e JavaScript simples, alojada em Aplicações Web Estáticas do Azure.

  • Uma API sem servidor desenvolvida com Funções do Azure e que utiliza o SDK de JavaScript da OpenAI. A aplicação serverless envia a definição dos assistentes, incluindo a chamada à função, para o ponto final da OpenAI. O endpoint responde com a chamada de função subsequente e os parâmetros necessários para completar essa chamada.

    • A chamada de função do exemplo simula uma chamada de API gerando um valor aleatório de ticker de ações com base no símbolo de ação enviado para a Função do Azure. Essa simulação pode ser substituída por uma API remota em sua solução.

    Diagrama que mostra a integração do Funções do Azure com o Azure OpenAI, em que o Azure OpenAI pode devolver nomes de funções subsequentes que o Funções do Azure deve invocar.

Pré-requisitos

Está disponível um ambiente de contentor de desenvolvimento com todas as dependências necessárias para seguir este artigo. Você pode executar o contêiner de desenvolvimento no GitHub Codespaces (em um navegador) ou localmente usando o Visual Studio Code.

Para usar este artigo, você precisa dos seguintes pré-requisitos:

  1. Uma assinatura do Azure - Crie uma gratuitamente
  2. Permissões da conta do Azure - A sua conta do Azure tem de ter permissões Microsoft.Authorization/roleAssignments/write, como Administrador de Acesso do Utilizador ou Proprietário.
  3. Uma conta GitHub.

Ambiente de desenvolvimento aberto

Use as instruções a seguir para implantar um ambiente de desenvolvimento pré-configurado contendo todas as dependências necessárias para concluir este artigo.

GitHub Codespaces executa um contentor de desenvolvimento gerido pelo GitHub, com o Visual Studio Code para a Web como interface de utilizador. Para o ambiente de desenvolvimento mais simples, use o GitHub Codespaces para que você tenha as ferramentas de desenvolvedor corretas e as dependências pré-instaladas para concluir este artigo.

Importante

Todas as contas do GitHub podem usar Codespaces por até 60 horas gratuitas por mês com duas instâncias principais. Para obter mais informações, consulte armazenamento e horas de núcleo mensais incluídos do GitHub Codespaces.

  1. Inicie o processo para criar um novo Codespace do GitHub no ramo main do repositório GitHub Azure-Samples/azure-openai-assistant-javascript.

  2. Clique com o botão direito do mouse no botão a seguir e selecione Abrir link em novas janelas para ter o ambiente de desenvolvimento e a documentação disponíveis ao mesmo tempo.

    Abrir no GitHub Codespaces

  3. Na página Criar espaço de código , revise as definições de configuração do espaço de código e selecione Criar novo espaço de código

  4. Aguarde que o codespace arranque. Este processo de arranque pode demorar alguns minutos.

  5. Inicie sessão no Azure com o Azure Developer CLI no terminal na parte inferior do ecrã.

    azd auth login
    
  6. Copie o código do terminal e cole-o em um navegador. Siga as instruções para autenticar com sua conta do Azure.

  7. As tarefas restantes neste artigo ocorrem no contexto desse contêiner de desenvolvimento.

Implantar e executar

O repositório de exemplo contém todos os arquivos de código e configuração necessários para implantar um aplicativo de função no Azure. As etapas a seguir orientam você pelo processo de implantação do exemplo no Azure.

Implantar o aplicativo de assistentes no Azure

Importante

Os recursos do Azure criados nesta seção incorrem em custos imediatos, principalmente do recurso Pesquisa de IA do Azure. Esses recursos podem acumular custos mesmo se você interromper o comando antes que ele termine.

  1. Execute o seguinte comando da CLI do Desenvolvedor do Azure para provisionar os recursos do Azure e implantar o código-fonte:

    azd up
    
  2. Quando lhe for pedido para introduzir um nome de ambiente, mantenha-o curto e minúsculo. Por exemplo, myenv. Ele é usado como parte do nome do grupo de recursos.

  3. Quando solicitado, selecione uma assinatura na qual criar os recursos.

  4. Quando lhe for pedido para selecionar uma localização pela primeira vez, selecione uma localização perto de si. Este local é usado para a maioria dos recursos, incluindo hospedagem.

  5. Se for solicitado um local para o modelo OpenAI, selecione um local próximo a você. Se o mesmo local estiver disponível como seu primeiro local, selecione isso.

  6. Aguarde até que o aplicativo seja implantado. Pode levar de 5 a 10 minutos para que a implantação seja concluída.

  7. Depois de implantar o aplicativo com êxito, você verá uma URL exibida no terminal.

  8. Selecione o URL identificado com Deploying service web para abrir a aplicação do assistente num navegador.

Utilizar a aplicação assistente

Use o aplicativo assistente para obter o preço do mercado de ações de MSFT. As etapas a seguir orientam você pelo processo de uso do aplicativo assistente. O assistente pode enviar-lhe as respostas por e-mail. Como o recurso de envio de e-mail não está configurado, modifique o prompt para não usar essa instrução.

  1. No navegador, copie e cole no seguinte prompt:

    Based on the latest financial data and current stock market trends, can you provide a detailed analysis of Microsoft's current state? Please include insights into their recent performance, market position, and future outlook. Additionally, retrieve and include the latest closing price of Microsoft's stock using its ticker symbol (MSFT).
    
  2. Selecione o botão Run. Os seus resultados deverão ser semelhantes à resposta seguinte.

    Captura de ecrã da primeira resposta da aplicação do assistente.

Limpar recursos

Limpar recursos do Azure

Os recursos do Azure criados neste artigo são cobrados na sua assinatura do Azure. Se você não espera precisar desses recursos no futuro, exclua-os para evitar incorrer em mais cobranças.

Execute o seguinte comando da CLI do Desenvolvedor do Azure para excluir os recursos do Azure e remover o código-fonte:

azd down --purge

Limpar espaços de código do GitHub

Eliminar o ambiente do GitHub Codespaces garante que consiga maximizar a quota de horas gratuitas por núcleo a que a sua conta tem direito.

Importante

Para obter mais informações sobre os benefícios da sua conta do GitHub, consulte Codespaces do GitHub: armazenamento incluído por mês e horas de núcleo.

  1. Faça login no painel do GitHub Codespaces.

  2. Encontre os seus Codespaces atualmente em execução provenientes do repositório do GitHub Azure-Samples/azure-openai-assistant-javascript.

    Captura de ecrã de todos os Codespaces em execução, incluindo o respetivo estado e modelos.

  3. Abra o menu de contexto do codespace, ..., e, em seguida, selecione Eliminar.

Obter ajuda

Este repositório de exemplo oferece informações de resolução de problemas.

Se o seu problema não for resolvido, registe o problema no Issues do repositório.