import gradio as gr import math import transformers from transformers import pipeline model = pipeline("text-classification", model = 'mboth/klassifizierungGrundfunktionenKH') klassifikation_waerme_versorgen = pipeline("text-classification", model = 'mboth/klassifizierungWaermeVersorgen') klassifikation_waerme_verteilen = pipeline("text-classification", model = 'mboth/klassifizierungWaermeVerteilen') klassifikation_waerme_erzeugen = pipeline("text-classification", model = 'mboth/klassifizierungErzeugen') klassifikation_luft_versorgen = pipeline("text-classification", model = 'mboth/klassifizierungLuftVersorgen') klassifikation_luft_verteilen = pipeline("text-classification", model = 'mboth/klassifizierungLuftVerteilen') klassifikation_kälte_versorgen = pipeline("text-classification", model = 'mboth/klassifizierungKaelteVersorgen') klassifikation_medien_versorgen = pipeline("text-classification", model = 'mboth/klassifizierungMedienVersorgen') klassifikation_sichern = pipeline("text-classification", model = 'mboth/klassifizierungSichern') klassifikation_luft_bereitstellen = pipeline("text-classification", model = 'mboth/klassifizierungLuftBereitstellen') klassifikation_datenpunkte_großes_modell = pipeline("zero-shot-classification", model = 'mboth/klassifizierungDatenpunkteNLI') def predict(description, name): hypothese = 'Der Datenpunkt beschreibt: {}.' label_beziehen = ['Alarmmeldung', 'Anforderung', 'Messwert Außentemperatur', 'Betriebsstunden Pumpe', 'Grenzwert Vorlauftemperatur Sekundär', 'Sollwert Maximale Vorlauftemperatur', 'Sollwert Minimale Vorlauftemperatur', 'Offset Vorlauftemperatur', 'Regler', 'Messwert Rücklauftemperatur Primär', 'Messwert Rücklauftemperatur Sekundär', 'Rückmeldung Handschaltung Ventil', 'Rückmeldung Handschaltung Klappe', 'Rückmeldung Betriebsart', 'Rückmeldung Ventil Rücklauf', 'Sollwert Außentemperatur Maximal Tag', 'Sollwert Nachlaufzeit Pumpe', 'Schaltbefehl Anlage', 'Schaltbefehl Pumpe', 'Sollwert Vorlauftemperatur', 'Stellbefehl Ventil', 'Störmeldung', 'Messwert Vorlauftemperatur Sekundär', 'Zähler', 'Messwert Vorlauftemperatur Primär', 'Grenzwert Rücklauftemperatur Sekundär', 'Rückmeldung Handschaltung Fernwärme', 'Rückmeldung Stellsignal'] label_speichern = ['Externe Vorrangschaltung Aktiv', 'Rückmeldung Zeitplan','Sollwert Maximale Hysterese Speichertemperatur','Sollwert Speichertemperatur','Sollwert Speichertemperatur Unten','Messwert Speichertemperatur','Messwert Speichertemperatur Mitte' 'Messwert Speichertemperatur Oben','Messwert Speichertemperatur Unten','Störmeldung','Rückmeldung Zeitplan'] label_kessel = ['Anforderung', 'Anzahl Schaltungen', 'Betriebsstunden','Messwert Druck','Freigabe','Messwert Temperatur','Regler','Reset Betriebsstunden','Rückmeldung Betrieb','Rückmeldung Klappe','Rückmeldung Stellsignal' 'Rückmeldung Handschaltung','Rückmeldung Leistung','Rückmeldung Not Aus','Schaltbefehl Not Aus','Sollwert Temperatur','Sollwert Wartezeit','Sollwert Leistung','Schaltbefehl Anlage','Stellbefehl Anlage','Störmeldung','Überhöhung Kesselanlage', 'Wartungsmeldung','Sollwert Einschaltverzögerung','Sollwert Abschaltung','Schaltbefehl Klappe'] label_bhkw = ['Betriebsstunden','Laufzeit Nächste Wartung','Messwert Abgastemperatur','Messwert Gasverbrauch','Messwert Spannung','Messwert Strom','Messwert Temperatur Generator','Rückmeldung Ölnachspeisung Aktiv' 'Rückmeldung Start', 'Rückmeldung Handschaltung','Rückmeldung Batterie','Schaltbefehl Anlage','Störmeldung','Warnmeldung','Wartungsmeldung','Rückmeldung Betrieb'] label_wärmepumpe = ['Rückmeldung-Handschaltung-Brunnenpumpe','Rückmeldung-Betriebsbereit','Rückmeldung-Betriebsbereit','Rückmeldung-Blockierschutz-Umwälzpumpe','Rückmeldung-Blockierschutz-Brunnenpumpe','Rückmeldung-Umschaltventil-Zu', 'Störmeldung','Zähler-Volumenstrom-Förderbrunnen'] label_pelletkessel = ['Rückmeldung Schnecke Leer','Rückmeldung Betrieb','Messwert Außentemperatur','Messwert Primärluft','Restsauerstoff','Messwert Temperatur Einschubrohr'] label_pumpe = ['Anzahl-Schaltungen','Betriebsstunden','Messwert Durchfluss','Messwert Energieverbrauch','Messwert Leistungsaufnahme','Messwert Stromaufnahme','Messwert Drehzahl','Reset Betriebsstunden','Rückmeldung Handschaltung Pumpe', 'Rückmeldung Betrieb','Schaltbefehl','Schaltbefehl Blockierschutz','Sollwert Frostschutz','Sollwert Laufzeit Blockierschutz','Sollwert Nacht','Sollwert Nachlaufzeit','Sollwert Tag','Status Übersteuern Ein','Störmeldung','Wartungsintervall'] label_ventil = ['Handschaltung','Laufzeit 3 Punkt Antrieb','Rückmeldung Handschaltung','Rückmeldung Stellsignal','Sollwert Stellsignal Min','Sollwert Stellsignal Max','Stellbefehl','Störmeldung','Stellbefehl Max','Stellbefehl Min', 'Sollwert Mischventil','Laufzeit Ventil'] label_raum = ['Freigabe Heizung','Freigabe Raumkorrektur','Freigabe Stützbetrieb Nacht Ventil','Freigabe Stützbetrieb','Freigabe Stützbetrieb Tag Ventil','Freigabe Stellantrieb','Freigabe Zeitprogramm','Messwert Raumtemperatur', 'Rückmeldung Normalbetrieb','Rückmeldung Ventil Handschaltung','Schaltbefehl Raumkorrektur','Sollwert Raumkorrektur','Sollwert Raumtemperatur Tag','Sollwert Raumtemperatur Nacht','Sollwert minimale Raumtemperatur', 'Sollwertverschiebung','Sollwert Stützbetrieb Tag','Sollwert Stützbetrieb Nacht','Sollwert Aufheizbetrieb','Stellbefehl','Aktivierung Raumoptimierung','Rückmeldung Aufheizbetrieb','Rückmeldung Absenkbetrieb'] label_vorlauf = ['Anhebung Vorlauftemperatur','Messwert Vorlauftemperatur','Sollwert- orlauftemperatur','Sollwert Maximale Vorlauftemperatur','Sollwert Minimale Vorlauftemperatur','Sollwert Nachtabsenkung Vorlauftemperatur', 'Störmeldung','Rückmeldung Sollwertabweichung Vorlauftemperatur','Sollwertkorrektur Vorlauftemperatur'] label_rücklauf = ['Messwert Rücklauftemperatur','Sollwert Maximale Rücklauftemperatur','Sollwert Minimale Rücklauftemperatur','Sollwert Rücklauftemperatur','Rohrheizung'] label_heizkreis_allgemein = ['Alarmmeldung','Aktuelle Leistung','Grenzwert Frost','Heizkurve','Messwert Außentemperatur','Regler','Rückmeldung Nutzzeitverlängerung','Schaltbefehl Anlage','Schaltbefehl Nutzzeitverlängerung', 'Schaltbefehl Nachtabsenkung','Sollwert Maximale Aufheizzeit','Sollwert Aufheizzeit','Sollwert Nachtabsenkung','Sollwert Nutzzeitverlängerung','Sollwert Speicherfähigkeit','Sollwert Stützbetrieb Tag','Sollwert Überhöhung Hydraulische Weiche', 'Stützbetrieb Nacht Erreicht','Warmwasserbereitung','Parallelverschiebung','Rückmeldung Tagbetrieb','Störmeldung','Wärmemengenzähler','Sollwert Minimale Außentemperatur','Sollwert Außentemperatur','Rückmeldung Betriebsart', 'Rückmeldung Zeitplan','Rückmeldung Regelabweichung','Sollwert Abschalten Stützbetrieb','Schaltbefehl Start Stop Optimierung','Schaltbefehl Gleitendes Schalten','Schaltbefehl Zeitprogramm'] label_abluft_allgemein = ['Alarmmeldung','Befehlsausführkontrolle','Messwert Druck','Messwert Feuchte','Messwert Temperatur','Messwert Luftqualität','Messwert Volumenstrom','Rückmeldung Handschaltung','Rückmeldung Nutzzeitverlängerung', 'Rückmeldung Ventil','Rückmeldung Zeitplan','Schaltbefehl Anlage','Sollwert Druck','Sollwert Feuchte','Sollwert Temperatur','Sollwert CO2 Konzentration','Sollwert Volumenstrom','Störmeldung', 'Warnmeldung CO2 Hoch','Warnmeldung Feuchte','Warnmeldung Temperatur Hoch','Warnmeldung Temperatur Niedrig','Wartungsmeldung'] label_abluftventilator = ['Alarmmeldung','Anzahl Schaltungen','Befehlausführungskontrolle','Betriebsstunden','Messwert Differenzdruck','Messwert Volumenstrom','Reset Betriebsstunden','Rückmeldung Nutzzeitverlängerung', 'Rückmeldung Handschaltung','Rückmeldung Reperaturschalter','Rückmeldung Betrieb','Rückmeldung Zeitplan','Schaltbefehl','Sollwert Laufzeit','Sollwert FU','Stellbefehl','Störmeldung'] label_zuluftventilator = ['Alarmmeldung', 'Anzahl Schaltungen', 'Befehlausführungskontrolle', 'Betriebsstunden', 'Messwert Differenzdruck', 'Messwert Volumenstrom', 'Reset Betriebsstunden', 'Rückmeldung Drehzahl', 'Rückmeldung Nutzzeitverlängerung', 'Rückmeldung Handschaltung', 'Rückmeldung Reperaturschalter', 'Rückmeldung Stellsignal', 'Rückmeldung Betrieb', 'Rückmeldung Zeitplan', 'Rückmeldung Laufüberwachung', 'Schaltbefehl', 'Sollwert Laufzeit', 'Sollwert Stellsignal', 'Stellbefehl', 'Störmeldung', 'Wartungsmeldung'] label_zuluft_allgemein = ['Alarmmeldung Frostschutz', 'Alarmmeldung', 'Befehlsausführkontrolle', 'Messwert Druck', 'Messwert Feuchte', 'Messwert Temperatur', 'Messwert Luftqualität', 'Messwert Volumenstrom', 'Rückmeldung Handschaltung', 'Rückmeldung Nutzzeitverlängerung','Rückmeldung Ventil', 'Rückmeldung Zeitplan', 'Rückmeldung Grenzwert Soll Ist Abweichung Temperatur', 'Sollwert Grenzwert Soll Ist Abweichung Temperatur', 'Schaltbefehl Anlage', 'Sollwert Druck', 'Sollwert Feuchte', 'Sollwert Feuchte Max', 'Sollwert Feuchte Min', 'Sollwert Frostschutz', 'Sollwert Temperatur', 'Sollwert Temperatur Min', 'Sollwert Temperatur Max', 'Sollwert CO2-Konzentration', 'Sollwert CO2-Konzentration Max', 'Sollwert Volumenstrom', 'Sollwert Volumenstrom Max', 'Sollwert Volumenstrom Min', 'Störmeldung', 'Warnmeldung CO2 Hoch', 'Warnmeldung Feuchte', 'Warnmeldung Temperatur Hoch', 'Warnmeldung Temperatur Niedrig', 'Wartungsmeldung'] label_klappe = ['Alarmmeldung', 'Befehlsausführkontrolle','Rückmeldung Betrieb', 'Rückmeldung Klappe Auf', 'Rückmeldung Klappe Zu', 'Rückmeldung Handschaltung', 'Rückmeldung Stellsignal', 'Schaltbefehl', 'Störmeldung', 'Stellbefehl', 'Sollwert Stellsignal'] label_befeuchter = ['Rückmeldung Betrieb','Betriebsstunden','Sollwert Befeuchten','Stellbefehl','Störmeldung','Schaltbefehl'] label_entrauchung = ['Rückmeldung Betrieb','Wartungsmeldung','Störmeldung','Schaltbefehl'] label_erhitzer = ['Alarmmeldung','Anzahl Schaltungen','Betriebsstunden','Messwert Durchfluss','Messwert Energieverbrauch','Messwert Leistungsaufnahme','Messwert Rücklauftemperatur','Messwert Stromaufnahme', 'Messwert Vorlauftemperatur','Messwert Drehzahl','Reset Betriebsstunden','Rückmeldung Handschaltung Pumpe','Rückmeldung Handschaltung Ventil','Rückmeldung Betrieb','Rückmeldung Stellsignal','Schaltbefehl', 'Schaltbefehl Blockierschutz','Schaltbefehl Frostschutz','Sollwert Frostschutz','Sollwert Laufzeit Blockierschutz','Sollwert Nacht','Sollwert Nachlaufzeit','Sollwert Dauerfreigabe','Sollwert Tag', 'Status Übersteuern-Ein','Stellbefehl Ventil','Störmeldung','Wartungsintervall','Wartungsmeldung','Grenzwert Rücklauftemperatur'] label_filter = ['Messwert Druck','Wartungsmeldun -Abluft','Wartungsmeldung Zuluft','Wartungsmeldung Fortluft','Wartungsmeldung Außenluft','Wartungsmeldung Filter','Störmeldung'] label_gerät_allgemein = ['Alarmmeldung','Anforderung Tableau','Messwert Außentemperatur','Sollwert Kühlbedarf','Schaltbefehl Anlage','Übersteuert','Rückmeldung Anfahrbetrieb','Rückmeldung Batterie', 'Rückmeldung Betrieb','Rückmeldung Handschaltung','Rückmeldung Quittierung','Rückmeldung Freie Nachtkühlung','Rückmeldung Ferienprogramm','Rückmeldung Nutzzeitverlängerung','Rückmeldung Restlaufzeit Nutzzeitverlängerung', 'Rückmeldung Spülen','Schaltbefehl Nachtkühlung','Schaltbefehl Optimierte Luftqualität','Schaltbefehl Tagesprogramm','Schaltbefehl Nutzzeitverlängerung','Sollwert Feuchte','Sollwert Spülzeit','Sollwert Freie-Nachtkühlung', 'Sollwert Nutzzeitverlängerung','Sollwert Wärmebedarf','Sollwert Maximale Einschaltverzögerung','Störmeldung','Rückmeldung Anlage Fern','Schaltbefehl Anlage Fern'] label_kühler = ['Alarm Frostschutz','Anzahl Schaltungen','Betriebsstunden','Messwert Rücklauftemperatur','Messwert Vorlauftemperatur','Rückmeldung Klappe Auf','Rückmeldung Betrieb','Rückmeldung Stellsignal', 'Sollwert Kühlbedarf','Stellbefehl Ventil','Zählwert Kühlwasser','Zählwert Kältemenge'] label_raum_rlt = ['Alarmmeldung','Alarme Zurück Gestellt','Betriebsmeldung Präsenzmelder','Messwert Feuchte','Messwert CO2','Messwert Raumtemperatur','Rückmeldung Betrieb','Rückmeldung Ventil','Rückmeldung Klappe Auf', 'Rückmeldung Kommunikation','Sollwert Ausschaltverzögerung','Sollwert Einschaltverzögerung','Sollwert CO2','Sollwert CO2 Max','Sollwert Feuchte','Sollwert Raumtemperatur','Störmeldung','Warnmeldung CO2 Hoch', 'Warnmeldung Feuchte','Warnmeldung Temperatur Hoch','Warnmeldung Temperatur Niedrig'] label_umluft = ['Rückmeldung Klappe Auf','Rückmeldung Klappe Zu','Schaltbefehl','Stellbefehl','Rückmeldung Betrieb','Rückmeldung Handschaltung'] label_vsr = ['Schaltbefehl','Rückmeldung Stellsignal','Stellbefehl','Rückmeldung Handschaltung'] label_wrg = ['Alarmmeldung','Messwert Temperatur Austritt Zuluft','Messwert Temperatur Eintritt Zuluft','Messwert Temperatur Eintritt Abluft','Messwert Temperatur Austritt Abluft','Messwert Vorlauftemperatur', 'Pumpe','Rückmeldung Betrieb','Rückmeldung Handschaltung','Rückmeldung Stellsignal','Schaltbefehl','Sollwert Frostschutz','Sollwert Stellsignal','Sollwert Stellsignal Min','Sollwert Stellsignal Max','Stellbefehl', 'Stellbefehl WRG Bypass','Störmeldung'] #completion = model(prompt)[0]["generated_text"] datapoint = 'Beschreibung: ' + description + '; Name: ' + name #print(datapoint) klass_grundfunktion = model(datapoint) #print(completion[0]['label']) #return completion[0]['label'] score = round((klass_grundfunktion[0]['score'] * 100), 2) grundfunktion = 'Die Grundfunktion des Datenpunktes lautet: '+ str(klass_grundfunktion[0]['label'])+ ' mit einem Score von: '+ str(score) + ' %' if klass_grundfunktion[0]['label'] == 'WaermeVersorgen': klasse = klassifikation_waerme_versorgen(datapoint) score_klasse = round((klasse[0]['score'] * 100), 2) klasse_string = 'Die zweite Grundfunktion des Datenpunktes lautet: ' + str(klasse[0]['label']) + ' mit einem Score von: '+ str(score_klasse) + ' %' if klasse[0]['label'] == 'Verteilen': klasse_komponente = klassifikation_waerme_verteilen(datapoint) score_komponente = round((klasse_komponente[0]['score'] * 100), 2) klasse_komponente_string = 'Die Komponente des Datenpunktes lautet: ' + str(klasse_komponente[0]['label']) + ' mit einem Score von: '+ str(score_komponente) + ' %' if klasse_komponente[0]['label'] == 'Pumpe': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_pumpe) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Ventil': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_ventil) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Raum': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_raum) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Vorlauf': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_vorlauf) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Ruecklauf': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_rücklauf) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'HeizkreisAllgemein': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_heizkreis_allgemein) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse[0]['label'] == 'Erzeugen': klasse_komponente = klassifikation_waerme_erzeugen(datapoint) score_komponente = round((klasse_komponente[0]['score'] * 100), 2) klasse_komponente_string = 'Die Komponente des Datenpunktes lautet: ' + str(klasse_komponente[0]['label']) + ' mit einem Score von: '+ str(score_komponente) + ' %' if klasse_komponente[0]['label'] == 'Kessel': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_kessel) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'BHKW': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_bhkw) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Wärmepumpe': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_wärmepumpe) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Pelletkessel': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_pelletkessel) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'WaermeversorgerAllgemein': datenpunkt_string = 'Noch nicht ausgeprägt' elif klasse[0]['label'] == 'Beziehen': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_beziehen) score_dp = round((datenpunkt['scores'][0] * 100), 2) klasse_komponente_string = 'Die Komponente des Datenpunktes lautet: Fernwärme' datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse[0]['label'] == 'Speichern': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_speichern) score_dp = round((datenpunkt['scores'][0] * 100), 2) klasse_komponente_string = 'Die Komponente des Datenpunktes lautet: Speicher' datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klass_grundfunktion[0]['label'] == 'LuftVersorgen': klasse = klassifikation_luft_versorgen(datapoint) score_klasse = round((klasse[0]['score'] * 100), 2) klasse_string = 'Die zweite Grundfunktion des Datenpunktes lautet: ' + str(klasse[0]['label']) + ' mit einem Score von: '+ str(score_klasse) + ' %' if klasse[0]['label'] == 'LuftVerteilen': klasse_komponente = klassifikation_luft_verteilen(datapoint) score_komponente = round((klasse_komponente[0]['score'] * 100), 2) klasse_komponente_string = 'Die Komponente des Datenpunktes lautet: ' + str(klasse_komponente[0]['label']) + ' mit einem Score von: '+ str(score_komponente) + ' %' print(klasse_komponente_string) if klasse_komponente[0]['label'] == 'Raum': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_raum_rlt) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'VolumenstromreglerAbluft': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_vsr) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'VolumenstromreglerZuluft': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_vsr) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse[0]['label'] == 'LuftBereitstellen': klasse_komponente = klassifikation_luft_bereitstellen(datapoint) score_komponente = round((klasse_komponente[0]['score'] * 100), 2) klasse_komponente_string = 'Die Komponente des Datenpunktes lautet: ' + str(klasse_komponente[0]['label']) + ' mit einem Score von: '+ str(score_komponente) + ' %' print(klasse_komponente_string) if klasse_komponente[0]['label'] == 'ZuluftAllgemein': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_zuluft_allgemein) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'AbluftAllgemein': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_abluft_allgemein) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Abluftventilator': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_abluftventilator) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Zuluftventilator': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_zuluftventilator) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Fortluftklappe': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_klappe) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Außenluftklappe': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_klappe) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Abluftklappe': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_klappe) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Zuluftklappe': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_klappe) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Befeuchter': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_befeuchter) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Entrauchung': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_entrauchung) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Erhitzer': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_erhitzer) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Filter': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_filter) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'GerätAllgemein': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_gerät_allgemein) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Kühler': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_kühler) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Umluft': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_umluft) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Wärmerückgewinnung': datenpunkt = klassifikation_datenpunkte_großes_modell(sequences = datapoint, hypothesis_template = hypothese, candidate_labels = label_wrg) score_dp = round((datenpunkt['scores'][0] * 100), 2) datenpunkt_string = 'Der Datenpunkt lautet: ' + str(datenpunkt['labels'][0]) + ' mit einem Score von: '+ str(score_dp) + ' %' elif klasse_komponente[0]['label'] == 'Regler': datenpunkt_string = 'Noch nicht ausgeprägt' elif klass_grundfunktion[0]['label'] == 'MedienVersorgen': klasse = klassifikation_medien_versorgen(datapoint) score_klasse = round((klasse[0]['score'] * 100), 2) klasse_string = 'Die zweite Grundfunktion des Datenpunktes lautet: ' + str(klasse[0]['label']) + ' mit einem Score von: '+ str(score_klasse) + ' %' klasse_komponente_string = 'Noch nicht ausgeprägt' datenpunkt_string = 'Noch nicht ausgeprägt' elif klass_grundfunktion[0]['label'] == 'Sichern': klasse = klassifikation_sichern(datapoint) score_klasse = round((klasse[0]['score'] * 100), 2) klasse_string = 'Die zweite Grundfunktion des Datenpunktes lautet: ' + str(klasse[0]['label']) + ' mit einem Score von: '+ str(score_klasse) + ' %' klasse_komponente_string = 'Noch nicht ausgeprägt' datenpunkt_string = 'Noch nicht ausgeprägt' elif klass_grundfunktion[0]['label'] == 'KaelteVersorgen': klasse = klassifikation_kälte_versorgen(datapoint) score_klasse = round((klasse[0]['score'] * 100), 2) klasse_string = 'Die zweite Grundfunktion des Datenpunktes lautet: ' + str(klasse[0]['label']) + ' mit einem Score von: '+ str(score_klasse) + ' %' klasse_komponente_string = 'Noch nicht ausgeprägt' datenpunkt_string = 'Noch nicht ausgeprägt' elif klass_grundfunktion[0]['label'] == 'StromVersorgen': klasse_string = 'Noch nicht ausgeprägt' klasse_komponente_string = 'Noch nicht ausgeprägt' datenpunkt_string = 'Noch nicht ausgeprägt' elif klass_grundfunktion[0]['label'] == 'AndereAnlagen': klasse_string = 'Noch nicht ausgeprägt' klasse_komponente_string = 'Noch nicht ausgeprägt' datenpunkt_string = 'Noch nicht ausgeprägt' elif klass_grundfunktion[0]['label'] == 'Befoerdern': klasse_string = 'Noch nicht ausgeprägt' klasse_komponente_string = 'Noch nicht ausgeprägt' datenpunkt_string = 'Noch nicht ausgeprägt' return [grundfunktion, klasse_string, klasse_komponente_string, datenpunkt_string] title = 'Klassifizierung Datenpunkte' gr.Interface(fn = predict, inputs = [gr.Textbox(label="Description:", placeholder="z.B. Schaltbefehl Pumpe", lines=1), gr.Textbox(label="Name:", placeholder="z.B. 101HZG401PU101SB", lines=1)], title = title, examples=[["Schaltbefehl Zul.-Ventilator", '101RLT204ZU405VE202SB'], ["Vorl. Temp.", '101HZG204VL405MW']], theme = 'huggingface', outputs = [gr.Textbox(label = 'Grundfunktion'),gr.Textbox(label = 'Funktion Ebene 2'), gr.Textbox(label = 'Komponente'),gr.Textbox(label = 'Datenpunkt')]).launch()