Como personalizar a geração de texto em Transformers

Como Personalizar A Geracao De Texto Em Transformers



Na aprendizagem profunda, a geração de texto refere-se ao processo de personalização automática do texto em linguagem natural com a ajuda de Redes Neurais Artificiais (RNA) . Além disso, diferentes modelos de linguagem são utilizados para esse propósito específico, que são pré-treinados em grandes conjuntos de dados para prever a próxima palavra em uma sequência dependendo da palavra anterior. Além disso, o texto personalizado pode ser utilizado para vários aplicativos, incluindo tradução de idiomas, geração de conteúdo, chatbots e muito mais.

Neste blog, abordaremos o conteúdo fornecido abaixo:

Como personalizar a geração de texto carregando o modelo com a função “pipeline” dos Transformers?

O ' gasoduto ”A função é usada para baixar automaticamente o modelo de IA pré-treinado de acordo com os requisitos do usuário. Para usar esta função específica, os usuários precisam instalar o “ transformadores ”pacotes. Este pacote dá acesso a modelos de última geração baseados em Transformer que podem realizar análises de sentimentos, bem como vários outros Processamento de linguagem natural (PNL) tarefas.







Para conferir a demonstração prática do cenário descrito acima, siga as etapas abaixo!



Etapa 1: Instale pacotes “transformadores”

Inicialmente, execute o comando “! pip” comando para instalar os pacotes do transformador:



! pip instalar transformadores

Como você pode ver, o pacote especificado foi instalado com sucesso:





Etapa 2: importar modelo baseado em transformador

Depois, importe o modelo baseado em transformador necessário. Para fazer isso, primeiro importe o “ gasoduto ”função de“ transformadores ”. Em seguida, use a função importada e passe o “ geração de texto ”como um argumento junto com o nome do modelo necessário“ gpt2 ”. Em seguida, passe-os para o “ gerar ' variável:



de transformadores importar gasoduto

gerar = gasoduto ( 'geração de texto' , modelo = 'gpt2' )

Etapa 3: gerar texto personalizado

Agora, passe o texto desejado como argumento para o “ gerar ”. Como mostrado abaixo:

gerar ( “Usando o modelo gpt2 para geração de texto em transformadores” )

De acordo com a saída fornecida, o pré-treinado baixado “ gpt3 ”modelo foi gerado texto com sucesso:

Você também pode usar outros argumentos, como:

incitar = “Usando o modelo gpt2 para geração de texto em transformadores”

imprimir ( gene ( incitar , num_return_sequences = 5 , comprimento máximo = vinte ) )

Aqui:

  • incitar ”É usado como um argumento que retém a entrada.
  • num_return_sequence ”O argumento é usado para gerar o número de sequências do texto fornecido.
  • comprimento máximo ”O argumento é utilizado para especificar o comprimento do texto gerado. No nosso caso, é limitado a “ 30 ” tokens (palavras ou pontuação):

Observação: O texto personalizado será uma continuação do prompt especificado baseado nos dados de treinamento do modelo.

Como utilizar um modelo baseado em transformador para gerar texto em PyTorch?

Os usuários também podem personalizar o texto em “ PyTorch ' qual é o ' Tocha ”estrutura de aprendizado de máquina baseada. É utilizado para diversas aplicações, como PNL e Visão Computacional. Para usar o modelo baseado em transformador para personalizar o texto no PyTorch, primeiro importe o “ Tokenizador GPT2 ' e ' Modelo GPT2 ”funções do“ transformadores ”:

de transformadores importar Tokenizador GPT2 , Modelo GPT2

Em seguida, use o “ Tokenizador GPT2 ”Tokenizer de acordo com nosso modelo pré-treinado desejado denominado“ gpt2 ”:

tokenizador = GPT2Tokenizer. de_pré-treinado ( 'gpt2' )

Depois, instanciando os pesos de um modelo pré-treinado:

modelo = Modelo GPT2. de_pré-treinado ( 'gpt2' )

Em seguida, declare um “ gen_texto ”Variável que contém o texto que queremos personalizar:

gen_texto = “Usando o modelo gpt2 para geração de texto em transformadores”

Agora, passe o “ gen_texto ' e ' return_tensores='pt' ”Como um argumento que irá gerar o texto no PyTorch e armazenar o valor gerado no “ entrada_codificada ' variável:

entrada_codificada = tokenizador ( gen_texto , return_tensores = 'pt' )

Por último, passe o “ entrada_codificada ”Variável que contém o texto personalizado para“ modelo ”Como parâmetro e obtenha a saída resultante usando o“ comprimento máximo ”Argumento definido como“ vinte ” que indica que o texto gerado será limitado a tokens fornecidos, o “ num_return_sequences ”que definido como“ 5 ”que mostra que o texto gerado dependerá de 5 sequências de texto:

saída = modelo ( **entrada_codificada )

gerador ( gen_texto , comprimento máximo = vinte , num_return_sequences = 5 )

Saída

Como utilizar um modelo baseado em transformador para gerar texto no TensorFlow?

Para gerar o texto em Transformers, o “ TensorFlow ”estruturas de aprendizado de máquina baseadas também são usadas. Para fazer isso, primeiro importe as funções necessárias, como o “ Tokenizador GPT2 ' e ' Modelo TFGPT2 ' de ' transformadores ”. O resto do código é igual ao anterior, apenas usamos o “ Modelo TFGPT2 ”Função em vez de“ Modelo GPT2 ”função. Como se segue:

de transformadores importar Tokenizador GPT2 , Modelo TFGPT2

tokenizador = GPT2Tokenizer. de_pré-treinado ( 'gpt2' )

modelo = Modelo TFGPT2. de_pré-treinado ( 'gpt2' )

texto = “Usando o modelo gpt2 para geração de texto em transformadores”

entrada_codificada = tokenizador ( texto , return_tensores = 'tf' )

saída = modelo ( entrada_codificada )

gerador ( gen_texto , comprimento máximo = vinte , num_return_sequences = 5 )

Como você pode ver, o texto personalizado foi gerado com sucesso:

É isso! Elaboramos sobre como personalizar a geração de texto em Transformers.

Conclusão

Para customizar a geração de texto em Transformers, existem diferentes formas como carregar o modelo com a função pipeline, utilizando o modelo baseado em transformador em “ PyTorch ' e ' TensorFlow ”que são baseados em estruturas de aprendizado de máquina. Neste guia, fornecemos breves informações junto com uma demonstração prática de personalização da geração de texto em Transformers.