Simplify Training 'How to use' to concise pipeline description

Replaces verbose multi-section guide with 4-line pipeline:
AI generates → you rate → AI sees your top-rated as reference
This commit is contained in:
Emil
2026-06-21 23:57:25 +03:00
parent b920762c7f
commit 9997510765
+9 -60
View File
@@ -800,72 +800,21 @@ impl SoundgenApp {
fn show_training(&mut self, ui: &mut egui::Ui) {
ui.heading("Training — Rate Sounds for Feedback Loop");
// How to use (collapsible, open by default on first visit)
// How to use (collapsible)
ui.collapsing("How to use", |ui| {
ui.colored_label(
egui::Color32::from_rgb(140, 180, 220),
"This tab lets you rate generated sounds so the AI can learn your preferences.",
"Rate sounds to teach the AI what sounds right. The AI uses your ratings as reference when generating new sounds.",
);
ui.separator();
ui.label(egui::RichText::new("Quick start:").strong());
ui.label("1. Open or create a feedback database (buttons above)");
ui.label("2. Use \"Generate Batch\" below to create sounds by name");
ui.label("3. Click ▶ to play each sound");
ui.label("4. Click stars (1-5) to rate how well it matches the name");
ui.label("5. Type feedback in the text field (e.g. \"too loud\", \"perfect\")");
ui.label("6. Press Enter or click \"Save\" to save the feedback");
ui.label("7. The AI reads your ratings when generating new sounds");
ui.label(egui::RichText::new("Pipeline:").strong());
ui.label("1. AI generates sounds via MCP (generate_batch / render_sound)");
ui.label("2. Sounds appear here as unrated — click ▶ to play");
ui.label("3. Rate 1-5★ and type feedback (Enter to save)");
ui.label("4. Next time AI generates a similar sound, it sees your top-rated examples");
ui.separator();
ui.label(egui::RichText::new("Tips:").strong());
ui.label("• Green \"saved\" text means your feedback is stored in the database");
ui.label("• Click a star again to unrate (set to 0)");
ui.label("\"Export Dataset\" creates a JSONL file for fine-tuning (rating >= 4)");
ui.label("• The more sounds you rate, the better the AI gets at matching names");
ui.label("• Comments are especially helpful — they tell the AI what to fix");
ui.separator();
ui.label(egui::RichText::new("Rating guide:").strong());
ui.label(
egui::RichText::new("5★")
.color(egui::Color32::from_rgb(255, 200, 80))
.strong(),
);
ui.label(" Perfect — sounds exactly like the name suggests");
ui.label(
egui::RichText::new("4★")
.color(egui::Color32::from_rgb(255, 200, 80))
.strong(),
);
ui.label(" Good — close, minor issues");
ui.label(
egui::RichText::new("3★")
.color(egui::Color32::from_rgb(255, 200, 80))
.strong(),
);
ui.label(" Okay — recognizable but needs improvement");
ui.label(
egui::RichText::new("2★")
.color(egui::Color32::from_rgb(255, 200, 80))
.strong(),
);
ui.label(" Poor — barely matches");
ui.label(
egui::RichText::new("1★")
.color(egui::Color32::from_rgb(255, 200, 80))
.strong(),
);
ui.label(" Bad — doesn't match at all");
ui.separator();
ui.label(egui::RichText::new("Workflow with AI (via MCP):").strong());
ui.label("• AI calls generate_batch → sounds appear here (unrated)");
ui.label("• You rate them → ratings stored in database");
ui.label(
"• AI calls render_sound → gets reference examples from your top-rated sounds",
);
ui.label("• AI adjusts its approach based on what you liked/disliked");
ui.label("• Green \"saved\" = feedback stored in database");
ui.label("\"Export Dataset\" creates JSONL for fine-tuning (4★+)");
});
ui.separator();