Davidmg0815's picture
Upload folder using huggingface_hub
008a906 verified
Raw
History Blame
16.6 kB
{
"modell": "Qwen3.8-27B Q6_K",
"reasoning": false,
"max_tokens": 900,
"terminal": [
{
"id": "term01",
"titel": "Zeilen zaehlen",
"ok": true,
"grund": "",
"antwort": "wc -l < log.txt",
"tps": 14.137872532941243,
"prompt_tps": 285.8032564508354,
"tokens": 7,
"prompt_tokens": 67,
"denk_zeichen": 0,
"antwort_zeichen": 15,
"abbruch": "stop",
"ttft": 0.234,
"sekunden": 0.78
},
{
"id": "term02",
"titel": "Muster mit Zeilennummer",
"ok": true,
"grund": "",
"antwort": "grep -n \"WARN\" log.txt",
"tps": 17.308824038494826,
"prompt_tps": 354.91358135971336,
"tokens": 9,
"prompt_tokens": 63,
"denk_zeichen": 0,
"antwort_zeichen": 22,
"abbruch": "stop",
"ttft": 0.178,
"sekunden": 0.93
},
{
"id": "term03",
"titel": "Groesste Datei",
"ok": true,
"grund": "",
"antwort": "ls -S | head -n 1",
"tps": 17.64869911438828,
"prompt_tps": 374.533960583138,
"tokens": 10,
"prompt_tokens": 66,
"denk_zeichen": 0,
"antwort_zeichen": 17,
"abbruch": "stop",
"ttft": 0.176,
"sekunden": 0.96
},
{
"id": "term04",
"titel": "Spalte aus CSV",
"ok": true,
"grund": "",
"antwort": "cut -d';' -f$(head -1 messwerte.csv | tr ';' '\\n' | grep -n '^geraet$' | cut -d: -f1) messwerte.csv | tail -n +2",
"tps": 20.124442984167402,
"prompt_tps": 431.3906892375819,
"tokens": 49,
"prompt_tokens": 83,
"denk_zeichen": 0,
"antwort_zeichen": 112,
"abbruch": "stop",
"ttft": 0.192,
"sekunden": 2.85
},
{
"id": "term05",
"titel": "Doppelte Zeilen",
"ok": true,
"grund": "",
"antwort": "sort namen.txt | uniq -c | sort -rn",
"tps": 20.456939846368382,
"prompt_tps": 370.19950905849726,
"tokens": 12,
"prompt_tokens": 65,
"denk_zeichen": 0,
"antwort_zeichen": 35,
"abbruch": "stop",
"ttft": 0.176,
"sekunden": 0.98
},
{
"id": "term06",
"titel": "Summe einer Spalte",
"ok": false,
"grund": "Ausgabe falsch: '29'",
"antwort": "awk -F';' 'NR>1 {sum+=$2} END {print sum}' messwerte.csv",
"tps": 24.132948412806147,
"prompt_tps": 406.75101027442486,
"tokens": 24,
"prompt_tokens": 77,
"denk_zeichen": 0,
"antwort_zeichen": 56,
"abbruch": "stop",
"ttft": 0.189,
"sekunden": 1.45
},
{
"id": "term07",
"titel": "Numerisch sortieren",
"ok": true,
"grund": "",
"antwort": "tail -n +2 messwerte.csv | sort -t';' -k$(head -1 messwerte.csv | tr ';' '\\n' | grep -n '^spannung$' | cut -d: -f1) -rn",
"tps": 23.883152155741083,
"prompt_tps": 259.51683214509615,
"tokens": 50,
"prompt_tokens": 89,
"denk_zeichen": 0,
"antwort_zeichen": 119,
"abbruch": "stop",
"ttft": 0.343,
"sekunden": 2.66
},
{
"id": "term08",
"titel": "JSON-Feld lesen",
"ok": true,
"grund": "",
"antwort": "jq -r '.port' config.json",
"tps": 21.132812683444556,
"prompt_tps": 343.5422642870639,
"tokens": 9,
"prompt_tokens": 60,
"denk_zeichen": 0,
"antwort_zeichen": 25,
"abbruch": "stop",
"ttft": 0.175,
"sekunden": 0.83
},
{
"id": "term09",
"titel": "Ersetzen in Datei",
"ok": true,
"grund": "",
"antwort": "sed -i 's/WARN/ACHTUNG/g' log.txt",
"tps": 22.428407821346518,
"prompt_tps": 408.8225909380983,
"tokens": 16,
"prompt_tokens": 82,
"denk_zeichen": 0,
"antwort_zeichen": 33,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 1.14
},
{
"id": "term10",
"titel": "Gefiltert zaehlen",
"ok": true,
"grund": "",
"antwort": "awk -F';' 'NR>1 && $2==6' messwerte.csv | wc -l",
"tps": 24.78239975519299,
"prompt_tps": 448.8219656429252,
"tokens": 23,
"prompt_tokens": 91,
"denk_zeichen": 0,
"antwort_zeichen": 47,
"abbruch": "stop",
"ttft": 0.203,
"sekunden": 1.41
}
],
"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 sortiert = sorted(intervalle, key=lambda x: x[0])\n zusammengefasst = [sortiert[0]]\n for start, ende in sortiert[1:]:\n letzter_start, letzter_ende = zusammengefasst[-1]\n if start <= letzter_ende:\n zusammengefasst[-1] = (letzter_start, max(letzter_ende, ende))\n else:\n zusammengefasst.append((start, ende))\n return zusammengefasst",
"tps": 22.60598939230095,
"prompt_tps": 343.8226983981744,
"tokens": 140,
"prompt_tokens": 124,
"denk_zeichen": 0,
"antwort_zeichen": 473,
"abbruch": "stop",
"ttft": 0.361,
"sekunden": 6.78
},
{
"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 value:\n for k, v in flatten(value, sep).items():\n result[f\"{key}{sep}{k}\"] = v\n # leeres dict wird ignoriert\n else:\n result[key] = value\n return result",
"tps": 24.561312744682276,
"prompt_tps": 459.9406528189911,
"tokens": 94,
"prompt_tokens": 93,
"denk_zeichen": 0,
"antwort_zeichen": 356,
"abbruch": "stop",
"ttft": 0.202,
"sekunden": 4.26
},
{
"id": "code03",
"titel": "Roemische Zahlen lesen",
"ok": true,
"grund": "",
"bestanden": 6,
"gesamt": 6,
"code": "def roemisch_zu_int(s):\n romane = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}\n total = 0\n for i in range(len(s)):\n if i < len(s) - 1 and romane[s[i]] < romane[s[i + 1]]:\n total -= romane[s[i]]\n else:\n total += romane[s[i]]\n return total",
"tps": 24.669648558671344,
"prompt_tps": 434.91519153765023,
"tokens": 139,
"prompt_tokens": 87,
"denk_zeichen": 0,
"antwort_zeichen": 320,
"abbruch": "stop",
"ttft": 0.2,
"sekunden": 6.3
},
{
"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 woerter = re.findall(r'[a-zA-Z0-9]+', text)\n woerter = [w.lower() for w in woerter]\n zaehler = Counter(woerter)\n sortiert = sorted(zaehler.items(), key=lambda x: (-x[1], x[0]))\n return sortiert[:n]",
"tps": 23.65497360747993,
"prompt_tps": 517.199181717009,
"tokens": 103,
"prompt_tokens": 112,
"denk_zeichen": 0,
"antwort_zeichen": 296,
"abbruch": "stop",
"ttft": 0.217,
"sekunden": 4.8
},
{
"id": "code05",
"titel": "Klammern pruefen",
"ok": true,
"grund": "",
"bestanden": 7,
"gesamt": 7,
"code": "def klammern_ok(s):\n stack = []\n pairs = {')': '(', ']': '[', '}': '{'}\n for char in s:\n if char in '([{':\n stack.append(char)\n elif char in ')]}':\n if not stack or stack[-1] != pairs[char]:\n return False\n stack.pop()\n return not stack",
"tps": 24.611508659016813,
"prompt_tps": 438.5637038698263,
"tokens": 93,
"prompt_tokens": 88,
"denk_zeichen": 0,
"antwort_zeichen": 323,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 4.19
},
{
"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 # Linker Teil ist sortiert\n if arr[links] <= arr[mitte]:\n if arr[links] <= ziel < arr[mitte]:\n rechts = mitte - 1\n else:\n links = mitte + 1\n # Rechter Teil ist sortiert\n else:\n if arr[mitte] < ziel <= arr[rechts]:\n links = mitte + 1\n ",
"tps": 22.14236530041053,
"prompt_tps": 492.42601885288195,
"tokens": 184,
"prompt_tokens": 105,
"denk_zeichen": 0,
"antwort_zeichen": 674,
"abbruch": "stop",
"ttft": 0.213,
"sekunden": 8.75
},
{
"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 bis < von:\n return 0\n start = datetime.strptime(von, '%Y-%m-%d')\n end = datetime.strptime(bis, '%Y-%m-%d')\n count = 0\n current = start\n while current <= end:\n if current.weekday() < 5:\n count += 1\n current += timedelta(days=1)\n return count",
"tps": 24.098820383881527,
"prompt_tps": 447.2583065806606,
"tokens": 114,
"prompt_tokens": 90,
"denk_zeichen": 0,
"antwort_zeichen": 377,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 5.42
},
{
"id": "code08",
"titel": "LRU-Zwischenspeicher",
"ok": true,
"grund": "",
"bestanden": 5,
"gesamt": 5,
"code": "class LRU:\n def __init__(self, groesse):\n self.groesse = groesse\n self.cache = {}\n self.order = []\n\n def get(self, schluessel):\n if schluessel not in self.cache:\n return None\n self._benutzen(schluessel)\n return self.cache[schluessel]\n\n def put(self, schluessel, wert):\n if schluessel in self.cache:\n self.cache[schluessel] = wert\n self._benutzen(schluessel)\n else:\n if len(self.cache) >= self.groesse:\n am_langsten_unbenutzt = self.order.pop(0)\n del self.cache[",
"tps": 22.38689232529759,
"prompt_tps": 495.7008203289515,
"tokens": 240,
"prompt_tokens": 133,
"denk_zeichen": 0,
"antwort_zeichen": 875,
"abbruch": "stop",
"ttft": 0.268,
"sekunden": 11.21
},
{
"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:\n if _ == versuche - 1:\n raise",
"tps": 24.194144568974593,
"prompt_tps": 236.69220411799776,
"tokens": 54,
"prompt_tokens": 106,
"denk_zeichen": 0,
"antwort_zeichen": 194,
"abbruch": "stop",
"ttft": 0.448,
"sekunden": 2.89
},
{
"id": "code10",
"titel": "CSV sortieren und als JSON",
"ok": true,
"grund": "",
"bestanden": 3,
"gesamt": 3,
"code": "import json\nimport csv\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 def is_numeric(value):\n try:\n float(value)\n return True\n except (ValueError, TypeError):\n return False\n \n values = [row[spalte] for row in rows if spalte in row]\n all_numeric = all(is_numeric(v) for v in values) if values else False\n \n if all_numeric:\n ro",
"tps": 23.779697160124755,
"prompt_tps": 318.14503906670774,
"tokens": 197,
"prompt_tokens": 127,
"denk_zeichen": 0,
"antwort_zeichen": 759,
"abbruch": "stop",
"ttft": 0.399,
"sekunden": 8.9
}
],
"messungen": [
{
"tps": 14.137872532941243,
"prompt_tps": 285.8032564508354,
"tokens": 7,
"prompt_tokens": 67,
"denk_zeichen": 0,
"antwort_zeichen": 15,
"abbruch": "stop",
"ttft": 0.234,
"sekunden": 0.78
},
{
"tps": 17.308824038494826,
"prompt_tps": 354.91358135971336,
"tokens": 9,
"prompt_tokens": 63,
"denk_zeichen": 0,
"antwort_zeichen": 22,
"abbruch": "stop",
"ttft": 0.178,
"sekunden": 0.93
},
{
"tps": 17.64869911438828,
"prompt_tps": 374.533960583138,
"tokens": 10,
"prompt_tokens": 66,
"denk_zeichen": 0,
"antwort_zeichen": 17,
"abbruch": "stop",
"ttft": 0.176,
"sekunden": 0.96
},
{
"tps": 20.124442984167402,
"prompt_tps": 431.3906892375819,
"tokens": 49,
"prompt_tokens": 83,
"denk_zeichen": 0,
"antwort_zeichen": 112,
"abbruch": "stop",
"ttft": 0.192,
"sekunden": 2.85
},
{
"tps": 20.456939846368382,
"prompt_tps": 370.19950905849726,
"tokens": 12,
"prompt_tokens": 65,
"denk_zeichen": 0,
"antwort_zeichen": 35,
"abbruch": "stop",
"ttft": 0.176,
"sekunden": 0.98
},
{
"tps": 24.132948412806147,
"prompt_tps": 406.75101027442486,
"tokens": 24,
"prompt_tokens": 77,
"denk_zeichen": 0,
"antwort_zeichen": 56,
"abbruch": "stop",
"ttft": 0.189,
"sekunden": 1.45
},
{
"tps": 23.883152155741083,
"prompt_tps": 259.51683214509615,
"tokens": 50,
"prompt_tokens": 89,
"denk_zeichen": 0,
"antwort_zeichen": 119,
"abbruch": "stop",
"ttft": 0.343,
"sekunden": 2.66
},
{
"tps": 21.132812683444556,
"prompt_tps": 343.5422642870639,
"tokens": 9,
"prompt_tokens": 60,
"denk_zeichen": 0,
"antwort_zeichen": 25,
"abbruch": "stop",
"ttft": 0.175,
"sekunden": 0.83
},
{
"tps": 22.428407821346518,
"prompt_tps": 408.8225909380983,
"tokens": 16,
"prompt_tokens": 82,
"denk_zeichen": 0,
"antwort_zeichen": 33,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 1.14
},
{
"tps": 24.78239975519299,
"prompt_tps": 448.8219656429252,
"tokens": 23,
"prompt_tokens": 91,
"denk_zeichen": 0,
"antwort_zeichen": 47,
"abbruch": "stop",
"ttft": 0.203,
"sekunden": 1.41
},
{
"tps": 22.60598939230095,
"prompt_tps": 343.8226983981744,
"tokens": 140,
"prompt_tokens": 124,
"denk_zeichen": 0,
"antwort_zeichen": 473,
"abbruch": "stop",
"ttft": 0.361,
"sekunden": 6.78
},
{
"tps": 24.561312744682276,
"prompt_tps": 459.9406528189911,
"tokens": 94,
"prompt_tokens": 93,
"denk_zeichen": 0,
"antwort_zeichen": 356,
"abbruch": "stop",
"ttft": 0.202,
"sekunden": 4.26
},
{
"tps": 24.669648558671344,
"prompt_tps": 434.91519153765023,
"tokens": 139,
"prompt_tokens": 87,
"denk_zeichen": 0,
"antwort_zeichen": 320,
"abbruch": "stop",
"ttft": 0.2,
"sekunden": 6.3
},
{
"tps": 23.65497360747993,
"prompt_tps": 517.199181717009,
"tokens": 103,
"prompt_tokens": 112,
"denk_zeichen": 0,
"antwort_zeichen": 296,
"abbruch": "stop",
"ttft": 0.217,
"sekunden": 4.8
},
{
"tps": 24.611508659016813,
"prompt_tps": 438.5637038698263,
"tokens": 93,
"prompt_tokens": 88,
"denk_zeichen": 0,
"antwort_zeichen": 323,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 4.19
},
{
"tps": 22.14236530041053,
"prompt_tps": 492.42601885288195,
"tokens": 184,
"prompt_tokens": 105,
"denk_zeichen": 0,
"antwort_zeichen": 674,
"abbruch": "stop",
"ttft": 0.213,
"sekunden": 8.75
},
{
"tps": 24.098820383881527,
"prompt_tps": 447.2583065806606,
"tokens": 114,
"prompt_tokens": 90,
"denk_zeichen": 0,
"antwort_zeichen": 377,
"abbruch": "stop",
"ttft": 0.201,
"sekunden": 5.42
},
{
"tps": 22.38689232529759,
"prompt_tps": 495.7008203289515,
"tokens": 240,
"prompt_tokens": 133,
"denk_zeichen": 0,
"antwort_zeichen": 875,
"abbruch": "stop",
"ttft": 0.268,
"sekunden": 11.21
},
{
"tps": 24.194144568974593,
"prompt_tps": 236.69220411799776,
"tokens": 54,
"prompt_tokens": 106,
"denk_zeichen": 0,
"antwort_zeichen": 194,
"abbruch": "stop",
"ttft": 0.448,
"sekunden": 2.89
},
{
"tps": 23.779697160124755,
"prompt_tps": 318.14503906670774,
"tokens": 197,
"prompt_tokens": 127,
"denk_zeichen": 0,
"antwort_zeichen": 759,
"abbruch": "stop",
"ttft": 0.399,
"sekunden": 8.9
}
],
"summe": {
"terminal_ok": 9,
"terminal_n": 10,
"code_ok": 10,
"code_n": 10,
"code_testfaelle_ok": 52,
"code_testfaelle_n": 52,
"tps_median": 23.7,
"tps_min": 14.1,
"tps_max": 24.8,
"prompt_tps_median": 408.8,
"tokens_gesamt": 1567,
"sekunden_gesamt": 77.5,
"anfragen": 20,
"tokens_je_aufgabe": 78.3,
"denk_zeichen_gesamt": 0,
"antwort_zeichen_gesamt": 5128,
"am_limit": 0
}
}