Skip to content

Wit.ai App Not Returning Intents (Entities Detected but Intents Always Empty) #2817

@MrDipta

Description

@MrDipta

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions