Delen via


Stap 2. POC implementeren om feedback van belanghebbenden te verzamelen

Aan het einde van deze stap hebt u de beoordelings-app voor agentevaluatie geïmplementeerd waarmee uw belanghebbenden uw POC kunnen testen en feedback kunnen geven. Gedetailleerde logboeken van het gebruik van uw belanghebbende en hun feedback stromen naar Delta Tables in uw Lakehouse.

RAG-toepassingsbewijs van concept

Vereisten

Zie de GitHub-opslagplaats voor de voorbeeldcode in deze sectie.

Proof of concept RAG-toepassing

De eerste stap in evaluatiegestuurde ontwikkeling is het bouwen van een proof of concept (POC). Een POC biedt de volgende voordelen:

  • Biedt een directioneel overzicht van de haalbaarheid van uw use case met RAG
  • Hiermee kunt u initiële feedback van belanghebbenden verzamelen, zodat u de eerste versie van uw evaluatieset kunt maken
  • Hiermee wordt een basislijnmeting van de kwaliteit vastgesteld om te beginnen met herhalen vanaf

Databricks raadt u aan uw POC te bouwen met behulp van de eenvoudigste RAG-architectuur en databricks aanbevolen standaardwaarden voor elke parameter.

Deze aanbeveling is omdat er honderden mogelijke combinaties van parameters zijn die u in uw RAG-toepassing kunt afstemmen. U kunt deze weken eenvoudig afstemmen, maar als u dit doet voordat u systematisch uw RAG kunt evalueren, eindigt u in wat wordt aangeduid als een POC-doomlus, maar zonder dat u objectief weet of u een verbetering hebt aangebracht, terwijl uw belanghebbenden ongeduldig wachten om te beoordelen.

De POC-sjablonen in deze zelfstudie zijn ontworpen met een kwaliteitsiteratie in gedachten. Ze worden geparameteriseerd op basis van wat het Databricks-onderzoeksteam heeft aangetoond, is belangrijk om af te stemmen om de RAG-kwaliteit te verbeteren. Deze sjablonen zijn geen '3 regels code die een RAG magisch maken', maar zijn een goed gestructureerde RAG-toepassing die kan worden afgestemd op kwaliteit in de volgende stappen van een evaluatiegestuurde ontwikkelwerkstroom.

Hierdoor kunt u snel een POC implementeren, maar snel overstappen op kwaliteitsiteratie zonder dat u uw code hoeft te herschrijven.

Hieronder vindt u de technische architectuur van de POC-toepassing:

POC-toepassingsarchitectuur

Notitie

De POC maakt standaard gebruik van de opensource-modellen die beschikbaar zijn op Mosaic AI Foundation Model Serving. Omdat de POC echter Gebruik maakt van Mosaic AI Model Serving, dat ondersteuning biedt voor elk basismodel, is het eenvoudig om dat model te configureren in Model Serving en vervolgens de embedding_endpoint_name en llm_endpoint_name in het 00_config notebook te vervangen.

Stappen voor het implementeren van een POC om feedback te verzamelen

De volgende stappen laten zien hoe u een POC-generatieve AI-toepassing uitvoert en implementeert. Nadat u de implementatie hebt uitgevoerd, krijgt u een URL naar de beoordelings-app die u kunt delen met belanghebbenden om feedback te verzamelen.

  1. Open de POC-codemap binnen A_POC_app op basis van uw type gegevens:

    Als uw gegevens niet voldoen aan een van de bovenstaande vereisten, kunt u de parseringsfunctie (parser_udf) in 02_poc_data_pipeline de bovenstaande POC-mappen aanpassen om met uw bestandstypen te werken.

    In de POC-map ziet u de volgende notebooks:

    Notebooks-bestanden

    Notitie

    Deze notebooks zijn relatief ten opzichte van de specifieke POC die u hebt gekozen. Als u bijvoorbeeld een verwijzing 00_config ziet naar en u hebt gekozen pdf_uc_volume, kunt u het relevante 00_config notitieblok vinden op A_POC_app/pdf_uc_volume/00_config.

  2. Controleer desgewenst de standaardparameters.

    Open het 00_config notebook in de POC-map die u hierboven hebt gekozen om de standaardparameters voor de gegevenspijplijn en RAG-keten van de POC-toepassingen weer te geven.

    Belangrijk

    De aanbevolen standaardparameters van Databricks zijn niet bedoeld om perfect te zijn, maar zijn een plek om te beginnen. De volgende stappen van deze werkstroom helpen u bij het herhalen van deze parameters.

  3. Valideer de configuratie.

    Voer de 01_validate_config opdracht uit om te controleren of uw configuratie geldig is en of alle resources beschikbaar zijn. Het rag_chain_config.yaml bestand wordt weergegeven in uw map, die wordt gebruikt om de toepassing te implementeren.

  4. Voer de gegevenspijplijn uit.

    De POC-gegevenspijplijn is een Databricks-notebook op basis van Apache Spark. Open het 02_poc_data_pipeline notebook en druk op Alles uitvoeren om de pijplijn uit te voeren. De pijplijn doet het volgende:

    • Laadt de onbewerkte documenten van het UC-volume
    • Parseert elk document en slaat de resultaten op in een Delta-tabel
    • Segmenteert elk document en slaat de resultaten op in een Delta-tabel
    • De documenten insluiten en een vectorindex maken met Mozaïek AI Vector Search

    Metagegevens, zoals uitvoertabellen en configuratie, over de gegevenspijplijn worden vastgelegd in MLflow:

    GIF voor het weergeven van de gegevenspijplijn

    U kunt de uitvoer controleren door te zoeken naar koppelingen naar de deltatabellen of vectorindexen onder aan het 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
    
  5. Implementeer de POC-keten in de beoordelings-app.

    De standaard POC-keten is een RAG-keten met meerdere paden die is gebouwd met behulp van LangChain.

    Notitie

    De POC Chain maakt gebruik van logboekregistratie op basis van MLflow-code. Zie Ai-agents registreren en registreren voor meer informatie over logboekregistratie op basis van code.

    1. 03_deploy_poc_to_review_app Het notitieblok openen

    2. Voer elke cel van het notebook uit.

    3. De MLflow-trace laat zien hoe de POC-toepassing werkt. Pas de invoervraag aan op een vraag die relevant is voor uw use-case en voer de cel opnieuw uit om de toepassing 'vibe check' uit te voeren.

      GIF met MLflow-tracering

    4. Wijzig de standaardinstructies zodat deze relevant zijn voor uw use-case. Deze worden weergegeven in de beoordelings-app.

         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)
      
    5. Voer de implementatiecel uit om een koppeling naar de beoordelings-app op te halen.

      Review App URL: https://<your-workspace-url>.databricks.com/ml/review/<uc-catalog>.<uc-schema>.<uc-model-name>/<uc-model-version>
      
  6. Individuele gebruikers machtigingen verlenen voor toegang tot de beoordelings-app.

    U kunt toegang verlenen aan niet-Databricks-gebruikers door de stappen in Machtigingen instellen te volgen om de beoordelings-app te gebruiken.

  7. Test de beoordelings-app door een paar vragen zelf te stellen en feedback te geven.

    Notitie

    MLflow Traces en de feedback van de gebruiker van de beoordelings-app worden weergegeven in Delta-tabellen in het catalogusschema dat u hebt geconfigureerd. Het kan tot 2 uur duren voordat logboeken worden weergegeven in deze Delta-tabellen.

  8. De beoordelings-app delen met belanghebbenden

    U kunt uw POC RAG-toepassing nu delen met uw belanghebbenden om hun feedback te krijgen.

    Belangrijk

    Databricks stelt voor om uw POC te distribueren naar ten minste drie belanghebbenden en ze elk 10 tot 20 vragen te laten stellen. Het is belangrijk om meerdere belanghebbenden uw POC te laten testen, zodat u een diverse set perspectieven kunt hebben om op te nemen in uw evaluatieset.

Volgende stap

Ga verder met stap 3. Een evaluatieset cureren op basis van feedback van belanghebbenden.

< Vorige: Stap 1. Kloonopslagplaats en rekenproces maken

Volgende: Stap 3. Een evaluatieset cureren >