Modelprestaties optimaliseren

Voltooid

Nadat u uw model hebt geïmplementeerd op een eindpunt, kunt u ermee werken om te zien hoe het werkt. Laten we eens kijken hoe u prompt engineeringtechnieken kunt gebruiken om de prestaties van uw model te optimaliseren.

Promptpatronen toepassen om de uitvoer van uw model te optimaliseren

De kwaliteit van de vragen die u naar het taalmodel verzendt, heeft rechtstreeks invloed op de kwaliteit van de antwoorden die u terugkrijgt. U kunt uw vraag zorgvuldig samenstellen of vragen om betere en interessantere antwoorden te ontvangen. Het proces van het ontwerpen en optimaliseren van prompts om de prestaties van het model te verbeteren, wordt ook wel prompt engineering genoemd.

Prompt engineering vereist dat gebruikers relevante, specifieke, ondubbelzinnige en goed gestructureerde vragen stellen, zodat het model nauwkeurigere antwoorden kan genereren. Als u wilt weten hoe u goed gedefinieerde prompts maakt, gaan we enkele patronen verkennen waarmee u de uitvoer van een model kunt verbeteren:

  • Instrueer het model om op te treden als een karakter.
  • Leid het model om betere vragen te stellen.
  • Geef een sjabloon op voor het genereren van uitvoer in een specifieke indeling.
  • Begrijp hoe een model redeneert door het model te vragen om te reflecteren.
  • Voeg context toe om de nauwkeurigheid van de uitvoer van het model te verbeteren.

Opmerking

De hier vermelde patronen zijn gebaseerd op het werk van White et al., (2023) die een promptpatrooncatalogus heeft samengesteld.

Als ontwikkelaar is een effectieve aanpak het toevoegen van instructies aan uw geïmplementeerde model in de vorm van een systeemprompt. De systeemprompt stelt het gedrag van het model in en stelt u in staat om het model te leiden zonder de eindgebruiker bloot te stellen aan de instructies. De beste resultaten worden vaak bereikt door de toewijzing van een expliciete systeemprompt en richtlijnen (of sjablonen) waarmee gebruikers prompts kunnen indienen die overeenkomen met de patronen die hier worden beschreven.

Het model instrueren om te fungeren als een persona

Wanneer u wilt dat het model een bepaald standpunt of perspectief krijgt bij het beantwoorden van een vraag, kunt u het als persona laten fungeren.

U kunt het model bijvoorbeeld vragen om te reageren alsof het een doorgewinterde marketingprofessional is als u in verkoop werkt en inzichten nodig hebt over een nieuwe CRM-software.

Geen persona opgegeven Met gespecificeerde persona
Systeemprompt Geen U bent een doorgewinterde marketingprofessional die reclamekopie schrijft voor een publiek van technische klanten.
gebruikersprompt Schrijf een beschrijving van één zin van een CRM-product. Schrijf een beschrijving van één zin van een CRM-product.
Modelantwoord Een CRM-product is een softwarehulpprogramma dat is ontworpen om de interacties van een bedrijf met huidige en potentiële klanten te beheren, waaronder verkoop, marketing, klantenservice en technische ondersteuning. Ervaar naadloos klantrelatiebeheer met ons CRM-product, ontworpen om uw bedrijfsactiviteiten te stroomlijnen, klantinteracties te verbeteren en de verkoopgroei te stimuleren met de intuïtieve interface en robuuste analysehulpprogramma's.

U kunt verschillende persona's maken voor verschillende bedrijfsrollen. Denk aan rollen zoals een productmanager, gegevensanalist, klantenservice-expert of docent. Definieer de persona en voeg meer details toe aan wat u verwacht dat die persona weet of doet om op maat gemaakte, contextgestuurde antwoorden te krijgen.

Vraagsuggesties

Wanneer u wilt dat het model u helpt bij het verfijnen van uw vraag, kunt u het vragen om betere manieren te voorstellen om uw query te formuleren. U kunt het ook vragen om extra context te bieden.

Als u bijvoorbeeld advies zoekt over het koken van een maaltijd, kunt u het model vragen om vragen te verduidelijken om u te helpen een beter antwoord te krijgen.

Geen suggesties gegeven Met suggesties gegeven
Systeemprompt U bent een AI-chef-kok die kan adviseren over menu's. U bent een AI-chef-kok die kan adviseren over menu's. U bent benaderbaar en wilt altijd het beste advies geven dat u kunt.
gebruikersprompt Ik moet een diner organiseren voor vier personen. Wat moet ik koken? Ik moet een diner organiseren voor vier personen. Wat moet ik koken? Welke andere informatie heb je nodig om me te helpen bij het plannen van een geweldige maaltijd voor mijn gasten?
Modelantwoord Het hosten van een diner voor vier is een geweldige gelegenheid om uw culinaire vaardigheden te laten zien. Hier volgt een voorgesteld driegangenmenu dat smaken in balans brengt en een aangename eetervaring biedt:

Voorgerecht
Caprese SaladeSkewers
- Ingrediënten: Cherry tomaten, verse mozzarella ballen, verse basilicumbladeren, balsamic glazuur, olijfolie, zout en peper.
- Instructies: Draad een kersentomaat, een basilicumblad en een mozzarella bal op kleine spiesjes. Drizzle met olijfolie en balsamic glazuur, dan seizoen met zout en peper. Dit gerecht is licht, verfrissend en gemakkelijk om van tevoren voor te bereiden.

Hoofdgerecht
Herb-Crusted Zalm met Citroensparagus
- Ingrediënten: Zalmfilet, verse kruiden (zoals peterselie, dille en tijm), broodkruimels, citroen, asparagus, olijfolie, zout en peper.
- Instructies: Verwarm uw oven voor op 400°F (200°C). Meng broodkruimels met gehakte verse kruiden en een beetje olijfolie om een pasta te vormen. Druk dit mengsel op de zalmfilet en seizoen met zout en peper. Plaats zalm op een bakplaat en bak ongeveer 15-20 minuten, of totdat u er doorheen kookt. In de afgelopen 10 minuten koken, toss asparagus met olijfolie, citroenschil, zout en peper, en geroosterd naast de zalm. Serveer met een knijp van vers citroensap over de zalm en deparagus.

Toetje
Chocoladefraaien met verse bessen
- Ingrediënten: Donkere chocolade, eieren, suiker, zware room, vanille extract en gemengde bessen (zoals aardbeien, bosbessen en frambozen).
- Instructies: Smelt de chocolade over een dubbele ketel en laat het koelen. Scheid eierdooiers en wit. Zweep de eiwitten aan zachte pieken en voeg vervolgens geleidelijk suiker toe om een meringue te maken. Fluit de zware room totdat zachte pieken vormen en mixen in vanille extract. Vouw de gesmolten chocolade in de eierdooiers, vouw vervolgens voorzichtig in de slagroom en meringue tot gecombineerd. Lepel de schuim in het serveren van gerechten en koelmiddel gedurende ten minste 2 uur. Serveer met verse bessen voor een burst van kleur en frisheid.

Aanvullende tips
- Paaringen: Overweeg om een lichte witte wijn te serveren met het voorgerecht en hoofdgerecht, en misschien een dessertwijn met de chocolademoer.
- Timing: Bereid vooraf het voorgerecht en dessert voor om last-minute stress te minimaliseren. Het hoofdgerecht neemt het meeste tijd in de oven, dus plan dienovereenkomstig.

Dit menu is ontworpen om elegant en toegankelijk te zijn, zodat uw gasten genieten van zowel het eten als de ervaring. Geniet van uw diner!
Het hosten van een diner is een geweldige gelegenheid om uw culinaire vaardigheden te laten zien en onvergetelijke ervaringen voor uw gasten te creëren. Om u te helpen bij het plannen van een geweldige maaltijd, zijn hier enkele vragen die u kunnen begeleiden bij het kiezen van het perfecte menu:

  • Dieetvoorkeuren/-beperkingen: Zijn uw gasten vegetarisch, veganistisch, glutenvrij of hebben ze voedselallergieën of intoleranties? Wetende dat dit helpt bij het selecteren van gerechten die iedereen kan genieten.
  • Smaakvoorkeuren: Hebben uw gasten favoriete gerechten of smaken? Genieten ze bijvoorbeeld van Italiaans, Mexicaans, Middellandse Zee of misschien iets avontuurlijker als Thai of Indiaas?
  • Tijd- en vaardigheidsniveau: Hoeveel tijd heb je nodig om de maaltijd te bereiden en wat is je comfortniveau in de keuken? Bent u op zoek naar een eenvoudige maaltijd of bent u klaar voor iets uitgebreider?
  • Gelegenheid: Is dit een informele bijeenkomst, een viering of iets formeler? De aard van de gebeurtenis kan van invloed zijn op de menustijl.
  • Seizoensgebonden ingrediënten: Bent u geïnteresseerd in het gebruik van seizoensingrediënten? Dit kan helpen bij het kiezen van verse en smakelijke producten.
  • Koppelen van drankjes: Wilt u alcoholische of niet-alcoholische dranken opnemen om aan de maaltijd te koppelen?

Met deze informatie kan ik een op maat gemaakt menu voorstellen. Hier volgt een algemeen idee dat kan worden aangepast op basis van uw antwoorden:

Starter
  • Tuinsalade met Citrus Vinaigrette: Verse greens, seizoensgebonden groenten en een lichte citrusdressing.
  • Gevulde champignons: Voor een vegetarische optie, gevuld met kruiden en kaas.

Hoofdgerecht
  • Herb-Crusted kipfilet: geserveerd met geroosterde groenten.
  • Stuffed Bell Peppers: Een smakelijke vegetarische of veganistische optie.

Bijgerechten
  • Knoflookboter geroosterde aardappelen: Klassiek en troostend.
  • Gestoomde groene bonen met amandelen: een eenvoudige, gezonde kant.

Toetje
  • Chocolade Lava Cake: Een decadent traktatie om de maaltijd te beëindigen.
  • Fruit Tart: Een lichtere, verfrissende optie.

Dranken
  • Wijnpaar: Een veelzijdige witte wijn zoals Sauvignon Blanc of een lichtrood zoals Pinot Noir.
  • Mocktail Optie: Een verfrissende citrus mocktail of sprankelend water met kruiden.


U kunt gerust meer informatie delen en ik kan u helpen het menu verder te verfijnen.

Wanneer u het model aanmoedigt om verduidelijkingen of extra details voor te stellen, kunt u de juiste vragen stellen en betere, nauwkeurigere antwoorden bereiken in minder interacties.

De gewenste indeling voor antwoorden opgeven

Wanneer u wilt dat het model uitvoer in een specifieke indeling genereert, kunt u een sjabloon of structuur opgeven in uw prompt.

Als u bijvoorbeeld een sportrapporter bent die een historisch artikel opstelt, kunt u aanvragen dat het model een specifieke sjabloon volgt, waaronder koppen, opsommingstekens en uitsplitsingen van gegevens.

Er is geen sjabloon opgegeven Met opgegeven sjabloon
Systeemprompt U bent een handige AI-assistent. U bent een handige AI-assistent voor sportreporters.
gebruikersprompt Wat is er gebeurd in de finale van het voetbalkampioenschap voetbal 2018? Wat is er gebeurd in de finale van het voetbalkampioenschap voetbal 2018? Maak het resultaat op om de overeenkomende datum, locatie en de twee teams die concurreren weer te geven. Vervolgens de eindscore en tot slot eventuele belangrijke gebeurtenissen die plaatsvonden tijdens de wedstrijd.
Modelantwoord De finale van de FIFA World Cup van 2018 vond plaats op 15 juli 2018, in het Stadion van Luzhniki in Moskou, Rusland. Frankrijk stond tegenover Kroatië in de wedstrijd. Frankrijk kwam overwinnaars met een 4-2 overwinning. De doelpunten voor Frankrijk werden gescoord door Mario Mandzukic (eigen doel), Antoine Griezmann (straf), Paul Pogba en Kylian Mbappé. De doelpunten van Kroatië werden gescoord door Ivan Perišić en Mandzukic. Kylian Mbappé, op slechts 19 jaar oud, werd de tweede jongste speler om te scoren in een Wereldbeker finale, na Pelé. Deze overwinning markeerde de tweede wereldbekertitel van Frankrijk, hun eerste in 1998. Overeenkomstdatum: 15 juli 2018
Locatie: Luzhniki Stadion, Moskou, Rusland
Teams die concurreren: Frankrijk versus Kroatië
Eindscore: Frankrijk 4, Kroatië 2

Belangrijke gebeurtenissen:
  1. Eerste helft: Frankrijk nam een vroege voorsprong in de 18e minuut met een eigen doelpunt van Mario Mandžukić na een kruisingvan Griezmann. Kroatië was in de 28e minuut gelijk met een koptekst van Ivan Perišić, die net als een vervanger opkwam. Net voor de helft scoorde Paul Pogba in de 44e minuut van een vrije trap om Frankrijk weer in de leiding te zetten.
  2. Tweede helft: Het spel zag een dramatische toename van de intensiteit na de pauze. In de 68e minuut scoorde Kylian Mbappé zijn eerste wereldbekerdoel, waardoor de score voor Frankrijk 3-1 werd. Kroatië scoorde opnieuw in de 69e minuut toen Mandžukić in een kruis van Perišić ging, waardoor het tekort werd verminderd tot 3-2.
  3. Laatste momenten: In de 81e minuut werd een controversieel boete toegekend aan Frankrijk na een handbal van Kroatische verdediger Dejan Lovren. Griezmann bekeerde de straf en verzegelde de overwinning voor Frankrijk met een scorelijn van 4-2.
  4. Aanvullende context: Deze wedstrijd was opmerkelijk voor het zijn van de jongste wereldbeker finale in termen van gemiddelde leeftijd, met spelers zoals Mbappé en N'Golo Kanté. De overwinning van Frankrijk markeerde hun tweede wereldbekertitel, die eerder in 1998 won. Kroatië bereikte de finale voor het eerst in hun geschiedenis, eindigend als runners-up.

U kunt deze benadering toepassen op andere scenario's waarbij een specifieke indeling nodig is, zoals het genereren van e-mailberichten, samenvattingen, voorstellen of zelfs code en scripts. Definieer de indelingssjabloon duidelijk en geef details op hoe u de uitvoer wilt structureren om consistente en georganiseerde antwoorden te krijgen.

U kunt ook een benadering met één of enkele opnamen gebruiken door een of meer voorbeelden te geven om het model te helpen een gewenst patroon te identificeren.

Vraag om een uitleg van redenering

Wanneer u wilt dat het model de redenering achter de antwoorden uitlegt, kunt u het model vragen om automatisch te reflecteren op de logica en veronderstellingen nadat het een antwoord heeft gegeven.

Als u bijvoorbeeld aan een wiskundig probleem werkt, kunt u het model vragen de redenering achter specifieke berekeningen uit te leggen.

Geen weerspiegeling opgegeven Met reflectie gespecificeerd
Systeemprompt U bent een AI-assistent voor wiskunde. U bent een AI-assistent voor wiskunde. Je legt altijd je antwoorden uit.
gebruikersprompt Een rechthoekige driehoek heeft een hypotenusezijde van lengte 3 cm en een aangrenzende zijlengte van 2cm. Wat is de lengte van de resterende zijde? Een rechthoekige driehoek heeft een hypotenusezijde van lengte 3 cm en een aangrenzende zijlengte van 2cm. Wat is de lengte van de resterende zijde?
Modelantwoord Ongeveer 2,24 cm. We kunnen de Pythagorean-stelling gebruiken om dit probleem op te lossen. De Pythagorese theorema stelt dat in een rechthoekige driehoek het vierkant van de lengte van de hypotenuse (de zijkant tegenover de rechterhoek) gelijk is aan de som van de kwadraten van de lengte van de andere twee zijden. Wiskundig kan dit worden geschreven als:
c² = a² + b²
waarbij c de lengte van de hypotenuse is en a en b de lengte van de andere twee zijden zijn.
In dit probleem krijgen we de lengte van de hypotenuse (c = 3 cm) en de lengte van een van de andere zijden (a = 2 cm). We moeten de lengte van de resterende zijde (b) vinden.
Als u de opgegeven waarden aansluit op de Pythagorese stelling, krijgen we het volgende:
3² = 2² + b²
9 = 4 + b²
Nu kunnen we het oplossen voor b²:
b² = 9 - 4
b² = 5
Ten slotte nemen we de vierkantswortel van beide zijden om de lengte van de resterende zijde te vinden:
b = √5 ≈ 2,24 cm
De lengte van de resterende zijde is dus ongeveer 2,24 cm.

U kunt deze aanpak toepassen wanneer u uitleg wilt over gegevensanalyse, marketingstrategie of technische probleemoplossing. Wanneer u het model vraagt om de redenering ervan te definiëren, gebruikt u een techniek die keten-van-gedachte wordt genoemd om het stapsgewijs te laten denken.

Context toevoegen

Wanneer u wilt dat het model zich richt op specifieke onderwerpen, kunt u de context opgeven die u moet overwegen. U kunt het model ook vertellen om irrelevante informatie te negeren.

Als u bijvoorbeeld een reis plant, kunt u het model meer context geven om de relevantie van het antwoord te verbeteren.

Er is geen context opgegeven Met context opgegeven
Systeemprompt U bent een AI-reisassistent. U bent een AI-reisassistent.
Gebruikersvraag Wanneer moet ik Edinburgh bezoeken? Wanneer moet ik Edinburgh bezoeken? Ik ben vooral geïnteresseerd in het bijwonen van de thuiswedstrijden van Schotland in het Six Nations rugby toernooi.
Modelantwoord Edinburgh, de hoofdstad van Schotland, is een prachtige bestemming met een rijke geschiedenis en levendige cultuur. De beste tijd om Edinburgh te bezoeken is grotendeels afhankelijk van uw voorkeuren voor weer, evenementen en toeristische drukte.
  1. Lente (april tot juni): Het weer wordt opgewarmd en de dagen worden langer. Springtime is ideaal voor het verkennen van de historische bezienswaardigheden, tuinen en parken van de stad, zoals de Koninklijke Botanische Tuin. Het Edinburgh Festival Fringe, het grootste kunstfestival ter wereld, vindt plaats in augustus, dat het einde van de zomer is.
  2. Zomer (juli tot augustus): Het weer is op zijn warmste en de dagen zijn lang. Dit is een populaire tijd om te bezoeken, maar het kan ook druk zijn met toeristen. De zomer is ideaal voor buitenactiviteiten en u kunt genieten van het Internationale Festival van Edinburgh en de Royal Edinburgh Military Tattoo.
  3. Herfst (september tot november): Het weer begint af te koelen en de bladeren veranderen van kleur, waardoor een pittoreske achtergrond ontstaat voor de historische architectuur van de stad. Het is minder druk en u kunt genieten van evenementen zoals het Edinburgh International Book Festival.
  4. Winter (december tot februari): Het weer is kouder en er kan sneeuwval zijn, wat een magische sfeer kan creëren. De winter is een rustigere tijd om te bezoeken, met minder toeristen en lagere prijzen. U kunt deelnemen aan evenementen zoals de Kerstmarkt van Edinburgh en de Hogmanay Street Party, die het Nieuwjaar viert.

Kortom, de beste tijd om Edinburgh te bezoeken, is afhankelijk van uw voorkeuren. Lente en herfst bieden aangenaam weer en minder drukte, terwijl de zomer ideaal is voor buitenactiviteiten en festivals. De winter kan een rustigere, magischere ervaring zijn, met feestelijke evenementen om van te genieten.
Het Six Nations rugby toernooi loopt meestal van eind januari tot begin maart. Edinburgh, als gastheerstad, heeft vaak wedstrijden in Murrayfield Stadium, dat het nationale stadion van Schotland is. Om ervoor te zorgen dat je de thuiswedstrijden van Schotland niet mist in de Six Nations, raad ik je aan om je bezoek voor deze periode te plannen.

Houd er echter rekening mee dat de datums en tijden kunnen variëren, dus het is een goed idee om de officiële Six Nations-website of de website van de Schotse Rugby Union te controleren voor het exacte schema van wedstrijden. Bovendien heeft Edinburgh veel te bieden buiten rugby, met zijn rijke geschiedenis, prachtige architectuur en levendige culturele scène, dus u kunt overwegen om uw verblijf uit te breiden naar de stad voor of na het toernooi.

Vergeet ook niet dat een bezoek tijdens het toernooi kan betekenen dat grotere menigten en drukkere accommodaties, dus boek uw vluchten, hotel en vervoer ruim van tevoren om een soepele ervaring te garanderen. Geniet van uw reis naar Edinburgh en de spannende sfeer van de Six Nations rugbywedstrijden!

Door te definiëren waarop het model zich moet richten of negeren, kunt u ervoor zorgen dat het gesprek op schema blijft en relevantere, op maat gemaakte antwoorden genereert.

U kunt de context opgeven door te beschrijven wat deze wel of niet moet bevatten en door het model te verbinden met gegevensbronnen waaruit de context moet worden opgehaald voordat er een antwoord wordt gegenereerd.

Strategieën voor modeloptimalisatie toepassen

Opmerking

In deze sectie worden opties en overwegingen besproken voor modeloptimalisatie die u buiten prompt engineering kunt overwegen. Een volledige verkenning van het toepassen van deze optimalisatiestrategieën valt buiten het bereik van deze module.

Prompt engineering kan een effectieve manier zijn om modelreacties te optimaliseren, maar in sommige gevallen biedt het mogelijk niet voldoende context of richtlijnen om altijd aan uw exacte behoeften te voldoen. Als ontwikkelaar kunt u rekening houden met de volgende aanvullende optimalisatiestrategieën om de relevantie van de reacties van uw AI-toepassing te verbeteren:

  • Rag (Augmented Generation) ophalen: een techniek waarbij een gegevensbron wordt gebruikt om basiscontext te bieden voor prompts. RAG kan een handige benadering zijn wanneer u het model nodig hebt om vragen te beantwoorden op basis van een specifiek kennisdomein of wanneer u het model nodig hebt om na te denken over gebeurtenissen die zijn opgetreden na de trainingsgegevens waarop het model is gebaseerd.
  • Afstemming: Een techniek waarbij de training van een basismodel wordt uitgebreid door voorbeeldprompts en antwoorden op te geven die de gewenste uitvoerindeling en -stijl weerspiegelen.

Beide benaderingen omvatten extra kosten, complexiteit en onderhoudbaarheidsuitdagingen, dus als algemene regel is het raadzaam om uw optimalisatie-inspanningen te starten via prompt engineering en vervolgens indien nodig aanvullende strategieën te overwegen.

De strategie die u als ontwikkelaar moet kiezen, is afhankelijk van uw vereisten:

Diagram met de verschillende strategieën om de prestaties van het model te optimaliseren.

  • Optimaliseren voor context: wanneer het model geen contextuele kennis heeft en u de nauwkeurigheid van de antwoorden wilt maximaliseren.
  • Optimaliseer het model: wanneer u de antwoordindeling, stijl of spraak wilt verbeteren door de consistentie van het gedrag te maximaliseren.

Als u wilt optimaliseren voor context, kunt u een RAG-patroon (Retrieval Augmented Generation) toepassen. Met RAG hebt u uw gegevens geaard door eerst context op te halen uit een gegevensbron voordat u een antwoord genereert. U wilt bijvoorbeeld dat werknemers vragen stellen over onkostenclaimprocessen en -limieten op basis van de beleidsdocumentatie voor onkosten van uw eigen bedrijf.

Wanneer u wilt dat het model reageert in een specifieke stijl of indeling, kunt u het model instrueren dit te doen door richtlijnen toe te voegen aan het systeembericht. Wanneer u merkt dat het gedrag van het model niet consistent is, kunt u consistentie verder afdwingen door een model af te stemmen . Met het verfijnen traint u een basistaalmodel op een gegevensset met voorbeeldprompts en antwoorden voordat u het integreert in uw toepassing, met het resultaat dat het nauwkeurig afgestemde model antwoorden produceert die consistent zijn met de voorbeelden in de trainingsgegevensset voor het afstemmen van de training.

U kunt elke combinatie van optimalisatiestrategieën gebruiken, bijvoorbeeld prompt engineering, RAG en een nauwkeurig afgestemd model, om uw taaltoepassing te verbeteren.