Aula 41 - Redes Neurais Aplicadas a Chatbots: Explorando o Vicuna
Explorando o Vicuna
O
Vicuna é um chatbot de código aberto treinado por ajuste fino do modelo
LLaMA em conversas compartilhadas pelos usuários coletadas do
ShareGPT.
O
ShareGPT é um website onde os usuários podem compartilhar conversas geradas pelo
ChatGPT da
OpenAI.
Ele serve como uma plataforma para os usuários compartilharem diálogos, trocar ideias e explorar diferentes interações com o chatbot.
As conversas compartilhadas no
ShareGPT podem ser utilizadas como dados de treinamento para melhorar modelos de chatbot, como o:
Vicuna-13B.
Comparando o Vicuna-13-b com o ChatGPT
Uma avaliação preliminar utilizando o
GPT-4 como juiz, mostra que o
Vicuna-13B atinge mais de
90% da qualidade do
ChatGPT da
OpenAI e do
Google Bard, superando outros modelos como o
LLaMA e o
Stanford Alpaca em mais de
90% dos casos.
O custo para treinar o
Vicuna-13B é de aproximadamente
$300.
O código e os pesos, juntamente com uma demonstração online, estão disponíveis publicamente para uso não comercial.
Arquitetura da Rede
O
Vicuna utiliza uma arquitetura de rede neural conhecida como
LLaMA (
Linguistically Linked Language Models).
A arquitetura
LLaMA é baseada em modelos de linguagem de grande escala, como o
GPT (
Generative Pre-trained Transformer), que é amplamente reconhecido por sua eficácia na geração de texto coerente e relevante.
A arquitetura
LLaMA também se beneficia de otimizações de memória para lidar com sequências longas e contextos mais extensos.
Isso é alcançado por meio de técnicas como
checkpoint de gradiente (
gradient checkpointing) e
flash attention, que ajudam a mitigar a pressão sobre a memória da GPU e permitem que o
Vicuna processe informações mais extensas.
No geral, a arquitetura de rede neural do
Vicuna combina a eficácia do modelo GPT com aprimoramentos específicos para diálogos de chatbot e processamento de conversas em várias rodadas.
Essa combinação permite que o
Vicuna gere respostas mais detalhadas e estruturadas, proporcionando uma experiência de chatbot de alta qualidade.
Modelo Alpaca 7B
O
Alpaca 7B é um modelo ajustado a partir do modelo
LLaMA 7B da
Meta em demonstrações de acompanhamento de instruções de
52K.
Ele aborda a necessidade de modelos acessíveis com capacidades semelhantes a modelos de código fechado, como o
text-davinci-003 da
OpenAI.
O
Alpaca foi treinado com base em
52 mil demonstrações de seguir instruções geradas a partir do
text-davinci-003 da
OpenAI.
O modelo
Alpaca é relativamente pequeno, fácil e barato de reproduzir, tornando-o adequado para pesquisa acadêmica.
Ele visa melhorar os modelos de seguir instruções ao lidar com problemas como geração de informações falsas, propagação de estereótipos e produção de linguagem tóxica.
O processo de treinamento envolve o uso dos modelos
LLaMA da
Meta como um modelo de linguagem pré-treinado sólido e dados de alta qualidade de seguir instruções.
O processo de geração de dados aproveita o método de autoinstrução e envolve instruir o
text-davinci-003 a gerar mais instruções usando um conjunto inicial.
O conjunto de dados resultante consiste em
52 mil instruções únicas e suas respectivas saídas, geradas a um
custo inferior a
500 dólares usando a
API da
OpenAI.
O modelo
Alpaca é ajustado usando o framework de treinamento da
Hugging Face, incorporando técnicas como
Fully Sharded Data Parallel e treinamento de precisão mista.
A avaliação preliminar do
Alpaca mostra que ele tem um desempenho semelhante ao
text-davinci-003 em termos de seguir instruções.
O
Alpaca apresenta limitações conhecidas comuns a modelos de linguagem, incluindo alucinações, toxicidade e estereótipos.
Por exemplo, ele pode fornecer informações incorretas ou espalhar desinformação.
O lançamento do
Alpaca é acompanhado por uma demonstração interativa para exploração e avaliação, além de um filtro de conteúdo e marca d'água para mitigar riscos potenciais.
Os recursos lançados incluem uma demonstração interativa, o conjunto de dados de seguir instruções, o código de geração de dados e o código de treinamento.
A intenção é possibilitar estudos científicos controlados sobre modelos de linguagem de seguir instruções e incentivar a pesquisa reprodutível na comunidade acadêmica
As direções futuras para o
Alpaca incluem uma avaliação mais aprofundada, melhorias na segurança e compreensão das propriedades do modelo e alternativas ao treinamento.
O desenvolvimento do
Alpaca foi apoiado pelo
Center for Research on Foundation Models (
CRFM) da
Universidade Stanford, com contribuições da
Meta AI Research, da equipe do
self-instruct, da
Hugging Face e da
OpenAI.
Agora vamos executar o Vicuna com o modelo
llama-7b-hf no
google colab.
Partiu Notebook no Google Colab
Todo o código está explicado no próprio
notebook.
Por essa aula é só, nos vemos na próxima, valeu \o/.
Meu github:
Novamente deixo meus link de afiliados:
Obrigado, até a próxima e bons estudos. ;)