Safetensors
English
Russian
mistral
hivaze commited on
Commit
507d8bc
1 Parent(s): 3791712

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +140 -8
README.md CHANGED
@@ -14,21 +14,21 @@ base_model:
14
 
15
  ### Описание
16
 
17
- **Vikhr-Nemo** - это наша фалгманская умнимодальная LLM (Large Language Model) представляющая из себя улучшенную версию [mistralai/Mistral-Nemo-Instruct-2407](https://huggingface.co/mistralai/Mistral-Nemo-Instruct-2407) командой **VikhrModels**, адаптированную преимущественно для русского и английского языков. Для ее обучения мы использовали несколько этапов включаюзих в себя **SFT** и **SMPO** - нашу собственную вариацию DPO, подробнее читайте в секции *"Как эта модель создавалась"*.
18
 
19
- Модель оптимизированна для различных вариантов использования, включая рассуждения, обобщение и ответы на вопросы. Vikhr-Nemo обладает возможностью многоязычной генерации, и высокопроизводительными возможностями RAG. Модель иммет лучшие оценки среди прочих на наших инструктивных и RAG бенчарках и, поэтому, мы верим, что в некоторыых случаях может использоваться как локальная замена для gpt-4o-mini от OpenAI.
20
 
21
- Весь использованный код для обучения выложен в нашем репозитории [effective_llm_alignment](https://github.com/VikhrModels/leffective_llm_alignment/) на GitHub, а основаные датасеты дсотупны в нашем [профиле на HF](https://huggingface.co/Vikhrmodels).
22
 
23
  ### Особенности
24
- 1. Высокое качество генераций на русском и английском языках, а также некоторых других языках, благодаря датасету Grandmaster-PRO-MAX и исходной модели.
25
  2. Поддержка системных промптов для регулриования стиля ответов
26
  3. Поддержка до 128k токенов контекста благодаря исходной модели
27
  4. Grounded RAG режим - модель имеет специальную роль documents и специальный режим работы для поиска идентификаторов релевантных вопросу пользователя документов и использования их для ответа на вопрос, вдохновлено аналогичной способность модели Command-R
28
 
29
  ### Метрики и оценка качества
30
 
31
- Модель оценивалась на нашем русскоязычном опен-сорс SBS бенчмарке [ru-arena-general](https://github.com/VikhrModels/ru_llm_arena) (50 вопросов по 10 топикам), где судьей выступает gpt-4-1106-preview и [бенчмарке]() для RAG на основе тестового сета [Grounded-RAG-v2](https://huggingface.co/datasets/Vikhrmodels/Grounded-RAG-RU-v2), где судей выступа gpt-4o.
32
 
33
  #### Результаты на Ru-Arena-General
34
 
@@ -49,17 +49,149 @@ base_model:
49
  | mistral-nemo-instruct-2407 | 50.5 | (-2.7, 2.6) | 403 |
50
  | gpt-3.5-turbo-0125 | 50.0 | (0.0, 0.0) | 220 |
51
  | c4ai-command-r-v01 | 49.0 | (-1.7, 2.2) | 529 |
 
52
 
53
  #### Результаты на бенчмарке RAG
54
 
55
- Тут в для оценки качества модель-судья была проинструктирована учитывать релеватность и фактологичкскую полноту ответов исходя из документов и реферсного ответа от gpt-4-1106-preview.
56
-
57
- ...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
 
59
  ### Как эта модель создавалась
60
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
61
  ### Как работать с RAG
62
 
63
  ### Нюансы и ограничения
 
 
 
64
 
65
  ### Авторы
 
14
 
15
  ### Описание
16
 
17
+ **Vikhr-Nemo** - это наша флагманская унимодальная LLM (Large Language Model) представляющая из себя улучшенную версию [mistralai/Mistral-Nemo-Instruct-2407](https://huggingface.co/mistralai/Mistral-Nemo-Instruct-2407) командой **VikhrModels**, адаптированную преимущественно для русского и английского языков. Для ее обучения мы использовали несколько этапов включаюзих в себя **SFT** и **SMPO** - нашу собственную вариацию DPO, подробнее читайте в секции *"Как эта модель создавалась"*.
18
 
19
+ Модель оптимизированна для различных вариантов использования, включая ризонинг, суммаризацию, код, roleplay, поддержание диалога. Vikhr-Nemo обладает возможностью многоязычной генерации, и высокопроизводительными возможностями RAG. Модель иммет лучшие оценки среди прочих на наших инструктивных и RAG бенчарках и, поэтому, мы верим, что в некоторыых случаях может использоваться как локальная замена для gpt-4o-mini от OpenAI.
20
 
21
+ Весь использованный код для обучения выложен в нашем репозитории [effective_llm_alignment](https://github.com/VikhrModels/effective_llm_alignment/) на GitHub, а основаные датасеты дсотупны в нашем [профиле на HF](https://huggingface.co/Vikhrmodels).
22
 
23
  ### Особенности
24
+ 1. Высокое качество генераций на русском и английском языках, а также некоторых других языках, благодаря датасету [Grandmaster-PRO-MAX](https://huggingface.co/datasets/Vikhrmodels/GrandMaster-PRO-MAX) и исходной модели.
25
  2. Поддержка системных промптов для регулриования стиля ответов
26
  3. Поддержка до 128k токенов контекста благодаря исходной модели
27
  4. Grounded RAG режим - модель имеет специальную роль documents и специальный режим работы для поиска идентификаторов релевантных вопросу пользователя документов и использования их для ответа на вопрос, вдохновлено аналогичной способность модели Command-R
28
 
29
  ### Метрики и оценка качества
30
 
31
+ Модель оценивалась на нашем русскоязычном опен-сорс SBS бенчмарке [ru-arena-general](https://github.com/VikhrModels/ru_llm_arena) (50 вопросов по 10 топикам), где судьей выступает gpt-4-1106-preview и [бенчмарке](https://colab.research.google.com/drive/16730rWQ4-yGqWoooLs0Ece_16frmOniP?usp=sharing) для RAG на основе тестового сета [Grounded-RAG-v2](https://huggingface.co/datasets/Vikhrmodels/Grounded-RAG-RU-v2), где судей выступа gpt-4o.
32
 
33
  #### Результаты на Ru-Arena-General
34
 
 
49
  | mistral-nemo-instruct-2407 | 50.5 | (-2.7, 2.6) | 403 |
50
  | gpt-3.5-turbo-0125 | 50.0 | (0.0, 0.0) | 220 |
51
  | c4ai-command-r-v01 | 49.0 | (-1.7, 2.2) | 529 |
52
+ | meta-llama-3.1-8b-instruct | 43.1 | (-2.8, 2.3) | 628 |
53
 
54
  #### Результаты на бенчмарке RAG
55
 
56
+ Тут для оценки качества модель-судья gpt-4o была проинструктирована учитывать релеватность и фактологичкскую полноту ответов исходя из документов и реферсного ответа от gpt-4-1106-preview.
57
+
58
+ Подробности промптов и оценок смотрите в коде бенчмарка доступно на [коллабе](https://colab.research.google.com/drive/16730rWQ4-yGqWoooLs0Ece_16frmOniP?usp=sharing)
59
+
60
+ <table>
61
+ <thead>
62
+ <tr>
63
+ <th rowspan="2">question_type</th>
64
+ <th colspan="3">gpt-4o</th>
65
+ </tr>
66
+ <tr>
67
+ <th>judge_correct_percent</th>
68
+ <th>avg_answer_match_rougeL</th>
69
+ <th>avg_abs_indexes_diff</th>
70
+ </tr>
71
+ </thead>
72
+ <tbody>
73
+ <tr>
74
+ <td>in_domain</td>
75
+ <td>73%</td>
76
+ <td>0.34</td>
77
+ <td>NaN</td>
78
+ </tr>
79
+ <tr>
80
+ <td>out_of_domain</td>
81
+ <td>81%</td>
82
+ <td>0.20</td>
83
+ <td>NaN</td>
84
+ </tr>
85
+ </tbody>
86
+ </table>
87
+
88
+ <table>
89
+ <thead>
90
+ <tr>
91
+ <th style="visibility: hidden;" rowspan="2">question_type</th>
92
+ <th colspan="3">Vikhr-Nemo-12B-Instruct-R-21-09-24</th>
93
+ </tr>
94
+ <tr>
95
+ <th style="visibility: hidden;">judge_correct_percent</th>
96
+ <th style="visibility: hidden;">avg_answer_match_rougeL</th>
97
+ <th style="visibility: hidden;">avg_abs_indexes_diff</th>
98
+ </tr>
99
+ </thead>
100
+ <tbody>
101
+ <tr>
102
+ <td>in_domain</td>
103
+ <td>68%</td>
104
+ <td>0.41</td>
105
+ <td>0</td>
106
+ </tr>
107
+ <tr>
108
+ <td>out_of_domain</td>
109
+ <td>92%</td>
110
+ <td>0.52</td>
111
+ <td>0</td>
112
+ </tr>
113
+ </tbody>
114
+ </table>
115
+
116
+ <table>
117
+ <thead>
118
+ <tr>
119
+ <th style="visibility: hidden;" rowspan="2">question_type</th>
120
+ <th colspan="3">gpt-4-mini</th>
121
+ </tr>
122
+ <tr>
123
+ <th style="visibility: hidden;">judge_correct_percent</th>
124
+ <th style="visibility: hidden;">avg_answer_match_rougeL</th>
125
+ <th style="visibility: hidden;">avg_abs_indexes_diff</th>
126
+ </tr>
127
+ </thead>
128
+ <tbody>
129
+ <tr>
130
+ <td>in_domain</td>
131
+ <td>65%</td>
132
+ <td>0.33</td>
133
+ <td>NaN</td>
134
+ </tr>
135
+ <tr>
136
+ <td>out_of_domain</td>
137
+ <td>73%</td>
138
+ <td>0.18</td>
139
+ <td>NaN</td>
140
+ </tr>
141
+ </tbody>
142
+ </table>
143
+
144
+ <table>
145
+ <thead>
146
+ <tr>
147
+ <th style="visibility: hidden;" rowspan="2">question_type</th>
148
+ <th colspan="3">gpt-3.5-turbo-0125 </th>
149
+ </tr>
150
+ <tr>
151
+ <th style="visibility: hidden;">judge_correct_percent</th>
152
+ <th style="visibility: hidden;">avg_answer_match_rougeL</th>
153
+ <th style="visibility: hidden;">avg_abs_indexes_diff</th>
154
+ </tr>
155
+ </thead>
156
+ <tbody>
157
+ <tr>
158
+ <td>in_domain</td>
159
+ <td>49%</td>
160
+ <td>0.28</td>
161
+ <td>NaN</td>
162
+ </tr>
163
+ <tr>
164
+ <td>out_of_domain</td>
165
+ <td>76%</td>
166
+ <td>0.20</td>
167
+ <td>NaN</td>
168
+ </tr>
169
+ </tbody>
170
+ </table>
171
 
172
  ### Как эта модель создавалась
173
 
174
+ #### Инструктивная SFT часть
175
+
176
+ Для SFT этапа обучения модели мы подготовили наш большой (150к инструкций) инструктивный синтетический датасет [Vikhrmodels/GrandMaster-PRO-MAX](https://huggingface.co/datasets/Vikhrmodels/GrandMaster-PRO-MAX). Его особенностью является встроеный CoT (Chain-Of-Thought), для сбора которого мы использовали модифицированный промет для gpt-4-turbo, подробности в карточке датасета.
177
+
178
+ Кроме того для того чтобы сделать RAG Grounding мы подготовили другой синтетический датасет - [Vikhrmodels/Grounded-RAG-RU-v2](https://huggingface.co/datasets/Vikhrmodels/Grounded-RAG-RU-v2), его пайплайн сборки достаточно сложный для короткого описания и полробнее об этом вы можете прочитать в его карточке.
179
+
180
+ #### Этап алайнмента с SMPO
181
+
182
+ Для дальнейшего улучшения качества ответов мы использовали следущий пайплайн:
183
+ 1) Обучили кастомную Reward модель (она пока не будет выкладываться в открытый доступ)
184
+ 2) Дедуплицировали и отфилтровали используя RM модель оригинальный датасет Vikhrmodels/GrandMaster-PRO-MAX, получив порядка 10к самых высококачественных и разнообразных диалогов.
185
+ 3) Сделали Rejection Samping с SFT чекпоинтом используя полученный датасет и Reward модель. (Генерировали 7 гипотез и брали только 2 самые худшие как rejected)
186
+ 4) Дообучили SFT чекпоинт с помощью нашего метода SMPO используя полученный датасет из этапа 3. SMPO был спроектирован и выбран как метод для повышения стабильности тренировки преференсов в условиях Rejection Samping и достижения нужного margin.
187
+
188
+ Реализацию SMPO, rejection sampling и тд можно найти в нашей библиотеке [effective_llm_alignment](https://github.com/VikhrModels/effective_llm_alignment/) на GitHub
189
+
190
  ### Как работать с RAG
191
 
192
  ### Нюансы и ограничения
193
+ - Модель имеет низкий уровень безопасности ответов и нацелена на правильное и полное выполенние инстуркций, имейте это ввиду при использовании
194
+ - Системные промпты не предназначены для описание персонажей, используйте их только для спецификации стиля ответа (вроде "answer only in json format"). Кроме того они должны быть на английском, так как так было в датасете, здесь от английского не зависит язык ответа.
195
+ - RAG режим требует обязательного наличия системного промпта описаного в секции *Как работать с RAG*
196
 
197
  ### Авторы