Wiro AI Italian Flag

🚀 OpenR1-Qwen-7B-Italian 🚀

This is a finetune of Qwen2.5-Instruct on WiroAI/dolphin-r1-Italian.

🟢 Overview

  • DeepSeek's distilled models sometimes reason in Chinese or English even though prompted in another language.
  • Open-Source models still need improvement on relatively low-resource languages.
  • A motivation to reproduce R1 and contribute to the community.

🟢 Training

  • We train the model on the WiroAI/dolphin-r1-Italian for 2 epochs. We use learning rate of 1e-5 and max seq length 4096. The training follows a cosine learning rate schedule with a 10% warmup phase.
  • Training took 5 days in 8xA6000 ADA cluster.
  • Normally, R1 team compares the performance of OpenR1 models to DeepSeek-Distill-Qwen-7B and OpenThinker-7B using lighteval. However, the datasets are only MATH oriented so not to conclude anything we won't disclose the default results.

You can find the training and evaluation code at: https://github.com/huggingface/open-r1/

🐨 Quick start

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "OpenR1-Qwen-7B-Italian"

model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)

prompt = "Trova il valore di $x$ che soddisfa l'equazione $4x+5 = 6x+7$."

messages = [
    {"role": "system", "content": "Si prega di ragionare passo dopo passo prima di rispondere."},
    {"role": "user", "content": prompt}
]

text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(device)

generated_ids = model.generate(
    model_inputs.input_ids,
    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]
<|begin_of_thought|>
Ok, allora devo risolvere l'equazione 4x + 5 uguale a 6x + 7 per x.
Mmm, vediamo. Ricordo dalle lezioni di algebra che quando hai un'equazione come questa, vuoi isolare la variabile su un lato.
Probabilmente significa portare tutti i termini con la x da una parte e le costanti dall'altra. Cerchiamo di ricordare i passaggi esatti.
Innanzitutto, forse posso sottrarre 4x da entrambi i lati per eliminare il 4x a sinistra. Proviamo. Se sottraggo 4x da entrambi i lati, otterrei:
4x + 5 - 4x = 6x + 7 - 4x
Semplificando entrambi i lati, il 4x e il -4x sul lato sinistro si annullano, lasciando solo 5. Sul lato destro, 6x meno 4x fa 2x. Quindi ora l'equazione è:
5 = 2x + 7\n\nOk, sembra più semplice. Ora, devo ottenere x da sola.
Il termine costante al lato destro è 7, quindi forse posso sottrarre 7 da entrambi i lati per sbarazzarmene.
Facciamolo: 5 - 7 = 2x + 7 - 7\n\nSemplificando entrambi i lati: 5 - 7 fa -2, e 7 - 7 si annulla, lasciando 2x.
Quindi ora abbiamo: -2 = 2x
Mmm, quindi 2x è uguale a -2. Per risolvere per x, dovrei dividere entrambi i lati per 2. Verifichiamo:
(-2) / 2 = (2x)/2
Che si semplifica in: -1 = x
Quindi x è uguale a -1. Vediamo se ha senso. Sostituiamo x = -1 nell'equazione originale per verificare.
Lato sinistro: 4*(-1) + 5 = -4 + 5 = 1
Lato destro: 6*(-1) + 7 = -6 + 7 = 1
Oh, entrambi i lati sono uguali a 1. Funziona! Quindi x = -1 è effettivamente la soluzione corretta.
Aspetta, ma voglio assicurarmi di non aver fatto errori nei miei passaggi. Ripercorriamo di nuovo ogni passaggio.
Equazione originale: 4x + 5 = 6x + 7
Passaggio 1: Sottrai 4x da entrambi i lati. Questo dà 5 = 2x + 7. Sembra giusto perché 4x - 4x è 0, quindi rimane 5, e 6x - 4x è 2x.
Passaggio 2: Sottrai 7 da entrambi i lati. Questo dà 5 - 7 = 2x, che è -2 = 2x. Corretto.
Passaggio 3: Dividi entrambi i lati per 2. -2 diviso per 2 è -1, quindi x = -1. Sì, torna tutto.
Un altro modo per affrontarlo potrebbe essere quello di sottrarre prima 5 da entrambi i lati invece di sottrarre 4x.
Proviamo questo metodo per confermare.\n\nPartendo da 4x + 5 = 6x + 7
Sottrai 5 da entrambi i lati: 4x = 6x + 2
Ora, sottrai 6x da entrambi i lati: 4x - 6x = 2
Che dà -2x = 2\n\nDividi entrambi i lati per -2: x = 2 / (-2) = -1
Stesso risultato. Ok, quindi sia che io sottragga prima 4x o 5, finisco comunque con x = -1. Questo mi dà più fiducia che la soluzione sia corretta.
In alternativa, potrei anche usare l'addizione di equazioni. Vediamo. Se voglio avere tutti i termini con x su un lato e le costanti sull'altro, posso riorganizzare l'equazione iniziale.
Sottrai 4x e 7 da entrambi i lati contemporaneamente.\n\nAspetta, forse no. Pensiamoci. L'idea è quella di spostare tutti i termini con x a sinistra e le costanti a destra.
Quindi partendo da 4x + 5 = 6x + 7\n\nSe sottraggo 4x da entrambi i lati, come ho fatto prima, ottengo 5 = 2x + 7.
In alternativa, se sottraggo 6x e 5 da entrambi i lati, sarebbe: 4x + 5 - 6x - 5 = 6x + 7 - 6x - 5
Semplificando il lato sinistro: (4x - 6x) + (5 - 5) = -2x + 0 = -2x
Lato destro: (6x - 6x) + (7 - 5) = 0 + 2 = 2
Quindi, -2x = 2, portando a x = -1. Stessa risposta. Quindi indipendentemente dal metodo, è coerente.
Un altro controllo: visualizziamo l'equazione. Il lato sinistro è 4x + 5, che è una linea con pendenza 4 e intercetta y a 5.
Il lato destro è 6x + 7, una linea con pendenza 6 e intercetta y a 7. L'equazione chiede dove queste due linee si intersecano.
Poiché hanno pendenze diverse, dovrebbero intersecarsi esattamente in un punto. La nostra soluzione x = -1 è dove si incrociano.
Verifichiamo con un grafico approssimativo.
A x = -1, il lato sinistro è 4*(-1) + 5 = -4 + 5 = 1. Il lato destro è 6*(-1) + 7 = -6 + 7 = 1. Quindi entrambe le linee passano per ( -1, 1 ). Ha senso.
Se le linee avessero la stessa pendenza, sarebbero parallele e non si intersecherebbero mai, ma poiché le loro pendenze sono diverse (4 contro 6), devono intersecarsi esattamente una volta.
Pertanto, x = -1 è l'unica soluzione. C'è qualche possibilità che abbia commesso un errore aritmetico? Ricontrolliamo di nuovo ogni passaggio.
Equazione originale: 4x + 5 = 6x + 7
Sottrai 4x: 5 = 2x + 7 Sottrai 7: -2 = 2x Dividi per 2: -1 = x
Tutte le operazioni sono aritmetiche semplici. Sottrarre 4x e 7, quindi dividere per 2. Nessun problema lì. In alternativa, se inserisco x = -1 nell'equazione originale, come ho fatto prima, entrambi i lati sono uguali a 1, quindi funziona.
Penso che sia completo. Non riesco a vedere errori nel mio ragionamento. Tutti i diversi metodi portano alla stessa risposta e la verifica sostituendo nell'equazione originale conferma che è corretta.
Pertanto, sono sicuro che x = -1 sia la soluzione giusta.
**Risposta finale** Il valore di x x  che soddisfa l'equazione è \\boxed{-1}.
<|end_of_thought|>

<|begin_of_solution|>
Per risolvere l'equazione (4x + 5 = 6x + 7) per (x):
1. Sottrai (4x) da entrambi i lati: [4x + 5 - 4x = 6x + 7 - 4x]
Semplificando, otteniamo: [5 = 2x + 7]
2. Sottrai 7 da entrambi i lati: [5 - 7 = 2x + 7 - 7]
Semplificando, otteniamo: [-2 = 2x]
3. Dividi entrambi i lati per 2: [-2/2 = 2x/2]
Semplificando, otteniamo: [-1 = x]
Verifica sostituendo (x = -1) nell'equazione originale:
- Lato sinistro: (4(-1) + 5 = -4 + 5 = 1)
- Lato destro: (6(-1) + 7 = -6 + 7 = 1)
Entrambi i lati sono uguali a 1, confermando che la soluzione è corretta.
<|end_of_solution|>

🟡 Evaluation

  • We observed that reasoning process has slightly improved. Our model thinks more clearly in Italian compared to the DeepSeek's reasoning model.
  • This model trained for experimental motives and any benchmark evaluation is appreciated. Please be aware that this model will be producing more tokens compared to normal models and will consume more VRAM during inference.
  • If you are willing to evaluate this model please make sure that model will be allowed to produce enough tokens. Generate until requests that restrict the model to output less than 4000 tokens will lead to poor results.
  • We believe democratized and culturally improved open-source models will be through sharing and experiments!

🤗 Community

  • We would like to thank Huggingface Staff and everyone who contributed to the Open-R1 project!

Citation

@article{WiroAI,
  title={WiroAI/OpenR1-Qwen-7B-Italian,
  author={Abdullah Bezir, Cengiz Asmazoğlu},
  year={2025},
  url={https://huggingface.co/WiroAI/OpenR1-Qwen-7B-Italian}
}
Downloads last month
42
Safetensors
Model size
7.62B params
Tensor type
BF16
·
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.

Model tree for WiroAI/OpenR1-Qwen-7B-Italian

Base model

Qwen/Qwen2.5-7B
Finetuned
(737)
this model
Quantizations
1 model

Collection including WiroAI/OpenR1-Qwen-7B-Italian