Somtharu181coder/number_of_death_by_sex_hermes_calling
Nepal Education Enrollment Statistics – Hermes Function-Calling Dataset 1. Overview This dataset contains 16,760 single-turn function-calling records in Hermes / ShareGPT conversation format. Each record pairs a natural-language request for education enrollment statistics with the exact tool call that satisfies it. Tool-call arguments are grounded in the administrative hierarchy of an Excel source workbook (Annex 4 – Enrollment Details): every province, district… See the full description on the dataset page: https://huggingface.co/datasets/Somtharu181coder/number_of_death_by_sex_hermes_calling.
Nepal Education Enrollment Statistics – Hermes Function-Calling Dataset
1. Overview
This dataset contains 16,760 single-turn function-calling records in Hermes / ShareGPT conversation format. Each record pairs a natural-language request for education enrollment statistics with the exact tool call that satisfies it. Tool-call arguments are grounded in the administrative hierarchy of an Excel source workbook (Annex 4 – Enrollment Details): every province, district, and local-level value appearing in a request is reproduced verbatim in the corresponding tool call.
The dataset is designed for the Gymkhana multilingual tool-use environment and supports supervised fine-tuning and evaluation of tool-calling behavior, in particular faithful argument copying and metric selection.
Scope note. The dataset contains tool requests only. It does not contain tool responses or enrollment figures.
2. Dataset at a Glance
3. Data Structure
3.1 Field Reference
3.2 Tool Schema
name: get_education_statistics
description: >-
Retrieve education statistics for a specified province, district, and local level.
The metrics field specifies which education statistics are requested.
parameters:
province: { type: string, required: true }
district: { type: string, required: true }
local_level: { type: string, required: true }
metrics:
type: array
minItems: 1
items: { type: string, enum: [a_male, b_female, rowtotal] }
required: true
additionalProperties: false3.3 Request Template
Every human turn follows a single template:
Please provide the {metric} statistics for local level [{local_level}], district [{district}], and province [{province}]. Keep all values inside [] exactly unchanged.The gpt turn is a single Hermes tool call in compact JSON:
<tool_call>
{"name":"get_education_statistics","arguments":{"province":"…","district":"…","local_level":"…","metrics":["…"]}}
</tool_call>3.4 Example Record
{
"id": "50b80e24-392c-55bd-9a08-48b120c3b513",
"conversations": [
{"from": "system", "value": "You are a function calling AI model. … <tools>\n[…]\n</tools>\nWhen you decide to call a function, output the function call inside <tool_call> and </tool_call> tags as valid JSON."},
{"from": "human", "value": "Please provide the b_female statistics for local level [NEPAL], district [NEPAL], and province [NEPAL]. Keep all values inside [] exactly unchanged."},
{"from": "gpt", "value": "<tool_call>\n{\"name\":\"get_education_statistics\",\"arguments\":{\"province\":\"NEPAL\",\"district\":\"NEPAL\",\"local_level\":\"NEPAL\",\"metrics\":[\"b_female\"]}}\n</tool_call>"}
],
"tools": "[{\"type\":\"function\",\"function\":{\"name\":\"get_education_statistics\", …}}]",
"category": "Education",
"subcategory": "Enrollment Statistics",
"task": "Education Statistics",
"target_language": "ne-Deva",
"source_query": "Please provide the b_female statistics for local level [NEPAL], district [NEPAL], and province [NEPAL]. Keep all values inside [] exactly unchanged.",
"expected_tool_calls": "[{\"name\":\"get_education_statistics\",\"arguments\":{…}}]"
}4. Static Audit Report
4.1 Methodology
The audit is static: it inspects the released file only, without executing any tool or model. All 16,760 lines were parsed with a strict JSON parser, and each record was checked for schema conformity, internal consistency between fields, argument grounding, tool-call validity, serialization hygiene, and content uniqueness. Results below are exact counts, not samples.
4.2 Summary of Results
4.3 Distribution Profile
Metric balance. The three metrics are close to evenly distributed.
Geographic hierarchy. The file covers 838 distinct location tuples, each contributing exactly 20 records.
The 753 local units correspond to 736 units named … Gaunpalika / … Municipality and 17 metropolitan or sub-metropolitan cities.
Text length. human turns range from 146 to 216 characters (median 168). The system prompt is identical in all records.
4.4 Findings
4.5 Machine-Readable Audit Manifest
audit:
file: education_numberofdeathysex_hermes.jsonl
type: static
bytes: 51870984
records: 16760
parse_failures: 0
schema:
keys: [id, conversations, tools, category, subcategory, task, target_language, source_query, expected_tool_calls]
uniform_keyset: true
turn_pattern: [system, human, gpt]
identifiers:
unique_ids: 16760
uuid_version: 5
tools:
distinct_schemas: 1
function: get_education_statistics
system_block_matches_tools_field: true
tool_calls:
per_record: 1
gpt_equals_expected: true
grounding_mismatches: 0
metric_mismatches: 0
metrics:
b_female: 5651
a_male: 5572
rowtotal: 5537
locations:
distinct_tuples: 838
records_per_tuple: 20
national: 1
province_aggregates: 7
district_aggregates: 77
local_units: 753
uniqueness:
distinct_conversations: 2512
redundant_records: 14248
redundancy_ratio: 0.8502
language:
target_language_tag: ne-Deva
devanagari_characters_in_text: 0
hygiene:
line_endings: LF
bom: false
trailing_newline: true
whitespace_padded_turns: 0
findings: [F1, F2, F3, F4, F5, F6]4.6 Reproducing the Core Checks
import json, re, collections as C
rows = [json.loads(l) for l in open("education_numberofdeathysex_hermes.jsonl", encoding="utf-8")]
assert len({r["id"] for r in rows}) == len(rows)
grounded = 0
for r in rows:
q = r["conversations"][1]["value"]
args = json.loads(r["expected_tool_calls"])[0]["arguments"]
brackets = re.findall(r"\[([^\]]*)\]", q)
grounded += brackets[:3] == [args["local_level"], args["district"], args["province"]]
distinct = len({json.dumps(r["conversations"], sort_keys=True, ensure_ascii=False) for r in rows})
print(f"grounded={grounded}/{len(rows)} distinct_conversations={distinct}")5. Data Construction and Processing
The processing applied by excel_to_hermes_grounded.py is minor and structural. The steps below are those verifiable from the released file.
5.1 Source and Record Construction
- Source. Administrative units (national, province, district, local level) and the three enrollment metrics are taken from the Annex 4 – Enrollment Details workbook.
- Templating. Each record is built from one fixed request template (§3.3), populated with a location tuple and a single metric.
- Tool-call synthesis. The reference tool call is generated directly from the same tuple and metric, so query and call cannot diverge. The call is stored twice: as the
gptturn (Hermes<tool_call>block) and asexpected_tool_calls(JSON string). - Schema embedding. The tool schema is embedded in the
systemturn between<tools>tags and in thetoolsfield. - Metadata.
category,subcategory,task, andtarget_languageare attached as constant fields;source_querymirrors thehumanturn.
5.2 Serialization Conventions
5.3 Value Preservation
- Location names are copied verbatim from the workbook, including capitalization, hyphenation, parenthetical
(TOTAL)markers, and source spellings. - The request explicitly instructs the model to keep bracketed values unchanged, and the audit confirms 100 % agreement between bracketed values and tool-call arguments.
- No case-folding, stripping, transliteration, or spelling correction is applied to grounded values.
5.4 Sampling Structure
Each of the 838 location tuples contributes exactly 20 records, with the metric varying across those records. As a consequence, location–metric pairs recur several times (see Finding F1).
6. Intended Use and Limitations
Intended use
- Supervised fine-tuning of models for schema-conformant function calling.
- Evaluation of argument fidelity (verbatim copying of bracketed values) and metric selection.
- Testing multilingual tool-use pipelines within the Gymkhana environment.
Limitations
- Single tool, single turn, and a single request template; linguistic diversity is intentionally low.
- No tool responses, numerical statistics, or answer-synthesis turns.
- Substantial duplication (Finding F1) and an unresolved language tag (Finding F2) should be addressed before use in benchmarking or in train/validation splitting.
- Not suitable as a source of enrollment statistics.
7. Licensing and Attribution
The dataset is derived from the Annex 4 – Enrollment Details workbook. The license field is set to other pending confirmation of the source workbook's terms; users should verify the applicable terms before redistribution.
8. Citation
@dataset{nepal_education_enrollment_hermes,
title = {Nepal Education Enrollment Statistics -- Hermes Function-Calling Dataset},
year = {2026},
note = {Generated with excel_to_hermes_grounded.py for the Gymkhana multilingual tool-use environment}
}