← 返回 microsoft 的题目列表LLM Training Dataset Quality Check for Excel Copilot Tasks
类型:online_judge
Question: LLM Training Dataset Quality Check for Excel Copilot Tasks
You are given a dataset dataset used to train/evaluate an LLM. Each sample contains:
prompt: the user instruction (string)
table: an Excel-like table (2D array/row-column structure; cells are strings or numbers; may include headers)
response: the expected output (string)
The dataset supports Excel Copilot scenarios such as answering questions from tables, computing aggregations, filtering/sorting, generating formulas, and explaining tables.
Design and implement a dataset quality checking program that:
Validates structure and parseability
prompt/table/response existence, correct types, non-empty.
table is rectangular (all rows have the same number of columns).
Table size does not exceed limits (rows/cols/total cells).
Detects content inconsistencies / anomalies (implement at least 3 categories) Choose at least 3 checks and report the reason when triggered:
Duplicate / near-duplicate samples (same prompt+table)
response too short/too long or obviously irrelevant
Language mismatch between prompt and response, or response does not address the prompt (simple heuristics allowed)
Abnormal numeric formatting in the table (many "N/A", empty cells, non-parsable numbers)
Potential leakage (e.g., response directly copies a full column/table text when the prompt doesn’t require it)
Generates a summary report
Overall stats: total, passed/failed, counts per failure reason.
A few example bad cases (e.g., first K indices per reason).
Assess whether a HuggingFace pretrained model needs fine-tuning (high-level only)
Without writing training code, describe how you would use this dataset to evaluate whether a pretrained model can handle the Excel tasks or needs fine-tuning.
Include: split strategy, at least 2 evaluation metrics, and how to avoid data leakage.
I/O
Input: read JSON from stdin:
{
"dataset": [
{"prompt": "...", "table": [["..."], ["..."]], "response": "..."}
],
"k": 3,
"max_rows": 200,
"max_cols": 50,
"max_cells": 5000,
"max_response_len": 2000
}
Output: print a JSON report, at minimum:
{
"total": 0,
"passed": 0,
"failed": 0,
"reason_counts": {"...": 0},
"examples": {"reason": [0,1,2]}
}
Constraints
Number of samples N: 1 to 50,000
Max cells per table limited by max_cells
Notes
Heuristics are acceptable for consistency/anomaly checks.
Focus on production usability: extensible checks, explainable reasons, and controlled time complexity.
Example
Input
{"dataset":[{"prompt":"Sum sales in 2024","table":[["Year","Sales"],[2023,10],[2024,20]],"response":"20"}],"k":2,"max_rows":200,"max_cols":50,"max_cells":5000,"max_response_len":2000}
Output
{"total":1,"passed":1,"failed":0,"reason_counts":{},"examples":{}}