
<hr>

# PT - README

<hr>


<p align="center">
  <img width="250" alt="Samba Logo" src="https://cdn-uploads.huggingface.co/production/uploads/658c21f4c1229bf113295773/MuRvqTWpp-d0NRYQ0yRPL.png">
</p>

Samba é um LLM treinado em dados da língua portuguesa. O modelo é baseado no [TinyLlama-1.1B](https://huggingface.co/TinyLlama/TinyLlama-1.1B-Chat-v1.0), uma versão de 1.1B parâmetros do LLaMA-2.

O projeto do LLM Samba tem como objetivo fornecer mais opções de LLMs para língua portuguesa, ao mesmo tempo que disponibiliza um modelo menos complexo para que, dessa forma, usuários com menos poder computacional possam usufruir das LLMs.

Em apoio aos países de língua portuguesa. 🇦🇴🇧🇷🇨🇻🇬🇼🇬🇶🇲🇿🇵🇹🇸🇹🇹🇱

## Detalhes do Modelo

Esse modelo foi fine-tunado em quatro datasets ([rebel-pt](https://huggingface.co/datasets/ju-resplande/rebel-pt), [OIG_small_chip2_portuguese_brasil](https://huggingface.co/datasets/paulofinardi/OIG_small_chip2_portuguese_brasil), [Cabrita-lora-ptbr](https://huggingface.co/datasets/Guilherme34/Cabrita-lora-ptbr) e [Canarim-Instruct-PTBR-Dataset](https://huggingface.co/datasets/dominguesm/Canarim-Instruct-PTBR-Dataset)) com dados de texto na língua portuguesa, contendo aproximadamente 1.4 million de amostras.

## Atualizações Futuras

- Adicionar mais dados de textos da língua portuguesa.
- Disponibilizar versões quantizadas.

### Descrição do Modelo

- **Desenvolvido por:** [Leonardo Souza](https://huggingface.co/lrds-code)
- **Tipo do Modelo:** LLaMA-Based
- **Licença:** Academic Free License v3.0
- **Fine-tunado do modelo:** [TinyLlama-1.1B](https://huggingface.co/TinyLlama/TinyLlama-1.1B-Chat-v1.0)

## Como usar

```python
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('lrds-code/samba-1.1B')
tokenizer = AutoTokenizer.from_pretrained('lrds-code/samba-1.1B')

text = 'Pergunta: Como desenvolver habilidades de programação em python?'
inputs = tokenizer(text, return_tensors='pt')

outputs = model.generate(**inputs)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

## Pergunta: Como desenvolver habilidades de programação em python?
## Resposta: Para desenvolver habilidades de programação em Python, você precisa aprender a ler e escrever código.
##           Você também precisa entender o que significa cada parte do código e como ela funciona.
##           Você também precisa entender como usar bibliotecas e frameworks para criar aplicativos.
##           Além disso, você precisa entender como usar o IDE (Integrated Development Environment) para desenvolver e testar seu código.

```

<hr>

# EN - README

<hr>

# Samba-1.1B

<p align="center">
  <img width="250" alt="Samba Logo" src="https://cdn-uploads.huggingface.co/production/uploads/658c21f4c1229bf113295773/MuRvqTWpp-d0NRYQ0yRPL.png">
</p>

Samba is a LLM trained on portuguese language data. The model is based on [TinyLlama-1.1B](https://huggingface.co/TinyLlama/TinyLlama-1.1B-Chat-v1.0), a 1.1B parameter version of LLaMA-2.

The LLM Samba project aims to provide more LLM options in Portuguese, while also providing less complex models so that users with less computational power can take advantage of the LLMs.

In support of portuguese-speaking countries. 🇦🇴🇧🇷🇨🇻🇬🇼🇬🇶🇲🇿🇵🇹🇸🇹🇹🇱

## Model Details

This model was fine-tuned on four datasets ([rebel-pt](https://huggingface.co/datasets/ju-resplande/rebel-pt), [OIG_small_chip2_portuguese_brasil](https://huggingface.co/datasets/paulofinardi/OIG_small_chip2_portuguese_brasil), [Cabrita-lora-ptbr](https://huggingface.co/datasets/Guilherme34/Cabrita-lora-ptbr) and [Canarim-Instruct-PTBR-Dataset](https://huggingface.co/datasets/dominguesm/Canarim-Instruct-PTBR-Dataset)) with portuguese data that total approximately 1.4 million samples.

## Future Updates

- Add more data from the portuguese language.
- Make quantized versions available.

### Model Description

- **Developed by:** [Leonardo Souza](https://huggingface.co/lrds-code)
- **Model type:** LLaMA-Based
- **License:** Academic Free License v3.0
- **Finetuned from model:** [TinyLlama-1.1B](https://huggingface.co/TinyLlama/TinyLlama-1.1B-Chat-v1.0)

## How to Use

```python
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('lrds-code/samba-1.1B')
tokenizer = AutoTokenizer.from_pretrained('lrds-code/samba-1.1B')

text = 'Pergunta: Como desenvolver habilidades de programação em python?'
inputs = tokenizer(text, return_tensors='pt')

outputs = model.generate(**inputs)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

## Pergunta: Como desenvolver habilidades de programação em python?
## Resposta: Para desenvolver habilidades de programação em Python, você precisa aprender a ler e escrever código.
##           Você também precisa entender o que significa cada parte do código e como ela funciona.
##           Você também precisa entender como usar bibliotecas e frameworks para criar aplicativos.
##           Além disso, você precisa entender como usar o IDE (Integrated Development Environment) para desenvolver e testar seu código.

```
{"language": ["pt", "en"], "license": "llama2", "library_name": "transformers", "tags": ["Portuguese", "Llama", "Tiny-Llama", "LLM", "PEFT"], "datasets": ["ju-resplande/rebel-pt", "paulofinardi/OIG_small_chip2_portuguese_brasil", "Guilherme34/Cabrita-lora-ptbr", "dominguesm/Canarim-Instruct-PTBR-Dataset"], "pipeline_tag": "text-generation", "widget": [{"text": "Pergunta: Quantos planetas existem no sistema solar?\n"}]}
transformers safetensors llama text-generation Portuguese Llama Tiny-Llama LLM PEFT conversational pt en dataset:ju-resplande/rebel-pt dataset:paulofinardi/OIG_small_chip2_portuguese_brasil dataset:Guilherme34/Cabrita-lora-ptbr dataset:dominguesm/Canarim-Instruct-PTBR-Dataset license:llama2 autotrain_compatible endpoints_compatible text-generation-inference region:us