Logotipo-500-x-400-px.png

Ajuste Fino de um Modelo de Linguagem e Execução Local com LLaMa e Ollama

Neste guia abrangente, vamos mergulhar no mundo do ajuste fino de modelos de linguagem e aprender como executar um modelo ajustado localmente usando o LLaMa e o Ollama. Acompanhe o passo a passo para criar um modelo de linguagem especializado em gerar código SQL a partir de dados de tabelas.

pxhkDaKzBaY

A escolha do conjunto de dados é crucial para o sucesso do ajuste fino. Utilizaremos o conjunto de dados "Synthetic Text to SQL", que contém mais de 105.000 registros, ideal para treinar nosso modelo. Para este projeto, você pode utilizar uma GPU potente ou o Google Colab, que oferece recursos de computação em nuvem.

Recomendamos o uso do Anaconda com as bibliotecas CUDA (versão 12.1) e Python 3.10. Assegure-se de ter o Unsloth instalado, pois ele otimiza o processo de ajuste fino, reduzindo o uso de memória em até 80%. O LLaMa, um modelo de linguagem de código aberto com excelente desempenho em inglês, será nossa base.

Para configurar o ambiente, instale as dependências do Unsloth:

```bash conda create -n env_name python=3.10 conda activate env_name pip install -r requirements.txt pip install ipywidgets jupyter nbextension enable --py widgetsnbextension ```

Este comando cria um novo ambiente e instala as bibliotecas necessárias, incluindo PyTorch, CUDA e o Unsloth. Execute seu Jupyter Notebook para começar.

CopyofIAGenerativanoDireito40

R$ 59,90

No Jupyter Notebook, importe o modelo de linguagem do Unsloth, especificando o modelo LLaMa 3 de 8 bits e configurando o tamanho máximo de sequência para 2048 tokens. Ative o carregamento em 4 bits para reduzir o uso de memória.

```python from transformers import AutoTokenizer from transformers import AutoModelForSeq2SeqLM from peft import LoraConfig, get_peft_model from datasets import load_dataset from transformers import DataCollatorForSeq2Seq from transformers import Seq2SeqTrainer, Seq2SeqTrainingArguments from datasets import load_dataset # ... (código para carregar o modelo e configurar parâmetros) ```

Em seguida, carregue o modelo PEFT com adaptadores LoRA, que permitem ajustar apenas uma pequena parte dos parâmetros do modelo, economizando tempo e recursos. O Unsloth oferece configurações recomendadas para este processo.

A formatação dos dados é crucial para o entendimento do modelo. Utilizaremos prompts no estilo Alpaca, ajustando o conjunto de dados para incluir apenas as informações relevantes: SQL, prompt e explicação do código gerado. Adapte o código para refletir essa formatação.

Configure o módulo de treinamento utilizando o Seq2SeqTrainer do Hugging Face. Defina parâmetros como número de etapas de treinamento, semente aleatória e etapas de aquecimento. Após a configuração, execute o treinamento.

Após o treinamento, converta o modelo para o formato adequado para execução local com o Ollama. Utilize o comando fornecido pelo Unsloth:

```bash # ... (comando para converter o modelo) ```

Crie um arquivo chamado "modelfile" no diretório do modelo e adicione um prompt descritivo, como: "Você é um gerador de SQL que recebe a consulta de um usuário e fornece SQL útil para uso.".

Com o Ollama em execução, utilize o seguinte comando para carregar o modelo:

```bash ollama run ```

Pronto! Agora você pode utilizar seu modelo de linguagem ajustado localmente com a API compatível com OpenAI.

Gostou do conteúdo? Compartilhe

Facebook
LinkedIn
WhatsApp
Twitter
Telegram
Email

Referência

Ajuste Fino de um Modelo de Linguagem e Execução Local com LLaMa e Ollama

Este site utiliza cookies. Ao continuar a navegar neste site, você aceita o uso de cookies e nossa política de privacidade.