Aula 41 – Redes Neurais Aplicadas a Chatbots: Explorando o Vicuna
Aula 41 – Redes Neurais Aplicadas a Chatbots: Explorando o Vicuna
Voltar para página principal do blog
Todas as aulas desse curso
Aula 40 Aula 42
Redes Sociais:
Site das bibliotecas
Tensorflow
Keras
Cursos Gratuitos
Digital Innovation
Quer aprender python3 de graça e com certificado? Acesse então:
workover
Meus link de afiliados:
Hostinger
Digital Ocean
One.com
Canais do Youtube
Toti
Lofi Music Zone Beats
Backing Track / Play-Along
Código Fluente
Putz!
Vocal Techniques and Exercises
Fiquem a vontade para me adicionar ao linkedin.
PIX para doações
Notebook da aula
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.