Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • May 31 19:42
    Spnetic-5 opened #1476
  • May 25 18:42
    viditvarshney closed #1452
  • May 25 18:42
    viditvarshney commented #1452
  • May 25 08:57
    viditvarshney commented #1452
  • Jan 25 15:29

    Orbiter on dev-dist

    status of susi_server_binary_la… (compare)

  • Dec 27 2020 13:39
    ashutoshc8101 commented #1472
  • Oct 25 2020 07:50
    rounaksarda commented #1472
  • Oct 18 2020 17:37
    salhasalman commented #1472
  • Oct 05 2020 07:05
    Lucifer0x17 commented #1475
  • Oct 04 2020 19:21
    mariobehling closed #1475
  • Oct 04 2020 19:21
    mariobehling commented #1475
  • Oct 04 2020 17:09
    Lucifer0x17 synchronize #1475
  • Oct 04 2020 11:39
    Lucifer0x17 commented #1475
  • Oct 04 2020 11:37
    norbusan commented #1475
  • Oct 04 2020 11:33
    lgtm-com[bot] commented #1475
  • Oct 04 2020 11:29
    Lucifer0x17 opened #1475
  • Oct 04 2020 10:37
    Lucifer0x17 commented #1408
  • Oct 04 2020 07:35
    bhadreshpsavani commented #1408
  • Oct 04 2020 06:17
    bhadreshpsavani commented #1408
  • Oct 04 2020 06:16
    bhadreshpsavani commented #1408
Michael Christen
@Orbiter
It works pretty well!
Relevant is also speed on RPi
{
  "result" : [{
      "conf" : 1.000000,
      "end" : 4.590000,
      "start" : 4.410000,
      "word" : "wir"
    }, {
      "conf" : 1.000000,
      "end" : 5.100000,
      "start" : 4.590000,
      "word" : "empfehlen"
    }, {
      "conf" : 1.000000,
      "end" : 5.310000,
      "start" : 5.100000,
      "word" : "den"
    }, {
      "conf" : 1.000000,
      "end" : 5.850000,
      "start" : 5.310000,
      "word" : "verzehr"
    }, {
      "conf" : 1.000000,
      "end" : 6.060000,
      "start" : 5.850000,
      "word" : "von"
    }, {
      "conf" : 1.000000,
      "end" : 6.570000,
      "start" : 6.060000,
      "word" : "mindestens"
    }, {
      "conf" : 1.000000,
      "end" : 6.960000,
      "start" : 6.570000,
      "word" : "zwei"
    }, {
      "conf" : 1.000000,
      "end" : 7.260000,
      "start" : 6.960000,
      "word" : "liter"
    }, {
      "conf" : 1.000000,
      "end" : 8.070000,
      "start" : 7.260000,
      "word" : "mineralwasser"
    }, {
      "conf" : 1.000000,
      "end" : 8.280000,
      "start" : 8.070000,
      "word" : "pro"
    }, {
      "conf" : 1.000000,
      "end" : 8.640000,
      "start" : 8.280000,
      "word" : "tag"
    }, {
      "conf" : 1.000000,
      "end" : 8.790000,
      "start" : 8.640000,
      "word" : "und"
    }, {
      "conf" : 1.000000,
      "end" : 9.210000,
      "start" : 8.790000,
      "word" : "weisen"
    }, {
      "conf" : 1.000000,
      "end" : 9.360000,
      "start" : 9.210000,
      "word" : "auf"
    }, {
      "conf" : 1.000000,
      "end" : 9.450000,
      "start" : 9.360000,
      "word" : "die"
    }, {
      "conf" : 1.000000,
      "end" : 10.140000,
      "start" : 9.450000,
      "word" : "bedeutung"
    }, {
      "conf" : 1.000000,
      "end" : 10.440000,
      "start" : 10.140000,
      "word" : "einer"
    }, {
      "conf" : 1.000000,
      "end" : 11.340000,
      "start" : 10.440000,
      "word" : "ausgewogenen"
    }, {
      "conf" : 1.000000,
      "end" : 11.940000,
      "start" : 11.340000,
      "word" : "ernährung"
    }, {
      "conf" : 1.000000,
      "end" : 12.660000,
      "start" : 12.330000,
      "word" : "und"
    }, {
      "conf" : 1.000000,
      "end" : 12.960000,
      "start" : 12.660000,
      "word" : "einer"
    }, {
      "conf" : 1.000000,
      "end" : 13.590000,
      "start" : 12.960000,
      "word" : "gesunden"
    }, {
      "conf" : 1.000000,
      "end" : 14.430000,
      "start" : 13.590000,
      "word" : "lebensweise"
    }, {
      "conf" : 1.000000,
      "end" : 14.670000,
      "start" : 14.430000,
      "word" : "hin"
    }],
  "text" : "wir empfehlen den verzehr von mindestens zwei liter mineralwasser pro tag und weisen auf die bedeutung einer ausgewogenen ernährung und einer gesunden lebensweise hin"
}
Patrick Höhn
@hoehnp
in my simple test, I was not satisfied with the small one
Michael Christen
@Orbiter
it produces this confidence map but confidence is always 1.0
Norbert Preining
@norbusan
On the RPi the speed is the relevant item!!
Patrick Höhn
@hoehnp
maybe my german is so bad ;-)
my regional accent
Michael Christen
@Orbiter
I now made a test on a 1GB Raspberry Pi 4:
  • large german model: terminate called after throwing an instance of 'std::bad_alloc‘
  • small german model: actually completely understood the test sentence "wir empfehlen den verzehr…“ completely without errors!
  • but: did not understand the hotword „susi“, instead is just „sie“.
This was made on our susi smart speaker development hardware with the seeed microphone hat attached. The speak distance was about 0.5m, not right in front but under the desk.
With 2m distance and normal low speaking voice it actually still understood "wir empfehlen den verzehr von mindestens zwei liter mineralwasser brutal und weisen auf die bedeutung einer ausgewogenen ernährung einer gesunden lebensweise“. Some words are wrong.
I tried it again with 2m distance with a loud voice (like: speaking as a teacher in front of students). It understood everything without errors!
Michael Christen
@Orbiter
I tried another time with 5m distance from another room. It did not understand a single word...
Michael Christen
@Orbiter
Another strange effect: in complete silence it understands the word „nun“ and when it reads actual words, the word „nun“ now prefixes the result.
Nickolay V. Shmyrev
@nshmyrev

@Orbiter Thanks for the testing. Yes, large model is not going to work, it is mainly for the servers. You need to use small model.

We can add susi if critical, it is not very common words.

To recognize from 5m distance you need a special microphone (respeaker or something like that). What microphone did you use?

Nickolay V. Shmyrev
@nshmyrev
Ok, I see you already have a hat, but not sure which one. It might need a config for AEC on respeaker or some proper channel. Talk to you soon.
Norbert Preining
@norbusan
@nshmyrev that is actually one of the things were we don't have a good idea - configuration of the reseed speaker hat. Hundreds of mixers available, and no idea how to configure them ;-)
Michael Christen
@Orbiter
Good morning / evening @nshmyrev @norbusan we are here: https://meet.jit.si/susi.ai
Norbert Preining
@norbusan
I am there already ...
@Orbiter and you?
Michael Christen
@Orbiter
yes
Norbert Preining
@norbusan
heee???? Strange!
Michael Christen
@Orbiter
Norbert maybe you are in the wrong room?
Nickolay V. Shmyrev
@nshmyrev
Norbert Preining
@norbusan
Michael Christen
@Orbiter
ok I just used a fresh susi image with a raspberry pi 3 and installed vosk and did the same test again. It worked.
There are a lot of processes running when susi is startet, one java server, one node server and two python processes. I deliberately let them running while doing the first test_microphone.py tests with the same German sentence as done before. vosk almost perfectly understood the sentence with one or two words wrong. I repeated the test several times and there were always at least one wrong word.
However when I stopped the susi processes and tried again, I got a perfect result with no wrong word at all. Thats very good!
Michael Christen
@Orbiter
Computation speed was noticeable much smaller than on RPi 4 with a detection time of (guessed) about factor 2 of speech time.
@nshmyrev I did a htop during the test and that showed that vosk is running on one single CPU only. Is there any way to run it on all four cores of the RPi? That would be a massive improvement!!
And it would mean it is fully functional on a RPi3 as well!
Michael Christen
@Orbiter
Furthermore: vosk is using up that single core to full 100% also when no speech input is there at all. I understand that the processing must run constantly but doing so on four cores would not be very helpfull, so maybe there is a good way to balance CPU requirement.
Nickolay V. Shmyrev
@nshmyrev
Thanks. Yes, we are single core mostly because you need others for more important task (NLU, TTS) ;) Multicore is in plans of course, not there yet.
Michael Christen
@Orbiter
Isn’t this maybe as simple as passing some parameters to kaldi, I see some things here: https://kaldi-asr.org/doc/queue.html
–num-threads 2 where could we put such things in? Or maybe thats too naive..
Nickolay V. Shmyrev
@nshmyrev
No, not that easy, sorry. That parameter is for training. The decoding algorithm as it is implemented now is not very parallelizable, needs much more things.
Michael Christen
@Orbiter
I just finished another test: I wanted to know how long the RPi runs on battery. I used a 4-cell Li-Ion battery to run all of SUSI and a VOSK instance constantly on battery only. It was able to run for 11:40h!
It would be nice to have a presentation with SUSI on RPi that can be carried around with no need to attach it to a power socket. So that seems possible.
It can be easily intergated into a box with the RPi. Maybe I do a design.
There is also a 2-battery version, will try that next
Norbert Preining
@norbusan

I pushed support for vosk to susi_linux and susi_installer. If you have a desktop installation or rpi, git pull in the two dirs should be enough.

What remains is putting the models into a directory vosk-data/LL below the speech_recognition python lib, on the desktop this is in /usr/local/lib/python3.N/dist-packages/speech_recognition/vosk-data/en/

From the log:
...
LOG (VoskAPI:ReadDataFiles():model.cc:194) Decoding params beam=10 max-active=3000 lattice-beam=2
LOG (VoskAPI:ReadDataFiles():model.cc:197) Silence phones 1:2:3:4:5:6:7:8:9:10
LOG (VoskAPI:RemoveOrphanNodes():nnet-nnet.cc:948) Removed 0 orphan nodes.
LOG (VoskAPI:RemoveOrphanComponents():nnet-nnet.cc:847) Removing 0 orphan components.
LOG (VoskAPI:CompileLooped():nnet-compile-looped.cc:345) Spent 0.0242901 seconds in looped compilation.
LOG (VoskAPI:ReadDataFiles():model.cc:221) Loading i-vector extractor from /usr/local/lib/python3.9/dist-packages/speech_recognition/vosk-data/en/ivector/final.ie
LOG (VoskAPI:ComputeDerivedVars():ivector-extractor.cc:183) Computing derived variables for iVector extractor
LOG (VoskAPI:ComputeDerivedVars():ivector-extractor.cc:204) Done.
LOG (VoskAPI:ReadDataFiles():model.cc:251) Loading HCL and G from /usr/local/lib/python3.9/dist-packages/speech_recognition/vosk-data/en/graph/HCLr.fst /usr/local/lib/python3.9/dist-packages/speech_recognition/vosk-data/en/graph/Gr.fst
LOG (VoskAPI:ReadDataFiles():model.cc:273) Loading winfo /usr/local/lib/python3.9/dist-packages/speech_recognition/vosk-data/en/graph/phones/word_boundary.int
...
INFO: Keyword 1 detected at time: 2021-03-22 19:57:59
DEBUG: Entering hotword callback
DEBUG: We are idle, so work on it!
DEBUG: vlcplayer: starting to say something!
DEBUG: vlcplayer: finished saying
DEBUG: notify renderer for listening
DEBUG: listening to voice command
DEBUG: Converting audio to text
INFO: Trying to recognize audio with vosk in language: en
DEBUG: recognize_audio => what is the time
...
Mario Behling
@mariobehling
Dear @/all today we received the very sad news that our dear friend @iamareebjamal has passed away. We are very disturbed by Areebs sudden death. In the last few years Areeb became like the beating heart of FOSSASIA. He kept everything running and developed all kinds of amazing services and tools. We would not be where we are today without him. He was an amazing person and brilliant developer. I worked and communicated with Areeb nearly every day and I also had the chance to meet him in person in India. The last time we got together in Delhi when we organized the OpenTechSummit mini event in Delhi. He loved to share his knowledge with anyone and expected even nothing in return. He was a modest and humble person. He deserved to live a long life and make his dreams come true. Areeb had big plans and we had discussed to get him to Singapore to run the FOSSASIA development from there. An amazing future was in front of him. We will be sharing more about Areeb on our channels. Please post your thoughts and condolences on the web and provide support to each other in these difficulties times. Be safe and healthy!
You can find out a bit more about Areeb on a video we put together here https://www.youtube.com/watch?v=XbFCBp-LTXc
rinamasahiro
@rinamasahiro
Hello! I cannot create an account for susi.ai . When I try to register on the web page, the button never becomes active; when I try to register on the app it tells me my email is already registered. When I try to log in, the website tells me my password is wrong and the app tells me there is no account. When I try to reset my password, the website sends the email with a link which appears to work, but nothing changes; the app tells me that there is no account.
rixty.dixet
@rixty.dixet:matrix.org
[m]
hey, is the project frozen? the community doesn't seem to be very active, the e-mail of the site susi.ai doesn't seem to work, in this channel all are silent... I ask to get an idea of the current status O.o
Norbert Preining
@norbusan
Hi @rixty.dixet:matrix.org well it is not frozen completely, but we have higher priority things, and the only two working continuously on the project have become rather busy in real life. That said, we are happy about people having interest, and wanting to bring things forward. Ideas there are a lot.
1 reply
Michael Christen
@Orbiter
frozen != dead… I will certainly get back to the code because the recent enhancements in voice recognition is amazing. I will be back.