educa-ai-nemo-think

This is a preliminary release of our internal testing reasoning model trained on a purely german dataset of reasoning traces mostly generated with DeepSeek R1.

Training details

We trained this model for 2 epochs on 10k reasoning SFT samples. No DPO / GRPO / other preference optimization has been done. The dataset is a POC subset of our much larger reasoning dataset which we are still filtering and cleaning. As such, this model will be updated soon when we have trained it on the full dataset.

Sampling Parameters

We've had success with top_p=0.95, top_k=30, repetition_penalty=1.15 and temperature=0.4 and it's also recommended to append <think> to force reasoning like this:

input_text = tokenizer.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)
input_text += "<think>\n"
input_ids = tokenizer(input_text, return_tensors="pt")["input_ids"].to("cuda")

Example outputs:

Human: Fรผhre einen Induktionsbeweis und zeige, dass die Summe von i=1 bis n von 2i-1 = n^2 ist. Assistant: <think> Ich soll einen Induktionsbeweis fรผhren, um zu zeigen, dass die Summe von 2i-1 fรผr i=1 bis n gleich n^2 ist. Zuerst muss ich die Formel fรผr die Summe von 2i-1 fรผr i=1 bis n aufschreiben. Das ist die Summe von 1, 3, 5, ..., 2n-1. Ich denke, dass ich die Summe durch eine andere Methode auswerten kann, um zu zeigen, dass sie n^2 ergibt.

Eine Mรถglichkeit wรคre, die Summe direkt auszurechnen, aber das wird mit zunehmender n sehr kompliziert. Eine andere Methode wรคre, die Summe durch eine bekannte Formel auszudrรผcken. Ich erinnere mich, dass die Summe einer arithmetischen Reihe Summe = n/2 * (anfang + ende) ist. Hier ist der Anfang 1 und das Ende 2n-1. Aber ich muss sicherstellen, dass ich die Summe richtig berechne.

Lass mich die Summe mit der arithmetischen Reihe Formulierung berechnen:

Summe = n/2 * (1 + (2n-1)) = n/2 * (2n) = n^2

Das ergibt tatsรคchlich n^2. Also scheint die Aussage zu stimmen. Jetzt muss ich den Induktionsbeweis fรผhren.

Ich werde in zwei Schritten vorgehen: Basisfall und Induktionsschritt.

Basisfall: n=1 Ich muss zeigen, dass die Summe fรผr n=1 gleich 1^2 ist. Die Summe ist dann nur 2*1-1 = 1. Also ist die Summe fรผr n=1 tatsรคchlich 1^2. Der Basisfall ist erfรผllt.

Induktionsschritt: Ich muss annehmen, dass die Summe fรผr n=k gleich k^2 ist und dann zeigen, dass die Summe fรผr n=k+1 gleich (k+1)^2 ist.

Die Summe fรผr n=k+1 ist die Summe von 1 bis 2k+1. Das ist die Summe von 1 bis 2k plus 2k+1. Nach der Induktionsannahme ist die Summe von 1 bis 2k gleich k^2. Also ist die Summe fรผr n=k+1 gleich k^2 + 2k+1. Ich muss zeigen, dass das gleich (k+1)^2 ist.

(k+1)^2 = k^2 + 2k + 1

Das ist genau die Summe, die ich berechnet habe. Also ist die Summe fรผr n=k+1 tatsรคchlich gleich (k+1)^2. Der Induktionsschritt ist erfรผllt.

Da sowohl der Basisfall als auch der Induktionsschritt erfรผllt sind, ist die Aussage fรผr alle n bewiesen. </think> Um die Summe von (2i-1) fรผr (i=1) bis (n) zu zeigen, dass sie (n^2) ergibt, fรผhre ich einen Induktionsbeweis durch.

Basisfall (n=1): Die Summe ist dann (2\cdot1-1=1). Das ist gleich (1^2). Der Basisfall ist erfรผllt.

Induktionsschritt: Angenommen, die Summe fรผr (n=k) ist (k^2). Dann ist die Summe fรผr (n=k+1) die Summe von (2i-1) fรผr (i=1) bis (k+1). Das ist die Summe von (2i-1) fรผr (i=1) bis (k) plus (2(k+1)-1=2k+1). Nach der Induktionsannahme ist die Summe fรผr (i=1) bis (k) gleich (k^2). Also ist die Summe fรผr (i=1) bis (k+1) gleich (k^2+2k+1). Das ist gleich ((k+1)^2). Der Induktionsschritt ist erfรผllt.

Da sowohl der Basisfall als auch der Induktionsschritt erfรผllt sind, gilt die Aussage fรผr alle (n).

Downloads last month
11
Safetensors
Model size
12.2B params
Tensor type
F32
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for DigitalLearningGmbH/educa-ai-nemo-think