Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se apenas a:Portal Foundry (clássico). Este artigo não está disponível para o novo portal da Foundry.
Saiba mais sobre o novo portal.
Nota
Os links neste artigo podem abrir conteúdo na nova documentação do Microsoft Foundry em vez da documentação do Foundry (clássico) que está a ver agora.
Neste artigo, implementa uma aplicação web de chat empresarial que utiliza os seus dados com um grande modelo de linguagem no portal Microsoft Foundry.
A sua fonte de dados fundamenta o modelo com dados específicos. Grounding significa que o modelo usa os seus dados para compreender o contexto da sua pergunta. Não se altera o próprio modelo implementado. Os seus dados mantêm-se separados e seguros na sua fonte de dados original.
Os passos deste tutorial são:
- Configurar recursos.
- Adicione os seus dados.
- Testa o modelo com os teus dados.
- Implemente a sua aplicação web.
Pré-requisitos
Importante
Este artigo fornece suporte legado para projetos baseados em hubs. Não funciona para projetos da Foundry. Veja : Como sei que tipo de projeto tenho?
Nota de compatibilidade SDK: Exemplos de código requerem uma versão específica do Microsoft Foundry SDK. Se encontrar problemas de compatibilidade, considere migrar de um projeto baseado em hub para um projeto Foundry.
- Uma conta no Azure com uma subscrição ativa. Se não tiveres uma, cria uma conta Azure free, que inclui uma subscrição de teste gratuita.
- Se não tiveres um, cria um projeto baseado em hubs.
Um modelo de chat Azure OpenAI implementado. Termine o início rápido do ambiente de testes do Foundry para que possa criar este recurso, caso não o tenha.
Uma ligação ao serviço de pesquisa para indexar os dados de exemplo do produto. Se não tiver, siga os passos para criar e ligar um serviço de pesquisa.
Uma cópia local dos dados do produto. O repositório Azure-Samples/rag-data-openai-python-promptflow no GitHub contém informações de produtos de retalho de exemplo para este cenário tutorial. O
product_info_11.mdficheiro contém informações sobre o produto dos sapatos de caminhada TrailWalker para este exemplo tutorial. Descarregue os dados de exemplo do produto de retalho Contoso Trek num ficheiro ZIP para a sua máquina local.Um Microsoft.Web fornecedor de recursos registado na subscrição selecionada para que possa realizar uma implementação numa aplicação web. Para mais informações sobre o registo de um fornecedor de recursos, veja Registar fornecedor de recursos.
Permissões necessárias para adicionar atribuições de funções na sua subscrição do Azure. Apenas o Proprietário dos recursos específicos do Azure pode conceder permissões por atribuição de funções.
Foundry portal e Azure portal
Neste tutorial, realizas algumas tarefas no portal Foundry e outras no portal Azure.
O portal Foundry é um ambiente web para construir, treinar e implementar modelos de IA. Como programador, é onde constróis e implementas a tua aplicação web de chat.
O portal Azure permite a um administrador gerir e monitorizar os recursos do Azure. Como administrador, usas o portal para configurar as definições para diferentes serviços do Azure necessários para o acesso a partir da aplicação web.
Configurar recursos
Importante
Deve ter as permissões necessárias para adicionar atribuições de funções na sua subscrição do Azure. Conceder permissões por atribuição de funções só é permitido pelo Proprietário dos recursos específicos do Azure. Pode precisar de pedir ao proprietário da subscrição do Azure (que pode ser o seu administrador de TI) para preencher esta secção por si.
Para que os recursos funcionem corretamente numa aplicação web, configure as permissões corretas no portal do Azure.
Primeiro, identifique os recursos que precisa de configurar no portal da Foundry.
Abra o portal Foundry, depois selecione o projeto baseado no hub que usou para implementar o modelo de chat Azure OpenAI.
Selecione centro de gestão no painel esquerdo.
Selecione Recursos Ligados no seu projeto.
Identifique os três recursos que precisa de configurar: o Azure OpenAI, o Pesquisa de IA do Azure e o Azure Blob Storage que corresponde ao seu workspaceblobstore.
Dica
Se não vir Tipo na tabela, selecione Colunas no canto superior direito e adicione ou reordene as Colunas Selecionadas. Se tiveres vários recursos Azure OpenAI, usa aquele que contém o teu modelo de chat implementado.
Procure cada um destes nomes no portal Azure. Abre cada um num novo separador do navegador para poderes alternar entre eles.
Quando terminares, tens três novos separadores do navegador abertos: Serviço de Pesquisa, Foundry e Blobstore Container. Mantenha os três separadores abertos para que possa alternar entre eles e configurar os recursos.
Ativar identidade gerida
No separador do navegador do recurso Search service no portal Azure, ative a identidade gerida:
- No painel esquerdo, em Definições, selecione Identidade.
- Mudar o estado para ligado.
- Selecione Guardar.
No separador do navegador para o recurso Foundry no portal Azure, ativa a identidade gerida:
- No painel esquerdo, em Gestão de Recursos, selecione Identidade.
- Mudar o estado para ligado.
- Selecione Guardar.
Definir controlo de acesso para pesquisa
No separador do navegador do recurso Search no portal Azure, defina a política de acesso à API:
- No painel esquerdo, em Definições, selecione Keys.
- Em controlo de acesso API, selecione Ambos.
- Quando solicitado, selecione Sim para confirmar.
Atribuir papéis
Repita este padrão para cada recurso nos passos abaixo.
O padrão geral para atribuir controlo de acesso baseado em funções (RBAC) para qualquer recurso é:
- Navegue até ao portal do Azure para o recurso indicado.
- Na página da esquerda do portal Azure, selecione controlo de acesso (IAM).
- Selecionar + Adicionar>Adicionar atribuição de função.
- Procura a função que precisas de atribuir e seleciona-a. Depois seleciona Próximo.
- Ao atribuir um papel a si próprio:
- Selecione Utilizador, grupo ou principal de serviço.
- Selecionar membros.
- Procura o teu nome e seleciona-o.
- Ao atribuir um papel a outro recurso:
- Selecione Identidade Gerida.
- Selecionar membros.
- Usa o menu suspenso para encontrar o tipo de recurso que queres atribuir. Por exemplo, Foundry Tools ou serviço de pesquisa.
- Selecione o recurso da lista que aparece. Pode haver apenas uma, mas ainda tens de a selecionar.
- Continue pelo assistente e selecione Rever + atribuir para adicionar a atribuição de funções.
Use estes passos para atribuir funções aos recursos que definiu neste tutorial:
Atribua estes papéis no separador do navegador para o serviço Search no portal Azure:
- Leitor de Dados do Índice de Pesquisa para a identidade gerida do Foundry
- Contribuidor do Serviço de Pesquisa para a identidade gerida da Foundry
- Contribuidor para si mesmo (para encontrar Contribuidor, altere para o separador Funções de Administrador Privilegiado no topo. Todos os outros papéis estão no separador Funções de Função.)
Atribua estas funções na guia do navegador para Foundry no Portal do Azure:
- Colaborador dos Serviços Cognitivos OpenAI para a identidade gerida do serviço de pesquisa
- Contribui para ti próprio.
Atribua estas funções no separador do browser para Armazenamento de Blobs do Azure no portal do Azure:
- Contribuidor de Dados de Blob de Armazenamento para a identidade gerida da Foundry
- Leitor de Dados de Blob de Armazenamento para a identidade gerida do serviço de pesquisa
- Contribui para ti próprio
Terminaste de configurar os recursos. Podes fechar agora os separadores do portal do Azure, se quiseres.
Adicione os seus dados e tente novamente o modelo de chat
No guia rápido do playground do Foundry (que é um pré-requisito para este tutorial), verás como o teu modelo responde sem os teus dados. Adicione os seus dados ao modelo para que possa responder a perguntas sobre os seus produtos.
Para completar esta secção, precisa de uma cópia local dos dados do produto. O repositório Azure-Samples/rag-data-openai-python-promptflow no GitHub contém informações de produtos de retalho relevantes para este cenário tutorial. Especificamente, o product_info_11.md ficheiro contém informações do produto sobre os sapatos de caminhada TrailWalker que são relevantes para este exemplo tutorial.
Descarregue os dados de exemplo do produto de retalho Contoso Trek num ficheiro ZIP para a sua máquina local.
Siga estes passos para adicionar os seus dados no chat playground para ajudar o assistente a responder a perguntas sobre os seus produtos. Não estás a mudar o modelo implementado em si. Os seus dados são armazenados separadamente e de forma segura na sua subscrição do Azure.
Vai ao teu projeto em Microsoft Foundry.
Selecione Playgrounds no painel esquerdo.
Selecionar Experimentar o parque de conversas.
Selecione o seu modelo de chat implementado no menu suspenso Implementação.
No lado esquerdo do parque de conversas, selecione Adicionar os seus dados>+ Adicionar uma nova fonte de dados.
No menu suspenso da fonte de dados , selecione Carregar ficheiros.
Selecione Carregar>Carregar ficheiros para navegar pelos seus ficheiros locais.
Seleciona os ficheiros que queres carregar. Selecione os ficheiros de informação do produto que descarregou ou criou anteriormente. Adiciona todos os ficheiros agora. Não vais conseguir adicionar mais ficheiros mais tarde na mesma sessão do playground.
Selecione Upload para carregar o ficheiro na sua conta de armazenamento Azure Blob. Depois seleciona Próximo.
Selecione o seu serviço Pesquisa de IA do Azure.
Para o nome do índice vetorial, introduza a informação do produto e selecione Próximo.
Na página de definições de Pesquisa , em Definições de Vetor, desmarque a opção Adicionar pesquisa vetorial a esta caixa de seleção de recursos de pesquisa . Esta configuração ajuda a determinar como o modelo responde a pedidos. Depois seleciona Próximo.
Nota
Se adicionar pesquisa vetorial, mais opções estarão disponíveis aqui por um custo adicional.
Revise as suas definições e selecione Criar índice vetorial.
No parque infantil, pode ver que a sua ingestão de dados está em curso. Este processo pode demorar vários minutos. Antes de prosseguir, espere até ver a fonte dos dados e o nome do índice em vez do estado.
Agora pode interagir com o modelo fazendo a mesma pergunta de antes ("Quanto custam os sapatos de caminhada TrailWalker"), e desta vez utiliza dados disponíveis para construir a resposta. Pode expandir o botão de referências para ver os dados que foram usados.
Implemente a sua aplicação web
Quando estiver satisfeito com a experiência no portal Foundry, implemente o modelo como uma aplicação web autónoma.
Encontre o seu grupo de recursos no portal do Azure
Neste tutorial, implemente a sua aplicação web no mesmo grupo de recursos do seu hub Foundry. Vais configurar a autenticação da aplicação web no portal do Azure.
Siga estes passos para aceder ao seu grupo de recursos no portal Azure:
Aceda ao seu projeto em Foundry. Selecione centro de gestão no painel esquerdo.
No cabeçalho Project, selecione Visão Geral.
Selecione o nome do grupo de recursos para abrir o grupo de recursos no portal do Azure. Neste exemplo, o grupo de recursos é chamado
rg-sdg-ai.Agora está no portal Azure, a ver o conteúdo do grupo de recursos onde implementou o hub. Note o nome do grupo de recursos e a localização. Vais usar esta informação na próxima secção.
Mantenha esta página aberta num separador do navegador. Vais voltar a isso mais tarde.
Implementar a aplicação web
Publicar cria um Serviço de Aplicações do Azure na sua subscrição. Pode incorrer em custos dependendo do plano de preços que escolher. Quando terminares a tua aplicação, apaga-a do portal do Azure.
Para implementar a aplicação web:
Importante
Regista-te Microsoft. Web como fornecedor de recursos antes de implementares para uma aplicação web.
Complete os passos da secção anterior para adicionar os seus dados ao playground. Pode implementar uma aplicação web com ou sem os seus próprios dados, mas precisa de um modelo implementado conforme descrito no início rápido do playground Foundry.
Selecionar Implantar > ... como uma aplicação web.
Na página Implementar numa aplicação web, introduza os seguintes detalhes:
- Nome: Um nome único para a sua aplicação web.
- Subscrição: A sua subscrição Azure. Se não vir nenhuma subscrição disponível, primeiro registe Microsoft.Web como fornecedor de recursos.
- Grupo de recursos: Selecione um grupo de recursos onde implantar a aplicação web. Usa o mesmo grupo de recursos do hub.
- Localização: Selecione um local onde implantar a aplicação web. Usa o mesmo local do hub.
- Plano de preços: Escolha um plano de preços para a aplicação web.
- Ativar o histórico de chat na aplicação web: Para o tutorial, a caixa de histórico de chat não está selecionada. Se ativar a funcionalidade, os seus utilizadores têm acesso às suas perguntas e respostas anteriores. Para mais informações, consulte os comentários no histórico de chat.
Selecionar Implementar.
Espera que a aplicação seja implementada. Este processo pode demorar alguns minutos.
Quando está pronto, o botão Lançar está ativado na barra de ferramentas. Ainda não abra a aplicação e não feche a página do chat playground — voltará a ela mais tarde.
Configurar autenticação da aplicação web
Por defeito, só tu podes aceder à aplicação web. Neste tutorial, adiciona autenticação para restringir o acesso a membros do teu inquilino Azure. Os utilizadores iniciam sessão com a sua conta Microsoft Entra para aceder à sua aplicação. Pode seguir um processo semelhante para adicionar outro fornecedor de identidade, se preferir. A aplicação só usa a informação de login do utilizador para verificar se é membro do seu inquilino.
Volte ao separador do navegador com o portal Azure, ou abra o portal Azure num novo separador do navegador. Veja o conteúdo do grupo de recursos onde implementou a aplicação web. Pode ser necessário atualizar a vista para ver a aplicação web.
Selecione o recurso do Serviço de Aplicações da lista de recursos no grupo de recursos.
No menu esquerdo dobrável, em Definições, selecione Autenticação.
Se vir Microsoft listado como fornecedor de Identidade nesta página, não é necessário mais nada. Podes saltar o passo seguinte.
Adicione um fornecedor de identidade com as seguintes definições:
- Identity provider: Selecione Microsoft como fornecedor de identidade. As definições padrão nesta página restringem a aplicação apenas ao seu inquilino, por isso não precisa de alterar mais nada aqui.
- Tipo de inquilino: Força de trabalho
- Registo de app: Criar um novo registo de app
- Nome: O nome do seu serviço de aplicação web
- Tipos de contas suportadas: Inquilino atual - Inquilino único
- Restringir acesso: Requer autenticação
- Pedidos não autenticados: HTTP 302 Encontrado redirecionamento - recomendado para websites
Usar a aplicação web
Estás quase lá. Agora podes testar a aplicação web.
Se mudaste as definições, espera cerca de 10 minutos para que as definições de autenticação entrem em vigor.
Volte ao separador do navegador com a página da área de testes de chat no portal Foundry.
Selecione Iniciar para abrir a aplicação web implementada. Se for solicitado, aceite o pedido de permissões.
Se não vir Lançar no playground, selecione Aplicações Web no painel esquerdo e depois selecione a sua aplicação na lista para a abrir.
Se as definições de autenticação ainda não estiverem ativas, fecha o separador do navegador da tua aplicação web e volta ao chat playground no portal Foundry. Espere mais um pouco e depois tente novamente.
Na sua aplicação web, faça a mesma pergunta de antes ("Quanto custam os ténis de caminhada TrailWalker"). Desta vez, a aplicação utiliza informações dos seus dados para construir a resposta. Expanda o botão de referência para ver os dados utilizados.
Compreender o histórico das conversas
Com a funcionalidade de histórico de chat, os seus utilizadores podem ver as suas dúvidas e respostas anteriores.
Ativa o histórico de chat quando implementares a aplicação web. Selecione a caixa de seleção Ativar histórico de chat na aplicação web.
Importante
Ativar o histórico de chat cria uma instância do Cosmos DB no seu grupo de recursos e incorre em custos adicionais pelo armazenamento utilizado. Eliminar a sua aplicação web não apaga automaticamente a sua instância da base de dados Cosmos. Para eliminar a sua instância do Cosmos DB e todas as conversas armazenadas, vá ao recurso associado no portal do Azure e elimine-o.
Depois de ativar o histórico de conversas, os seus utilizadores podem mostrá-lo ou escondê-lo no canto superior direito da aplicação. Quando o histórico é mostrado, podem renomear ou eliminar conversas. À medida que entram na aplicação, as conversas são ordenadas do mais recente para o mais antigo e nomeadas com base na primeira consulta da conversa.
Se apagares o recurso do Cosmos DB mas mantiveres a opção de histórico de chat ativada no estúdio, os teus utilizadores veem um erro de ligação mas podem continuar a usar a aplicação web sem histórico de chat.
Atualizar a aplicação web
Use o playground para adicionar mais dados ou testar o modelo com diferentes cenários. Quando estiver pronto para atualizar a aplicação web com o novo modelo, selecione Implementar > ... Novamente como aplicação web . Selecione Atualizar uma aplicação web existente e escolha a aplicação web existente da lista. O novo modelo é implementado na aplicação web existente.
Liberar recursos
Para evitar custos desnecessários no Azure, apaga os recursos que criaste neste quickstart se não precisares deles. Gerir recursos no portal Azure.