Davidmg0815's picture
Upload folder using huggingface_hub
008a906 verified
Raw
History Blame
17.2 kB
{
"modell": "Qwen3.6-27B Q6_K",
"reasoning": false,
"max_tokens": 900,
"terminal": [
{
"id": "term01",
"titel": "Zeilen zaehlen",
"ok": true,
"grund": "",
"antwort": "wc -l < log.txt",
"tps": 30.815962668662365,
"prompt_tps": 201.05991585492478,
"tokens": 7,
"prompt_tokens": 67,
"denk_zeichen": 0,
"antwort_zeichen": 15,
"abbruch": "stop",
"ttft": 0.333,
"sekunden": 0.61
},
{
"id": "term02",
"titel": "Muster mit Zeilennummer",
"ok": true,
"grund": "",
"antwort": "grep -n \"WARN\" log.txt",
"tps": 30.41681170979658,
"prompt_tps": 360.63265271075545,
"tokens": 9,
"prompt_tokens": 63,
"denk_zeichen": 0,
"antwort_zeichen": 22,
"abbruch": "stop",
"ttft": 0.175,
"sekunden": 0.94
},
{
"id": "term03",
"titel": "Groesste Datei",
"ok": true,
"grund": "",
"antwort": "ls -S | head -n 1",
"tps": 30.14699675618315,
"prompt_tps": 181.7005519842526,
"tokens": 10,
"prompt_tokens": 66,
"denk_zeichen": 0,
"antwort_zeichen": 17,
"abbruch": "stop",
"ttft": 0.363,
"sekunden": 0.92
},
{
"id": "term04",
"titel": "Spalte aus CSV",
"ok": true,
"grund": "",
"antwort": "tail -n +2 messwerte.csv | cut -d ';' -f 1",
"tps": 28.976548313564887,
"prompt_tps": 204.61694721375812,
"tokens": 18,
"prompt_tokens": 83,
"denk_zeichen": 0,
"antwort_zeichen": 42,
"abbruch": "stop",
"ttft": 0.406,
"sekunden": 1.24
},
{
"id": "term05",
"titel": "Doppelte Zeilen",
"ok": true,
"grund": "",
"antwort": "sort namen.txt | uniq -c | sort -rn",
"tps": 29.697383660499504,
"prompt_tps": 374.41749278526294,
"tokens": 12,
"prompt_tokens": 65,
"denk_zeichen": 0,
"antwort_zeichen": 35,
"abbruch": "stop",
"ttft": 0.174,
"sekunden": 0.97
},
{
"id": "term06",
"titel": "Summe einer Spalte",
"ok": false,
"grund": "Ausgabe falsch: '29'",
"antwort": "awk -F';' 'NR>1{s+=$2}END{print s}' messwerte.csv",
"tps": 23.418369165135136,
"prompt_tps": 418.15328304632817,
"tokens": 23,
"prompt_tokens": 77,
"denk_zeichen": 0,
"antwort_zeichen": 49,
"abbruch": "stop",
"ttft": 0.184,
"sekunden": 1.61
},
{
"id": "term07",
"titel": "Numerisch sortieren",
"ok": false,
"grund": "Ausgabe falsch: 'pumpe;6;47.3;ok\\nmotor;6;231.5;ok\\nkompressor;6;18.7;warn\\nvent'",
"antwort": "tail -n +2 messwerte.csv | sort -t ';' -k2 -nr",
"tps": 22.93096331770005,
"prompt_tps": 368.33327125469214,
"tokens": 19,
"prompt_tokens": 89,
"denk_zeichen": 0,
"antwort_zeichen": 46,
"abbruch": "stop",
"ttft": 0.242,
"sekunden": 1.3
},
{
"id": "term08",
"titel": "JSON-Feld lesen",
"ok": true,
"grund": "",
"antwort": "jq -r '.port' config.json",
"tps": 30.453967136785685,
"prompt_tps": 349.32260524798994,
"tokens": 9,
"prompt_tokens": 60,
"denk_zeichen": 0,
"antwort_zeichen": 25,
"abbruch": "stop",
"ttft": 0.172,
"sekunden": 0.86
},
{
"id": "term09",
"titel": "Ersetzen in Datei",
"ok": true,
"grund": "",
"antwort": "sed -i 's/WARN/ACHTUNG/g' log.txt",
"tps": 29.151331851473962,
"prompt_tps": 235.300194266136,
"tokens": 16,
"prompt_tokens": 82,
"denk_zeichen": 0,
"antwort_zeichen": 33,
"abbruch": "stop",
"ttft": 0.348,
"sekunden": 1.12
},
{
"id": "term10",
"titel": "Gefiltert zaehlen",
"ok": true,
"grund": "",
"antwort": "awk -F';' 'NR>1 && $2==6{count++} END{print count}' messwerte.csv",
"tps": 24.360909582228444,
"prompt_tps": 453.6096863114554,
"tokens": 27,
"prompt_tokens": 91,
"denk_zeichen": 0,
"antwort_zeichen": 65,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 1.78
}
],
"code": [
{
"id": "code01",
"titel": "Intervalle zusammenfassen",
"ok": true,
"grund": "",
"bestanden": 5,
"gesamt": 5,
"code": "def merge_intervalle(intervalle):\n if not intervalle:\n return []\n \n # Sortiere die Intervalle nach dem Startwert\n intervalle.sort(key=lambda x: x[0])\n \n merged = [intervalle[0]]\n \n for current_start, current_end in intervalle[1:]:\n last_start, last_end = merged[-1]\n \n # Wenn das aktuelle Intervall mit dem letzten zusammengefassten Intervall\n # ueberlappt oder direkt aneinander grenzt, fusioniere sie\n if current_start <= last_end:\n merged[-1] = (last_start, max(last_end, current_end))\n else:\n merged.a",
"tps": 23.305677262981263,
"prompt_tps": 288.9850100678649,
"tokens": 173,
"prompt_tokens": 124,
"denk_zeichen": 0,
"antwort_zeichen": 672,
"abbruch": "stop",
"ttft": 0.429,
"sekunden": 8.08
},
{
"id": "code02",
"titel": "Verschachteltes dict flach machen",
"ok": true,
"grund": "",
"bestanden": 6,
"gesamt": 6,
"code": "def flatten(d, sep='.'):\n result = {}\n for key, value in d.items():\n if isinstance(value, dict):\n if not value:\n continue\n sub_dict = flatten(value, sep)\n for sub_key, sub_value in sub_dict.items():\n result[f\"{key}{sep}{sub_key}\"] = sub_value\n else:\n result[key] = value\n return result",
"tps": 23.540931854709175,
"prompt_tps": 213.06525295198472,
"tokens": 99,
"prompt_tokens": 93,
"denk_zeichen": 0,
"antwort_zeichen": 396,
"abbruch": "stop",
"ttft": 0.436,
"sekunden": 4.86
},
{
"id": "code03",
"titel": "Roemische Zahlen lesen",
"ok": true,
"grund": "",
"bestanden": 6,
"gesamt": 6,
"code": "def roemisch_zu_int(s: str) -> int:\n romer_werte = {\n 'I': 1,\n 'V': 5,\n 'X': 10,\n 'L': 50,\n 'C': 100,\n 'D': 500,\n 'M': 1000\n }\n \n ergebnis = 0\n i = 0\n \n while i < len(s):\n # Wenn es ein Subtraktionspaar gibt (aktuelles Zeichen kleiner als nächstes)\n if i + 1 < len(s) and romer_werte[s[i]] < romer_werte[s[i + 1]]:\n ergebnis += romer_werte[s[i + 1]] - romer_werte[s[i]]\n i += 2\n else:\n ergebnis += romer_werte[s[i]]\n i += 1\n \n return ergebnis",
"tps": 23.50727760678258,
"prompt_tps": 238.43128656974113,
"tokens": 229,
"prompt_tokens": 87,
"denk_zeichen": 0,
"antwort_zeichen": 605,
"abbruch": "stop",
"ttft": 0.365,
"sekunden": 10.34
},
{
"id": "code04",
"titel": "Wortfrequenz mit Gleichstand",
"ok": true,
"grund": "",
"bestanden": 5,
"gesamt": 5,
"code": "import re\nfrom collections import Counter\n\ndef top_woerter(text, n):\n words = re.findall(r'[a-zA-Z0-9]+', text.lower())\n counts = Counter(words)\n sorted_words = sorted(counts.items(), key=lambda x: (-x[1], x[0]))\n return sorted_words[:n]",
"tps": 23.877311211800407,
"prompt_tps": 431.28013184849743,
"tokens": 80,
"prompt_tokens": 112,
"denk_zeichen": 0,
"antwort_zeichen": 263,
"abbruch": "stop",
"ttft": 0.26,
"sekunden": 4.01
},
{
"id": "code05",
"titel": "Klammern pruefen",
"ok": true,
"grund": "",
"bestanden": 7,
"gesamt": 7,
"code": "def klammern_ok(s):\n stack = []\n matching = {')': '(', ']': '[', '}': '{'}\n opening = set(matching.values())\n \n for char in s:\n if char in opening:\n stack.append(char)\n elif char in matching:\n if not stack or stack[-1] != matching[char]:\n return False\n stack.pop()\n \n return len(stack) == 0",
"tps": 23.93742347148722,
"prompt_tps": 446.0755489770676,
"tokens": 105,
"prompt_tokens": 88,
"denk_zeichen": 0,
"antwort_zeichen": 387,
"abbruch": "stop",
"ttft": 0.197,
"sekunden": 4.99
},
{
"id": "code06",
"titel": "Suche im rotierten Feld",
"ok": true,
"grund": "",
"bestanden": 6,
"gesamt": 6,
"code": "def suche_rotiert(arr, ziel):\n if not arr:\n return -1\n \n links, rechts = 0, len(arr) - 1\n \n while links <= rechts:\n mitte = (links + rechts) // 2\n \n if arr[mitte] == ziel:\n return mitte\n \n # Prüfen, ob der linke Teil sortiert ist\n if arr[links] <= arr[mitte]:\n # Ziel liegt im sortierten linken Teil\n if arr[links] <= ziel < arr[mitte]:\n rechts = mitte - 1\n else:\n links = mitte + 1\n else:\n # Der rechte Teil ist sortiert\n if arr[mit",
"tps": 23.030094921990734,
"prompt_tps": 500.3812428516965,
"tokens": 200,
"prompt_tokens": 105,
"denk_zeichen": 0,
"antwort_zeichen": 758,
"abbruch": "stop",
"ttft": 0.21,
"sekunden": 9.28
},
{
"id": "code07",
"titel": "Werktage zwischen zwei Daten",
"ok": true,
"grund": "",
"bestanden": 5,
"gesamt": 5,
"code": "from datetime import datetime, timedelta\n\ndef werktage(von, bis):\n if not von or not bis:\n return 0\n \n try:\n start = datetime.strptime(von, '%Y-%m-%d')\n end = datetime.strptime(bis, '%Y-%m-%d')\n except ValueError:\n return 0\n \n if end < start:\n return 0\n \n count = 0\n current = start\n while current <= end:\n if current.weekday() < 5: # Montag=0 bis Freitag=4\n count += 1\n current += timedelta(days=1)\n \n return count",
"tps": 23.408363079523635,
"prompt_tps": 454.0043180855143,
"tokens": 151,
"prompt_tokens": 90,
"denk_zeichen": 0,
"antwort_zeichen": 526,
"abbruch": "stop",
"ttft": 0.198,
"sekunden": 6.87
},
{
"id": "code08",
"titel": "LRU-Zwischenspeicher",
"ok": true,
"grund": "",
"bestanden": 5,
"gesamt": 5,
"code": "from collections import OrderedDict\n\n\nclass LRU:\n def __init__(self, groesse):\n self.groesse = groesse\n self.cache = OrderedDict()\n\n def get(self, schluessel):\n if schluessel not in self.cache:\n return None\n self.cache.move_to_end(schluessel)\n return self.cache[schluessel]\n\n def put(self, schluessel, wert):\n if schluessel in self.cache:\n self.cache.move_to_end(schluessel)\n self.cache[schluessel] = wert\n if len(self.cache) > self.groesse:\n self.cache.popitem(last=False)",
"tps": 23.259517168207463,
"prompt_tps": 501.06240298979793,
"tokens": 156,
"prompt_tokens": 133,
"denk_zeichen": 0,
"antwort_zeichen": 585,
"abbruch": "stop",
"ttft": 0.265,
"sekunden": 7.19
},
{
"id": "code09",
"titel": "Wiederholung nach Fehlschlag",
"ok": true,
"grund": "",
"bestanden": 4,
"gesamt": 4,
"code": "def wiederhole(fn, versuche=3):\n for _ in range(versuche):\n try:\n return fn()\n except Exception as e:\n if _ == versuche - 1:\n raise",
"tps": 22.774707711028004,
"prompt_tps": 504.9999761792464,
"tokens": 56,
"prompt_tokens": 106,
"denk_zeichen": 0,
"antwort_zeichen": 199,
"abbruch": "stop",
"ttft": 0.21,
"sekunden": 2.89
},
{
"id": "code10",
"titel": "CSV sortieren und als JSON",
"ok": true,
"grund": "",
"bestanden": 3,
"gesamt": 3,
"code": "import csv\nimport json\nimport io\n\ndef csv_nach_json(text, spalte):\n reader = csv.DictReader(io.StringIO(text), delimiter=';')\n rows = list(reader)\n \n if not rows:\n return json.dumps([])\n \n # Check if all values in the specified column are numeric\n all_numeric = True\n for row in rows:\n val = row[spalte].strip()\n if val == '':\n all_numeric = False\n break\n try:\n float(val)\n except ValueError:\n all_numeric = False\n break\n \n if all_numeric:\n rows.sort(key=lambda r: float(r[",
"tps": 22.78953120153886,
"prompt_tps": 566.8529396011497,
"tokens": 192,
"prompt_tokens": 127,
"denk_zeichen": 0,
"antwort_zeichen": 745,
"abbruch": "stop",
"ttft": 0.224,
"sekunden": 8.86
}
],
"messungen": [
{
"tps": 30.815962668662365,
"prompt_tps": 201.05991585492478,
"tokens": 7,
"prompt_tokens": 67,
"denk_zeichen": 0,
"antwort_zeichen": 15,
"abbruch": "stop",
"ttft": 0.333,
"sekunden": 0.61
},
{
"tps": 30.41681170979658,
"prompt_tps": 360.63265271075545,
"tokens": 9,
"prompt_tokens": 63,
"denk_zeichen": 0,
"antwort_zeichen": 22,
"abbruch": "stop",
"ttft": 0.175,
"sekunden": 0.94
},
{
"tps": 30.14699675618315,
"prompt_tps": 181.7005519842526,
"tokens": 10,
"prompt_tokens": 66,
"denk_zeichen": 0,
"antwort_zeichen": 17,
"abbruch": "stop",
"ttft": 0.363,
"sekunden": 0.92
},
{
"tps": 28.976548313564887,
"prompt_tps": 204.61694721375812,
"tokens": 18,
"prompt_tokens": 83,
"denk_zeichen": 0,
"antwort_zeichen": 42,
"abbruch": "stop",
"ttft": 0.406,
"sekunden": 1.24
},
{
"tps": 29.697383660499504,
"prompt_tps": 374.41749278526294,
"tokens": 12,
"prompt_tokens": 65,
"denk_zeichen": 0,
"antwort_zeichen": 35,
"abbruch": "stop",
"ttft": 0.174,
"sekunden": 0.97
},
{
"tps": 23.418369165135136,
"prompt_tps": 418.15328304632817,
"tokens": 23,
"prompt_tokens": 77,
"denk_zeichen": 0,
"antwort_zeichen": 49,
"abbruch": "stop",
"ttft": 0.184,
"sekunden": 1.61
},
{
"tps": 22.93096331770005,
"prompt_tps": 368.33327125469214,
"tokens": 19,
"prompt_tokens": 89,
"denk_zeichen": 0,
"antwort_zeichen": 46,
"abbruch": "stop",
"ttft": 0.242,
"sekunden": 1.3
},
{
"tps": 30.453967136785685,
"prompt_tps": 349.32260524798994,
"tokens": 9,
"prompt_tokens": 60,
"denk_zeichen": 0,
"antwort_zeichen": 25,
"abbruch": "stop",
"ttft": 0.172,
"sekunden": 0.86
},
{
"tps": 29.151331851473962,
"prompt_tps": 235.300194266136,
"tokens": 16,
"prompt_tokens": 82,
"denk_zeichen": 0,
"antwort_zeichen": 33,
"abbruch": "stop",
"ttft": 0.348,
"sekunden": 1.12
},
{
"tps": 24.360909582228444,
"prompt_tps": 453.6096863114554,
"tokens": 27,
"prompt_tokens": 91,
"denk_zeichen": 0,
"antwort_zeichen": 65,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 1.78
},
{
"tps": 23.305677262981263,
"prompt_tps": 288.9850100678649,
"tokens": 173,
"prompt_tokens": 124,
"denk_zeichen": 0,
"antwort_zeichen": 672,
"abbruch": "stop",
"ttft": 0.429,
"sekunden": 8.08
},
{
"tps": 23.540931854709175,
"prompt_tps": 213.06525295198472,
"tokens": 99,
"prompt_tokens": 93,
"denk_zeichen": 0,
"antwort_zeichen": 396,
"abbruch": "stop",
"ttft": 0.436,
"sekunden": 4.86
},
{
"tps": 23.50727760678258,
"prompt_tps": 238.43128656974113,
"tokens": 229,
"prompt_tokens": 87,
"denk_zeichen": 0,
"antwort_zeichen": 605,
"abbruch": "stop",
"ttft": 0.365,
"sekunden": 10.34
},
{
"tps": 23.877311211800407,
"prompt_tps": 431.28013184849743,
"tokens": 80,
"prompt_tokens": 112,
"denk_zeichen": 0,
"antwort_zeichen": 263,
"abbruch": "stop",
"ttft": 0.26,
"sekunden": 4.01
},
{
"tps": 23.93742347148722,
"prompt_tps": 446.0755489770676,
"tokens": 105,
"prompt_tokens": 88,
"denk_zeichen": 0,
"antwort_zeichen": 387,
"abbruch": "stop",
"ttft": 0.197,
"sekunden": 4.99
},
{
"tps": 23.030094921990734,
"prompt_tps": 500.3812428516965,
"tokens": 200,
"prompt_tokens": 105,
"denk_zeichen": 0,
"antwort_zeichen": 758,
"abbruch": "stop",
"ttft": 0.21,
"sekunden": 9.28
},
{
"tps": 23.408363079523635,
"prompt_tps": 454.0043180855143,
"tokens": 151,
"prompt_tokens": 90,
"denk_zeichen": 0,
"antwort_zeichen": 526,
"abbruch": "stop",
"ttft": 0.198,
"sekunden": 6.87
},
{
"tps": 23.259517168207463,
"prompt_tps": 501.06240298979793,
"tokens": 156,
"prompt_tokens": 133,
"denk_zeichen": 0,
"antwort_zeichen": 585,
"abbruch": "stop",
"ttft": 0.265,
"sekunden": 7.19
},
{
"tps": 22.774707711028004,
"prompt_tps": 504.9999761792464,
"tokens": 56,
"prompt_tokens": 106,
"denk_zeichen": 0,
"antwort_zeichen": 199,
"abbruch": "stop",
"ttft": 0.21,
"sekunden": 2.89
},
{
"tps": 22.78953120153886,
"prompt_tps": 566.8529396011497,
"tokens": 192,
"prompt_tokens": 127,
"denk_zeichen": 0,
"antwort_zeichen": 745,
"abbruch": "stop",
"ttft": 0.224,
"sekunden": 8.86
}
],
"summe": {
"terminal_ok": 8,
"terminal_n": 10,
"code_ok": 10,
"code_n": 10,
"code_testfaelle_ok": 52,
"code_testfaelle_n": 52,
"tps_median": 23.9,
"tps_min": 22.8,
"tps_max": 30.8,
"prompt_tps_median": 374.4,
"tokens_gesamt": 1591,
"sekunden_gesamt": 78.7,
"anfragen": 20,
"tokens_je_aufgabe": 79.5,
"denk_zeichen_gesamt": 0,
"antwort_zeichen_gesamt": 5485,
"am_limit": 0
}
}