dim commited on
Commit
d8f5f06
·
1 Parent(s): 2097874

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +109 -0
README.md CHANGED
@@ -1,5 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ### Mt bench ru
2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  ```text
4
  Напишите интересный пост в блоге о недавней поездке на Гавайи, рассказывая о культурном опыте и достопримечательностях, которые обязательно нужно увидеть.
5
  Название: Исследуя культурное сердце Гавайев: путешествие по богатой истории и достопримечательностям
 
1
+ ```python
2
+ import os
3
+
4
+ os.environ["CUDA_VISIBLE_DEVICES"] = "1"
5
+ from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
6
+ import torch
7
+
8
+
9
+ model_name = "dim/mistral-open-orca-ru-4600-step"
10
+ tokenizer_path = model_name
11
+ tokenizer = AutoTokenizer.from_pretrained(tokenizer_path)
12
+ model = AutoModelForCausalLM.from_pretrained(
13
+ model_name,
14
+ torch_dtype=torch.bfloat16,
15
+ device_map={"": 0},
16
+ )
17
+
18
+ generation_config = GenerationConfig(
19
+ bos_token_id=1,
20
+ eos_token_id=32000,
21
+ # eos_token_id=2,
22
+ pad_token_id=32000,
23
+ # pad_token_id=2,
24
+ # pad_token_id=2,
25
+ max_new_tokens=4000,
26
+ repetition_penalty=1.0,
27
+ )
28
+
29
+
30
+ def generate_orca_ru(instructions):
31
+ system = "Вы помощник ИИ, который помогает людям находить информацию."
32
+ prompt = [
33
+ {
34
+ "role": "system",
35
+ "content": system,
36
+ },
37
+ *[
38
+ {"role": "user" if i % 2 == 0 else "assistant", "content": instruction}
39
+ for i, instruction in enumerate(instructions)
40
+ ],
41
+ ]
42
+ prompt = tokenizer.apply_chat_template(
43
+ prompt,
44
+ tokenize=False,
45
+ add_generation_prompt=True,
46
+ )
47
+
48
+ def generate(model, tokenizer, prompt, generation_config):
49
+ data = tokenizer(prompt, return_tensors="pt", add_special_tokens=True)
50
+ data = {k: v.to(model.device) for k, v in data.items()}
51
+ output_ids = model.generate(**data, generation_config=generation_config)[0]
52
+ output_ids = output_ids[len(data["input_ids"][0]) :]
53
+
54
+ output = tokenizer.decode(output_ids, skip_special_tokens=True)
55
+ return output.strip()
56
+
57
+ return generate(
58
+ model=model,
59
+ tokenizer=tokenizer,
60
+ prompt=prompt,
61
+ generation_config=generation_config,
62
+ )
63
+
64
+
65
+ print(generate_orca_ru(instructions=["Почему трава зеленая?"]))
66
+ print(generate_orca_ru(instructions=["Почему небо голубое?"]))
67
+ ```
68
+ ```text
69
+ Трава зеленая из-за присутствия хлорофилла, пигмента, содержащегося в хлоропластах клеток травы. Хлорофилл отвечает за процесс фотосинтеза, при котором растения преобразуют солнечный свет в энергию. Зеленый цвет хлорофилла поглощает свет в синем и красном спектрах, отражая зеленый свет. Это позволяет траве поглощать энергию солнечного света и преобразовывать ее в химическую энергию, которая затем используется для роста и развития растения.
70
+ Голубой цвет неба в первую очередь является результатом рассеяния солнечного света атмосферой Земли. Когда солнечный свет проходит через атмосферу, он взаимодействует с молекулами кислорода и азота, присутствующими в воздухе. Эти молекулы рассеивают свет, отбрасывая фотоны с определенной длиной волны. Голубой цвет неба в первую очередь является результатом рассеяния синего света, которое имеет самую короткую длину волны среди видимого спектра.
71
+
72
+ В дополнение к рассеянию солнечного света атмосфера также может изменять цвет неба из-за рассеяния и поглощения другими компонентами, такими как вода и загрязняющие вещества. Например, при закате и восходе солнца небо может казаться оранжевым или розовым из-за рассеяния солнечного света атмосферой, когда солнце находится низко в небе.
73
+
74
+ Таким образом, голубой цвет неба в первую очередь является результатом рассеяния солнечного света атмосферой Земли, в основном из-за взаимодействия с молекулами кислорода и азота.
75
+ ```
76
+
77
+
78
+
79
  ### Mt bench ru
80
 
81
+ ```python
82
+ from datasets import load_dataset
83
+ import json
84
+ import shortuuid
85
+ import time
86
+ import tqdm
87
+
88
+
89
+ dataset = load_dataset("dim/mt_bench_ru")
90
+
91
+
92
+ dataset = dataset["train"].to_list()
93
+
94
+ new_dataset = []
95
+ for item in dataset:
96
+ replies = []
97
+ conversation = []
98
+ for turn in item["turns_ru"]:
99
+ print(turn)
100
+
101
+ conversation.append(turn)
102
+
103
+ output = generate_orca_ru(instructions=conversation)
104
+ replies.append(output)
105
+ conversation.append(output)
106
+ print(output)
107
+
108
+
109
+ print("=" * 10)
110
+ print("=" * 10)
111
+ ```
112
  ```text
113
  Напишите интересный пост в блоге о недавней поездке на Гавайи, рассказывая о культурном опыте и достопримечательностях, которые обязательно нужно увидеть.
114
  Название: Исследуя культурное сердце Гавайев: путешествие по богатой истории и достопримечательностям