Windows Port of the Command Center

22 views
Skip to first unread message

Jeremy A Russell

unread,
Jun 30, 2019, 8:37:31 PM6/30/19
to Lucida Users
I've been working on more fully understanding Lucida, how the parts work, etc. for the last couple years on and off and have a fork that I've posted a couple times of Lucida that is a bit more updated and has various issues and bugs fixed. That can be found here if you haven't seen it yet. I mention all this as context to my latest batch of work I'd like to share, which is a windows port of the Command Center which acts as the web front-end to Lucida, as well as the command parser.

So without further adieu. Lucida Command Center

There are a few random bugs I've been running into after I updated to Python 3.7 which I hope to get in the issue tracker sometime this week if I can manage it.

I need to update the readme for sure, I didn't really realize it until I uploaded to github but the readme is based off of the a Linux environment so it doesn't really apply now in this Windows environment. I hope to get that done this week as well but I completely welcome pull requests, right now the standards for code cleanliness, readability, etc. are not going to apply until a time when I feel like they should, at which point I'll raise the topic and agree upon any styles, etc. with anyone who has been contributing up until that point.

Let me know if I missed anything and if you have any questions at all.

Anandh Varadarajan

unread,
Aug 11, 2019, 7:47:02 AM8/11/19
to Lucida Users
Hi Jeremy,

I was trying to understand how various modules within Lucida interact, for example the Speech recognition module and the QA module, but I could not find the interaction point. It would be great if you can let me know where exactly the speech recognition service calls a QA service if the input is a voice recording.

Thanks
ANANDH

Jeremy A Russell

unread,
Aug 27, 2019, 8:08:03 AM8/27/19
to Lucida Users
Hi Anandh,

There's a long answer and a short answer, for right now I will just post the short answer and if you still need assistance let me know and I'll work on the long answer.

These instructions assume that you have both my core fork and the command center set up and installed and that everything is already in working order. It's possible if you're getting specific errors that one or more of the pieces aren't set up and in that case we'll need to work through what's not finished.

With that out of the way. The short answer is the speech module runs as a Python app (called gstreamer) that uses Kaldi to do the speech processing OR you can use the webkit speech that google provides. From there the response gets put into the first text field you see on the infer page. Then you can clean up any noise words and send off the command by clicking the "Ask" button. At that point the system then hooks into the actual command parser and uses the contents of the data folder (various named .txt files), along with a controllers/Config.py (Primarily, again, the long story involves more details) to figure out what to do with the words you sent it. At this point if you sent something like "what is the weather in san francisco, ca" then it will very easily match the CA service (CA stands for Calendar, but it's totally arbitraty and you would use whatever you want for whatever new command you want to add).

So as far as adding a whole new service that should give you a lead on the specific files and a bit of quick background information. If you are still stuck just let me know, I've been needing a good reason to write a few blog posts with instructions on how to set up Lucida and add your own service. That said the core/base Lucida fork (the non command center one) has a detailed (though rather outdated) readme.md that also has more instructions, but like I said they are outdated so be careful if you use that as a reference, I also need to clean that up and update it :D

Anywho, have a great day and I hope that help,

Jeremy

Reply all
Reply to author
Forward
0 new messages