Delen via


Augmented Generation ophalen met behulp van azure Machine Learning-promptstroom (preview)

Belangrijk

Deze functie is momenteel beschikbaar als openbare preview-versie. Deze preview-versie wordt geleverd zonder een service level agreement en we raden deze niet aan voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt.

Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews voor meer informatie.

Het ophalen van Augmented Generation (RAG) is een patroon dat werkt met vooraf getrainde Large Language Models (LLM) en uw eigen gegevens om antwoorden te genereren. In Azure Machine Learning kunt u RAG nu implementeren in een promptstroom. Ondersteuning voor RAG is momenteel beschikbaar in openbare preview.

Dit artikel bevat enkele voordelen van RAG, biedt een technisch overzicht en beschrijft RAG-ondersteuning in Azure Machine Learning.

Notitie

Nieuw bij LLM- en RAG-concepten? Deze videoclip van een Microsoft-presentatie biedt een eenvoudige uitleg.

Waarom RAG gebruiken?

Traditioneel wordt een basismodel getraind met point-in-time-gegevens om ervoor te zorgen dat het effectief is bij het uitvoeren van specifieke taken en het aanpassen aan het gewenste domein. Soms moet u echter werken met nieuwere of meer actuele gegevens. Twee benaderingen kunnen het basismodel aanvullen: fine-tuning of verdere training van het basismodel met nieuwe gegevens, of RAG die prompt engineering gebruikt om het model in realtime aan te vullen of te begeleiden.

Fine-tuning is geschikt voor continue domeinaanpassing, waardoor aanzienlijke verbeteringen in modelkwaliteit mogelijk zijn, maar vaak hogere kosten in rekening worden gebracht. Omgekeerd biedt RAG een alternatieve benadering, waardoor het gebruik van hetzelfde model als een redeneringsengine ten opzichte van nieuwe gegevens in een prompt mogelijk is. Deze techniek maakt leren in context mogelijk zonder dat dure afstemming nodig is, waardoor bedrijven efficiënter LLM's kunnen gebruiken.

RAG stelt bedrijven in staat om aangepaste oplossingen te bereiken terwijl de relevantie van gegevens behouden blijft en de kosten worden geoptimaliseerd. Door rag te gebruiken, kunnen bedrijven gebruikmaken van de redeneringsmogelijkheden van LLM's, waarbij hun bestaande modellen worden gebruikt om reacties te verwerken en te genereren op basis van nieuwe gegevens. RAG vereenvoudigt periodieke gegevensupdates zonder de noodzaak om de integratie van LLM's in bedrijven te stroomlijnen.

  • Aanvullende gegevens verstrekken als richtlijn of een prompt aan de LLM
  • Voegt een onderdeel voor feitencontrole toe aan uw bestaande modellen
  • Train uw model op actuele gegevens zonder dat er extra tijd en kosten in rekening worden gebracht die zijn gekoppeld aan het afstemmen
  • Trainen op uw zakelijke specifieke gegevens

Technisch overzicht van het gebruik van RAG op grote taalmodellen (LLM's)

Bij het ophalen van informatie is RAG een benadering waarmee u de kracht van LLM's met uw eigen gegevens kunt benutten. Het inschakelen van een LLM voor toegang tot aangepaste gegevens omvat de volgende stappen. Ten eerste moeten de grote gegevens in beheerbare stukken worden gesegmenteerd. Ten tweede moeten de segmenten worden geconverteerd naar een doorzoekbare indeling. Ten derde moeten de geconverteerde gegevens worden opgeslagen op een locatie die efficiënte toegang mogelijk maakt. Daarnaast is het belangrijk om relevante metagegevens op te slaan voor bronvermeldingen of verwijzingen wanneer de LLM antwoorden levert.

Schermopname van een diagram van het technische overzicht van een LLM die door rag-stappen loopt.

Laten we het diagram nader bekijken.

  • Brongegevens: dit is waar uw gegevens bestaan. Dit kan een bestand/map op uw computer zijn, een bestand in cloudopslag, een Azure Machine Learning-gegevensasset, een Git-opslagplaats of een SQL-database.

  • Gegevenssegmentering: de gegevens in uw bron moeten worden geconverteerd naar tekst zonder opmaak. Word-documenten of PDF-bestanden moeten bijvoorbeeld open worden gebarsten en geconverteerd naar tekst. De tekst wordt vervolgens in kleinere stukken gesegmenteerd.

  • De tekst converteren naar vectoren: insluitingen genoemd. Vectoren zijn numerieke representaties van concepten die zijn geconverteerd naar getalreeksen, waardoor computers de relaties tussen deze concepten eenvoudig kunnen begrijpen.

  • Koppelingen tussen brongegevens en insluitingen: deze informatie wordt opgeslagen als metagegevens op de segmenten die vervolgens worden gebruikt om de LLM's te helpen bronvermeldingen te genereren tijdens het genereren van antwoorden.

RAG met Azure Machine Learning (preview)

RAG in Azure Machine Learning wordt ingeschakeld door integratie met Azure OpenAI Service voor grote taalmodellen en vectorisatie, met ondersteuning voor Faiss en Azure AI Search (voorheen Cognitive Search) als vectorarchieven en ondersteuning voor opensource-aanbiedingen hulpprogramma's en frameworks zoals LangChain voor gegevenssegmentering.

Als u RAG wilt implementeren, moet aan een aantal belangrijke vereisten worden voldaan. Ten eerste moeten gegevens worden opgemaakt op een manier die efficiënte doorzoekbaarheid mogelijk maakt voordat ze naar de LLM worden verzonden, wat uiteindelijk het tokenverbruik vermindert. Om de effectiviteit van RAG te waarborgen, is het ook belangrijk om uw gegevens regelmatig periodiek bij te werken. Bovendien kunt u met de mogelijkheid om de uitvoer van de LLM te evalueren met behulp van uw gegevens de werkzaamheid van uw technieken meten. Met Azure Machine Learning kunt u niet alleen eenvoudig aan de slag met deze aspecten, maar ook kunt u RAG verbeteren en produceren. Azure Machine Learning-aanbiedingen:

  • Voorbeelden voor het starten van Q&A-scenario's op basis van RAG.
  • Gebruikersinterface-ervaring op basis van wizards om gegevens te maken en te beheren en op te nemen in promptstromen.
  • De mogelijkheid om RAG-werkstromen te meten en te verbeteren, waaronder het genereren van testgegevens, het automatisch maken van prompts en het visualiseren van metrische gegevens voor de evaluatie van prompts.
  • Geavanceerde scenario's met meer controle met behulp van de nieuwe ingebouwde RAG-onderdelen voor het maken van aangepaste pijplijnen in notebooks.
  • Code-ervaring, waarmee het gebruik van gegevens die zijn gemaakt met opensource-aanbiedingen, zoals LangChain, is toegestaan.
  • Naadloze integratie van RAG-werkstromen in MLOps-werkstromen met behulp van pijplijnen en taken.

Conclusie

Met Azure Machine Learning kunt u RAG opnemen in uw AI met behulp van de Azure Machine Learning-studio of code gebruiken met Azure Machine Learning-pijplijnen. Het biedt verschillende waardetoevoegingen, zoals de mogelijkheid om RAG-werkstromen te meten en te verbeteren, het genereren van gegevens te testen, het automatisch maken van prompts en het visualiseren van metrische gegevens voor promptevaluatie. Hiermee kunt u RAG-werkstromen integreren in MLOps-werkstromen met behulp van pijplijnen. U kunt uw gegevens ook gebruiken met opensource-aanbiedingen zoals LangChain.

Volgende stappen

Vector Stores gebruiken met Azure Machine Learning (preview)

Vectorindex maken in azure Machine Learning-promptstroom (preview)