model_id- baobab-ga
model_version- 2026.10.national
phase- national
status- national_surface_shipped
as_of- 2026-10-23T09:42:29.739Z
tiers
Public demo
id- public_demo
name- Public demo
who- Citizens, press, students (unauthenticated demos)
auth- None — soft abuse controls on demo speech
maps_to_plan- null
residency_preference- null
audit- false
commercial_nc_clean_tts_required- false
endpoints- GET /v1/models/baobab-ga
- GET /v1/baobab/ga/national
- POST /v1/demo/speech
limitstranslate_chars_daily_hint- Authenticated translate required for production MT
demo_speech- 400 requests / 10 minutes / IP (demo controller)
rate_limit_note- Demo speech returns rate_limited when exceeded
controls- honest en-GH remap when Ga speech is offline (paired Ghanaian English accent)
- ISO gaa headers — never Irish ga
Education / free
id- education
name- Education / free
who- Students, UG / KNUST labs, research orgs on Free/Pro plans
auth- Org API key (TranslateAuthGuard) — Free or Pro plan
maps_to_plan- free|pro
residency_preference- GH
audit- true
commercial_nc_clean_tts_required- false
endpoints- POST /v1/translate
- POST /v1/tts/synthesize
- POST /v1/audio/transcriptions (when ASR keyed)
- GET /v1/models/baobab-ga
limitstranslate_chars_daily_hint- Free: BILLING_FREE_TRANSLATE_CHARS_QUOTA (default 50k); Pro: BILLING_PRO_TRANSLATE_CHARS_QUOTA
demo_speech- null
rate_limit_note- RATE_LIMIT_FREE_PER_KEY / RATE_LIMIT_PRO_PER_KEY via existing RateLimitGuard
controls- UsageService metering
- BillingService.assertWithinQuota
Ministry production
id- ministry
name- Ministry production
who- Ghana government services (Ga / Greater Accra citizen channels)
auth- Ministry-keyed org API key — Business plan mapping
maps_to_plan- business
residency_preference- GH
audit- true
commercial_nc_clean_tts_required- false
endpoints- POST /v1/translate
- POST /v1/tts/synthesize
- MeetingBridge Ghana corridor
- GET /v1/residency
- GET /v1/metrics/translate
limitstranslate_chars_daily_hint- Business translate quota (BILLING_BUSINESS_TRANSLATE_CHARS_QUOTA)
demo_speech- null
rate_limit_note- RATE_LIMIT_BUSINESS_PER_KEY / PER_ORG
controls- AuditService on translate.completed
- Org retention / vendor-training settings
- Residency preference GH (affinity, not hard geo-fence)
Enterprise
id- enterprise
name- Enterprise
who- Banks, telcos, NGOs serving Greater Accra
auth- Paid Enterprise keys
maps_to_plan- enterprise
residency_preference- AF
audit- true
commercial_nc_clean_tts_required- true
endpoints- POST /v1/translate (+ TM / quality)
- Speech + MeetingBridge
- Fine-tunes / marketplace where plan allows
limitstranslate_chars_daily_hint- Enterprise translate quota
demo_speech- null
rate_limit_note- RATE_LIMIT_ENTERPRISE_PER_KEY / PER_ORG
controls- SLA targets (documented; contractual SLA separate)
- Commercial TTS path must be NC-clean for redistribution of corpus TTS assets
- Audit + retention
residency
serving_today- jnb
serving_today_label- Africa-primary Fly region Johannesburg (jnb)
affinity_target- af-west-1
affinity_city- Accra
affinity_country- GH
accra_gpu_island- false
accra_gpu_island_status- deferred
hard_geo_fence- false
preference_model- affinity_not_hard_fence
ministry_affinity_pin- af-west-1
affinity_enforcement- soft_preference_recorded
accra_island_runbook- docs/baobab/ACCRA_RESIDENCY.md
note- Inference prefers matching person/org residency to nearby model hosting when ready — affinity, not a hard geo-fence. Accra (af-west-1) is the Ghana affinity target; live serving for verbalab + lugemi-ga is jnb today. No Accra GPU island is deployed. Ministry requests record X-Lugemi-Residency-Affinity soft pin.
sla
status- targets_not_contractual_sla
health- GET /v1/health (API) · speech service /health on lugemi-ga
translate_latency_metrics- GET /v1/metrics/translate
language_pack_rollback- Pin previous language_pack_version (gaa-accra-pack-*) via release rollback — not an automatic mesh canary
note- Figures below are operational targets for national partners, not a signed SLA unless separately contracted.
open_eval
partnership_pack- docs/baobab/PARTNERSHIP_OPEN_EVAL.md
live_model_card- GET /v1/models/baobab-ga
live_national- GET /v1/baobab/ga/national
live_research- GET /v1/baobab/ga/research
corridor_report- en-gaa-accra
corridor_scripts- apps/api/eval/corridors/en-gaa-accra/test-scripts.json
native_review_rubric- apps/api/eval/corridors/en-gaa-accra/native-review-rubric.json
training_leakage- forbidden_while_trainingEligible_false
note- Ministry / UG open-eval: start with PARTNERSHIP_OPEN_EVAL.md + live endpoints. Corridor scripts + rubrics remain the eval core. trainingEligible=false until community reconfirm.
partnership_checklist
open_evaluation- Share corridor EVALUATION_REPORT + goldens; keep blind set outside training exports
sovereign_africa_hosting- Document jnb interim + Accra af-west-1 affinity; no Accra GPU fiction in MoU
student_research- Language Kit workflow + paid Accra Ga annotation; ISO gaa orthography notes
public_free_tier- Rate-limited POST /v1/demo/speech + Free/Pro translate quotas via UsageService
ministry_production_api- Business-plan org keys, TranslateAuthGuard, AuditService, retention settings, residency preference GH
ga_not_irish_ga- ISO 639-3 gaa / gaa-GH only — Irish ga / ga-IE must never resolve to Baobab Ga
license_warnings
- Ga corpus TTS (ghanaopenai/ga-multispeaker-speech-text-20k unit bank) is CC-BY-NC-4.0 — unrestricted commercial redistribution of those assets is blocked.
- Whisper-medium Ga ASR (obour/whisper-medium-ga-multispeaker-ghana) — pin versions and attribute per model card.
- Meta MMS has Ga NLP only — facebook/mms-tts-gaa does not exist; do not invent MMS-TTS claims.
- Phrase/lexical Baobab MT covers reviewed corridor domains; neural_nmt is false (no Ga NLLB service shipped).
varieties
accra- gaa-gh
dangme_interchangeable- false
irish_ga_interchangeable- false
response_contract
model_id- baobab-ga
note- No invented confidence scores. Accra GPU island never claimed live. ISO gaa ≠ Irish ga.
fields
- request_id
- model_id
- model_version
- language_pack_version
- variety_id
- status
- license_warnings
- residency
- national_tier