I denne bloggen vil vi dekke innholdet nedenfor:
- Hvordan tilpasse tekstgenerering ved å laste modell med 'pipeline'-funksjon fra Transformers?
- Hvordan bruke en transformatorbasert modell for å generere tekst i PyTorch?
- Hvordan bruke en transformatorbasert modell for å generere tekst i TensorFlow?
Hvordan tilpasse tekstgenerering ved å laste modellen med 'pipeline'-funksjon fra Transformers?
« rørledning ”-funksjonen brukes til automatisk å laste ned den forhåndstrente AI-modellen i henhold til brukerens krav. For å bruke denne spesielle funksjonen, må brukere installere ' transformatorer ' pakker. Denne pakken gir tilgang til state-of-the-art transformatorbaserte modeller som kan utføre sentimentanalyse så vel som flere andre Naturlig språkbehandling (NLP) oppgaver.
For å sjekke ut den praktiske demonstrasjonen av det ovenfor beskrevne scenariet, gå til trinnene nedenfor!
Trinn 1: Installer 'transformers'-pakker
Utfør først '! pip' kommando for å installere transformatorpakkene:
! pip installere transformatorer
Som du kan se, har den angitte pakken blitt installert:
Trinn 2: Importer transformatorbasert modell
Importer deretter den nødvendige transformatorbaserte modellen. For å gjøre det, importer først ' rørledning ' funksjon fra ' transformatorer '. Deretter bruker du den importerte funksjonen og sender ' tekstgenerering ' som et argument for det sammen med det nødvendige modellnavnet ' gpt2 '. Send dem deretter til ' generere variabel:
fra transformatorer import rørledning
generere = rørledning ( 'tekstgenerering' , modell = 'gpt2' )
Trinn 3: Generer tilpasse tekst
Send nå ønsket tekst som et argument til ' generere '. Som vist under:
generere ( 'Ved å bruke gpt2-modellen for å generere tekst i transformatorer' )I henhold til den oppgitte utgangen, den nedlastede forhåndstrente ' gpt3 modell har blitt generert tekst vellykket:
Du kan også bruke de andre argumentene, for eksempel:
ledetekst = 'Ved å bruke gpt2-modellen for å generere tekst i transformatorer'skrive ut ( genet ( ledetekst , num_return_sequences = 5 , maks lengde = tjue ) )
Her:
- ' ledetekst ” brukes som et argument som holder ut input.
- ' num_return_sequence argument brukes til å generere antall sekvenser av den angitte teksten.
- ' maks lengde argumentet brukes til å spesifisere lengden på den genererte teksten. I vårt tilfelle er det begrenset til ' 30 ” tokens (ord eller tegnsetting):
Merk: Den tilpassede teksten vil være en fortsettelse av den spesifiserte ledeteksten som er basert på modellens treningsdata.
Hvordan bruke en transformatorbasert modell for å generere tekst i PyTorch?
Brukere kan også tilpasse teksten i ' PyTorch ' hvilken er den ' Lommelykt ”basert maskinlæringsrammeverk. Den brukes til forskjellige applikasjoner, for eksempel NLP og Computer Vision. For å bruke den transformatorbaserte modellen for å tilpasse teksten i PyTorch, importer først ' GPT2Tokenizer ' og ' GPT2-modell ' funksjoner fra ' transformatorer ':
fra transformatorer import GPT2Tokenizer , GPT2-modellDeretter bruker du ' GPT2Tokenizer ' tokenizer i henhold til vår ønskede forhåndstrente modell kalt ' gpt2 ':
tokenizer = GPT2Tokenizer. from_pretrained ( 'gpt2' )Etterpå instansierer du vektene fra en forhåndstrent modell:
modell = GPT2-modell. from_pretrained ( 'gpt2' )Deretter erklærer du en ' gen_tekst variabel som inneholder teksten vi ønsker å tilpasse:
gen_tekst = 'Ved å bruke gpt2-modellen for å generere tekst i transformatorer'Pass nå ' gen_tekst ' og ' return_tensors='pt' ' som et argument som vil generere teksten i PyTorch og lagre den genererte verdien i ' kodet_inngang variabel:
kodet_inngang = tokenizer ( gen_tekst , return_tensorer = 'pt' )Til slutt, bestå ' kodet_inngang ' variabel som holder den tilpassede teksten til ' modell ' som en parameter og få den resulterende utgangen ved å bruke ' maks lengde ' argument som er satt til ' tjue ' som indikerer at den genererte teksten vil være begrenset til et gitt tokens, ' num_return_sequences ' som er satt til ' 5 ' som viser at generert tekst vil være avhengig av 5 tekstsekvenser:
produksjon = modell ( **encoded_input )generator ( gen_tekst , maks lengde = tjue , num_return_sequences = 5 )
Produksjon
Hvordan bruke en transformatorbasert modell for å generere tekst i TensorFlow?
For å generere teksten i Transformers, ' TensorFlow ”-baserte maskinlæringsrammer brukes også. For å gjøre det, importer først de nødvendige funksjonene, for eksempel ' GPT2Tokenizer ' og ' TFGPT2-modell ' fra ' transformatorer '. Resten av koden er den samme som ovenfor, bare vi bruker ' TFGPT2-modell '-funksjonen i stedet for ' GPT2-modell ' funksjon. Som følger:
fra transformatorer import GPT2Tokenizer , TFGPT2-modelltokenizer = GPT2Tokenizer. from_pretrained ( 'gpt2' )
modell = TFGPT2-modell. from_pretrained ( 'gpt2' )
tekst = 'Ved å bruke gpt2-modellen for å generere tekst i transformatorer'
kodet_inngang = tokenizer ( tekst , return_tensorer = 'tf' )
produksjon = modell ( kodet_inngang )
generator ( gen_tekst , maks lengde = tjue , num_return_sequences = 5 )
Som du kan se, har den tilpassede teksten blitt generert:
Det er det! Vi har utdypet å tilpasse tekstgenerering i Transformers.
Konklusjon
For å tilpasse tekstgenerering i Transformers, er det forskjellige måter som å laste modellen med pipeline-funksjonen ved å bruke den transformatorbaserte modellen i ' PyTorch ' og ' TensorFlow ” som er basert på rammeverk for maskinlæring. I denne veiledningen har vi gitt kort informasjon sammen med en praktisk demonstrasjon av å tilpasse tekstgenerering i Transformers.