# DADOES Data DADOES starts from `GoEmotions`-style multi-label mood detection, but the target domain is an English daily report written by an agent in a simulated world. Training records should use JSON Lines: ```json {"text":"I repaired the shelter and felt satisfied before sunset.","labels":["satisfied"]} {"text":"The wolves followed me back, and I felt anxious and tired.","labels":["anxious","tired"]} ``` The first production dataset should combine: - GoEmotions-derived public examples mapped into the DADOES label set. - License-reviewed public loneliness examples. - Agent daily reports sampled from the world. - Human or LLM-reviewed labels for those reports. The public dataset survey is tracked in `DATASETS.md`. The practical decision from that survey is that `lonely` can be improved with external English text data, while `bored` and `tired` require project-owned agent-report labels. Optional external sources are read from `data/raw/external`: ```text data/raw/external/ dadoes-domain/train.jsonl dadoes-domain/dev.jsonl dadoes-domain/test.jsonl loneliness_causes/train_data.csv loneliness_causes/validation_data.csv loneliness_causes/test_data.csv text_emotion/text_emotion.csv prajwal_text_emotion/final_dataset.csv um1neko/train.json um1neko/dev.json um1neko/test.json empathetic_dialogues/train.csv empathetic_dialogues/validation.csv empathetic_dialogues/test.csv fig_loneliness/train.jsonl fig_loneliness/dev.jsonl fig_loneliness/test.jsonl ``` Run `cargo run --release --features dataset-download --bin prepare_external_datasets` from the repository root to download the public raw-file sources. The Rust trainer can also read locally exported non-commercial sources: - `empathetic_dialogues/*.csv` must contain `context`, `prompt`, and `utterance` columns. - `fig_loneliness/*.jsonl` must contain `text` and `lonely` fields. DADOES does not depend on Python or Hugging Face `datasets` to produce those files. The trainer requires `DADOES_INCLUDE_NON_COMMERCIAL=1` before it will read them. The Rust baseline in `src/lib.rs` uses a small in-crate seed set only so the project has a runnable machine-learning path from the first commit.