uber-archive / plato-research-dialogue-system

This is the Plato Research Dialogue System, a flexible platform for developing conversational AI agents.
Apache License 2.0
979 stars 191 forks source link

UnboundLocalError: local variable 'statistics' referenced before assignment #11

Closed ccuiyuhan closed 4 years ago

ccuiyuhan commented 4 years ago

when I run plato gui --config CamRest_GUI_speech.yaml I got an UnboundLocalError: local variable 'statistics' referenced before assignment How to solve it? thank you!

apapangelis commented 4 years ago

Hi, I've made some minor fixes, I believe the UnBoundLocalError should be fixed. However there is another error still. This happens when you quit the GUI, correct?

ccuiyuhan commented 4 years ago

Yes,I met the same problem,how do you fix it?Could we have a discussion?,my email is :937903992@qq.com and Wetchat ID: KAD4wei

ccuiyuhan commented 4 years ago

and can your GUI work?What's your GUI like ? when I press the button“start call”,there is nothing to happen,when i quit the GUI,i met “UnboundLocalError: local variable 'statistics' referenced before assignment ”

apapangelis commented 4 years ago

did you try to do "git pull" before trying again?

Also, does the regular "plato run --config CamRest_speech.yaml" work for you? If not it may have something to do with your audio / microphone.

ccuiyuhan commented 4 years ago

Thanks for replying !I guess so,there is something with my mirophoe.So,if the microphone can work,when i run“plato run --config CamRest_dtl_simulator.yaml” , can I chat with the agent on the GUI?I mean when i say a sentence, can i receive a speech response from the agent? Thanks!

------------------ 原始邮件 ------------------ 发件人: "apapangelis"<notifications@github.com>; 发送时间: 2019年11月14日(星期四) 凌晨2:13 收件人: "uber-research/plato-research-dialogue-system"<plato-research-dialogue-system@noreply.github.com>; 抄送: "崔宇涵"<937903992@qq.com>;"Author"<author@noreply.github.com>; 主题: Re: [uber-research/plato-research-dialogue-system] UnboundLocalError: local variable 'statistics' referenced before assignment (#11)

did you try to do "git pull" before trying again?

Also, does the regular "plato run --config CamRest_speech.yaml" work for you? If not it may have something to do with your audio / microphone.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

ccuiyuhan commented 4 years ago

i run “plato run --config CamRest_dtl_simulator.yaml” ,i met “WARNING: gTTS encountered an error. Falling back to sys TTS” ‘say’ is not an internal or external command, it's not a runnable program sorry for bothering ,i’m a beginner

ccuiyuhan commented 4 years ago

Sorry for more questions,is there some specific introductions or papers that explain the method you applied in  each module such as nlu、dst、dialogue policy、nlg and so on.Sincerely thanks!

------------------ 原始邮件 ------------------ 发件人: "apapangelis"<notifications@github.com>; 发送时间: 2019年11月14日(星期四) 凌晨2:13 收件人: "uber-research/plato-research-dialogue-system"<plato-research-dialogue-system@noreply.github.com>; 抄送: "崔宇涵"<937903992@qq.com>;"Author"<author@noreply.github.com>; 主题: Re: [uber-research/plato-research-dialogue-system] UnboundLocalError: local variable 'statistics' referenced before assignment (#11)

did you try to do "git pull" before trying again?

Also, does the regular "plato run --config CamRest_speech.yaml" work for you? If not it may have something to do with your audio / microphone.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

apapangelis commented 4 years ago

Hi, if gtts doesn't work for you and you are on Linux perhaps you can use 'espeak' instead of 'say':

https://linux.die.net/man/1/espeak

I can fix that in a future update.

As for specific methods, Plato is designed to support any statistical model, so it is up to you to train each component as you want. In the tutorials we provide some examples of neural nets with Ludwig. Also, there are a few reinforcement learning algorithms implemented (more to come) for dialogue policy learning. I hope this helps!

ccuiyuhan commented 4 years ago

Thanks for replying! When I train the model,what is the data format like?How should I process the data to the correct form? And can i use the system to train chinese dataset ?

apapangelis commented 4 years ago

Hi, you have a few options but the easiest way is to:

so, the data format is up to you - you only need to make sure that when plato calls your class the trained model is called correctly.

In the NLU example above, you need to process an utterance (a string) and output a list of dialogue acts, so that class calls the model and processes its response into a list of dialogue acts. Similarly for other components or for joint / end-to-end architectures.

And yes, I don't see a problem with training your system using a Chinese dataset