Model Card for CCG-FAKTUM/lapua-llm

Model Details

  • Mallin nimi: Lapua-llm (LoRA-adapteri)
  • Pohjamalli: Qwen/Qwen2.5-1.5B-Instruct
  • Tyyppi: LoRA, r=16, alpha=32, dropout=0.05
  • Kieli: suomi (hallinto-/päätöstekstit)
  • Kuvaus: Hienosäädetty Lapuan kaupungin pöytäkirjakieleen ja vastausformaatteihin (Johtopäätös → Perustelut → Lähteet).
  • Käyttö: RAG-assistenttina päätöspykälien kyselyyn, tiivistämiseen ja luokitteluun.
  • Lisenssi: [Lisää sopiva lisenssi lähdedatan mukaan]
  • Jaettu: CCG-FAKTUM

Model Sources

Uses

Direct Use

  • Vastaukset Lapuan kaupungin päätöspöytäkirjoihin liittyviin kysymyksiin, kun syötetään RAG-konteksti (BM25/Qdrant).
  • Tiivistelmät ja luokittelu (päätöstyypit, vastuuhenkilö, vaikutukset).

Downstream Use

  • Osana Lapua-RAG -palvelua tai muuta sovellusta, joka hakee asiakirjakontekstin ja syöttää sen mallille.

Out-of-Scope Use

  • Ei oikeudelliseksi neuvonnaksi.
  • Ei muihin kuntiin tai mielipide-/small-talk -käyttöön ilman uutta hienosäätöä.
  • Ei faktojen muistivarastoksi ilman RAG:ia.

Bias, Risks, and Limitations

  • Lapua-spesifi kieli ja sisältö; ei yleisty muihin kuntiin.
  • Voi tuottaa virheitä, jos kontekstia ei anneta.
  • Tarkista aina alkuperäinen pöytäkirja ennen päätöksentekoa.

Recommendations

  • Käytä aina RAG-kontekstia.
  • Näytä käyttäjälle lähdesitaatti (§, kokous, pvm).
  • Merkitse epävarmuus, jos konteksti puuttuu tai on ristiriitainen.

How to Get Started with the Model

from transformers import AutoModelForCausalLM, AutoTokenizer from peft import PeftModel

base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2.5-1.5B-Instruct") model = PeftModel.from_pretrained(base, "CCG-FAKTUM/lapua-llm") tok = AutoTokenizer.from_pretrained("CCG-FAKTUM/lapua-llm")

prompt = ( "System: Olet Lapuan päätöstekstiasiantuntija. Vastaa muodolla: " "Johtopäätös → Perustelut → Lähteet (§, kokous, pvm).\n" "User: Konteksti:\n" "{pykala_teksti}\n" "Kysymys: Mitä päätettiin § 78?" ) inputs = tok(prompt, return_tensors="pt") out = model.generate(**inputs, max_new_tokens=200) print(tok.decode(out[0], skip_special_tokens=True))## Training Details

Training Data

  • Lähde: Lapuan kaupungin pöytäkirjat (Docling-parse).
  • SFT v1: ~570 näytettä (Q&A, tiivistelmä, luokittelu). V2 (10k) tulossa.

Training Procedure

  • Optimointi: lr=2e-4, cosine, warmup 100.
  • Batch: per_device_train_batch_size=1, grad_accum=8, seq_len=768.
  • bf16, gradient checkpointing, label_names=["labels"].
  • LoRA target-moduulit: q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj.
  • Maksimi stepit: 800 (demo). Suositus: 3000 jatkossa.

Training Hyperparameters

  • bf16 mixed precision
  • LoRA r=16, alpha=32, dropout=0.05
  • lr=2e-4, cosine, warmup_steps=100

Speeds, Sizes, Times

  • Mallin koko: ~74 MB adapteri.
  • Treeni: a10g-small, 800 askelta (~tens of minutes).

Evaluation

  • Smoke-test: käsi- ja GPT-vertailu (Lapua-kysymykset + pykäläteksti).
  • Suunnitelma: LLM-as-judge (oikeellisuus, hyödyllisyys, selkeys, kieli), BLEU/ROUGE referensseihin, RAG recall@k.

Testing Data, Factors & Metrics

  • Testidata: Lapua-pykälät (erillinen eval-kysymyspaketti).
  • Metrics: LLM-as-judge score, ROUGE, relevanssi RAG:lla.

Results

  • V1: ei vielä julkisia numeroita; käytä smoke-testejä ja judge-scorea.

Environmental Impact

  • Laitteisto: a10g-small (24 GB).
  • Tunnit: ~<1 h (800 stepin demo).
  • Hiilijalanjälki: pieni; arvioi tarkemmin MLCO2-työkalulla.

Technical Specifications

  • Arkkitehtuuri: Qwen2.5-1.5B-Instruct + LoRA (CAUSAL_LM).
  • Ohjelmistot: transformers, peft, accelerate, datasets.

Citation

  • Lisää, jos julkaiset blogin/paperin.

Model Card Authors

  • CCG-FAKTUM

Model Card Contact

  • [Lisää yhteystieto tai repo-issues-linkki]
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for CCG-FAKTUM/lapua-llm

Base model

Qwen/Qwen2.5-1.5B
Adapter
(564)
this model