Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A Geração Aumentada de Recuperação (RAG) é um padrão que funciona com Modelos de Linguagem Grande (LLM) pré-treinados e seus próprios dados para gerar respostas. No Azure Machine Learning, agora você pode implementar o RAG em um prompt flow.
Neste artigo, você aprenderá a fazer a transição de fluxos de RAG do workspace de nuvem do Azure Machine Learning para um dispositivo local e trabalhar com eles usando a extensão de prompt flow no Visual Studio Code.
Importante
No momento, o RAG está em versão preliminar pública. Essa versão prévia é oferecida sem um SLA e não é recomendada para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.
Pré-requisitos
Python instalado localmente
- O SDK de prompt flow e os pacotes de ferramentas de prompt flow instalados por execução
pip install promptflow promptflow-tools
- A ferramenta promptflow-vectordb instalada por execução
pip install promptflow-vectordb
- O SDK de prompt flow e os pacotes de ferramentas de prompt flow instalados por execução
Visual Studio Code com as extensões Python e Prompt Flow instaladas.
Um recurso de conta do OpenAI do Azure que tem implantações de modelo para chat e text-embedding-ada
Um índice de vetor criado no estúdio do Azure Machine Learning para o prompt flow de exemplo a ser usado
Criar o prompt flow
Este tutorial usa o prompt flow RAG P e R Sobre Seus Dados de amostra, que contém um nó de pesquisa que usa a ferramenta de pesquisa de índice vetor para pesquisar perguntas dos documentos indexados armazenados no blob de armazenamento do workspace.
Na guia Conexões da página dePrompt Flow do Estúdio do Azure Machine Learning, configure uma conexão com seu recurso do OpenAI do Azure se você ainda não tiver uma. Se você usar um índice da Pesquisa de IA do Azure como fonte de dados para o índice de vetor, também deverá ter uma conexão da Pesquisa de IA do Azure.
Na página de Prompt flow do Estúdio do Azure Machine Learning, selecione Criar.
Na tela Criar um novo fluxo, selecione Clonar no bloco P e R Sobre os Seus Dados para clonar o prompt flow de amostra.
O fluxo clonado é aberto na interface de criação.
Na etapa de pesquisa do fluxo clonado, preencha a entrada mlindex_content com suas informações de índice de vetor.
Preencha a etapa answer_the_question_with_context com suas informações de Conexão e Implantação para a API de chat.
Verifique se o fluxo de exemplo é executado corretamente e salve-o.
Selecione o ícone Baixar no canto superior direito da seção Arquivos. Os arquivos de fluxo são baixados como um pacote ZIP para seu computador local.
Descompacte o pacote em uma pasta.
Trabalhar com o fluxo no VS Code
O restante deste artigo detalha como usar a extensão do prompt flow do VS Code para editar o fluxo. Se você não quiser usar a extensão Prompt Flow, poderá abrir a pasta descompactada em qualquer ambiente de desenvolvimento integrado (IDE) e usar a CLI para editar os arquivos. Para obter mais informações, consulte oInício rápido do Prompt Flow.
No VS Code com a extensão Prompt Flow ativada, abra uma pasta de prompt flow descompactada.
Selecione o ícone de Prompt Flow no menu esquerdo para abrir o painel de gerenciamento de prompt flow.
Selecione Instalar Dependências no painel de gerenciamento e verifique se o interpretador do Python correto está selecionado e se os pacotes promptflow e promptflow-tools estão instalados.
Criar as conexões
Para usar a ferramenta de pesquisa de índice vetorial localmente, você precisa criar a mesma conexão com o serviço de índice vetorial que fez na nuvem.
Expanda a seção Conexões na parte inferior do painel de gerenciamento do prompt flow e selecione o ícone + ao lado do tipo de conexão AzureOpenAI.
Um arquivo new_AzureOpenAI_connection.yaml é aberto no painel de edição. Edite este arquivo para adicionar a conexão
name
eapi_base
ou ponto de extremidade do OpenAI do Azure. Não insira suas informações deapi_key
ainda.Selecione o link Criar Conexão na parte inferior do arquivo. O aplicativo é executado para criar a conexão. Quando solicitado, insira a chave de API para sua conexão no terminal.
Se você usou um índice da Pesquisa de IA do Azure como fonte de dados para seu índice de vetor, crie também uma nova conexão da Pesquisa de IA do Azure para a ferramenta de pesquisa de índice de vetor local a ser usada. Para obter mais informações, consulte Ferramenta de Pesquisa de Índice para o Azure Machine Learning (Versão Prévia).
Verificar os arquivos
Abra o arquivo flow.dag.yaml e selecione o link Editor Visual na parte superior do arquivo.
Na versão do editor visual de flow.dag.yaml, role até o nó de pesquisa , que consome a ferramenta de pesquisa de índice vetor nesse fluxo. Em mlindex_content, verifique os caminhos e conexões para suas inserções e índice.
Observação
Se seus documentos indexados forem um ativo de dados em seu workspace, o consumo local exigirá a autenticação do Azure. Verifique se você está conectado ao locatário correto do Azure e conectado ao workspace do Azure Machine Learning.
Selecione o ícone Editar na caixa de entrada consultas, que abre o arquivo RAW flow.dag.yaml para a definição do nó
lookup
.Verifique se o valor da seção
tool
nesse nó está definido comopromptflow_vectordb.tool.vector_index_lookup.VectorIndexLookup.search
, que é a versão local da ferramenta de pesquisa de índice vetor.Observação
Se você tiver problemas com a ferramenta local
promptflow_vectordb
, consulte o Erro Ferramenta de Pacote Não Encontrada e Migrar de ferramentas herdadas para a ferramenta Pesquisa de Índice para obter solução de problemas.Role até o nó generate_prompt_context e, no arquivo RAW flow.dag.yaml, selecione o link Abrir arquivo de código.
No arquivo de código Python, verifique se o nome do pacote da ferramenta de vetor é
promptflow_vectordb
.Role até o nó answer_the_question_with_context e verifique se ele usa a conexão local que você criou. Verifique o deployment_name, que é o modelo que você usa aqui para a inserção.
Testar e executar o fluxo
Role até a parte superior do fluxo e preencha o valor Entradas com uma única pergunta para esta execução de teste, como Como usar o SDK V2?, e selecione o ícone Executar para executar o fluxo.
Para obter mais informações sobre a execução e a avaliação em lote, consulte Enviar a execução de fluxo para o workspace do Azure Machine Learning.
Conteúdo relacionado
- Introdução ao prompt flow
- Criar um índice vetorial em um prompt flow do Azure Machine Learning (versão prévia)
- Use a ferramenta Pesquisa de Índice do Azure AI Foundry
- Integrar o prompt flow com aplicativo DevOps baseado em LLM