LLM user frame processor with tests
Proposed solution for this issue: https://github.com/pipecat-ai/pipecat/issues/441 We try to improve the processing of frames from the user, since they often arrive out of order. We also tackle the case when the VAD does not activate but we receive transcriptions. We follow the principle: no user input should be lost. We use interruptions for making sure the retrigger of the LLM does not create odd responses
Thank you so much @EdgarMMProsper ! We are releasing Pipecat today but I'll make sure to review this so it goes into the next release.
@aconchillo I have been using this code since the hackathon, I found that it solved the problem of having some tokens not added to the LLM context. Would be amazing to see it merged at some point if you feel code is good :)
@aconchillo I have been using this code since the hackathon, I found that it solved the problem of having some tokens not added to the LLM context. Would be amazing to see it merged at some point if you feel code is good :)
Cool! This validation actually helps a lot. This is definitely on the top of my list and I'm sorry I haven't looked at it and merged it before. 😞 This is coming next week for sure!
Hey! I confirm that we have not touched this code in our internal codebase since this PR and we are still consistently happy about it. At some point we had to disable the interim transcriptions, because Deepgram was sending them offtime (like sending Interim Final TheSameInterimAgain)
Any idea when this'll be able to be merged?
Hi! I'm moving this PR here #703. I want to move some things around. I'm keeping the origin commit and will work on top of it. I will release Pipecat 0.0.48 tomorror (Sunday) and quick smaller release with this PR after that.