Using UniMRCP with custom AI modules

689 views
Skip to first unread message

Vipul Sharma

unread,
Jul 25, 2018, 11:47:17 AM7/25/18
to UniMRCP
Hi,

We have an existing NLU pipeline for different languages and wanted to use
the same for speech processing.

The idea is to get speech, perform ASR to get text and run it over our NLU
and return back with appropriate intent(s).

Since we are trying to integrate with various telephony providers, they support
communications using MRCP and hence we want to support our systems (which currently accepts HTTP requests) to receive speech data and run it through our NLU (ASR step happens here).

Our stack is built on Python.

From what I've read, I think we need to write a plugin of our NLU feature for
the media server. But, till now I've just read about ASR/TTS plugins. Am I thinking it right about writing a new plugin?
(reference: https://groups.google.com/forum/#!topic/unimrcp/iqCKY0zsoeY)

From the discussion at https://groups.google.com/forum/#!topic/unimrcp/-tZ7yNZya78
Is it worth investing time trying to embed an instance python interpreter for
interacting with the Python code?

From the MRCP RFC at https://tools.ietf.org/html/rfc4463#section-2, what I understand is that the plugins should be able to interact with the Python APIs (client) over MRCP. How should we approach to make our systems compliant with MRCP?
I understand the question is quite broad and also we don't have much expertise in this, therefore, any help is greatly appreciated.

Thanks.
Vipul


Arsen Chaloyan

unread,
Jul 25, 2018, 10:04:56 PM7/25/18
to UniMRCP
Hi Vipul,

Please see my comments below.

On Wed, Jul 25, 2018 at 8:16 AM, Vipul Sharma <vipul.s...@gmail.com> wrote:
Hi,

We have an existing NLU pipeline for different languages and wanted to use
the same for speech processing.

The idea is to get speech, perform ASR to get text and run it over our NLU
and return back with appropriate intent(s).

Clear.


Since we are trying to integrate with various telephony providers, they support
communications using MRCP and hence we want to support our systems (which currently accepts HTTP requests) to receive speech data and run it through our NLU (ASR step happens here).

Based on your comments, I would assume you need to implement an ASR plugin to UniMRCP server. I am not sure about the results your API returns, but you are not limited to NLSML format here. Many IVRs are capable of processing other formats too.


Our stack is built on Python.

From what I've read, I think we need to write a plugin of our NLU feature for
the media server. But, till now I've just read about ASR/TTS plugins. Am I thinking it right about writing a new plugin?
(reference: https://groups.google.com/forum/#!topic/unimrcp/iqCKY0zsoeY)

From the discussion at https://groups.google.com/forum/#!topic/unimrcp/-tZ7yNZya78
Is it worth investing time trying to embed an instance python interpreter for
interacting with the Python code?

Yes, I think this is the way. Or alternatively, you may expose your Python API via network i/o calls, not sure how simple or reasonable this option might be in your case.


From the MRCP RFC at https://tools.ietf.org/html/rfc4463#section-2, what I understand is that the plugins should be able to interact with the Python APIs (client) over MRCP. How should we approach to make our systems compliant with MRCP?
I understand the question is quite broad and also we don't have much expertise in this, therefore, any help is greatly appreciated.

I would say start with the demo-recog plugin and check out all the callbacks that you would need to implement.
 

Thanks.
Vipul


--
You received this message because you are subscribed to the Google Groups "UniMRCP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unimrcp+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Arsen Chaloyan
Author of UniMRCP
http://www.unimrcp.org
Reply all
Reply to author
Forward
0 new messages