Text Generation
Transformers
Safetensors
Portuguese
llama
Portuguese
Tiny-Llama
PEFT
conversational
text-generation-inference
# Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("lrds-code/samba-1.1B")
model = AutoModelForCausalLM.from_pretrained("lrds-code/samba-1.1B")
messages = [
{"role": "user", "content": "Who are you?"},
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=40)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))Quick Links
README
Samba é um LLM treinado em dados da língua portuguesa. O modelo é baseado no TinyLlama-1.1B, uma versão de 1.1B parâmetros do LLaMA-2.
Descrição do Modelo
- Desenvolvido por: Leonardo Souza
- Tipo do Modelo: LLaMA-Based
- Licença: Academic Free License v3.0
- Fine-tunado do modelo: TinyLlama-1.1B
Como usar
import torch
from transformers import pipeline
samba = pipeline('text-generation', model='lrds-code/samba-1.1B', torch_dtype=torch.bfloat16, device_map='auto')
messages = [{'role':'system',
'content':''},
{'role':'user',
'content':'Quantos planetas existem no sistema solar?'}]
prompt = samba.tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = samba(prompt, max_new_tokens=256, do_sample=False, temperature=0.1, top_k=50, top_p=0.95, repetition_penalty=1.1, do_sample=False)
print(outputs[0]['generated_text'])
Parâmetros Importantes
- repetition_penalty: é utilizado para evitar a repetição de palavras ou frases. Quando esse valor é ajustado para ser maior que 1, o modelo tenta diminuir a probabilidade de gerar palavras que já apareceram anteriormente. Basicamente, quanto maior o valor, mais o modelo tenta evitar repetições.
- do_sample: determina se o modelo deve ou não amostrar aleatoriamente a próxima palavra com base nas probabilidades calculadas. Portanto, do_sample=True introduz variação e imprevisibilidade no texto gerado, enquanto que se do_sample=False o modelo escolherá sempre a palavra mais provável como próxima palavra, o que pode levar a saídas mais determinísticas e, possivelmente, mais repetitivas.
- temperature: afeta a aleatoriedade na escolha da próxima palavra. Um valor baixo (próximo de 0) faz com que o modelo seja mais "confiante" nas suas escolhas, favorecendo palavras com alta probabilidade e levando a saídas mais previsíveis. Por outro lado, um valor alto aumenta a aleatoriedade, permitindo que o modelo escolha palavras menos prováveis, o que pode tornar o texto gerado mais variado e criativo.
- Downloads last month
- 11
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="lrds-code/samba-1.1B") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)