Overzicht van Azure OpenAI- en tekstvoltooiingen
Azure OpenAI Service biedt REST API-toegang tot de krachtige taalmodellen van OpenAI, waaronder de GPT-3.5- en GPT-4-modelreeks. Deze modellen kunnen eenvoudig worden aangepast aan uw specifieke taak, met inbegrip van maar niet beperkt tot het genereren van inhoud, samenvatting, semantische zoekopdrachten en natuurlijke taal voor codevertaling.
Naast de REST API-toegang bestaat er een .NET SDK voor toegang tot De Azure OpenAI-service. En dat gebruiken we om onze toepassing te bouwen. Maar voordat u de toepassing bouwt, gaan we wat meer weten over wat Azure OpenAI is en wat tekstvoltooiingen zijn. Wetende dat we de basis bieden die we nodig hebben om geweldige toepassingen te bouwen met AI.
Overzicht van Azure OpenAI
Azure OpenAI Service biedt klanten geavanceerde taal-AI met OpenAI GPT-3.5-, GPT-4-, Codex- en DALL-E-modellen met de beveiliging en bedrijfsbelofte van Azure. Azure OpenAI ontwikkeld de API's met OpenAI en zorgt voor compatibiliteit en een soepele overgang van het ene naar het andere.
Met Azure OpenAI krijgen klanten de beveiligingsmogelijkheden van Microsoft Azure terwijl ze dezelfde modellen uitvoeren als OpenAI. Azure OpenAI biedt privénetwerken, regionale beschikbaarheid, verantwoordelijke AI-inhoudsfiltering en de mogelijkheid om het model uit te breiden met uw eigen gegevens.
Het eindpunt voor voltooiingen is het kernonderdeel van de API-service. Deze API biedt toegang tot de tekst-in- en tekst-outinterface van het model. Gebruikers hoeven alleen maar een invoerprompt met de Engelse tekstopdracht op te geven en het model genereert een tekstvoltooiing.
Tekstvoltooiingen
In deze les leert u meer over het voltooien van tekst. Het eindpunt voor voltooiingen kan worden gebruikt voor een groot aantal taken. Het biedt een eenvoudige maar krachtige tekst-in, tekst-out interface voor een van de Azure OpenAI-modellen. U voert tekst in als prompt en het model genereert een tekstvoltooiing die overeenkomt met de context of het patroon dat u hebt gegeven. Als u bijvoorbeeld de API de prompt 'Zoals Descartes zei, ik denk daarom', retourneert het de voltooiing 'Ik ben' met een hoge waarschijnlijkheid.
De werkelijke voltooiingsresultaten die u ziet, kunnen verschillen omdat de AI standaard stochastisch is. Met andere woorden, u krijgt mogelijk een iets andere voltooiing elke keer dat u het aanroept, zelfs als uw prompt hetzelfde blijft.
Deze eenvoudige interface voor 'tekst in, tekst uit' betekent dat u het model kunt 'programmeren' door instructies te geven of slechts een paar voorbeelden te geven van wat u wilt doen. Het succes ervan hangt over het algemeen af van de complexiteit van de taak en kwaliteit van uw prompt. Een algemene regel is om na te denken over hoe u een woordprobleem schrijft dat een jonge student kan oplossen. Een goed geschreven prompt biedt voldoende informatie voor het model om te weten wat u wilt en hoe het moet reageren.
We bekijken hoe we later een goede prompt kunnen schrijven, maar laten we nu eens kijken naar de verschillende typen voltooiingen.
Typen azure OpenAI-voltooiingen
Zoals vermeld, geeft u een prompt door aan de Azure OpenAI-API die instructies geeft over wat u wilt doen. U kunt er ook voor zorgen dat tekst wordt geclassificeerd, ideeën genereert of zelfs tekst vertaalt in emoji's.
Classificatie
Voor dit eerste voltooiingstype gaan we dieper in op het 'programmeren' van het model met instructies.
U kunt aangeven welk model u wilt dat gegevens worden gesorteerd in vooraf gedefinieerde categorieën. Dit voltooiingstype wordt classificatie genoemd.
U kunt bijvoorbeeld instructies of een prompt doorgeven die vergelijkbaar is met de voltooiings-API:
This is a sentiment classifier
Example: "I loved the new movie!"
Sentiment: Positive
Example: "I hate it when my phone battery dies"
Sentiment: Negative
Example: "My day has been 👍"
Sentiment: Positive
Example: "This is the link to the article"
Sentiment: Neutral
Examples:
1. "I loved the new Batman movie!"
2. "I hate it when my phone battery dies"
3. "My day has been 👍"
4. "This is the link to the article"
5. "This new music video blew my mind"
Examples sentiment ratings:
1: Positive
2: Negative
3: Positive
4: Neutral
5: Positive
Create sentiments for:
1. "I can't stand homework"
2. "This is no fun. I'm bored 😠"
3. "I can't wait for Halloween!!!"
4. "My cat is adorable ❤️❤️"
5. "I hate chocolate"
Sentiment classifications:
1.
Na het weergeven van de voorbeelden van model 4 van een zin die is geclassificeerd op basis van sentiment, geven we deze vervolgens een lijst met voorbeelden en vervolgens een lijst met gevoelsclassificaties met dezelfde numerieke index. De API kan op deze wijze ophalen hoe deze de geclassificeerde sentimenten moet uitvoeren.
En dat leidt ons naar wat we willen dat het model doet: we geven het vijf gevoelens voor het classificeren en vervolgens moet het de classificatie van elk model in een geordende lijst uitvoeren.
Hierdoor kan het model vijf (en nog meer) voorbeelden beoordelen in slechts één aanroep.
U kunt zien hoe de prompt of de tekst die aan het model wordt doorgegeven, de programmeertaal is.
Generatie
Een van de krachtigste maar eenvoudigste taken die u met de verschillende GPT-modellen kunt uitvoeren, is het genereren van nieuwe ideeën of versies van invoer. U kunt het model een lijst geven met enkele verhaalideeën en het model probeert toe te voegen aan die lijst. We hebben gezien dat het bedrijfsplannen, karakterbeschrijvingen en marketinglogans maakt door het een handvol voorbeelden te geven.
Gesprek
Het model is zeer goed in het voeren van gesprekken met mensen en zelfs met zichzelf. Met slechts een paar instructieregels hebben we gezien dat het model presteert als een klantenservice-chatbot die op intelligente wijze vragen beantwoordt zonder ooit flusterende of een verstandig krakende gesprekspartner te worden die grappen en puns maakt.
Transformatie
Het model is een taalmodel dat bekend is met verschillende manieren waarop woorden en tekens kunnen worden gebruikt om informatie uit te drukken. Dit varieert van tekst in natuurlijke taal tot code en andere talen dan Engels. Het model kan ook inhoud op een niveau begrijpen waarmee het inhoud op verschillende manieren kan samenvatten, converteren en uitdrukken.
Vertaling
Het model heeft al veel talen, zoals Frans, dus u hoeft het niet te leren. In plaats daarvan hoeft u alleen maar voldoende voorbeelden van de vertaling in de prompt op te geven, zodat het begrijpt dat het vertaalt van de ene taal naar de andere.
Conversie
In dit voorbeeld converteren we de naam van een film naar emoji. Dit toont de aanpassingsvermogen van het model om patronen op te halen en met andere tekens te werken.
Hier verwachten we dat de uitvoer een emoji-representatie is van de Spider-Man-film.
Back to Future: 👨👴🚗🕒
Batman: 🤵🦇
Transformers: 🚗🤖
Wonder Woman: 👸🏻👸🏼👸🏽👸🏾👸🏿
Spider-Man: 🕸🕷🕸🕸🕷🕸
Winnie the Pooh: 🐻🐼🐻
The Godfather: 👨👩👧🕵🏻♂️👲💥
Game of Thrones: 🏹🗡🗡🏹
Spider-Man:
Samenvatting
Het model kan de context van tekst begrijpen en deze op verschillende manieren herformuleren. Het kan bijvoorbeeld een blok tekst aannemen en een uitleg maken die een kind zou begrijpen.
Voltooiing
Hoewel alle prompts resulteren in voltooiingen, kan het handig zijn om te denken aan tekstvoltooiing als een eigen taak in gevallen waarin u het model wilt laten ophalen waar u was gebleven. Als u deze prompt bijvoorbeeld krijgt, zal het model doorgaan met de trein van gedachten over verticale landbouw.
Vertical farming provides a novel solution for producing food locally, reducing transportation costs and
Feitelijke antwoorden
Grote taalmodellen (LLM's) hebben veel kennis die ze hebben geleerd van de gegevens die ze hebben getraind. Ze hebben ook de mogelijkheid om antwoorden te geven die echt klinken, maar in feite zijn opgebouwd. Er zijn twee manieren om de kans te beperken dat LLM's een antwoord vormen.
1. Geef een grond waarheid voor de API als u het model een hoofdtekst geeft om vragen over (zoals een Wikipedia-vermelding) te beantwoorden, is het minder waarschijnlijk dat een antwoord wordt samengevoegd.
2. Gebruik een lage waarschijnlijkheid en laat de API zien hoe ik 'Ik weet het niet' te zeggen als het model begrijpt dat in gevallen waarin het minder zeker is over een antwoord dat zegt dat 'Ik weet het niet' of een bepaalde variatie geschikt is, het minder geneigd is antwoorden op te maken.
In dit voorbeeld geven we de modelvoorbeelden van vragen en antwoorden die het kent en geven we vervolgens voorbeelden van dingen die het niet zou weten en vraagtekens zouden geven. We stellen ook de kans op nul in, zodat het model waarschijnlijker reageert met een '?' als er twijfel is.
Q: Who is Batman?
A: Batman is a fictional comic book character.
Q: What is torsalplexity?
A: ?
Q: What is Devz9?
A: ?
Q: Who is George Lucas?
A: George Lucas is American film director and producer famous for creating Star Wars.
Samenvatting
Azure OpenAI Service biedt REST API-toegang tot de krachtige taalmodellen van OpenAI, waaronder de GPT-3.5- en GPT-4-modelreeks. Het biedt u ook de beveiligings- en bedrijfsfuncties die u nodig hebt om te vertrouwen vanuit de Azure-cloud.
Een van de handigste functies van de OpenAI-taalmodellen is het voltooien van tekst. U geeft een prompt of een duidelijke taalbeschrijving door van wat het model moet doen en kan taken uitvoeren, zoals tekstclassificatie, tekstgeneratie of samenvatting van tekst.