Partilhar via


Criar e gerenciar sessões de computação de fluxo de prompt no Azure AI Studio

Importante

Os itens marcados (visualização) neste artigo estão atualmente em visualização pública. Essa visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

Você precisa de uma sessão de computação para executar fluxos de prompt. Use o Azure AI Studio para criar e gerenciar sessões de computação de fluxo de prompt.

Uma sessão de computação de fluxo de prompt tem recursos de computação necessários para a execução do aplicativo, incluindo uma imagem do Docker que contém todos os pacotes de dependência necessários. Além da execução do fluxo, o Azure AI Studio usa a sessão de computação para garantir a precisão e a funcionalidade das ferramentas incorporadas no fluxo quando você faz atualizações no prompt ou no conteúdo do código.

Pré-requisitos

Entre no Azure AI Studio e selecione seu fluxo de prompt.

Criar uma sessão de computação

Ao iniciar uma sessão de computação, você pode usar as configurações padrão ou personalizar as configurações avançadas.

Iniciar uma sessão de computação com as configurações padrão

Por padrão, a sessão de computação usa o ambiente definido na flow.dag.yaml pasta de fluxo. Ele é executado em uma computação sem servidor com um tamanho de máquina virtual (VM) para o qual você tem cota suficiente em seu espaço de trabalho.

  1. Vá para o seu projeto no Azure AI Studio.
  2. No painel esquerdo, selecione Fluxos e, em seguida, selecione o fluxo que deseja executar.
  3. Na barra de ferramentas superior do fluxo de prompt, selecione Iniciar sessão de computação.

Iniciar uma sessão de computação com configurações avançadas

Nas configurações avançadas, você pode selecionar o tipo de computação. Você pode escolher entre computação sem servidor e instância de computação.

  1. Vá para o seu projeto no Azure AI Studio.

  2. No painel esquerdo, selecione Fluxos e, em seguida, selecione o fluxo que deseja executar.

  3. Na barra de ferramentas superior do fluxo de prompt, selecione a seta suspensa no lado direito do botão Iniciar sessão de computação. Selecione Iniciar com configurações avançadas para personalizar a sessão de computação.

    Captura de tela do fluxo de prompt com as configurações padrão para iniciar uma sessão de computação em uma página de fluxo.

    Você pode escolher entre computação sem servidor e instância de computação.

    • Se você escolher computação sem servidor, poderá definir as seguintes configurações:

      • Personalize o tamanho da VM que a sessão de computação usa.
      • Personalize o tempo ocioso, que salva código excluindo a sessão de computação automaticamente se ela não estiver em uso.
      • Defina a identidade gerenciada atribuída pelo usuário. A sessão de computação usa essa identidade para extrair uma imagem base e instalar pacotes. Verifique se a identidade gerenciada atribuída pelo usuário tem permissão de pull do Registro de Contêiner do Azure.

      Se você não definir a identidade atribuída pelo usuário, o fluxo de prompt usará a identidade do usuário por padrão. Saiba mais sobre como criar e atualizar identidades atribuídas pelo usuário para um espaço de trabalho.

      Captura de tela do fluxo de prompt com configurações avançadas usando computação sem servidor para iniciar uma sessão de computação em uma página de fluxo.

    • Se você escolher a instância de computação, só poderá definir o tempo de desligamento ocioso.

      • Como esta é uma instância de computação existente, o tamanho da VM é fixo e não pode ser alterado em um lado da sessão de computação.

      • A identidade usada para esta sessão de computação também é definida na instância de computação, por padrão, ela usa a identidade do usuário. Saiba mais sobre como atribuir identidade à instância de computação

      • O tempo de desligamento ocioso é usado para definir o ciclo de vida da sessão de computação. Se a sessão de computação estiver ociosa pelo tempo definido, ela será excluída automaticamente. Se você tiver o desligamento ocioso habilitado em uma instância de computação, ele será desligado, mas não será excluído.

        Captura de tela do fluxo de prompt com configurações avançadas usando instância de computação para iniciar uma sessão de computação em uma página de fluxo.

  4. Selecione Avançar para especificar as configurações da imagem base. Use a imagem base padrão ou forneça uma imagem base personalizada. Se você escolher uma imagem base personalizada, forneça o URL da imagem e a tag da imagem. Somente imagens em um registro docker público ou no Azure Container Registry (ACR) são suportadas. Se você especificar uma imagem no ACR, certifique-se de que você (ou o usuário atribuído gerenciar identidade) tenha permissão de pull ACR.

  5. Selecione Seguinte para rever as suas definições.

  6. Selecione Aplicar e iniciar sessão de computação para iniciar a sessão de computação.

Gerenciar uma sessão de computação

Para gerenciar uma sessão de computação, selecione a sessão de computação em execução na barra de ferramentas superior da página de fluxo.:

  • Alterar configurações de sessão de computação abre a página de configuração da sessão de computação, onde você pode definir o lado da VM e o tempo ocioso para a sessão de computação.
  • Install packages from requirements.txt Opens requirements.txt in prompt flow UI para que você possa adicionar pacotes.
  • Exibir pacotes instalados mostra os pacotes instalados na sessão de computação. Ele inclui os pacotes cozidos na imagem base e pacotes especificados no requirements.txt arquivo na pasta de fluxo.
  • Redefinir sessão de computação exclui a sessão de computação atual e cria uma nova com o mesmo ambiente. Se você encontrar um conflito de pacote, você pode tentar esta opção.
  • Parar sessão de computação exclui a sessão de computação atual. Se não houver nenhuma sessão de computação ativa em uma computação sem servidor subjacente, o recurso de computação também será excluído. Se a sessão de computação estiver em uma instância de computação, interromper a sessão permitirá que a instância fique ociosa.

Captura de tela de ações para uma sessão de computação em uma página de fluxo.

Você pode personalizar o ambiente que você usa para executar esse fluxo adicionando pacotes no requirements.txt arquivo na pasta de fluxo. Depois de adicionar mais pacotes neste arquivo, escolha uma destas opções:

  • Salve e instale gatilhos pip install -r requirements.txt na pasta de fluxo. O processo pode levar alguns minutos, dependendo dos pacotes que você instala.
  • Salvar apenas salva o requirements.txt arquivo. Você mesmo pode instalar os pacotes mais tarde.

Captura de tela da opção para salvar e instalar pacotes para uma sessão de computação em uma página de fluxo.

Nota

Você pode alterar o local e até mesmo o nome do arquivo do , mas certifique-se de requirements.txtalterá-lo também no flow.dag.yaml arquivo na pasta de fluxo.

Não fixe a versão de e promptflow-tools no requirements.txt, porque eles já estão incluídos na imagem base da sessão de promptflow computação.

Adicionar pacotes em um feed privado no Azure DevOps

Se você quiser usar um feed privado no Azure DevOps, siga estas etapas:

  1. Crie uma identidade gerenciada atribuída pelo usuário e adicione essa identidade na organização do Azure DevOps. Para saber mais, consulte Usar entidades de serviço e identidades gerenciadas.

    Nota

    Se o botão Adicionar usuários não estiver visível, você provavelmente não terá as permissões necessárias para executar essa ação.

  2. Adicione ou atualize identidades atribuídas pelo usuário ao seu projeto.

  3. Adicione {private} ao URL do seu feed privado. Por exemplo, se você quiser instalar test_package a partir de devops do test_feed Azure, adicione -i https://{private}@{test_feed_url_in_azure_devops} :requirements.txt

    -i https://{private}@{test_feed_url_in_azure_devops}
    test_package
    
  4. Especifique a identidade gerenciada atribuída pelo usuário em Iniciar com configurações avançadas , se a sessão de computação não estiver em execução, ou use o botão Editar se a sessão de computação estiver em execução.

    Captura de tela que mostra a alternância para usar uma identidade gerenciada atribuída pelo usuário ao espaço de trabalho.

Alterar a imagem base

Por padrão, usamos a imagem de fluxo de prompt mais recente como a imagem base. Se você quiser usar uma imagem base diferente, você precisa construir sua própria imagem base. A imagem do docker deve ser construída a partir da imagem base do fluxo de prompt, mcr.microsoft.com/azureml/promptflow/promptflow-runtime:<newest_version>. Se possível, use a versão mais recente da imagem base.

  1. Abra o fluxo de prompt.

  2. Na barra de ferramentas superior, selecione Modo de arquivo raw para habilitar a edição no editor de arquivos.

  3. Abra a seção Arquivos e selecione flow.dag.yaml.

    Captura de tela de ações para personalizar uma imagem base para uma sessão de computação em uma página de fluxo.

  4. Especifique sua imagem na environment seção do flow.dag.yaml arquivo. Por exemplo, para usar a imagem <your-custom-image>, adicione o seguinte código:

    environment:
        image: <your-custom-image>
        python_requirements_txt: requirements.txt
    

Atualizar o tempo de execução da instância de computação

Se você criou anteriormente um tempo de execução de instância de computação, alterne-o para uma sessão de computação usando as seguintes etapas:

  • Prepare seu requirements.txt arquivo na pasta de fluxo. Consulte Gerenciar uma sessão de computação para obter mais informações.

  • Se você criou um ambiente personalizado, obtenha a imagem da página de detalhes do ambiente e especifique-a flow.dag.yaml no arquivo na pasta de fluxo. Para saber mais, consulte Alterar a imagem base. Certifique-se de que tem acr pull permissão para a imagem.

  • Você pode continuar a usar a instância de computação existente se quiser gerenciar manualmente o ciclo de vida.