Views
No views yet
Stage1: The base model, finetuned using human-annotated data only.Stage2: The base model, finetuned using human-annotated and synthetically annotated data.1from transformers import pipeline
2
3text_to_annotate = (
4 "Solange Berlin - nach 25 Jahren sozialdemokratischer Schulsenatoren - in aller Regel einen "
5 "der Schlussplätze im Bildungsvergleich belegt, müssen sich Schulen auf ihre Kernaufgabe "
6 "konzentrieren. Kindern muss vermittelt werden, dass Menschen andersartig, aber gleichwertig "
7 "sind."
8)
9
10generator = pipeline(
11 "text-generation",
12 model="sandh/sandh/Gemma-4-31B-it_DimABSA-German",
13revision="Stage1", # or "Stage2"
14 device="cuda"
15)
16output = generator(
17 [
18 {
19 "role": "system",
20 "content": "Du bist ein spezialisiertes Modell zur Sentimentanalyse politischer Texte.\n"
21 "Das Ausgabeformat ist ein JSON-Array aus 0 oder mehr Objekten, wobei jedes Objekt genau die "
22 "folgenden Felder enthält:\n"
23 "- Aspekt (string oder 'NULL'): Das genaue Wort oder die genaue Phrase im Text, das/ die "
24 "eine bestimmte Entität/ Idee oder ein bestimmtes Ereignis/ Thema bezeichnet, die/ das von "
25 "öffentlichem Interesse ist. Der Aspektbegriff ist 'NULL', falls kein expliziter Aspekt "
26 "vorhanden ist.\n"
27 "- Sentimentbegriff (string oder 'NULL'): Das genaue Wort oder die genaue Phrase im Text, "
28 "das/ die das Sentiment/ die Einstellung/ Haltung gegenüber dem Aspekt zum Ausdruck bringt. "
29 "Der Sentimentbegriff ist 'NULL', falls das Sentiment/ die Einstellung/ Haltung nicht explizit "
30 "ausgedrückt wird.\n"
31 "- Valenz (Zahl): Wert, der den den Grad der Positivität oder Negativität misst. Ein Wert von "
32 "1.00 steht für eine extrem negative Valenz, 9.00 für eine extrem positive Valenz und 5.00 für "
33 "eine neutrale Valenz. Der Valenzwert muss auf genau zwei Dezimalstellen gerundet sein.\n"
34 "- Erregung (Zahl): Wert, der die Intensität des Sentiments/ der Emotion misst. Ein Wert von "
35 "1.00 steht für sehr geringe Erregung, 9.00 für sehr hohe Erregung und 5.00 für mittlere "
36 "Erregung. Der Erregungswert muss auf genau zwei Dezimalstellen gerundet sein.\n"
37 "Gib NUR das JSON-Array zurück und formatiere es NICHT als Codeblock (```json ... ```)."
38 },
39 {
40 "role": "user",
41 "content": f"Text: {text_to_annotate}"
42 }
43 ],
44 max_new_tokens=512,
45 return_full_text=False,
46)
47
48print(output["generated_text"])
49# [{"Aspect": "Schulen",
50# "Opinion": "auf ihre Kernaufgabe konzentrieren",
51# "Valence": 5.40,
52# "Arousal": 3.80}]Stage1: The train-split of the sandh/SemEval-2026 dataset was used for finetuning. The training data exclusively contains human-annotated German political texts.Stage2: Additionally, the train-split of the sandh/AfD-CCC dataset was used for finetuning. This data exclusively contains synthetically labeled German texts, which are focused on the stance of members of the AfD party regarding climate change.rank: 16alpha: 32dropout: 0.05bias: nonetarget_modules: q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_projuse_rslora: Truetask_type: CAUSAL_LMseed: 42max_length: 1024packing: Trueassistant_only_loss: Falsegradient_checkpointing: Trueper_device_train_batch_size: 2gradient_accumulation_steps: 4num_train_epochs: 1learning_rate: 2e-05lr_scheduler_type: linearweight_decay: 0.001warmup_steps: 5optim: adamw_8bit