Georgi Gerganov
f3ee4a9673
whisper : reduce memory usage during inference ( #431 )
...
* ggml : add "scratch" buffer support
* ggml : support for scratch ring-buffer
* ggml : bug fix in ggml_repeat()
* ggml : error on scratch buffer overflow
* whisper : use scratch buffers during inference (base model only)
* whisper : update memory usage for all models
* whisper : fix encoder memory usage
* whisper : use whisper_context functions instead of macros
* whisper : fix FF + remove it from README
* ggml : reuse ggml_new_i32
* ggml : refactor the scratch buffer storage
* whisper : reorder scratch buffers in the decoder
* main : add option to disable temp fallback
* Update README.md
2 years ago
Qianhe Chen
c306a7fd89
addon.node : using whisper as a Node.js addon ( #443 )
...
* addon: implement node addon call whisper through cpp
* addon: modify the license to MIT
* addon: remove iostream
* addon: rename dir
* addon: fix typo
* addon: configure cmake to build when cmake-js is used
2 years ago
Taisei Mima
86ef64a855
wasm : fix typo in helper.js ( #459 )
2 years ago
Alex Bacart
3b1960520a
main : CSV format export trimmed spaces fix ( #444 )
...
* Update main.cpp
Removed string trimming
* Update main.cpp
* Update main.cpp
* Revert "Update main.cpp"
This reverts commit d8924fdcfe
.
* Revert "Update main.cpp"
This reverts commit 252e508d85
.
2 years ago
Eric Tendian
47737b2e82
livestream.sh : run main with model arg instead of default ( #453 )
...
Actually utilizes the $model var when calling ./main.
2 years ago
Georgi Gerganov
60337f5306
wasm : check if navigator.storage.estimate() is available
...
Safari does not support it
2 years ago
Ondrej Kokes
11f61cecd6
whisper.wasm : add labels for easier radio selection ( #435 )
2 years ago
Georgi Gerganov
f583e2d2f5
main : we had accidentally disabled the temperature fallback .. ( #291 )
2 years ago
Georgi Gerganov
206fc93396
whisper.wasm : add small and small.en models
2 years ago
Chia-Hsiang Cheng
472a473fd1
main : add an option to accept optional output filenames ( #424 )
...
* Add an option to accept optional output filenames
* Format the file
Co-authored-by: Chia-Hsiang Cheng <gary.chiahsiang.cheng@gmail.com>
2 years ago
Georgi Gerganov
9ba66c2fad
stream : fix handling of --step == --length ( #416 )
2 years ago
Georgi Gerganov
1ccb8a46a5
bench : fix Windows linkage by moving ggml benches in whisper lib ..
2 years ago
Georgi Gerganov
1290fc6457
bench : add memcpy and ggml_mul_mat benchmarks
2 years ago
Digipom
49b529ba74
whisper.android : add support for loading directly from asset in C ( #415 )
2 years ago
Georgi Gerganov
c9aeb33676
stream : fix --keep_context argument to be used correctly ( #354 )
2 years ago
Georgi Gerganov
c3991bbb24
Update README.md
2 years ago
Georgi Gerganov
fafd78945d
bench.wasm : print system info
2 years ago
Georgi Gerganov
8de452c18b
Improve decoding ( #291 )
...
* whisper : prepare infra for new decoding strategies
* whisper : apply logit filters and compute logprobs
* whisper : add whisper_get_logits()
* whisper : separate self and cross attention memory
Initial step needed for supporting parallel decoders
* whisper : move probs_id buffer to whisper_context
* whisper : refactor kv cache into separate struct
* whisper : move self-attention kv cache to whisper_decoder
* whisper : wip decoding parameters + strategies
* whisper : wip decoding parameters + strategies (part 2)
* whisper : wip decoding parameters + strategies (part 3)
* whisper : wip decoding parameters + strategies (part 4)
* whisper : fix prompt_past update to not include prompt_init
* whisper : temperature + best_of support
* whisper : support for compression_ration_threshold
We actually use entropy, but it is similar
* command : fix example to use logits instead of obsolete probs
* whisper : handle empty sequence ranking
* whisper : add WHISPER_DEBUG + diagnostic prints + new main args
* whisper : minor fixes
* whisper : add beam-search support
* whisper : bug fix when there no previous context
* whisper : add comments
* stream : disable temperature fallback
For real-time processing, we always want a single decoder running at T=0
* whisper.swiftui : update example - fix paths + add empty folders
2 years ago
Georgi Gerganov
a6dbd9188b
stream : fix a bug that inserted a lot of empty audio at the start
...
The quality was terrible due to this
2 years ago
Syahmi Azhar
1512545149
whisper : add loader class to allow loading from buffer and others ( #353 )
...
* whisper : add loader to allow loading from other than file
* whisper : rename whisper_init to whisper_init_from_file
* whisper : add whisper_init_from_buffer
* android : Delete local.properties
* android : load models directly from assets
* whisper : adding <stddef.h> needed for size_t + code style
Co-authored-by: Georgi Gerganov <ggerganov@gmail.com>
2 years ago
Georgi Gerganov
52a3e0c92a
ggml : improve vec_dot_f16 unrolling in flash_attn_f16
2 years ago
Georgi Gerganov
d1ea1220ff
command : clean-up / refactoring / formatting ( #383 )
2 years ago
David
9c4a1522f6
command : always-prompt mode ( #383 )
2 years ago
Georgi Gerganov
87dd4a3081
talk.wasm : bump memory usage + update whisper.js
2 years ago
Georgi Gerganov
6b351bb669
command : add "guided-mode" video demo in the README.md
2 years ago
Georgi Gerganov
b3c865083e
ci : add emscripten build
2 years ago
Georgi Gerganov
a0d4f8e65c
main : make whisper_print_segment_callback() more readable ( close #371 )
2 years ago
Georgi Gerganov
196d738974
minor : close #370 + Makefile build info print change
2 years ago
Andy Maloney
84c6b42e65
cmake : update to 3.19 ( #351 )
...
- update from 3.0 (from 2014) to 3.19 (from 2020)
- move some global setting onto the targets (through a cmake include)
2 years ago
Georgi Gerganov
a466c3404d
stream : fix data race on bool + avoid division-by-zero
2 years ago
Andy Maloney
f00509d57c
command : refactor to split command list & general transcription modes ( #331 )
...
This makes it easier to understand if you're looking for only one of the capabilities.
2 years ago
Niels Mayer
a593b932e4
main : add -ocsv, aka --output-csv to output a CSV file
...
Adds -ocsv, aka --output-csv feature to examples/main, which outputs a CSV file containing lines formatted as follows <startTime-in-integer-milliseconds>, <endTime-in-integer-milliseconds>, "<transcript-line-including-commas>".
2 years ago
Andy Maloney
331c0bbddc
examples : fix memory leak on failure to load gpt2 model ( #323 )
2 years ago
Andy Maloney
dc90efd504
examples : small code cleanups ( #322 )
...
- remove unnecessary initialization of string to ""
- use empty() instead of checking size()
- use emplace_back instead of push_back
- use nullptr instead of NULL
- remove unnecessary call to .data() on string
- use character overload of find_first_of() instead of passing a string
2 years ago
Digipom
0f4227d9ee
examples : add whisper.swiftui demo app ( #308 )
...
* Add SwiftUI demo project.
* Add -DGGML_USE_ACCELERATE
2 years ago
Kevin Brothaler
91fc08c641
Build a vfpv4 library for armeabi-v7a and do runtime detection to select the right library
2 years ago
Kevin Brothaler
e1432dd91a
Check for both __ARM_NEON and __ARM_FEATURE_FMA so that the project can be compiled for armv7a.
...
Android armeabi-v7a's NEON support doesn't support FMA unless configured with `-mfpu=neon-fp-armv8`, which would need runtime checks.
* Also removed ABI filter from Android project.
2 years ago
Kevin Brothaler
22193cbfe8
Bump NDK version
2 years ago
Georgi Gerganov
90564f85f9
Update README.md
2 years ago
Georgi Gerganov
99da1e5cc8
cmake : enable and fix -Wall -Wextra -Wpedantic C++ warnings
2 years ago
Matheus de Sousa
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>
2 years ago
Georgi Gerganov
fba10a4c68
whisper : language auto-detect ( #59 )
2 years ago
Georgi Gerganov
32fbc8cd04
main : add option to print the progress ( #276 )
2 years ago
Georgi Gerganov
b8065d90f5
main : add "--prompt" command line argument ( #90 )
...
This allows to provide an initial prompt to be used at the start of the
processing.
2 years ago
Georgi Gerganov
4312995974
command : better indentation
2 years ago
Georgi Gerganov
5eeeb3412d
command : update README, show how to use guided mode
2 years ago
Georgi Gerganov
6a69e3ae27
command : adding guided mode
2 years ago
Georgi Gerganov
ea19ed33f1
Update README.md ( #46 )
...
Add references to the new Android app
2 years ago
Digipom
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
2 years ago
Georgi Gerganov
a82d331034
stream : update README.md + comments
2 years ago