{ "cells": [ { "cell_type": "code", "execution_count": 19, "id": "c46228bd", "metadata": {}, "outputs": [], "source": [ "code=\"addParam(\\\"archived\\\", show_archived)\\nif(show_archived, \\\"true\\\", \\\"==\\\")\\n ormAccessSelect(connector, \\\"SELECT * FROM records WHERE archived=1\\\", records)\\nelse()\\n ormAccessSelect(connector, \\\"SELECT * FROM records WHERE archived=0\\\", records)\\nend()\\naddResult(records)\"" ] }, { "cell_type": "code", "execution_count": 20, "id": "91c20032", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "addParam(\"archived\", show_archived)\n", "if(show_archived, \"true\", \"==\")\n", " ormAccessSelect(connector, \"SELECT * FROM records WHERE archived=1\", records)\n", "else()\n", " ormAccessSelect(connector, \"SELECT * FROM records WHERE archived=0\", records)\n", "end()\n", "addResult(records)\n" ] } ], "source": [ "print(code)" ] }, { "cell_type": "code", "execution_count": 1, "id": "64d5e9d4", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "=== Task 1 | success: False ===\n", "addParam('user_list', user_data)\n", "getQueryParamList('emails', email_list)\n", "addVar(valid_count, 0)\n", "addVar(invalid_count, 0)\n", "addVar(processed_emails, [])\n", "try()\n", " getListLen(email_list, total_emails)\n", " if(total_emails, 0, \">\")\n", " addVar(i, 0)\n", " startLoop(counter, 0, total_emails)\n", " itemFromList(email_list, i, current_email)\n", " getRegex(current_email, \"^[\\\\w\\\\.-]+@[\\\\w\\\\.-]+\\\\.[a-zA-Z]{2,}$\", email_match)\n", " if(None, None, `email_match != None`)\n", " addVar(valid_count, valid_count + 1)\n", " replace(current_email, \" \", \"\", clean_email)\n", " variableToList(clean_email, temp_list)\n", " AddVariableToJSON(\"email\", clean_email, email_obj)\n", " AddVariableToJSON(\"status\", \"valid\", email_obj)\n", " else()\n", " addVar(invalid_count, invalid_count + 1)\n", " AddVariableToJSON(\"email\", current_email, email_obj)\n", " AddVariableToJSON(\"status\", \"invalid\", email_obj)\n", " end()\n", " addVar(i, i + 1)\n", " endLoop()\n", " AddVariableToJSON(\"total_processed\", total_emails, report)\n", " AddVariableToJSON(\"valid_emails\", valid_count, report)\n", " AddVariableToJSON(\"invalid_emails\", invalid_count, report)\n", " if(valid_count, 0, \">\")\n", " addVar(_status, 200)\n", " else()\n", " addVar(_status, 422)\n", " end()\n", " else()\n", " AddVariableToJSON(\"error\", \"No emails provided\", report)\n", " addVar(_status, 400)\n", " end()\n", "exception(error_var)\n", " AddVariableToJSON(\"error\", \"Processing failed\", report)\n", " addVar(_status, 500)\n", "end()\n", "addResult(report)\n", "\n", "=== Task 1 | success: True ===\n", "addParam(\"message\", message)\n", "if(message, None, \"=\")\n", " greeting = \"Hello, World!\"\n", "else()\n", " greeting = \"Hello, \" + message + \"!\"\n", "end()\n", "addResult(greeting)\n", "_status = 200\n", "\n", "=== Task 2 | success: False ===\n", "addParam(\"password\", password)\n", "encodeSHA256(password, hashed_password)\n", "randomString(\"[a-zA-Z0-9]\", 32, secure_token)\n", "addResult(hashed_password)\n", "addResult(secure_token)\n", "\n", "=== Task 1 | success: True ===\n", "addParam(\"username\", username)\n", "addResult(username)\n", "\n", "=== Task 2 | success: True ===\n", "addParam(\"email\", email)\n", "addVar(_status, 200)\n", "addResult(email)\n", "\n", "=== Task 3 | success: False ===\n", "addParam(\"password\", password)\n", "encodeSHA256(password, hashed)\n", "addResult(hashed)\n", "\n", "=== Task 4 | success: False ===\n", "addParam(\"text\", text)\n", "replace(text, \" \", \"_\", result)\n", "addResult(result)\n", "\n", "=== Task 5 | success: False ===\n", "randomString(\"[a-zA-Z0-9]\", 32, token)\n", "addResult(token)\n", "\n", "=== Task 6 | success: True ===\n", "addParam(\"age\", age)\n", "if(age, 18, \">\")\n", "result = \"adulto\"\n", "else()\n", "result = \"menor\"\n", "end()\n", "addResult(result)\n", "\n", "=== Task 7 | success: True ===\n", "addParam(\"score\", score)\n", "if(score, 100, \"==\")\n", "addVar(_status, 200)\n", "result = \"perfecto\"\n", "else()\n", "addVar(_status, 400)\n", "result = \"incompleto\"\n", "end()\n", "addResult(result)\n", "\n", "=== Task 8 | success: False ===\n", "variableToList(\"item1\", myList)\n", "getListLen(myList, length)\n", "addResult(length)\n", "\n", "=== Task 9 | success: False ===\n", "getQueryParamList(\"items\", items)\n", "getListLen(items, length)\n", "addResult(length)\n", "\n", "=== Task 10 | success: False ===\n", "addParam(\"data\", data)\n", "variableFromJSON(data, \"name\", name)\n", "addResult(name)\n", "\n", "=== Task 11 | success: False ===\n", "info = {}\n", "AddVariableToJSON(\"status\", \"ok\", info)\n", "addResult(info)\n", "\n", "=== Task 12 | success: False ===\n", "addParam(\"password\", password)\n", "encodeMD5(password, hashed)\n", "addResult(hashed)\n", "\n", "=== Task 13 | success: False ===\n", "getDateTime(\"%Y-%m-%d\", 0, \"UTC\", today)\n", "addResult(today)\n", "\n", "=== Task 14 | success: False ===\n", "addParam(\"epoch\", epoch)\n", "stampToDatetime(epoch, \"%Y-%m-%d %H:%M:%S\", 0, datestr)\n", "addResult(datestr)\n", "\n", "=== Task 15 | success: False ===\n", "addParam(\"date_str\", date_str)\n", "getTimeStamp(date_str, \"%Y-%m-%d\", 0, epoch)\n", "addResult(epoch)\n", "\n", "=== Task 16 | success: True ===\n", "function square(n) {\n", "result = n * n\n", "return(result)\n", "}\n", "addParam(\"n\", n)\n", "squared = square(n)\n", "addResult(squared)\n", "\n", "=== Task 17 | success: True ===\n", "function add(a, b) {\n", "result = a + b\n", "return(result)\n", "}\n", "addParam(\"a\", a)\n", "addParam(\"b\", b)\n", "sum = add(a, b)\n", "addResult(sum)\n", "\n", "=== Task 18 | success: True ===\n", "addParam(\"num\", num)\n", "try()\n", "result = num / 0\n", "exception(err)\n", "result = \"error_division\"\n", "end()\n", "addResult(result)\n", "\n", "=== Task 19 | success: True ===\n", "addParam(\"url\", url)\n", "RequestGet(url, \"\", \"\", response, 5000)\n", "addResult(response)\n", "\n", "=== Task 20 | success: True ===\n", "addParam(\"url\", url)\n", "addParam(\"body\", body)\n", "RequestPost(url, \"\", \"\", body, response, 3000)\n", "addResult(response)\n", "\n", "=== Task 21 | success: False ===\n", "connector = avapConnector(\"20908e93260147acb2636967021fbf5d\")\n", "status = connector.get_status()\n", "addResult(status)\n", "\n", "=== Task 22 | success: True ===\n", "function fetchData() {\n", "data = \"fetched\"\n", "return(data)\n", "}\n", "handle = go fetchData()\n", "result = gather(handle, 2000)\n", "addResult(result)\n", "\n", "=== Task 23 | success: True ===\n", "addParam(\"n\", n)\n", "accum = 0\n", "startLoop(i, 0, n)\n", "accum = accum + i\n", "endLoop()\n", "addResult(accum)\n", "\n", "=== Task 24 | success: True ===\n", "addParam(\"value\", value)\n", "if(None, None, `value > 0 and value < 100`)\n", "result = \"rango_valido\"\n", "else()\n", "result = \"fuera_de_rango\"\n", "end()\n", "addResult(result)\n", "\n", "=== Task 25 | success: False ===\n", "ormAccessSelect(\"*\", \"users\", \"\", records)\n", "addResult(records)\n", "\n", "=== Task 26 | success: False ===\n", "addParam(\"username\", username)\n", "addParam(\"email\", email)\n", "fields = {\"username\": username, \"email\": email}\n", "ormAccessInsert(fields, \"users\", insert_result)\n", "addResult(insert_result)\n", "\n", "=== Task 27 | success: False ===\n", "addParam(\"user_id\", user_id)\n", "fields = \"active\"\n", "values = {\"active\": 1}\n", "selector = \"id = \" + str(user_id)\n", "ormAccessUpdate(fields, values, \"users\", selector, update_result)\n", "addResult(update_result)\n", "\n", "=== Task 28 | success: True ===\n", "import \n", "function calcSquare(x) {\n", "result = x * x\n", "return(result)\n", "}\n", "result = calcSquare(9)\n", "addResult(result)\n", "\n", "=== Task 29 | success: False ===\n", "addParam(\"items_json\", items_json)\n", "variableFromJSON(items_json, \"items\", items)\n", "getListLen(items, length)\n", "addResult(length)\n", "\n", "=== Task 30 | success: True ===\n", "addParam(\"token\", token)\n", "if(None, None, `len(token) == 32`)\n", "result = \"token_valido\"\n", "addVar(_status, 200)\n", "else()\n", "result = \"token_invalido\"\n", "addVar(_status, 401)\n", "end()\n", "addResult(result)\n", "\n", "=== Task 52 | success: False ===\n", "addParam(\"numbers\", numbers)\n", "addParam(\"threshold\", threshold)\n", "result = True\n", "getListLen(numbers, list_len)\n", "i = 0\n", "startLoop(i, 0, list_len)\n", " itemFromList(numbers, i, current_item)\n", " current_val = int(current_item)\n", " thresh_val = int(threshold)\n", " if(None, None, `current_val >= thresh_val`)\n", " result = False\n", " end()\n", "endLoop()\n", "addResult(result)\n", "_status = 200\n", "\n", "=== Task 134 | success: False ===\n", "addParam(\"txt\", txt)\n", "result = False\n", "if(None, None, `txt == \"\" or txt == None`)\n", " result = False\n", "else()\n", " replace(txt, \",\", \" \", txt_clean)\n", " last_word = txt_clean.split()[-1] if txt_clean.split() else \"\"\n", " getListLen(last_word, last_len)\n", " if(None, None, `last_len == 1 and last_word.lower() >= \"a\" and last_word.lower() <= \"z\"`)\n", " result = True\n", " else()\n", " result = False\n", " end()\n", "end()\n", "addResult(result)\n", "_status = 200\n", "\n", "=== Task 51 | success: True ===\n", "addParam(\"text\", text)\n", "result = [s for s in text if s.lower() not in [\"a\", \"e\", \"i\", \"o\", \"u\"]]\n", "result_str = \"\".join(result)\n", "addResult(result_str)\n", "_status = 200\n", "\n", "=== Task 66 | success: True ===\n", "addParam(\"s\", s)\n", "if(None, None, `s == \"\" or s == None`)\n", " digit_sum = 0\n", "else()\n", " digit_sum = sum(ord(char) if char.isupper() else 0 for char in s)\n", "end()\n", "addResult(digit_sum)\n", "_status = 200\n", "\n", "=== Task 147 | success: False ===\n", "addParam(\"n\", n)\n", "n_val = int(n)\n", "A = [i*i - i + 1 for i in range(1, n_val + 1)]\n", "count = 0\n", "getListLen(A, len_a)\n", "i = 0\n", "startLoop(i, 0, len_a)\n", " j = i + 1\n", " startLoop(j, i + 1, len_a)\n", " k = j + 1\n", " startLoop(k, j + 1, len_a)\n", " itemFromList(A, i, ai)\n", " itemFromList(A, j, aj)\n", " itemFromList(A, k, ak)\n", " triple_sum = int(ai) + int(aj) + int(ak)\n", " if(None, None, `triple_sum % 3 == 0`)\n", " count = count + 1\n", " end()\n", " endLoop()\n", " endLoop()\n", "endLoop()\n", "addResult(count)\n", "_status = 200\n", "\n", "=== Task 101 | success: False ===\n", "addParam(\"s\", s)\n", "if(None, None, `s == \"\" or s == None`)\n", " words = []\n", "else()\n", " replace(s, \",\", \" \", s_clean)\n", " words = s_clean.split()\n", "end()\n", "addResult(words)\n", "_status = 200\n", "\n", "=== Task 24 | success: False ===\n", "addParam(\"n\", n)\n", "n_val = int(n)\n", "largest_div = 1\n", "i = n_val - 1\n", "startLoop(i, 1, n_val)\n", " candidate = n_val - i\n", " if(None, None, `n_val % candidate == 0`)\n", " largest_div = candidate\n", " return(largest_div)\n", " end()\n", "endLoop()\n", "addResult(largest_div)\n", "_status = 200\n", "\n", "=== Task 125 | success: True ===\n", "addParam(\"txt\", txt)\n", "if(None, None, `\" \" in txt`)\n", " split_result = txt.split()\n", "else()\n", " if(None, None, `\",\" in txt`)\n", " replace(txt, \",\", \" \", txt_replaced)\n", " split_result = txt_replaced.split()\n", " else()\n", " split_result = len([i for i in txt if i.islower() and ord(i) % 2 == 0])\n", " end()\n", "end()\n", "addResult(split_result)\n", "_status = 200\n", "\n", "=== Task 145 | success: False ===\n", "addParam(\"nums\", nums)\n", "function digits_sum(n) {\n", " neg = 1\n", " if(None, None, `n < 0`)\n", " n = -1 * n\n", " neg = -1\n", " end()\n", " digits = [int(d) for d in str(n)]\n", " digits[0] = digits[0] * neg\n", " return(sum(digits))\n", "}\n", "sorted_nums = sorted(nums, key=digits_sum)\n", "addResult(sorted_nums)\n", "_status = 200\n", "\n", "=== Task 50 | success: True ===\n", "addParam(\"s\", s)\n", "decoded = \"\".join([chr(((ord(ch) - 5 - ord(\"a\")) % 26) + ord(\"a\")) for ch in s])\n", "addResult(decoded)\n", "_status = 200\n", "\n" ] } ], "source": [ "import json\n", "from pathlib import Path\n", "\n", "analysis_path = Path(\"../../../../output/parser_analysis.json\")\n", "\n", "with analysis_path.open(\"r\", encoding=\"utf-8\") as f:\n", " records = json.load(f)\n", "\n", "for record in records:\n", " task_id = record.get(\"task_id\")\n", " code = record.get(\"code\", \"\")\n", " exec_msg = record.get(\"execution_message\", {})\n", " success = exec_msg.get(\"success\", False)\n", "\n", " print(f\"=== Task {task_id} | success: {success} ===\")\n", " print(code)\n", " print()" ] }, { "cell_type": "code", "execution_count": 3, "id": "a5946318", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'source_file': 'mbap_avap_A.json',\n", " 'task_id': 1,\n", " 'text': 'Crea una API de validación y transformación de datos de usuarios que procese una lista de emails desde parámetros de consulta, valide cada email con expresión regular, transforme nombres de usuarios eliminando espacios, y genere un reporte con estadísticas de emails válidos/inválidos. La API debe manejar errores y devolver código de estado HTTP apropiado.',\n", " 'code': 'addParam(\\'user_list\\', user_data)\\ngetQueryParamList(\\'emails\\', email_list)\\naddVar(valid_count, 0)\\naddVar(invalid_count, 0)\\naddVar(processed_emails, [])\\ntry()\\n getListLen(email_list, total_emails)\\n if(total_emails, 0, \">\")\\n addVar(i, 0)\\n startLoop(counter, 0, total_emails)\\n itemFromList(email_list, i, current_email)\\n getRegex(current_email, \"^[\\\\\\\\w\\\\\\\\.-]+@[\\\\\\\\w\\\\\\\\.-]+\\\\\\\\.[a-zA-Z]{2,}$\", email_match)\\n if(None, None, `email_match != None`)\\n addVar(valid_count, valid_count + 1)\\n replace(current_email, \" \", \"\", clean_email)\\n variableToList(clean_email, temp_list)\\n AddVariableToJSON(\"email\", clean_email, email_obj)\\n AddVariableToJSON(\"status\", \"valid\", email_obj)\\n else()\\n addVar(invalid_count, invalid_count + 1)\\n AddVariableToJSON(\"email\", current_email, email_obj)\\n AddVariableToJSON(\"status\", \"invalid\", email_obj)\\n end()\\n addVar(i, i + 1)\\n endLoop()\\n AddVariableToJSON(\"total_processed\", total_emails, report)\\n AddVariableToJSON(\"valid_emails\", valid_count, report)\\n AddVariableToJSON(\"invalid_emails\", invalid_count, report)\\n if(valid_count, 0, \">\")\\n addVar(_status, 200)\\n else()\\n addVar(_status, 422)\\n end()\\n else()\\n AddVariableToJSON(\"error\", \"No emails provided\", report)\\n addVar(_status, 400)\\n end()\\nexception(error_var)\\n AddVariableToJSON(\"error\", \"Processing failed\", report)\\n addVar(_status, 500)\\nend()\\naddResult(report)',\n", " 'test_inputs': {'emails': ['user1@domain.com',\n", " 'invalid-email',\n", " 'test@example.org',\n", " 'bad@',\n", " 'admin@site.co.uk']},\n", " 'test_list': [\"re.match(r'\\\\d+', str(report.get('total_processed', '')))\",\n", " \"re.match(r'[2-5]\\\\d\\\\d', str(_status))\",\n", " \"re.match(r'(valid|invalid)', str(report.get('error', '') or 'valid'))\"],\n", " 'execution_message': {'success': False,\n", " 'error': 'Command not found: getQueryParamList'},\n", " 'passed': False,\n", " 'error': 'Command not found: getQueryParamList',\n", " 'Local_Language_Server_Execution': 'Execution Data:\\n500: Internal Server Error'}" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "records[0]" ] }, { "cell_type": "code", "execution_count": 12, "id": "60e04025", "metadata": {}, "outputs": [], "source": [ "input_record_keys = [\"source_file\", \"task_id\", \"text\",\"code\", \"test_inputs\", \"test_list\"]\n", "parser_record_keys = [\"execution_message\"]\n", "lang_server_record_keys = [\"passed\", \"error\", \"Local_Language_Server_Execution\"]\n", "\n", "\n", "input_records = [\n", " {k: v for k, v in record.items() if k in input_record_keys} for record in records \n", "]\n", "parser_records = [\n", " {k: v for k, v in record.items() if k in parser_record_keys} for record in records \n", "]\n", "\n", "lang_server_records = [\n", " {k: v for k, v in record.items() if k in lang_server_record_keys} for record in records \n", "]" ] }, { "cell_type": "code", "execution_count": 13, "id": "2dd0b3c7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'source_file': 'mbap_avap_A.json',\n", " 'task_id': 1,\n", " 'text': 'Crea una API de validación y transformación de datos de usuarios que procese una lista de emails desde parámetros de consulta, valide cada email con expresión regular, transforme nombres de usuarios eliminando espacios, y genere un reporte con estadísticas de emails válidos/inválidos. La API debe manejar errores y devolver código de estado HTTP apropiado.',\n", " 'code': 'addParam(\\'user_list\\', user_data)\\ngetQueryParamList(\\'emails\\', email_list)\\naddVar(valid_count, 0)\\naddVar(invalid_count, 0)\\naddVar(processed_emails, [])\\ntry()\\n getListLen(email_list, total_emails)\\n if(total_emails, 0, \">\")\\n addVar(i, 0)\\n startLoop(counter, 0, total_emails)\\n itemFromList(email_list, i, current_email)\\n getRegex(current_email, \"^[\\\\\\\\w\\\\\\\\.-]+@[\\\\\\\\w\\\\\\\\.-]+\\\\\\\\.[a-zA-Z]{2,}$\", email_match)\\n if(None, None, `email_match != None`)\\n addVar(valid_count, valid_count + 1)\\n replace(current_email, \" \", \"\", clean_email)\\n variableToList(clean_email, temp_list)\\n AddVariableToJSON(\"email\", clean_email, email_obj)\\n AddVariableToJSON(\"status\", \"valid\", email_obj)\\n else()\\n addVar(invalid_count, invalid_count + 1)\\n AddVariableToJSON(\"email\", current_email, email_obj)\\n AddVariableToJSON(\"status\", \"invalid\", email_obj)\\n end()\\n addVar(i, i + 1)\\n endLoop()\\n AddVariableToJSON(\"total_processed\", total_emails, report)\\n AddVariableToJSON(\"valid_emails\", valid_count, report)\\n AddVariableToJSON(\"invalid_emails\", invalid_count, report)\\n if(valid_count, 0, \">\")\\n addVar(_status, 200)\\n else()\\n addVar(_status, 422)\\n end()\\n else()\\n AddVariableToJSON(\"error\", \"No emails provided\", report)\\n addVar(_status, 400)\\n end()\\nexception(error_var)\\n AddVariableToJSON(\"error\", \"Processing failed\", report)\\n addVar(_status, 500)\\nend()\\naddResult(report)',\n", " 'test_inputs': {'emails': ['user1@domain.com',\n", " 'invalid-email',\n", " 'test@example.org',\n", " 'bad@',\n", " 'admin@site.co.uk']},\n", " 'test_list': [\"re.match(r'\\\\d+', str(report.get('total_processed', '')))\",\n", " \"re.match(r'[2-5]\\\\d\\\\d', str(_status))\",\n", " \"re.match(r'(valid|invalid)', str(report.get('error', '') or 'valid'))\"]}" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "input_records[0]" ] }, { "cell_type": "code", "execution_count": 14, "id": "5df84ee5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'execution_message': {'success': False,\n", " 'error': 'Command not found: getQueryParamList'}}" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "parser_records[0]" ] }, { "cell_type": "code", "execution_count": 15, "id": "3f6d761c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'passed': False,\n", " 'error': 'Command not found: getQueryParamList',\n", " 'Local_Language_Server_Execution': 'Execution Data:\\n500: Internal Server Error'}" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lang_server_records[0]" ] }, { "cell_type": "code", "execution_count": 16, "id": "966792dd", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saved input records: 43 -> /home/pseco/VsCodeProjects/assistance-engine/scratches/pseco/synthetic_dataset/avap_test/records_output/input_records.json\n", "Saved parser records: 43 -> /home/pseco/VsCodeProjects/assistance-engine/scratches/pseco/synthetic_dataset/avap_test/records_output/parser_records.json\n", "Saved server records: 43 -> /home/pseco/VsCodeProjects/assistance-engine/scratches/pseco/synthetic_dataset/avap_test/records_output/lang_server_records.json\n" ] } ], "source": [ "import json\n", "from pathlib import Path\n", "\n", "output_dir = Path(\"./records_output\")\n", "output_dir.mkdir(parents=True, exist_ok=True)\n", "\n", "input_path = output_dir / \"input_records.json\"\n", "parser_path = output_dir / \"parser_records.json\"\n", "server_path = output_dir / \"lang_server_records.json\"\n", "\n", "with input_path.open(\"w\", encoding=\"utf-8\") as f:\n", " json.dump(input_records, f, ensure_ascii=False, indent=2)\n", "\n", "with parser_path.open(\"w\", encoding=\"utf-8\") as f:\n", " json.dump(parser_records, f, ensure_ascii=False, indent=2)\n", "\n", "with server_path.open(\"w\", encoding=\"utf-8\") as f:\n", " json.dump(lang_server_records, f, ensure_ascii=False, indent=2)\n", "\n", "print(f\"Saved input records: {len(input_records)} -> {input_path.resolve()}\")\n", "print(f\"Saved parser records: {len(parser_records)} -> {parser_path.resolve()}\")\n", "print(f\"Saved server records: {len(lang_server_records)} -> {server_path.resolve()}\")" ] }, { "cell_type": "code", "execution_count": null, "id": "929bb59f", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "assistance-engine", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.11" } }, "nbformat": 4, "nbformat_minor": 5 }