|
--- |
|
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. |
|
|
|
|