File size: 5,472 Bytes
e8b1f8e 6438152 e8b1f8e 6438152 ca6feaf 6438152 ca6feaf 6438152 ca6feaf 6438152 ca6feaf 6438152 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 |
---
license: cc-by-nc-4.0
datasets:
- bertin-project/alpaca-spanish
language:
- es
inference: false
---
# Model Card for Model ID
This model is the Llama-2-13b-hf fine-tuned with an adapter on the Spanish Alpaca dataset.
## Model Details
### Model Description
This is a Spanish chat model fine-tuned on a Spanish instruction dataset.
The model expect a prompt containing the instruction, with an option to add an input (see examples below).
- **Developed by:** 4i Intelligent Insights
- **Model type:** Chat model
- **Language(s) (NLP):** Spanish
- **License:** cc-by-nc-4.0 (inhereted from the alpaca-spanish dataset),
- **Finetuned from model :** Llama 2 13B ([license agreement](https://ai.meta.com/resources/models-and-libraries/llama-downloads/))
## Uses
The model is intended to be used directly without the need of further fine-tuning.
## Bias, Risks, and Limitations
This model inherits the bias, risks, and limitations of its base model, Llama 2, and of the dataset used for fine-tuning.
Note that the Spanish Alpaca dataset was obtained by translating the original Alpaca dataset. It contains translation errors that may have negatively impacted the fine-tuning of the model.
## How to Get Started with the Model
Use the code below to get started with the model for inference. The adapter was directly merged into the original Llama 2 model.
The following code sample uses 4-bit quantization, you may load the model without it if you have enough VRAM. We show results for hyperparameters that we found work well for this set of prompts.
```py
from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig, TrainingArguments, GenerationConfig
import torch
model_name = "4i-ai/Llama-2-13b-alpaca-es"
#Tokenizer
tokenizer = AutoTokenizer.from_pretrained(model_name, use_fast=True)
def create_and_prepare_model():
compute_dtype = getattr(torch, "float16")
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=compute_dtype,
bnb_4bit_use_double_quant=True,
)
model = AutoModelForCausalLM.from_pretrained(
model_name, quantization_config=bnb_config, device_map={"": 0}
)
return model
model = create_and_prepare_model()
def generate(instruction, input=None):
#Format the prompt to look like the training data
if input is not None:
prompt = "### Instruction:\n"+instruction+"\n\n### Input:\n"+input+"\n\n### Response:\n"
else :
prompt = "### Instruction:\n"+instruction+"\n\n### Response:\n"
inputs = tokenizer(prompt, return_tensors="pt")
input_ids = inputs["input_ids"].cuda()
generation_output = model.generate(
input_ids=input_ids,
repetition_penalty=1.5,
generation_config=GenerationConfig(temperature=0.1, top_p=0.75, top_k=40, num_beams=20), #hyperparameters for generation
return_dict_in_generate=True,
output_scores=True,
max_new_tokens=150, #maximum tokens generated, increase if you want longer asnwer (up to 2048 - the length of the prompt), generation "looks" slower for longer response
)
for seq in generation_output.sequences:
output = tokenizer.decode(seq, skip_special_tokens=True)
print(output.split("### Response:")[1].strip())
generate("Háblame de la superconductividad.")
print("-----------")
generate("Encuentra la capital de España.")
print("-----------")
generate("Encuentra la capital de Portugal.")
print("-----------")
generate("Organiza los números dados en orden ascendente.", "2, 3, 0, 8, 4, 10")
print("-----------")
generate("Compila una lista de 5 estados de EE. UU. ubicados en el Oeste.")
print("-----------")
generate("Compila una lista de 2 estados de EE. UU. ubicados en el Oeste.")
print("-----------")
generate("Compila una lista de 10 estados de EE. UU. ubicados en el Este.")
print("-----------")
generate("¿Cuál es el color de una fresa?")
print("-----------")
generate("¿Cuál es el color de la siguiente fruta?", "fresa")
print("-----------")
```
Expected output:
```
La superconductividad es un fenómeno físico en el que los materiales pueden conducir corrientes eléctricas a bajas temperaturas sin pérdida de energía debido a la resistencia. Los materiales superconductores son capaces de conducir corrientes eléctricas a temperaturas mucho más bajas que los materiales normales. Esto se debe a que los electrones en los materiales superconductores se comportan de manera cooperativa, lo que les permite conducir corrientes eléctricas sin pérdida de energía. Los materiales superconductores tienen muchas aplicaciones
-----------
La capital de España es Madrid.
-----------
La capital de Portugal es Lisboa.
-----------
0, 2, 3, 4, 8, 10
-----------
1. California
2. Oregón
3. Washington
4. Nevada
5. Arizona
-----------
California y Washington.
-----------
1. Maine
2. Nuevo Hampshire
3. Vermont
4. Massachusetts
5. Rhode Island
6. Connecticut
7. Nueva York
8. Nueva Jersey
9. Pensilvania
10. Delaware
-----------
El color de una fresa es rojo brillante.
-----------
El color de la fresa es rojo.
-----------
```
## Contact Us
[4i.ai](https://4i.ai/) provides natural language processing solutions with dialog, vision and voice capabilities to deliver real-life multimodal human-machine conversations.
Please contact us at info@4i.ai
|