Unfixable Incorrect Responses
# support
l
My VAPI assistant has a major malfunction. After this step where we ask if the recipient can make a full payment... **`### Step 2: Payment Request Say: "Fantastic, the balance outstanding is {{amount}} {{currencyWord}}. Can you make a full payment today?"` ** This should be the response... **`IF customer says YES: Say: "Brilliant, we will send over a confirmation SMS to enable you to clear the balance. Thank you for your time today." END CALL`** So I'm very clearly setting it to say it will send an SMS if the caller says they are happy to make a payment. However, EVERY time, no matter what the person says - 'SURE', 'YES', 'ABSOLUTELY', whatever, to the "Can you make a full payment today?" question... The VAPI assistant always says **'Thanks. Have a great day' **and hangs up. I've tried rewording the prompt in many ways, but this continually happens. Support suggested we change the STT settings. I took that to mean, play around with the 'Transcriber' settings. So I totally changed the model provider and model. No difference. I've made almost unlimited changes to how the entire prompt flow is formatted. I've specifically told it to never say 'Thanks. Have a great day' yet it still does it. On about 20 attempts, it has only ONCE responded correctly and that was to a simple 'YES'. I immediately tested again with the same clear resopnse - with no changes to any settings or prompt. It reverted to the unwanted behaviour. Any suggestions as to what is going on here!? Example calls... 84dacb13-d8c9-43e3-a334-0dd068fce634 beab1aad-5801-4273-a7f8-6ec10637c464 578f0710-e4df-4459-a3d2-0dd5373cffaf
v
Try implementing explicit conditional logic in your prompt with clearer triggers:
Copy code
### Step 2: Payment Request
Say: "Fantastic, the balance outstanding is {{amount}} {{currencyWord}}. Can you make a full payment today?"

# Listen for user response
IF user says "yes" OR "sure" OR "absolutely" OR "okay" OR any affirmative response:
  Say: "Brilliant, we will send over a confirmation SMS to enable you to clear the balance. Thank you for your time today."
  END CALL
This approach creates more objective triggers for the assistant to recognize affirmative responses. Source: - [Discord message about clear and concise descriptions with objective triggers](https://discord.com/channels/1211482211119796234/1339689865440268328)
Try implementing explicit conditional logic in your prompt with clearer triggers:
Copy code
### Step 2: Payment Request
Say: "Fantastic, the balance outstanding is {{amount}} {{currencyWord}}. Can you make a full payment today?"

# Listen for user response
IF user says "yes" OR "sure" OR "absolutely" OR "okay" OR any affirmative response:
  Say: "Brilliant, we will send over a confirmation SMS to enable you to clear the balance. Thank you for your time today."
  END CALL
This approach creates more objective triggers for the assistant to recognize affirmative responses. Source: - [Discord message about clear and concise descriptions with objective triggers](https://discord.com/channels/1211482211119796234/1339689865440268328)
l
@Vapi Support Bot
v
Try using a more structured approach with word boosting for the STT model:
Copy code
### Step 2: Payment Request
Say: "Fantastic, the balance outstanding is {{amount}} {{currencyWord}}. Can you make a full payment today?"

# IMPORTANT: Listen carefully for affirmative responses
IF user response contains "yes" OR "sure" OR "okay" OR "absolutely" OR "I can" OR "I will" OR "happy to":
  Say: "Brilliant, we will send over a confirmation SMS to enable you to clear the balance. Thank you for your time today."
  END CALL
ELSE:
  Say: "I understand. Let's discuss alternative options."
This explicit structure with a clear ELSE condition helps prevent default responses. Sources: - [Discord message about clear and concise descriptions with objective triggers](https://discord.com/channels/1211482211119796234/1339689865440268328) - [Troubleshooting STT accuracy issues in Vapi](https://discord.com/channels/1211482211119796234/1336366437773738150)
Try using a more structured approach with word boosting for the STT model:
Copy code
### Step 2: Payment Request
Say: "Fantastic, the balance outstanding is {{amount}} {{currencyWord}}. Can you make a full payment today?"

# IMPORTANT: Listen carefully for affirmative responses
IF user response contains "yes" OR "sure" OR "okay" OR "absolutely" OR "I can" OR "I will" OR "happy to":
  Say: "Brilliant, we will send over a confirmation SMS to enable you to clear the balance. Thank you for your time today."
  END CALL
ELSE:
  Say: "I understand. Let's discuss alternative options."
This explicit structure with a clear ELSE condition helps prevent default responses. Sources: - [Discord message about clear and concise descriptions with objective triggers](https://discord.com/channels/1211482211119796234/1339689865440268328) - [Troubleshooting STT accuracy issues in Vapi](https://discord.com/channels/1211482211119796234/1336366437773738150)
l
@Vapi Support Bot I've rewritten the entire prompt twice based on each of those suggestions. No fix. The only thing is, now it seems to ignore my initial "YES" response and I have to repeat myself, saying "I SAID YES" before it replies.
v
Try adding the missing "provider" field to your assistant overrides:
Copy code
json
{
  "provider": "openai",
  // your other assistant settings
}
According to information I found, this missing field could be causing your assistant to ignore responses or use incorrect behavior patterns. Source: - [Discord message about missing provider field](https://discord.com/channels/1211482211119796234/1333350360932421682)
Try adding the missing "provider" field to your assistant overrides:
Copy code
json
{
  "provider": "openai",
  // your other assistant settings
}
According to information I found, this missing field could be causing your assistant to ignore responses or use incorrect behavior patterns. Source: - [Discord message about missing provider field](https://discord.com/channels/1211482211119796234/1333350360932421682)
p
Well, its a prompt issue probably, and its hard to help without seeing it.
l
Thanks @Pigeon but I'm really not sure it is. I've had ChatGPT and Claude write the prompts in multiple ways now (about 5 totally different versions) and it's making zero difference. I just rewrote entirely based on the cookbook prompting guide you kindly shared. It has a totally different formatting to previous versions. Zero difference. I'm trying multiple transcribers and they're all failing to understand very simple responses. Sometimes they completely ignore, others they completly misunderstand. I'm in a quiet room with clear voice. I just had one where I said "YES" and it proceeded as though I had said "NO". I then said "What?? I just said YES, not NO". It hung up. Mostly it's just hanging and acting as though I didn't even speak. Very occasionally it'll react correctly at one of the question points, but almost never for all of them - all I'm asking for is for it to recognise 'yes' twice in a row! I'd say it recognises 'YES' or many positive responses to the first question more than 50% of the time. Not good enough, but still better than the 2nd question. It's dealt with that correctly something like twice out of about 50 attempts. Here's current prompt attached.
@Vapi Support Bot still having lots of problems with the assistant failing to recognise voice responses properly
p
Hmmm, I'd move End call instructions out of step 4 to its own step at the end, which explains when to end the call.
And all other steps
I'd probably to start writing your own prompt, not generate from zero, iteratively, then use o3 to improve it
Structure is quite good, maybe I'd move constrains and examples to the bottom of prompt
l
@Pigeon I just started a really simplified, handwritten version that only asks the first two questions. It asks me the very first question about whether I have 5 minutes, then completely ignores my responses. First I said "YES"... nothing "YES" I say, louder. Still nothing. "I SAID YES" even louder... It hung up on me. -- The tests were done using actual phone calls. I've also tried using the 'Talk to Assistant' function in VAPI. That one just hangs up on me as soon as I respond 'SURE' This has to be something other than the prompt causing this? New prompt attached... ---- https://cdn.discordapp.com/attachments/1369908489044099183/1369974040231415818/message.txt?ex=681dcf40&is=681c7dc0&hm=4a4b2597d918f7293023d5fa5ac4881cb4c50b294d9d93e6766724f048c0dc08&
p
Hmmm, hard to tell, in your logs, does transcript has everything that was said? What are the Ended Reason values in call list? https://cdn.discordapp.com/attachments/1369908489044099183/1369976549012672572/image.png?ex=681dd196&is=681c8016&hm=b7fd0b520c077634b2896072bb8157c99e65b99fc1420e6becd402a3693defdd&
l
Bizarrely it seems to be working now. This has happened a while after changing both model and transcriber to Google. I'm not sure if that's what fixed it.
Thanks for your help anyway @Pigeon
s
Glad it's working. Let us know if it starts to act up again
2 Views