bonfimr's picture
Update README.md (#1)
ac3c86a verified
|
raw
history blame
No virus
2.12 kB
metadata
base_model: TinyLlama/TinyLlama-1.1B-Chat-v1.0
library_name: peft

Modelo Tiny Llama com Fine Tuning (LORA)

Este repositório contém um modelo de linguagem Tiny Llama 1 treinado com Fine Tuning pelo uso do LORA. Esse modelo está especializado em responder perguntas relacionadas a legislação da Universidade Federal do Amazonas.

O repositório contém os dados do modelo, uma pasta Relatórios, em que se encontram os relatórios de pré processamento, desempenho do modelo e de eficácia do sistema. Além disso, a pasta Notebooks, é onde temos todos os notebooks utilizados para realizar o fine tuning desse modelo, desde o pré processamento até o uso do RAG.

Pré Processamento

No pré processamento, foi utilizado o OCR para extrair as informações dos PDFs das legislações e armazenar elas em um arquivo de texto. Com os textos extraídos, geramos uma base de dados sintética de instruções, fazendo requisições para a API do modelo Llama-3-70B-Instruct e usando um prompt em inglês.

LORA

O LORA está sendo utilizado da seguinte forma:

  • Configuração do LORA:

    lora_r, lora_alpha, lora_dropout: Esses parâmetros controlam o tamanho e a complexidade das matrizes de baixo rank adicionadas a cada camada. peft_config: Essa configuração define os parâmetros do LORA para o modelo.

  • Carregamento do modelo base:

    O modelo pré-treinado TinyLlama-1.1B-Chat-v1.0 é carregado com a configuração de quantização para economizar memória.

  • Criação do modelo fine-tuned:

    O modelo base é combinado com a configuração LORA para criar um novo modelo que será treinado nos dados específicos.

  • Treinamento:

    O modelo fine-tuned é treinado nos dados de treinamento, ajustando os parâmetros do LORA para a tarefa específica de responder perguntas sobre legislação.

RAG

  • A fazer.

Avaliação

Para avaliar o modelo, fizemos no notebook do Lora um dataframe que agrupa os resultados previstos pelo modelo e os resultados reais (pelos dados separados para teste), permitindo uma análise comparativa acerca do desempenho do modelo.