From: Georgi Gerganov Date: Wed, 23 Nov 2022 22:34:00 +0000 (+0200) Subject: talk.wasm : add audio pre-processing + bump memory X-Git-Tag: upstream/1.7.4~1794 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=37422ed7339eb8e2a3c827cea6d690ea16fb07e7;p=pkg%2Fggml%2Fsources%2Fwhisper.cpp talk.wasm : add audio pre-processing + bump memory --- diff --git a/examples/talk.wasm/CMakeLists.txt b/examples/talk.wasm/CMakeLists.txt index 6731d62e..35f62234 100644 --- a/examples/talk.wasm/CMakeLists.txt +++ b/examples/talk.wasm/CMakeLists.txt @@ -31,8 +31,8 @@ set_target_properties(${TARGET} PROPERTIES LINK_FLAGS " \ --bind \ -s USE_PTHREADS=1 \ -s PTHREAD_POOL_SIZE=8 \ - -s INITIAL_MEMORY=1400MB \ - -s TOTAL_MEMORY=1400MB \ + -s INITIAL_MEMORY=1600MB \ + -s TOTAL_MEMORY=1600MB \ -s FORCE_FILESYSTEM=1 \ -s EXPORTED_RUNTIME_METHODS=\"['print', 'printErr', 'ccall', 'cwrap']\" \ ${EXTRA_FLAGS} \ diff --git a/examples/talk.wasm/README.md b/examples/talk.wasm/README.md index c1b16c30..1ee272ad 100644 --- a/examples/talk.wasm/README.md +++ b/examples/talk.wasm/README.md @@ -34,7 +34,7 @@ In order to run this demo efficiently, you need to have the following: - Latest Chrome or Firefox browser (Safari is not supported) - Run this on a desktop or laptop with modern CPU (a mobile phone will likely not be good enough) - Speak phrases that are no longer than 10 seconds - this is the audio context of the AI -- The web-page uses about 1.4GB of RAM +- The web-page uses about 1.6GB of RAM Notice that this demo is using the smallest GPT-2 model, so the generated text responses are not always very good. Also, the prompting strategy can likely be improved to achieve better results. diff --git a/examples/talk.wasm/gpt-2.cpp b/examples/talk.wasm/gpt-2.cpp index 2e25c070..c6526e44 100644 --- a/examples/talk.wasm/gpt-2.cpp +++ b/examples/talk.wasm/gpt-2.cpp @@ -513,7 +513,7 @@ bool gpt2_eval( const int n_head = hparams.n_head; const int n_vocab = hparams.n_vocab; - static size_t buf_size = 512u*1024*1024; + static size_t buf_size = 640u*1024*1024; static void * buf = malloc(buf_size); if (mem_per_token > 0 && mem_per_token*N > buf_size) { diff --git a/examples/talk.wasm/index-tmpl.html b/examples/talk.wasm/index-tmpl.html index c8c9e112..f07a57ca 100644 --- a/examples/talk.wasm/index-tmpl.html +++ b/examples/talk.wasm/index-tmpl.html @@ -504,7 +504,13 @@ function startRecording() { if (!context) { - context = new AudioContext({sampleRate: 16000, noiseSuppression: true}); + context = new AudioContext({ + sampleRate: 16000, + channelCount: 1, + echoCancellation: true, + autoGainControl: true, + noiseSuppression: true, + }); } Module.set_status("");