mikelalda/qwen_trainer

0

stars

1

commits

Python

primary language

Aug 20, 2026

updated

README


base_model: unsloth/Qwen3.8-27B library_name: transformers pipeline_tag: text-generation license: cc-by-sa-4.0 language:

  • eu
  • es
  • en datasets:
  • HiTZ/RAG_eu
  • HiTZ/magpie-en-eu-reasoning-instructions-qwen3
  • HiTZ/ALIA_syntethic_MT_V2 tags:
  • unsloth
  • trl
  • sft
  • lora
  • peft
  • qwen3_8
  • basque
  • euskara
  • translation

qwen3.8-27b_euakara

Qwen3.8-27B modeloaren doikuntza fina (SFT LoRArekin), euskarara bideratua, gaztelania eta ingelesa laguntza-hizkuntza gisa erabilita. HiTZ taldearen corpusekin entrenatu da hiru gaitasun lantzeko: elkarrizketa bidezko instrukzioak, norabide anitzeko itzulpena eta testu batean oinarritutako lana (laburpena eta erantzun daitekeen erabakitzea).

Egoera: ebaluatu gabe. Ez da benchmarkik exekutatu modelo honekin. Errendimendu-atala nahita dago hutsik; oraindik ez dago kalitateari buruzko baieztapenik bermatuko duen daturik.


Modeloaren xehetasunak

Oinarrizko modeloaunsloth/Qwen3.8-27B (Qwen3_5ForConditionalGeneration)
MetodoaLoRA (PEFT), Unsloth + TRL SFTTrainer bidez
ZehaztasunaBF16 (entrenamenduan kuantizaziorik gabe)
Sekuentzia-luzera4096
Hizkuntzakeuskara (eu), gaztelania (es), ingelesa (en)

Qwen3.8-27B arreta linealeko modelo hibridoa da (gated delta rule). Zentzuzko errendimenduarekin entrenatu edo zerbitzatzeko, flash-linear-attention instalatuta edukitzea komeni da; hura gabe, transformers PyTorch hutsezko inplementazio askoz motelago batera igarotzen da.

Oinarrizko modeloa multimodala da (irudiak eta bideoak onartzen ditu). Doikuntza honek testu-dorreko moduluak baino ez ditu ukitu, eta ikusmen-bidea ez da entrenatu edo egiaztatu: oinarrizko modelotik heredatutakotzat hartu.

LoRA konfigurazioa

ParametroaBalioa
r32
lora_alpha32
lora_dropout0
biasnone
Moduluakq_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
Gradient checkpointingTrue

Entrenamenduaren hiperparametroak

ParametroaBalioa
Epokak1
Gailu bakoitzeko lotea8
Gradiente-metaketa2 (lote eraginkorra: 8)
Learning rate1.5e-4
Schedulercosine, warmup 3 %
Optimizatzaileaadamw_8bit
Weight decay0.01
Hazia3407
Hardware1 × NVIDIA RTX PRO 6000 Blackwell (96 GB)

Entrenamendu-datuak

Hiru corpusak text eremu bakarrean homogeneizatzen dira, modeloaren berezko txat-txantiloia aplikatuta, eta ausaz nahasten dira (3407 hazia).

1. HiTZ/magpie-en-eu-reasoning-instructions-qwen3 — instrukzioak

accepted_eu eta accepted_en splitak, bakoitzetik 25 000 adibide (~50 000). rejected_* splitak baztertu egiten dira. Elkarrizketak messages eremutik hartzen dira, txanda bakoitzeko reasoning_content kenduta.

2. HiTZ/ALIA_syntethic_MT_V2 — itzulpena

Hiru konfigurazioetako bakoitzetik 5 000 errenkada (berria_eu_en_es, bopv_eu_en_es, parliament_eu_en_es). Errenkada bakoitzak norabide bat sortzen du, indizearen arabera txandakatuz laurak neurri berean betetzeko:

eu → es · es → eu · eu → en · en → eu

berria konfigurazioan, SONAR puntuazioa < 0.6 duten itzulpenak baztertzen dira.

3. HiTZ/RAG_eu — testuan oinarritzea

RAG_eu ebaluazio-bankua da, ez entrenamendu-corpusa: ez du erantzunen zutaberik. Daukan edukitik bi ataza gainbegiratu sortu ziren:

  • Testuan oinarritutako laburpenadocuments konfigurazioa (1 492 dokumentu): textsummary.
  • Erantzun daitekeen erabakitzeaQAP konfigurazioa (~7 465 pare), documents konfigurazioarekin text_id bidez lotuta, galdera bakoitzari benetako testuingurua eransteko.

⚠️ Ebaluazio-kutsadura. Modeloak HiTZ/RAG_eu ikusi du entrenamenduan; beraz, ez da baliozkoa benchmark horrekin ebaluatzea. RAG_eu gainean neurtu behar baduzu, berriro entrenatu train.py fitxategian USE_RAG_EU = False ezarrita.

Guztira, gutxi gorabehera: ~74 000 adibide (kalitate-iragazkiak aplikatu eta text_id umezurtzak baztertu aurretik).


Prompt-formatuak

Entrenamenduak Qwen3.5 modeloaren berezko txantiloia erabiltzen du enable_thinking=False aukerarekin, target guztiak erantzun zuzenak baitira. Arrazoiketa-moduan horrek duen eragina ikusteko, irakurri mugen atala.

Itzulpena — system:

Itzultzaile profesionala zara. Eres un traductor profesional.

user:

Itzuli ondorengo testua euskarara / Traduce el siguiente texto al euskera:
{texto}

(erabilitako hizkuntza-helburu pareak hauek izan ziren: euskarara/al euskera, gaztelaniara/al español, ingelesera/al inglés)

Testuan oinarritzea — system:

Laguntzaile zehatza zara. Erantzun emandako testuan oinarrituta soilik.
Eres un asistente preciso. Responde basándote estrictamente en el texto proporcionado.

user (laburpena):

Testua / Texto:
"""
{texto}
"""

Laburtu testua / Resume el texto.

user (erantzun daitekeen erabakitzea):

Testua / Contexto:
"""
{contexto}
"""

Galdera / Pregunta: {pregunta}

Testuak galdera erantzun dezake? / ¿Puede el texto responder a la pregunta?

Instrukzio orokorrak: sistema-mezurik gabe, elkarrizketa zuzena.


Erabilera

Transformers

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "TU_USUARIO/qwen27b_alia"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, dtype="bfloat16", device_map="auto")

messages = [
    {"role": "system", "content": "Itzultzaile profesionala zara. Eres un traductor profesional."},
    {"role": "user", "content": "Itzuli ondorengo testua euskarara / Traduce el siguiente texto al euskera:\nBuenos días a todos."},
]

inputs = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    enable_thinking=False,   # entrenamenduarekin bat dator
    return_tensors="pt",
).to(model.device)

out = model.generate(inputs, max_new_tokens=512)
print(tokenizer.decode(out[0][inputs.shape[-1]:], skip_special_tokens=True))

Arreta linealeko geruzak bizkortzeko:

pip install flash-linear-attention

GGUF (llama.cpp / Ollama)

Q4_K_M esportazio kuantizatu bat ere badago:

llama-cli -m qwen27b_alia-q4_k_m.gguf -p "..." -cnv

Mugak eta alborapenak

  • Ebaluatu gabe. Ez dago metrikarik. Ez erabili modelo hau produkzioan aurrez zeure atazan neurtu gabe.
  • Entrenatu gabeko arrazoiketa. SFT osoa enable_thinking=False aukerarekin eta target zuzenekin egin zen. Oinarrizko modeloaren arrazoiketa-modua ez da indartu, eta baliteke okerrera egin izana; sortu edukia enable_thinking=False erabilita, kontrakoa egiaztatu ezean.
  • Ezin da HiTZ/RAG_eu erabiliz ebaluatu, kutsadura dela eta (ikus goian).
  • Epoka bakarra ~74 000 adibiderekin: estiloaren eta formatuaren doikuntza arina da, ez ezagutzaren injekzio sakona.
  • Itzulpen sintetikoa. ALIA_syntethic_MT_V2 datu-multzoak automatikoki sortutako itzulpenak ditu; haien errore sistematikoak modelora hedatzen dira. SONAR iragazkia berria partizioari soilik aplikatu zitzaion.
  • Domeinu-alborapena. Corpusak prentsatik (Berria), aldizkari ofizialetik (EHAA) eta Eusko Legebiltzarreko aktetatik datoz. Erregistroak formala eta instituzionala izateko joera du, eta euskal politika garaikidean ardazten da.
  • Egiaztatu gabeko bide multimodala (ikus goian).
  • Qwen3.8-27B modeloaren alborapenak eta mugak heredatzen ditu.

Lizentzia

Modelo honen lizentzia aukeratzea ez da erraza, eta berrikustea komeni da:

  • Oinarrizko modeloa, Qwen3.8-27B, Apache-2.0 lizentziapean dago.
  • HiTZ/RAG_eu eta HiTZ/ALIA_syntethic_MT_V2 CC-BY-SA-4.0 dira (share-alike); HiTZ/magpie-...-qwen3, berriz, CC-BY-4.0 da.

Metadatu hauetan CC-BY-SA-4.0 ezarri da, interpretazio kontserbadoreari jarraituz: entrenamendu-datuen share-alike baldintza hedatzea. Kontrako interpretazioa ere badago, pisuak ez direla corpusaren lan eratorria dioena; kasu horretan, Apache-2.0 nahikoa litzateke. Adostasunik gabeko auzi juridikoa da. Erabaki eta egokitu license eremua horren arabera.

Edonola ere, corpusengatik HiTZ aitortu behar da.


Kredituak

  • Corpusak: HiTZ Zentroa (UPV/EHU), Eusko Jaurlaritzak (IKER-GAITU proiektua) eta Eraldaketa Digitalerako Ministerioak / NextGenerationEUk (ILENIA eta ALIA proiektuak) finantzatuak.
  • Oinarrizko modeloa: Qwen Team, Unslothek paketatua.
  • Entrenamendua: Unsloth + TRL.

Igotzeko:

cd /home/mikel/Documents/qwen_trainer

# 1. Crear los repos (el de safetensors PRIMERO, o el enlace del GGUF nace roto)
./.venv/bin/hf repos create mikelalda/qwen27b_alia_tuned      --type model --private
./.venv/bin/hf repos create mikelalda/qwen27b_alia_tuned-GGUF --type model --private

# 2. Tarjeta dentro de la carpeta del safetensors
cp README.md merged_bf16/README.md

# 3. Safetensors — 52 GB
./.venv/bin/hf upload mikelalda/qwen27b_alia_tuned merged_bf16 . \
    --commit-message "Qwen3.5-27B ALIA SFT LoRA merged (bf16)"

# 4. GGUF — 16,8 GB, fichero y tarjeta juntos
./.venv/bin/hf upload mikelalda/qwen27b_alia_tuned-GGUF gguf_repo . \
    --commit-message "Q4_K_M quantization + model card"

Contributors

mikelalda

1 commits

mikelalda/qwen_trainer

0

stars

1

commits

Python

primary language

Aug 20, 2026

updated

README


base_model: unsloth/Qwen3.8-27B library_name: transformers pipeline_tag: text-generation license: cc-by-sa-4.0 language:

  • eu
  • es
  • en datasets:
  • HiTZ/RAG_eu
  • HiTZ/magpie-en-eu-reasoning-instructions-qwen3
  • HiTZ/ALIA_syntethic_MT_V2 tags:
  • unsloth
  • trl
  • sft
  • lora
  • peft
  • qwen3_8
  • basque
  • euskara
  • translation

qwen3.8-27b_euakara

Qwen3.8-27B modeloaren doikuntza fina (SFT LoRArekin), euskarara bideratua, gaztelania eta ingelesa laguntza-hizkuntza gisa erabilita. HiTZ taldearen corpusekin entrenatu da hiru gaitasun lantzeko: elkarrizketa bidezko instrukzioak, norabide anitzeko itzulpena eta testu batean oinarritutako lana (laburpena eta erantzun daitekeen erabakitzea).

Egoera: ebaluatu gabe. Ez da benchmarkik exekutatu modelo honekin. Errendimendu-atala nahita dago hutsik; oraindik ez dago kalitateari buruzko baieztapenik bermatuko duen daturik.


Modeloaren xehetasunak

Oinarrizko modeloaunsloth/Qwen3.8-27B (Qwen3_5ForConditionalGeneration)
MetodoaLoRA (PEFT), Unsloth + TRL SFTTrainer bidez
ZehaztasunaBF16 (entrenamenduan kuantizaziorik gabe)
Sekuentzia-luzera4096
Hizkuntzakeuskara (eu), gaztelania (es), ingelesa (en)

Qwen3.8-27B arreta linealeko modelo hibridoa da (gated delta rule). Zentzuzko errendimenduarekin entrenatu edo zerbitzatzeko, flash-linear-attention instalatuta edukitzea komeni da; hura gabe, transformers PyTorch hutsezko inplementazio askoz motelago batera igarotzen da.

Oinarrizko modeloa multimodala da (irudiak eta bideoak onartzen ditu). Doikuntza honek testu-dorreko moduluak baino ez ditu ukitu, eta ikusmen-bidea ez da entrenatu edo egiaztatu: oinarrizko modelotik heredatutakotzat hartu.

LoRA konfigurazioa

ParametroaBalioa
r32
lora_alpha32
lora_dropout0
biasnone
Moduluakq_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
Gradient checkpointingTrue

Entrenamenduaren hiperparametroak

ParametroaBalioa
Epokak1
Gailu bakoitzeko lotea8
Gradiente-metaketa2 (lote eraginkorra: 8)
Learning rate1.5e-4
Schedulercosine, warmup 3 %
Optimizatzaileaadamw_8bit
Weight decay0.01
Hazia3407
Hardware1 × NVIDIA RTX PRO 6000 Blackwell (96 GB)

Entrenamendu-datuak

Hiru corpusak text eremu bakarrean homogeneizatzen dira, modeloaren berezko txat-txantiloia aplikatuta, eta ausaz nahasten dira (3407 hazia).

1. HiTZ/magpie-en-eu-reasoning-instructions-qwen3 — instrukzioak

accepted_eu eta accepted_en splitak, bakoitzetik 25 000 adibide (~50 000). rejected_* splitak baztertu egiten dira. Elkarrizketak messages eremutik hartzen dira, txanda bakoitzeko reasoning_content kenduta.

2. HiTZ/ALIA_syntethic_MT_V2 — itzulpena

Hiru konfigurazioetako bakoitzetik 5 000 errenkada (berria_eu_en_es, bopv_eu_en_es, parliament_eu_en_es). Errenkada bakoitzak norabide bat sortzen du, indizearen arabera txandakatuz laurak neurri berean betetzeko:

eu → es · es → eu · eu → en · en → eu

berria konfigurazioan, SONAR puntuazioa < 0.6 duten itzulpenak baztertzen dira.

3. HiTZ/RAG_eu — testuan oinarritzea

RAG_eu ebaluazio-bankua da, ez entrenamendu-corpusa: ez du erantzunen zutaberik. Daukan edukitik bi ataza gainbegiratu sortu ziren:

  • Testuan oinarritutako laburpenadocuments konfigurazioa (1 492 dokumentu): textsummary.
  • Erantzun daitekeen erabakitzeaQAP konfigurazioa (~7 465 pare), documents konfigurazioarekin text_id bidez lotuta, galdera bakoitzari benetako testuingurua eransteko.

⚠️ Ebaluazio-kutsadura. Modeloak HiTZ/RAG_eu ikusi du entrenamenduan; beraz, ez da baliozkoa benchmark horrekin ebaluatzea. RAG_eu gainean neurtu behar baduzu, berriro entrenatu train.py fitxategian USE_RAG_EU = False ezarrita.

Guztira, gutxi gorabehera: ~74 000 adibide (kalitate-iragazkiak aplikatu eta text_id umezurtzak baztertu aurretik).


Prompt-formatuak

Entrenamenduak Qwen3.5 modeloaren berezko txantiloia erabiltzen du enable_thinking=False aukerarekin, target guztiak erantzun zuzenak baitira. Arrazoiketa-moduan horrek duen eragina ikusteko, irakurri mugen atala.

Itzulpena — system:

Itzultzaile profesionala zara. Eres un traductor profesional.

user:

Itzuli ondorengo testua euskarara / Traduce el siguiente texto al euskera:
{texto}

(erabilitako hizkuntza-helburu pareak hauek izan ziren: euskarara/al euskera, gaztelaniara/al español, ingelesera/al inglés)

Testuan oinarritzea — system:

Laguntzaile zehatza zara. Erantzun emandako testuan oinarrituta soilik.
Eres un asistente preciso. Responde basándote estrictamente en el texto proporcionado.

user (laburpena):

Testua / Texto:
"""
{texto}
"""

Laburtu testua / Resume el texto.

user (erantzun daitekeen erabakitzea):

Testua / Contexto:
"""
{contexto}
"""

Galdera / Pregunta: {pregunta}

Testuak galdera erantzun dezake? / ¿Puede el texto responder a la pregunta?

Instrukzio orokorrak: sistema-mezurik gabe, elkarrizketa zuzena.


Erabilera

Transformers

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "TU_USUARIO/qwen27b_alia"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, dtype="bfloat16", device_map="auto")

messages = [
    {"role": "system", "content": "Itzultzaile profesionala zara. Eres un traductor profesional."},
    {"role": "user", "content": "Itzuli ondorengo testua euskarara / Traduce el siguiente texto al euskera:\nBuenos días a todos."},
]

inputs = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    enable_thinking=False,   # entrenamenduarekin bat dator
    return_tensors="pt",
).to(model.device)

out = model.generate(inputs, max_new_tokens=512)
print(tokenizer.decode(out[0][inputs.shape[-1]:], skip_special_tokens=True))

Arreta linealeko geruzak bizkortzeko:

pip install flash-linear-attention

GGUF (llama.cpp / Ollama)

Q4_K_M esportazio kuantizatu bat ere badago:

llama-cli -m qwen27b_alia-q4_k_m.gguf -p "..." -cnv

Mugak eta alborapenak

  • Ebaluatu gabe. Ez dago metrikarik. Ez erabili modelo hau produkzioan aurrez zeure atazan neurtu gabe.
  • Entrenatu gabeko arrazoiketa. SFT osoa enable_thinking=False aukerarekin eta target zuzenekin egin zen. Oinarrizko modeloaren arrazoiketa-modua ez da indartu, eta baliteke okerrera egin izana; sortu edukia enable_thinking=False erabilita, kontrakoa egiaztatu ezean.
  • Ezin da HiTZ/RAG_eu erabiliz ebaluatu, kutsadura dela eta (ikus goian).
  • Epoka bakarra ~74 000 adibiderekin: estiloaren eta formatuaren doikuntza arina da, ez ezagutzaren injekzio sakona.
  • Itzulpen sintetikoa. ALIA_syntethic_MT_V2 datu-multzoak automatikoki sortutako itzulpenak ditu; haien errore sistematikoak modelora hedatzen dira. SONAR iragazkia berria partizioari soilik aplikatu zitzaion.
  • Domeinu-alborapena. Corpusak prentsatik (Berria), aldizkari ofizialetik (EHAA) eta Eusko Legebiltzarreko aktetatik datoz. Erregistroak formala eta instituzionala izateko joera du, eta euskal politika garaikidean ardazten da.
  • Egiaztatu gabeko bide multimodala (ikus goian).
  • Qwen3.8-27B modeloaren alborapenak eta mugak heredatzen ditu.

Lizentzia

Modelo honen lizentzia aukeratzea ez da erraza, eta berrikustea komeni da:

  • Oinarrizko modeloa, Qwen3.8-27B, Apache-2.0 lizentziapean dago.
  • HiTZ/RAG_eu eta HiTZ/ALIA_syntethic_MT_V2 CC-BY-SA-4.0 dira (share-alike); HiTZ/magpie-...-qwen3, berriz, CC-BY-4.0 da.

Metadatu hauetan CC-BY-SA-4.0 ezarri da, interpretazio kontserbadoreari jarraituz: entrenamendu-datuen share-alike baldintza hedatzea. Kontrako interpretazioa ere badago, pisuak ez direla corpusaren lan eratorria dioena; kasu horretan, Apache-2.0 nahikoa litzateke. Adostasunik gabeko auzi juridikoa da. Erabaki eta egokitu license eremua horren arabera.

Edonola ere, corpusengatik HiTZ aitortu behar da.


Kredituak

  • Corpusak: HiTZ Zentroa (UPV/EHU), Eusko Jaurlaritzak (IKER-GAITU proiektua) eta Eraldaketa Digitalerako Ministerioak / NextGenerationEUk (ILENIA eta ALIA proiektuak) finantzatuak.
  • Oinarrizko modeloa: Qwen Team, Unslothek paketatua.
  • Entrenamendua: Unsloth + TRL.

Igotzeko:

cd /home/mikel/Documents/qwen_trainer

# 1. Crear los repos (el de safetensors PRIMERO, o el enlace del GGUF nace roto)
./.venv/bin/hf repos create mikelalda/qwen27b_alia_tuned      --type model --private
./.venv/bin/hf repos create mikelalda/qwen27b_alia_tuned-GGUF --type model --private

# 2. Tarjeta dentro de la carpeta del safetensors
cp README.md merged_bf16/README.md

# 3. Safetensors — 52 GB
./.venv/bin/hf upload mikelalda/qwen27b_alia_tuned merged_bf16 . \
    --commit-message "Qwen3.5-27B ALIA SFT LoRA merged (bf16)"

# 4. GGUF — 16,8 GB, fichero y tarjeta juntos
./.venv/bin/hf upload mikelalda/qwen27b_alia_tuned-GGUF gguf_repo . \
    --commit-message "Q4_K_M quantization + model card"

Contributors

mikelalda

1 commits

Languages

Python

89.6%

Shell

10.4%