sraivante's picture
Include Housy training data, Apache 2.0 copyright and dataset documentation
3193dc1 verified
|
Raw History Blame Contribute Delete
9.55 kB
---
pretty_name: Housy Household Instructions
language:
- en
- hi
license: apache-2.0
task_categories:
- text-generation
size_categories:
- 10K<n<100K
tags:
- household
- inventory
- hinglish
- instruction-tuning
- synthetic
- json
configs:
- config_name: default
data_files:
- split: train
path: data/housy_all_train.jsonl
- split: validation
path: data/housy_all_eval.jsonl
---
# Housy Household Instructions
**Copyright © 2026 sraivante — original dataset contributions and selection/arrangement, licensed under Apache 2.0.** See [COPYRIGHT.md](COPYRIGHT.md) and [LICENSE](LICENSE) for attribution and scope.
A chat-format dataset for Indian household inventory commands in **English, Hindi and Hinglish**, combined with template-based household-item and nutrition questions. It is published alongside [Housy Gemma 3 4B Instruct GGUF](https://huggingface.co/sraivante/Housy-Gemma3-4B-Instruct-GGUF).
This release preserves the **June 14, 2026 training-era source snapshot**, with **38,100 training records and 1,200 evaluation records**. The recorded training run used files with these names and counts, and its saved first training example matches this snapshot. No original Colab dataset checksum was saved, so historical byte-for-byte identity cannot be proven.
## What the data teaches
The inventory examples map natural-language commands to a JSON object containing `intent`, `tool` and `arguments`:
| Operation | Expected representation |
|---|---|
| Create an item | `ADD_ITEM / addItemTool` with item name, category, quantity and unit |
| Increase a quantity | `UPDATE_QUANTITY / updateQuantityTool` with positive quantity and `isDelta: true` |
| Decrease a quantity | `UPDATE_QUANTITY / updateQuantityTool` with negative quantity and `isDelta: true` |
| Delete an entire item | `DELETE_ITEM / deleteItemTool` with an item name |
Item names are canonicalized to English, with a Hindi name in many command responses. The knowledge records use free-text answers. This is therefore a **mixed-output dataset**: command responses are JSON strings, while knowledge responses are ordinary text.
The system prompt mentions additional tools such as lists, reminders and reports, but this snapshot's command labels cover only the four operations above. Absolute quantity assignment with `isDelta: false` is also absent. Downstream users should account for that scope when designing prompts and evaluations.
## Files and composition
| File | Records | Command examples | Knowledge examples |
|---|---:|---:|---:|
| [housy_all_train.jsonl](data/housy_all_train.jsonl) | 38,100 | 10,800 | 27,300 |
| [housy_all_eval.jsonl](data/housy_all_eval.jsonl) | 1,200 | 1,200 | 0 |
The Hugging Face dataset exposes the second file as the `validation` split.
Training command counts are 2,700 item creations, 2,700 positive quantity updates, 2,700 negative quantity updates and 2,700 deletions. Evaluation has 300 of each operation.
The source preparation describes 3,600 training commands and 400 evaluation commands per language, with Hindi and English parallels of the Hinglish examples. Knowledge records come from the project's general-information and nutrition sources. Many nominal Hindi knowledge prompts mix Devanagari item names with Romanized Hindi, so they should not be treated as uniformly formal Hindi.
## Format and loading
Each UTF-8 JSONL row contains exactly one `messages` list with a system, user and assistant turn. Each turn has `role` and `content` strings. Command JSON remains a string inside the assistant's `content`.
A representative record shape is:
```json
{
"messages": [
{"role": "system", "content": "You are Housy, an Indian household inventory and food-knowledge assistant. ..."},
{"role": "user", "content": "Subtract 100 gm from Butter"},
{"role": "assistant", "content": "{\"intent\":\"UPDATE_QUANTITY\",\"tool\":\"updateQuantityTool\",\"arguments\":{\"itemName\":\"Butter\",\"hindiName\":\"मक्खन\",\"quantity\":-100,\"unit\":\"gram\",\"isDelta\":true}}"}
]
}
```
The system text is abbreviated in this illustration; the released records contain the complete prompt.
Using Hugging Face Datasets:
```python
from datasets import load_dataset
data = load_dataset("sraivante/Housy-Household-Instructions")
print(data["train"].num_rows) # 38100
print(data["validation"].num_rows) # 1200
messages = data["train"][0]["messages"]
```
For a tokenizer that provides a compatible chat template:
```python
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=False,
)
```
Use the model-specific template during fine-tuning and the same output contract at inference. The associated Gemma run folded the system instruction into the first user turn with the Gemma 3 template.
To load downloaded files directly:
```python
data = load_dataset(
"json",
data_files={
"train": "data/housy_all_train.jsonl",
"validation": "data/housy_all_eval.jsonl",
},
)
```
Use the dataset for supervised inventory-command parsing experiments and to inspect or reproduce the associated fine-tuning workflow. A model response is a proposed command; a separate application must validate it before applying any inventory change.
## How the dataset was prepared
The source is the publisher's Housy project, Git commit `892cd2560bd18ca07324dd308ca6d6f66e8502a3` dated June 14, 2026.
The reviewed local preparation scripts show this process:
1. Inventory examples were generated from command templates, staple names and an item bank with seed 42.
2. Parallel Hindi and English commands were rendered from the same target envelopes.
3. General-information and nutrition records were constructed from curated entries and category-based templates.
4. The three command-language sets were merged with the knowledge records and shuffled with seed 42. Evaluation contains commands only.
This is a programmatically prepared dataset. It is not presented as a collection of verified conversations with real households.
The published files preserve the original Git blob bytes. Later local files contain three appended training records and one appended evaluation record, with different system prompts. Those additions postdate the recorded run and are excluded from this training-era snapshot. The historical records remain an unchanged prefix of the later files.
[provenance.json](provenance.json) records the source revision, preparation method, hashes, model association and historical uncertainty. Earlier project data supplies item names and categories; a complete upstream provenance chain for every item is not documented.
## Validation and known limitations
The release audit found:
| Check | Result |
|---|---:|
| JSON/chat-format or command-schema errors in the published files | 0 |
| Duplicate exact records within training | 173 |
| Duplicate exact records within evaluation | 2 |
| Distinct exact records shared between train and evaluation | 24 |
| Shared canonical item names among command records | 47 |
The source snapshot is preserved with those duplicates and overlaps. **The evaluation split is not fully independent.** Its results cannot be interpreted as performance on entirely unseen items or as an uncontaminated estimate of generalization.
The knowledge answers use broad category templates and curated text. Their factual, food-storage and nutrition accuracy was not systematically verified, and there is no knowledge-only evaluation split. These answers may be generic, inaccurate or inappropriate for a particular item. They should not serve as an authoritative food or nutrition reference.
Some labels deliberately map statements such as an item being spoiled or unavailable to complete deletion. That behavior may be unsuitable for another inventory application's policy. The associated model's release tests also found command confusion and unsupported factual answers; see its model card before deploying an application.
The audit checked selected patterns for emails, API-key-like strings, URLs, phone-like digit sequences and local filesystem paths, finding no matches. This limited scan does not establish that every possible form of personal information is absent.
Complete counts and the scope of the audit are in [dataset_audit.json](dataset_audit.json). Run `python validate_dataset.py` after downloading the repository to verify file hashes, split counts and message structure.
## Integrity
| Split | Bytes | SHA256 |
|---|---:|---|
| Train | 29,960,095 | `8ed4d454ffc6d116d767a13b167601a0e44ac75f7029ac9c8ce9580d27d15ad2` |
| Validation | 954,969 | `f01bd8deb2d4cecb684280383779bed6473d78ce565a0c6a4b8b177b6a0b1042` |
[SHA256SUMS](SHA256SUMS) covers the release files.
## Copyright, licensing and citation
The publisher licenses their original dataset contributions and original selection and arrangement under **Apache License 2.0**, retaining **Copyright © 2026 sraivante**.
That attribution does not claim exclusive rights in facts, item names, ideas, or material owned independently by third parties. Applicable third-party rights remain with their owners. The associated Gemma model weights remain governed by their separate Gemma terms.
Suggested citation:
```bibtex
@dataset{sraivante2026housy,
author = {sraivante},
title = {Housy Household Instructions},
year = {2026},
url = {https://huggingface.co/datasets/sraivante/Housy-Household-Instructions},
note = {June 14, 2026 source snapshot; 38,100 train and 1,200 evaluation records}
}
```