File size: 3,561 Bytes
d8bfce6
 
 
a492e44
d8bfce6
 
617dff3
d8bfce6
 
 
 
cc73d93
d8bfce6
b0ea226
 
e7201b3
 
b4c5d4c
 
dd4b2c6
23cc3f9
e440f32
3c49200
 
 
f23a2cd
8784035
0898595
e7201b3
4f419da
f23a2cd
c8cf8ad
45003ce
f23a2cd
 
 
 
 
 
 
 
 
 
b4be050
f23a2cd
d8bfce6
 
 
 
10cf5d8
d8bfce6
 
 
 
 
10cf5d8
 
 
d8bfce6
 
8a9b122
 
d8bfce6
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
---
datasets:
- IlyaGusev/ru_turbo_alpaca
- yahma/alpaca-cleaned
language:
- ru
- en
pipeline_tag: text2text-generation
inference: false
---

# LLaMA 7B trained on the ru_turbo_alpaca, Russian instructions dataset

**Important**: You should probably use [Saiga](https://huggingface.co/IlyaGusev/saiga_7b_lora). It has regular updates and should be better in every task.

Based on [LLaMA 7B](https://huggingface.co/decapoda-research/llama-7b-hf).

* This is an adapter-only version.
* Merged version: [link](https://huggingface.co/IlyaGusev/llama_7b_ru_turbo_alpaca_lora_merged).
* llama.cpp version: [link](https://huggingface.co/IlyaGusev/llama_7b_ru_turbo_alpaca_lora_llamacpp).

April 2, 2023: A new model version was uploaded, trained with outputs capped at 512 tokens instead of 256. Also, alpaca-cleaned was mixed with ru_turbo_alpaca. To use the old version, specify this:
```
revision="dd4b2c63d6639fd9490cd1d9b0d6d8b58e708d93"
```

Colab: [link](https://colab.research.google.com/drive/1JLoHOjDJQIa8SDqsEXrGHj4Z4aTnaajN)

Training code: [link](https://github.com/IlyaGusev/rulm/tree/master/self_instruct)

```python
from peft import PeftModel, PeftConfig
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig

MODEL_NAME = "IlyaGusev/llama_7b_ru_turbo_alpaca_lora"

config = PeftConfig.from_pretrained(MODEL_NAME)
model = AutoModelForCausalLM.from_pretrained(
    config.base_model_name_or_path,
    load_in_8bit=True,
    device_map="auto"
)
model = PeftModel.from_pretrained(model, MODEL_NAME)
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
```

Examples:
```
Вопрос: Почему трава зеленая? 
Выход: Трава зеленой из-за того, что она содержит хлорофиллы, пигменты, которые помогают ей фотосинтезировать энергию из солнечного света. Хлорофилл способен перерабатывать углекислый газ и воду в органические вещества, такие как углеводы, аминокислоты и жиры, которые необходимы растениям для их роста и развития.
```

```
Задание: Сочини длинный рассказ, обязательно упоминая следующие объекты.
Вход: Таня, мяч
Выход: Таня любила футбол с детства. Она играла на улице со своими друзьями и мечтала стать профессиональным футболистом. Когда ей исполнилось 12 лет, она начала тренироваться в футбольной школе. Она была очень талантливой и упорной, и вскоре ей удалось попасть в молодежную команду.
Таня играла в футбол каждый день, тренируясь и участвуя в матчах. Она старалась улучшать свои навыки и стать лучшей футболисткой в своей команде. Ее талант не остался незамеченным, и ей предложили попробовать свои силы в более серьезной команде.
Она приняла предложение и начала играть за взрослую команду.
```

* Final loss: 1.132
* Time: 35 hours, 34 minutes
* Hardware: 1x RTX 3090