{"data":{"kind":"file","path":"README.md","version_id":"uc1jwov2djaxuhkiqt6cbus2","entry":{"name":"README.md","path":"README.md","is_directory":false,"size":1897,"modified_at":"2026-02-06T18:29:08.846000","content_hash":"88b300c998e30f35e18632b86b30aa60f2c0a550164ea37fcc5b4c01a0857945"},"entries":[],"content":"# Crystal Generation Environment\n\n## Overview\n\n- **Environment ID**: `crystal-generation`\n- **Short description**: Symmetry-constrained CIF generation with deterministic structural checks.\n- **Tags**: crystal, materials, cif, symmetry, generation\n\n## Datasets\n\n- **Primary dataset**: `4everStudent/crystal-relaxation-mp20` (relaxed MP-20 crystal structures)\n- **Source link**: https://huggingface.co/datasets/4everStudent/crystal-relaxation-mp20\n- **Split sizes**: Use dataset splits as provided by the dataset\n\n## Task\n\n- **Type**: single-turn\n- **Parser**: XMLParser with `<think>` and `<answer>` tags\n- **Rubric overview**:\n\t- Format tags present\n\t- CIF parseability (pymatgen)\n\t- Space group number match\n\t- Composition consistency (reduced formula)\n\n## Quickstart\n\nRun an evaluation with default settings:\n\n```bash\nprime eval run crystal-generation\n```\n\nConfigure model and sampling:\n\n```bash\nprime eval run crystal-generation \\\n\t-m gpt-4.1-mini \\\n\t-n 20 -r 3 -t 1024 -T 0.7 \\\n\t-a '{\"dataset_split\": \"train\", \"max_examples\": 100}'\n```\n\nNotes:\n- Use `-a` / `--env-args` to pass environment-specific configuration as a JSON object.\n\n## Environment Arguments\n\n| Arg | Type | Default | Description |\n| --- | ---- | ------- | ----------- |\n| `dataset_path` | str | `\"4everStudent/crystal-relaxation-mp20\"` | Hugging Face dataset ID or local path |\n| `dataset_split` | str | `\"train\"` | Dataset split to load |\n| `max_examples` | int | `-1` | Limit number of examples (use -1 for all) |\n| `system_prompt` | str | default | Override the system prompt |\n\n## Metrics\n\n| Metric | Meaning |\n| ------ | ------- |\n| `reward` | Main scalar reward (weighted sum of criteria) |\n| `format` | Presence of `<think>` and `<answer>` tags |\n| `cif_parseable` | CIF parsed successfully by pymatgen |\n| `symmetry_match` | Space group number matches target |\n| `composition_match` | Reduced formula matches target |\n\n","encoding":"utf-8","truncated":false,"total_bytes":1897},"status":null}