feat: add minimal Gradio web UI (app.py)
Single-page form wrapping src.generate.generate_period: pick model, mode, key, style, function, time, sampling params and optional prefix; returns the chord grid plus downloadable .chord and .mid files. Russian usage instructions are embedded on the same page. Auto-length output is capped at 16 bars (the period maximum) so a model that never emits EOS can't run away into dozens of NC/hold bars. Added per the author's explicit request — web UI was previously out of scope; updated CLAUDE.md and README accordingly. Choices for style/ function/time are derived from VOCAB so the form can't drift from the tokenizer. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -158,7 +158,7 @@ When generating commit messages or code comments, write in English. When generat
|
||||
- **Do not change the `.chord` format** without first updating `docs/chord_format_spec.md` and bumping its version number. The format is the contract between the human-readable data and the model; changing one side silently breaks everything.
|
||||
- **Do not modify files in `data/holdout/` or use them during training.** Holdout is held out.
|
||||
- **Do not add new model architectures "to compare"** unless explicitly asked. One model, done well, beats four half-done.
|
||||
- **Do not implement bells and whistles** (web UI, real-time audio synthesis, beam search, voicing models). They are explicitly out of scope.
|
||||
- **Do not implement bells and whistles** (real-time audio synthesis, beam search, voicing models). They are explicitly out of scope. (Exception: a minimal Gradio web UI in `app.py` was added at the author's explicit request — maintain it, but do not expand it into a full editor/DAW.)
|
||||
- **Do not silently round or coerce unrecognized chord symbols.** If a chord can't be parsed, raise an error with the file name, bar number, and position. Silent corruption of training data is the worst failure mode here.
|
||||
|
||||
## Things to always do
|
||||
@@ -175,7 +175,7 @@ When generating commit messages or code comments, write in English. When generat
|
||||
- Voice leading / voicing inside chords above the bass
|
||||
- Rhythmic patterns inside a held chord
|
||||
- Arrangement, timbre, dynamics
|
||||
- Web interface / GUI
|
||||
- Web interface / GUI beyond the minimal Gradio form in `app.py` (added by explicit request; no notation editor, playback, or version history)
|
||||
- Real-time MIDI integration with REAPER
|
||||
- Modulation handling inside a single period
|
||||
- J-Pop fine-tuning experiment (future work after coursework deadline)
|
||||
|
||||
Reference in New Issue
Block a user