Etapa 2. Implantar a POC para coletar comentários dos participantes
No final desta etapa, você terá implantado o Aplicativo de Revisão de Avaliação do Agente, que permite que os participantes testem e forneçam comentários sobre sua POC. Logs detalhados do uso de participantes e seus comentários fluirão para Tabelas Delta em seu Lakehouse.
Requisitos
- Conclua as etapas em Etapa 1. Clonar repositório de código e criar o recurso de computação
- Dados de Pré-requisitos: reunir requisitos estão disponíveis em seu Lakehouse dentro de um volume do catálogo do Unity.
Consulte o repositório do GitHub para obter o código de exemplo nesta seção.
Aplicativo RAG de prova de conceito
A primeira etapa no desenvolvimento baseado em avaliação é criar uma POC (prova de conceito). Uma POC oferece os seguintes benefícios:
- Fornece uma exibição direcional sobre a viabilidade do seu caso de uso com RAG
- Permite coletar comentários iniciais dos participantes, o que, por sua vez, permite que você crie a primeira versão do seu Conjunto de Avaliações
- Estabelece uma medida de linha de base de qualidade para começar a iterar
O Databricks recomenda a criação de sua POC usando a arquitetura RAG mais simples e os padrões recomendados pelo Databricks de cada parâmetro.
Essa recomendação ocorre porque há centenas de combinações possíveis de parâmetros que você pode ajustar em seu aplicativo RAG. Você pode facilmente passar semanas ajustando-os, mas se você fizer isso antes de avaliar sistematicamente seu RAG, você acaba no que é chamado de um Loop de sina da POC, iterando as configurações, mas sem nenhuma maneira de saber objetivamente se você fez uma melhoria, tudo enquanto seus participantes ficam esperando para revisar de forma impaciente.
Os modelos de POC neste tutorial são projetados com a iteração de qualidade em mente. Eles são parametrizados com base no que a equipe de pesquisa do Databricks mostrou ser importante para ajustar a fim de melhorar a qualidade do RAG. Esses modelos não são “três linhas de código que milagrosamente criam um RAG”, mas são um aplicativo RAG bem estruturado que pode ser ajustado para obter qualidade nas etapas a seguir de um fluxo de trabalho de desenvolvimento baseada em avaliação.
Isso permite que você implante rapidamente uma POC, mas faça a transição rapidamente para a iteração de qualidade sem precisar reescrever seu código.
Veja abaixo a arquitetura técnica do aplicativo de POC:
Observação
Por padrão, a POC usa os modelos de código aberto disponíveis no Serviço de Modelo de base de IA do Mosaic. No entanto, como a POC usa o Serviço de Modelo de IA do Mosaic, que dá suporte a qualquer modelo de base, usar um modelo diferente é fácil, basta configurar esse modelo no Serviço de Modelo e, em seguida, substituir o embedding_endpoint_name
e llm_endpoint_name
no notebook 00_config
.
- Siga APIs de modelo de base de taxa de transferência provisionada para outros modelos de código aberto disponíveis no Databricks Marketplace.
- Siga o notebook Create_OpenAI_External_Model ou os Modelos externos no Serviço de Modelo de IA do Mosaic para modelos hospedados de terceiros com suporte, como OpenAI do Azure, OpenAI, Cohere, Anthropic e Google Gemini.
Etapas para implantar uma POC para coletar comentários
As etapas a seguir mostram como executar e implantar um aplicativo de IA generativa de POC. Depois de implantar, você obtém uma URL para o aplicativo de revisão que pode compartilhar com os participantes para coletar comentários.
Abra a pasta de código POC no A_POC_app com base no tipo de dados:
- Para arquivos PDF, use o pdf_uc_volume.
- Para arquivos do Powerpoint, use o pptx_uc_volume.
- Para arquivos DOCX, use o docx_uc_volume.
- Arquivos JSON com texto, markdown, conteúdo HTML e metadados, use o json_uc_volume
Se os dados não atenderem a um dos requisitos acima, você poderá personalizar a função de análise (
parser_udf
) em02_poc_data_pipeline
nos diretórios POC acima para trabalhar com seus tipos de arquivo.Dentro da pasta POC, você verá os seguintes notebooks:
Observação
Esses notebooks são relativos à POC específica que você escolheu. Por exemplo, se você vir uma referência a
00_config
e tiver escolhidopdf_uc_volume
, poderá encontrar o notebook00_config
relevante em A_POC_app/pdf_uc_volume/00_config.Opcionalmente, examine os parâmetros padrão.
Abra o notebook
00_config
no diretório POC que você escolheu acima para exibir os parâmetros padrão dos aplicativos de POC para o pipeline de dados e a cadeia de RAG.Importante
Os parâmetros padrão recomendados pelo Databricks não se destinam a serem perfeitos, mas são um ponto para começar. As próximas etapas deste fluxo de trabalho orientam você pela iteração nesses parâmetros.
Valide a configuração.
Execute o
01_validate_config
para verificar se sua configuração é válida e todos os recursos estão disponíveis. O arquivorag_chain_config.yaml
aparece em seu diretório, que é usado para implantar o aplicativo.Execute o pipeline de dados.
O pipeline de dados POC é um notebook do Databricks baseado no Apache Spark. Abra o notebook
02_poc_data_pipeline
e pressione Executar tudo para executar o pipeline. O pipeline faz o seguinte:- Carrega os documentos brutos do volume UC
- Analisa cada documento, salvando os resultados em uma Tabela Delta
- Divide cada documento, salvando os resultados em uma Tabela Delta
- Insere os documentos e cria um Índice de Vetor usando a Busca em Vetores de IA do Mosaic
Metadados, como tabelas de saída e configuração, sobre o pipeline de dados são registrados no MLflow:
Você pode inspecionar as saídas procurando links para a saída de Tabelas Delta ou índices de vetor próximos à parte inferior do notebook:
Vector index: https://<your-workspace-url>.databricks.com/explore/data/<uc-catalog>/<uc-schema>/<app-name>_poc_chunked_docs_gold_index Output tables: Bronze Delta Table w/ raw files: https://<your-workspace-url>.databricks.com/explore/data/<uc-catalog>/<uc-schema>/<app-name>__poc_raw_files_bronze Silver Delta Table w/ parsed files: https://<your-workspace-url>.databricks.com/explore/data/<uc-catalog>/<uc-schema>/<app-name>__poc_parsed_docs_silver Gold Delta Table w/ chunked files: https://<your-workspace-url>.databricks.com/explore/data/<uc-catalog>/<uc-schema>/<app-name>__poc_chunked_docs_gold
Implante a cadeia de POC no Aplicativo de Revisão.
A cadeia de POC padrão é uma cadeia RAG de conversa com várias rodadas criada usando LangChain.
Observação
A Cadeia de POC usa o registro em log baseado em código do MLflow. Para entender mais sobre o registro em log baseado em código, confira Registrar e registrar agentes de IA.
Abra o notebook
03_deploy_poc_to_review_app
Execute cada célula do notebook.
O rastreamento do MLflow mostra como o aplicativo de POC funciona. Ajuste a pergunta de entrada para uma que seja relevante para o caso de uso e execute novamente a célula para verificar o aplicativo.
Modifique as instruções padrão para serem relevantes para o caso de uso. Elas são exibidas no Aplicativo de Revisão.
instructions_to_reviewer = f"""## Instructions for Testing the {RAG_APP_NAME}'s Initial Proof of Concept (PoC) Your inputs are invaluable for the development team. By providing detailed feedback and corrections, you help us fix issues and improve the overall quality of the application. We rely on your expertise to identify any gaps or areas needing enhancement. 1. **Variety of Questions**: - Please try a wide range of questions that you anticipate the end users of the application will ask. This helps us ensure the application can handle the expected queries effectively. 2. **Feedback on Answers**: - After asking each question, use the feedback widgets provided to review the answer given by the application. - If you think the answer is incorrect or could be improved, please use "Edit Answer" to correct it. Your corrections will enable our team to refine the application's accuracy. 3. **Review of Returned Documents**: - Carefully review each document that the system returns in response to your question. - Use the thumbs up/down feature to indicate whether the document was relevant to the question asked. A thumbs up signifies relevance, while a thumbs down indicates the document was not useful. Thank you for your time and effort in testing {RAG_APP_NAME}. Your contributions are essential to delivering a high-quality product to our end users.""" print(instructions_to_reviewer)
Execute a célula de implantação para obter um link para o Aplicativo de Revisão.
Review App URL: https://<your-workspace-url>.databricks.com/ml/review/<uc-catalog>.<uc-schema>.<uc-model-name>/<uc-model-version>
Conceda permissões a usuários individuais para acessar o Aplicativo de Revisão.
Você pode conceder acesso a usuários que não são do Databricks seguindo as etapas em Configurar permissões para usar o aplicativo de revisão.
Teste o Aplicativo de Revisão fazendo algumas perguntas por conta própria e fornecendo comentários.
Observação
Os rastreamentos do MLflow e os comentários do usuário do Aplicativo de Revisão aparecem nas Tabelas Delta no esquema de catálogo configurado. Os logs podem levar até 2 horas para serem exibidos nessas Tabelas Delta.
Compartilhe o aplicativo de revisão com os participantes
Agora você pode compartilhar seu aplicativo RAG de POC com os participantes para obter seus comentários.
Importante
O Databricks sugere distribuir sua POC para pelo menos três participantes e fazer com que cada uma faça de 10 a 20 perguntas. É importante que vários participantes testem sua POC para que você possa ter um conjunto diversificado de perspectivas a serem incluídas no conjunto de avaliações.
Próxima etapa
Continue com a Etapa 3. Fazer a curadoria de um conjunto de avaliações com base nos comentários dos participantes.