Commit Graph

989 Commits

Author SHA1 Message Date
99da1e5cc8 cmake : enable and fix -Wall -Wextra -Wpedantic C++ warnings 2022-12-19 20:45:08 +02:00
8e3f129b4d minor : resolves some of warnings when compiling with clang/clang++ (#294)
* Resolves some of warnings when compiling with clang/clang++

Mostly nit stuff that clang catches when compiling with -Wall -Wextra
-pedantic.

- Fix comparison between sign/unsigned integers.
- Passes a constant reference (const&) instead of copying each time.

* minor : normalize coding style

* minor : fix warning

Co-authored-by: Georgi Gerganov <ggerganov@gmail.com>
2022-12-19 20:19:01 +02:00
1d716d6e34 release : v1.0.4 1.0.4 v1.0.4 2022-12-17 19:52:42 +02:00
419b8a6402 Add AVX,AVX2 support for ggml_vec_scale_f32 2022-12-17 19:40:10 +02:00
1eb81f863f make : revert accidental change of optimization flags 2022-12-17 18:57:42 +02:00
fba10a4c68 whisper : language auto-detect (#59) 2022-12-17 18:49:44 +02:00
afe2db0fe2 Add Roadmap 2022-12-16 23:41:57 +02:00
a7047b2a28 ggml : implement ggml_compute_forward_dup_f16() special cases 2022-12-16 21:50:41 +02:00
32fbc8cd04 main : add option to print the progress (#276) 2022-12-16 20:20:43 +02:00
b8065d90f5 main : add "--prompt" command line argument (#90)
This allows to provide an initial prompt to be used at the start of the
processing.
2022-12-16 19:43:16 +02:00
4312995974 command : better indentation 2022-12-16 19:38:18 +02:00
5eeeb3412d command : update README, show how to use guided mode 2022-12-16 19:38:18 +02:00
6a69e3ae27 command : adding guided mode 2022-12-16 19:38:18 +02:00
bf69b669a0 whisper : add whisper_tokenize()
Tokenizes a string into a list of vocabulary tokens
2022-12-16 19:38:18 +02:00
ea19ed33f1 Update README.md (#46)
Add references to the new Android app
2022-12-16 19:28:51 +02:00
675e787171 Add Android sample (#277)
* Add Android sample

* Use main project C files

* Stop existing playback before starting new playback

* Make text scrollable

* Stop playback when starting to record

* Remove extra var
2022-12-16 19:20:13 +02:00
c6c3ad5a98 ci : add Windows build without OpenBLAS + change to Release (#85) (#282) 2022-12-16 18:51:46 +02:00
6a7c82501e whisper : improve decoding strategy (#244)
- Clear past prompt when there is very short audio left for processing.
  My observation is that in these cases the decoding tends to repeat and
  hallucinate stuff and I think this is induced by the existing prompt
- When we fail to sample timestamp token, retry by clearing the past
  prompt. If it fails again, then we advance the window by 1 second
2022-12-16 18:34:35 +02:00
a82d331034 stream : update README.md + comments 2022-12-16 18:04:19 +02:00
c37c2443c1 Update README.md (#56) 2022-12-16 18:01:05 +02:00
0f11759406 ggml : make more compatible with c99 (#262) 2022-12-16 18:00:12 +02:00
5a5c5ddcca Update README.md 2022-12-15 20:38:08 +02:00
34e0b4b9ef stream : fix build 2022-12-15 20:15:36 +02:00
b0f8013eb9 stream : add sliding window mode 2022-12-15 19:59:17 +02:00
124c718c73 whisper : fix UB when reading buffer of length 0 bytes (#265) 2022-12-13 23:14:47 +02:00
f66ac6dc4f ggml : fix indentation 2022-12-13 23:09:21 +02:00
9955fa4ed7 ggml : make compatible with c99 (#262) 2022-12-13 23:07:49 +02:00
a613f16aec talk : improve prompting 2022-12-12 23:44:36 +02:00
930c693989 release : v1.0.3
Fixed whisper.spm tests
1.0.3
2022-12-12 20:36:52 +02:00
d8a0dde31a Update README.md 2022-12-12 20:33:09 +02:00
9e3e6f253a release : v1.0.2 2022-12-12 20:29:30 +02:00
57ccd7cc4f Update README.md 2022-12-12 20:23:10 +02:00
812ae3ffbd Update README.md 2022-12-12 20:20:51 +02:00
f309f97df6 Node.js package (#260)
* npm : preparing infra for node package

* npm : package infra ready

* npm : initial version ready

* npm : change name to whisper.cpp

whisper.js is taken
2022-12-12 20:17:27 +02:00
aa6adda26e talk : make compatible with c++11 (part 2) 2022-12-11 20:34:04 +02:00
444349f4ec talk : make compatible with c++11 2022-12-11 20:19:17 +02:00
37a93d2459 cmake : require c++11 instead of c++20 2022-12-11 20:04:05 +02:00
e70d47baab Remove C++20 requirement (#257)
* Remove C++20 requirement

* Roll back C features not supported in VS2017
2022-12-11 20:03:07 +02:00
6ed786957e Add newline per segment for text output (#254) 2022-12-11 20:00:29 +02:00
ea38ad6e70 bench : more concise representation of the results (#89) 2022-12-11 11:56:13 +02:00
054940e1f6 minor : fix .gitignore to not ignore examples 2022-12-11 11:39:46 +02:00
fcf515de60 bench.wasm : same as "bench" but runs in the browser (#89) 2022-12-11 11:09:10 +02:00
85c9ac18b5 Update README.md 2022-12-10 16:54:57 +02:00
b7c85d1ea6 talk : fix build for MSVC 2022-12-10 16:51:58 +02:00
3b1aacbe6d talk : talk with AI in the terminal 2022-12-10 16:51:58 +02:00
d1da35de06 fix potential bug reading model data into a small size optimized string which could lead to memory corruption. In an SSO string, you can't write data to &str[0] and expect it to work well.
Also added a small wrapper function to more safely read model data without having to get the sizeof right. I tested this on tiny, base and large models, there was no change in behaviour.
2022-12-10 16:20:48 +02:00
603f97ba11 whisper : minor improvemnt in decoding strategy (#244)
Do not allow for text segments to go beyond end of audio.
This partially mitigates some issues when the last audio window is 1-2
seconds just before the end of the audio file and the decoding spirals
into a repetition of the last transcribed phrase.
2022-12-10 13:38:26 +02:00
50a061b313 ggml : add alternative cblas_sgemm call 2022-12-08 23:48:04 +02:00
832b4f34c9 make : indentation + .gitignore 2022-12-08 19:42:06 +02:00
0f98755fc5 Flag for Position Independent Code 2022-12-08 19:41:01 +02:00