Spaces:
Running on Zero
Running on Zero
File size: 5,154 Bytes
09347db | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | # Japanese Learning Avatar
## What This Is
An animated 3D avatar tutor that teaches Japanese through spoken conversation, structured lessons, and immersion role-play β hosted as a Hugging Face Space. A VRM anime-style character listens to the learner speak Japanese, responds aloud with lip-synced speech and expressions, drills vocab and grammar, and adapts to the learner's level (N5 through N2). Built both as a daily-use learning tool for the author and as the flagship AI/ML engineering showcase on the WolfDavid Hugging Face profile.
## Core Value
A learner can hold a real, level-appropriate spoken Japanese conversation with an animated avatar that talks back β and measurably improve over time because the avatar remembers them.
## Requirements
### Validated
(None yet β ship to validate)
### Active
- [ ] Animated VRM 3D avatar rendered in-browser with lip-sync and expressions
- [ ] Avatar speaks Japanese aloud (TTS) synchronized to mouth animation
- [ ] Learner can speak Japanese (speech recognition transcribes and scores)
- [ ] Free-form conversation practice with corrections and level-appropriate replies
- [ ] Structured lessons/drills: kana, vocab, grammar with progression
- [ ] Immersion role-play scenarios (ordering food, directions, etc.) with the avatar playing the counterpart
- [ ] Adaptive difficulty spanning JLPT N5 β N2 (assesses and adjusts)
- [ ] Hybrid AI backend: small open model as free default + optional BYOK frontier model (Claude/OpenAI)
- [ ] Real user accounts with server-persistent progress (level, vocab seen, mistakes)
- [ ] Deployed as a public Hugging Face Space on the WolfDavid profile
### Out of Scope
- Mobile native app β web-first on HF Spaces; mobile-responsive is enough
- Languages other than Japanese β single-language focus keeps content quality high
- AI-generated talking-head video β GPU-heavy and slow vs. real-time VRM rendering
- Community/social features (leaderboards, friends) β not core to tutoring value
## Context
- Lives at `hugginface_profile/japanese-learning-avatar` as its own git repo, part of the 5-project HF profile strategy targeting Google AI/ML roles (this is the Gradio/Spaces demo slot, and can showcase fine-tuning/MLOps skills via the hybrid backend).
- Dual purpose: the author genuinely wants to learn Japanese with it (both-equally answer), so real pedagogical quality matters, not just demo polish.
- HF Spaces constraints matter: free CPU tier for baseline experience, Gradio supports "Sign in with Hugging Face" OAuth natively β the natural auth path for accounts. Server-side progress needs a hosted DB (e.g. Supabase/Postgres or Space persistent storage); research phase to decide.
- VRM/VRoid characters are freely available and render in-browser via three.js + @pixiv/three-vrm β real lip-sync and expression control without GPU inference.
- Full-duplex voice: Japanese TTS out (with viseme/lip-sync data) and speech recognition in (e.g. Whisper-class model) β model choices to be researched.
- Known HF profile gotchas from prior Spaces: Python 3.13 / Gradio version-pin issues (see prior audit work).
## Constraints
- **Platform**: Hugging Face Space (Gradio) β portfolio strategy requires it; free-tier visitors must get a working experience
- **Cost**: Free baseline for visitors β small open model default; frontier quality only via visitor's own API key (BYOK)
- **Tech**: In-browser avatar rendering (three.js/VRM) β no server-side video generation
- **Quality bar**: Flagship portfolio piece β "would a Google AI/ML hiring manager be impressed?" drives polish decisions
## Key Decisions
| Decision | Rationale | Outcome |
|----------|-----------|---------|
| VRM 3D avatar over 2D sprites or talking-head video | Real lip-sync + expressions in-browser, impressive but well-trodden tech | β Pending |
| Hybrid AI backend (small open model + BYOK) | Free for everyone, showcases both fine-tuning/deployment and frontier integration | β Pending |
| Full-duplex voice in v1 | Speaking practice is the core of language learning; differentiates from chat-only tutors | β Pending |
| Adaptive N5βN2 rather than beginner-only | User wants the real product; content system must be level-parameterized from day one | β Pending |
| Real accounts + server DB over browser-local storage | Persistent progress is core value ("measurably improve over time"); HF OAuth keeps auth light | β Pending |
## Evolution
This document evolves at phase transitions and milestone boundaries.
**After each phase transition** (via `/gsd:transition`):
1. Requirements invalidated? β Move to Out of Scope with reason
2. Requirements validated? β Move to Validated with phase reference
3. New requirements emerged? β Add to Active
4. Decisions to log? β Add to Key Decisions
5. "What This Is" still accurate? β Update if drifted
**After each milestone** (via `/gsd:complete-milestone`):
1. Full review of all sections
2. Core Value check β still the right priority?
3. Audit Out of Scope β reasons still valid?
4. Update Context with current state
---
*Last updated: 2026-08-08 after initialization*
|