WolfDavid's picture
docs: initialize project
09347db
|
Raw
History Blame Contribute Delete
5.15 kB

A newer version of the Gradio SDK is available: 6.28.0

Upgrade

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