189 lines
9.0 KiB
Markdown
189 lines
9.0 KiB
Markdown
|
|
---
|
|||
|
|
library_name: transformers
|
|||
|
|
tags:
|
|||
|
|
- reasoning
|
|||
|
|
license: apache-2.0
|
|||
|
|
datasets:
|
|||
|
|
- attn-signs/gromov-1
|
|||
|
|
language:
|
|||
|
|
- ru
|
|||
|
|
base_model:
|
|||
|
|
- attn-signs/GPTR-8b-v1
|
|||
|
|
---
|
|||
|
|
# GPT Reasoner (V2)
|
|||
|
|
|
|||
|
|
- [EN]
|
|||
|
|
Reasoning model adapted for russian text generation.
|
|||
|
|
**Based on YandexGPT-pretrain -> GPTR-8b-base -> GPTR-8b-v1 -> GPTR-8b-v2**
|
|||
|
|
- [RU]
|
|||
|
|
Модель рассуждений, адаптированная для генерации русскоязычного текста.
|
|||
|
|
**Построена на YandexGPT-pretrain -> GPTR-8b-base -> GPTR-8b-v1 -> GPTR-8b-v2**
|
|||
|
|
|
|||
|
|
## Model Details / Детализация модели
|
|||
|
|
- [EN]
|
|||
|
|
**Reinforced GRPO version** to invoke general reasoning capabilities.
|
|||
|
|
This model can generate conditional and coherent chain-of-thought
|
|||
|
|
- [RU]
|
|||
|
|
**Версия RL GRPO** для возможностей размышления и глубокого понимания запроса.
|
|||
|
|
Модель может генерировать когерентный текст русского языка на этой итерации.
|
|||
|
|
|
|||
|
|
### Important:
|
|||
|
|
- [EN]
|
|||
|
|
Second stage of reinforcement learning to invoke reasoning capabilities.
|
|||
|
|
The model became better in mathematical tasks.
|
|||
|
|
- [RU]
|
|||
|
|
Вторая стадия RL обучения. Модель стала гораздо лучше в решении математических задач
|
|||
|
|
|
|||
|
|
### Further development
|
|||
|
|
- GRPO Gromov-2
|
|||
|
|
|
|||
|
|
### Model Description / Описание модели
|
|||
|
|
|
|||
|
|
- **Developed by:** [Reisen Raumberg (Attention Signs team)]
|
|||
|
|
- **Language(s) (NLP):** [RU/EN]
|
|||
|
|
- **SFT from model:** [YandexGPT-5-lite-8B-pretrain]
|
|||
|
|
|
|||
|
|
Utilized HF.Accelerator
|
|||
|
|
**GPU hours**: ~24h of NVIDIA A100
|
|||
|
|
|
|||
|
|
Для обучения использовался HuggingFace Accelerator
|
|||
|
|
**GPU часы**: ~24h часа NVIDIA A100
|
|||
|
|
|
|||
|
|
### Training Framework
|
|||
|
|
**GPTR was trained using MyLLM framework (by Attention Signs):**
|
|||
|
|
--==[MyLLM](https://github.com/Raumberg/myllm)==--
|
|||
|
|
|
|||
|
|
### Model configuration (MyLLM Framework)
|
|||
|
|
TO BE DISCLOSED
|
|||
|
|
|
|||
|
|
### Rewards:
|
|||
|
|
TO BE DISCLOSED
|
|||
|
|
|
|||
|
|
### Using the model / Как запустить?
|
|||
|
|
|
|||
|
|
```python
|
|||
|
|
repo = 'attn-signs/GPTR-8-v2'
|
|||
|
|
|
|||
|
|
model = AutoModelForCausalLM.from_pretrained(repo)
|
|||
|
|
tokenizer = AutoTokenizer.from_pretrained(repo)
|
|||
|
|
|
|||
|
|
device = 'cuda' if torch.cuda.is_available() else 'cpu'
|
|||
|
|
model.to(device)
|
|||
|
|
|
|||
|
|
user_prompt = '''
|
|||
|
|
Пусть функция $f:[a,b]\to \mathbb{R}$ непрерывна на $[a,b]$, дифференцируема во всех точках $t\in(a,b)\setminus\{x\}$,
|
|||
|
|
и существует предел $\lim_{t \to x} f'(t)$. Докажите, что $f$ дифференцируема в точке $x$ и $f'(x)= \lim_{t \to x} f'(t)$.
|
|||
|
|
Используйте определение $f'(x)$ и теорему о среднем значении для обоснования вашего аргумента.
|
|||
|
|
'''
|
|||
|
|
system_prompt = "[MODE: Reflection]"
|
|||
|
|
messages = [
|
|||
|
|
{"role": "system", "content": system_prompt},
|
|||
|
|
{"role": "user", "content": user_prompt}
|
|||
|
|
]
|
|||
|
|
text = tokenizer.apply_chat_template(
|
|||
|
|
messages,
|
|||
|
|
tokenize=False,
|
|||
|
|
add_generation_prompt=True
|
|||
|
|
)
|
|||
|
|
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
|
|||
|
|
|
|||
|
|
generated_ids = model.generate(
|
|||
|
|
**model_inputs,
|
|||
|
|
max_new_tokens=4096
|
|||
|
|
)
|
|||
|
|
generated_ids = [
|
|||
|
|
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
|
|||
|
|
]
|
|||
|
|
|
|||
|
|
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
|
|||
|
|
|
|||
|
|
print(response)
|
|||
|
|
```
|
|||
|
|
```
|
|||
|
|
Для доказательства того, что $f$ дифференцируема в точке $x$ и $f'(x) = \lim_{t \to x} f'(t)$, мы следуем этим шагам:
|
|||
|
|
|
|||
|
|
1. **Определение производной в точке $x$:**
|
|||
|
|
Производная $f$ в точке $x$ определяется как:
|
|||
|
|
\[
|
|||
|
|
f'(x) = \lim_{h \to 0} \frac{f(x+h) - f(x)}{h}
|
|||
|
|
]
|
|||
|
|
|
|||
|
|
2. **Использование теоремы о среднем значении**:
|
|||
|
|
Для любого $h \neq 0$ существует $c \in (x, x+h)$ такое, что:
|
|||
|
|
\[
|
|||
|
|
\frac{f(x+h) - f(x)}{h} = f'(c)
|
|||
|
|
\]
|
|||
|
|
Поскольку $f$ дифференцируема во всех точках $(a, b) \setminus \{x\}$, $f'(c)$ существует.
|
|||
|
|
|
|||
|
|
3. **Анализ предела при $h \to 0$**:
|
|||
|
|
Когда $h \to 0$, $c \to x$. Следовательно, $\lim_{h \to 0} f'(c) = \lim_{t \to x} f'(t)$.
|
|||
|
|
|
|||
|
|
4. **Вывод**:
|
|||
|
|
Поскольку $\frac{f(x+h) - f(x)}{h} = f'(c)$ и $\lim_{h \to 0} f'(c) = \lim_{t \to x} f'(t)$, имеем:
|
|||
|
|
\[
|
|||
|
|
f'(x) = \lim_{h \to 0} \frac{f(x+h) - f(x)}{h} = \lim_{t \to x} f'(t)
|
|||
|
|
\]
|
|||
|
|
|
|||
|
|
Таким образом, $f$ дифференцируема в точке $x$ и $f'(x) = \lim_{t \to x} f'(t)$.
|
|||
|
|
|
|||
|
|
\[
|
|||
|
|
\boxed{f'(x) = \lim_{t \to x} f'(t)}
|
|||
|
|
\]
|
|||
|
|
Я поразмышмышлял над задачей и вот, что я выяснил: используя теорему о среднем значении и предел при $h \to 0$, мы показали, что $f$ дифференцируема в точке $x$ и $f'(x) = \lim_{t \to x} f'(t)$. Таким образом, окончательный ответ:
|
|||
|
|
|
|||
|
|
\[
|
|||
|
|
\boxed{f'(x) = \lim_{t \to x} f'(t)}
|
|||
|
|
\]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Model's ability to prove mathematical statements also became better:
|
|||
|
|
**Question:**
|
|||
|
|
Докажите, что для независимой семьи подмножеств $\mathcal{A}$ множества $\kappa \geq \omega$ семейство $G_f$,
|
|||
|
|
определенное как $G_f = \{X : |\kappa - X| < \kappa\} \cup \{X : f(X) = 1\} \cup \{\kappa - X : f(X) = 0\}$ для любой функции $f : \mathcal{A} \to \{0,1\}$,
|
|||
|
|
обладает свойством конечного пересечения (f.i.p.), и объясните, почему включение $\{X : |\kappa - X| < \kappa\}$ в $G_f$ необходимо для того, чтобы это свойство выполнялось.
|
|||
|
|
|
|||
|
|
**Answer:**
|
|||
|
|
```
|
|||
|
|
Чтобы доказать, что семейство $G_f$ обладает свойством конечного пересечения (f.i.p.), необходимо показать, что любое конечное подсемейство $\{G_{f_1}, G_{f_2}, \ldots, G_{f_n}\}$ из $G_f$ имеет непустое пересечение.
|
|||
|
|
|
|||
|
|
1. **Понимание $G_f$:**
|
|||
|
|
- $G_f$ состоит из трёх типов подмножеств:
|
|||
|
|
- $X$ таких, что $|\kappa - X| < \kappa$ (то есть $X$ является конечным).
|
|||
|
|
- $X$ таких, что $f(X) = 1$.
|
|||
|
|
- $\kappa - X$ таких, что $f(X) = 0$.
|
|||
|
|
|
|||
|
|
2. **Анализ конечного подсемейства:**
|
|||
|
|
- Рассмотрим конечное подсемейство $\{G_{f_1}, G_{f_2}, \ldots, G_{f_n}\}$.
|
|||
|
|
- Каждое $G_{f_i}$ содержит подмножества, удовлетворяющие одному из трёх условий:
|
|||
|
|
- $|\kappa - X| < \kappa$
|
|||
|
|
- $f_i(X) = 1$
|
|||
|
|
- $f_i(\kappa - X) = 0$
|
|||
|
|
|
|||
|
|
3. **Поиск общего подмножества:**
|
|||
|
|
- Рассмотрим подмножество $X$, которое удовлетворяет $|\kappa - X| < \kappa$.
|
|||
|
|
- Для каждого $f_i$, $X$ либо удовлетворяет $f_i(X) = 1$, либо $f_i(\kappa - X) = 0$.
|
|||
|
|
- Следовательно, $X$ принадлежит хотя бы одному из $G_{f_i}$.
|
|||
|
|
|
|||
|
|
4. **Проверка:**
|
|||
|
|
- Если $X$ удовлетворяет $|\kappa - X| < \kappa$, то $X$ принадлежит $G_{f_i}$ для всех $i$.
|
|||
|
|
- Если $X$ не удовлетворяет $|\kappa - X| < \kappa$, то $\kappa - X$ принадлежит $G_{f_i}$ для всех $i$.
|
|||
|
|
|
|||
|
|
5. **Вывод:**
|
|||
|
|
- В любом случае, $X$ или $\kappa - X$ принадлежит всем $G_{f_i}$, что делает пересечение непустым.
|
|||
|
|
|
|||
|
|
Таким образом, $G_f$ обладает свойством конечного пересечения.
|
|||
|
|
|
|||
|
|
**Необходимость включения $\{X : |\kappa - X| < \kappa\}$:
|
|||
|
|
- Если исключить $\{X : |\kappa - X| < \kappa\}$ из $G_f$, то $G_f$ может не иметь непустого пересечения для некоторых функций $f$, например, когда $f(X) = 0$ для всех $X$.
|
|||
|
|
|
|||
|
|
Следовательно, включение $\{X : |\kappa - X| < \kappa\}$ в $G_f$ необходимо для того, чтобы $G_f$ обладало свойством конечного пересечения.
|
|||
|
|
|
|||
|
|
\[
|
|||
|
|
\boxed{1} # Model thinks that 1 is True
|
|||
|
|
\]
|
|||
|
|
Я поразмышмышлял над задачей и вот, что я выяснил: семейство $G_f$ обладает свойством конечного пересечения благодаря включению подмножеств $\{X : |\kappa - X| < \kappa\}$. Это включение необходимо для того, чтобы гарантировать, что любое конечное подсемейство $\{G_{f_1}, G_{f_2}, \ldots, G_{f_n}\}$ имеет непустое пересечение.
|
|||
|
|
|
|||
|
|
\[
|
|||
|
|
\boxed{1}
|
|||
|
|
\]
|
|||
|
|
```
|