-
Notifications
You must be signed in to change notification settings - Fork 95
Description
I am integrating Wit.ai voice understanding into a Unity application using Oculus Voice (AppVoiceExperience).
I created an intent called menu_action in my Wit.ai project and added multiple training utterances (e.g., "show me the cat", "open dog anatomy", "display the chicken anatomy"). Each utterance is correctly labeled with:
Intent: menu_action
Entity: Animal → values like cat, dog, chicken
Entities resolve correctly in both Wit.ai UI and API responses.
However, no matter what utterance I provide, Wit.ai returns an empty intents array:
"intents": []
Even though entities are returned with 100% confidence, intents never appear.
Example Wit.ai API Response
Calling the API directly via cURL:
❌ Intents Missing
{
"text": "Open cat",
"intents": [],
"entities": {
"Animal:Animal": [{
"value": "cat",
"confidence": 1
}]
}
}
This happens for every trained phrase, even ones that exactly match labeled training utterances.
Expected Behavior
For utterances explicitly trained and annotated in Wit.ai:
The menu_action intent should be returned
Intent confidence should be non-zero
Entities should be resolved as they currently are
Example expected output:
"intents": [
{ "name": "menu_action", "confidence": 0.95 }
]
Actual Behavior
intents is always an empty array []
Entities are correctly detected with confidence 1.0
No error messages in Wit.ai dashboard
In the Understanding Viewer, entities appear but intent never appears
Steps Already Taken
I verified the following:
✔ Intent exists
Screenshot shows menu_action is created under Management → Intents.
✔ Utterances labeled correctly
Each utterance has:
highlighted entity (Animal)
intent selected (menu_action)
resolved values (cat/dog/etc.)
✔ Trained using "Train and Validate"
Training completes without errors.
✔ Used correct Wit App ID
Unity and cURL use the same App ID.
✔ Different phrases tested
Exact match & paraphrased phrases still return empty intents.
✔ API key and permissions confirmed
Using Server Access Token with correct scopes.
✔ No option for “ML NLU (Classic)”
This option is missing in new Wit.ai apps, so I cannot switch model versions.
Environment
Wit.ai App ID: (included in Unity logs; can provide privately if needed)
Unity Version: 6.x
Oculus Voice SDK: AppVoiceExperience
Platform: Windows + Android
Wit.ai UI: New interface (no Classic NLU toggle available)
Impact
This issue blocks all voice-driven actions in my application.
Without intents, I cannot map user voice to actions like open cat anatomy, show dog model, etc.
Request
Please help confirm whether:
Intent extraction is broken on new Wit.ai apps
I need to enable a setting (e.g., Classic NLU) that no longer appears
This is a known regression affecting new apps
There is any workaround to force Wit.ai to output intents
Additional model configuration is needed behind the scenes
Any guidance would be greatly appreciated — this currently makes Wit.ai unusable for my voice assistant workflow.