from transformers import logging
logging.set_verbosity_error()  # Mitteilungen muten
import pandas as pd
from transformers import pipeline

daten = pd.read_csv("../data/example_dataset.csv")
datenliste = list(daten["text"])
zeroshot_classifier = pipeline("zero-shot-classification",
                                model = "MoritzLaurer/bge-m3-zeroshot-v2.0")

template = "Die Stimmung beziehungsweise Tonalität des Textes ist {}"
labels = ["positiv", "neutral", "negativ"]

results = zeroshot_classifier(datenliste, candidate_labels=labels,
                               hypothesis_template=template, multi_label=False)

labels = set(label for item in results for label in item['labels'])
out_dict = {label: [] for label in labels}
out_dict['sequence'] = []

for item in results:
    out_dict['sequence'].append(item['sequence'])
    for label in labels:
        if label in item['labels']:
            out_dict[label].append(item['scores'][item['labels'].index(label)])
        else:
            out_dict[label].append(None)

ergebnis = pd.DataFrame(out_dict)
pd.set_option('display.width', 1000)
print(ergebnis)
    positiv   negativ   neutral                                           sequence
0  0.707576  0.006816  0.285608  Die orthodoxe Gemeinde feiert heute #Ostern. I...
1  0.654405  0.003431  0.342164  Vielen Dank Gregor Rutz für die Unterstützung ...
2  0.010227  0.809285  0.180488  Wird ja immer schlimmer mit den Intoleranten d...
3  0.350793  0.387819  0.261388  Liebe Junge, geht wählen. Kann ja nicht sein, ...
4  0.440438  0.019927  0.539635  ‘— Das war unser EU-Wahl-Abschluss der SP– mit...
5  0.985130  0.002250  0.012621  Aufschlussreicher Blick hinter die Mauern! Tol...
6  0.007550  0.790673  0.201777  Denn ein Hard-Brexit würde der #EU, aber noch ...
7  0.375643  0.056651  0.567706  Familienbonus: Es ist erstaunlich wie viele Me...
8  0.301832  0.008279  0.689889  Integration passiert vor Ort. Deshalb arbeitet...
9  0.044657  0.208825  0.746518  Ich frage mich: Wer ist als nächstes dran Frau...