]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/log
pkg/ggml/sources/whisper.cpp
22 months agowhisper : minor fixes (#1154)
Fangjun Kuang [Sun, 27 Aug 2023 16:02:00 +0000 (00:02 +0800)]
whisper : minor fixes (#1154)

22 months agobuild : fix OpenBLAS detection under Arch Linux (#1173)
Marcin Mielniczuk [Fri, 25 Aug 2023 16:26:34 +0000 (18:26 +0200)]
build : fix OpenBLAS detection under Arch Linux (#1173)

22 months agomake : fix Linux machines supporting AVX1 not AVX2 (#1162)
Eric Swanson [Fri, 25 Aug 2023 12:52:22 +0000 (08:52 -0400)]
make : fix Linux machines supporting AVX1 not AVX2 (#1162)

e.g. ancient CPU E5-2670 (v1)

See issue #1126

Co-authored-by: Georgi Gerganov <redacted>
22 months agowhisper : add precalculated values of sin/cos for speeding up FFT (#1142)
Alexandr Graschenkov [Fri, 25 Aug 2023 12:51:14 +0000 (16:51 +0400)]
whisper : add precalculated values of sin/cos for speeding up FFT (#1142)

* Add sin/cos precalculated values to speedup FFT

* Update whisper.cpp

Co-authored-by: bobqianic <redacted>
* Update whisper.cpp

Co-authored-by: bobqianic <redacted>
---------

Co-authored-by: Georgi Gerganov <redacted>
Co-authored-by: bobqianic <redacted>
22 months agomake : simplify Makefile (#1147)
alonfaraj [Fri, 25 Aug 2023 12:20:44 +0000 (15:20 +0300)]
make : simplify Makefile (#1147)

* Simplify Architecture specific in Makefile

* unified OS specific check

22 months agocmake : fix PowerPC build failures introduced in #1174 (#1196)
Marcin Mielniczuk [Fri, 25 Aug 2023 12:19:48 +0000 (14:19 +0200)]
cmake : fix PowerPC build failures introduced in #1174 (#1196)

22 months agoFix AVX etc. under GCC/CMake (#1174)
Marcin Mielniczuk [Sat, 19 Aug 2023 18:39:03 +0000 (20:39 +0200)]
Fix AVX etc. under GCC/CMake (#1174)

22 months agoquantize : fix load vocab crash when len is 128 (#1160)
Jhen-Jie Hong [Sun, 6 Aug 2023 08:04:42 +0000 (16:04 +0800)]
quantize : fix load vocab crash when len is 128 (#1160)

* quantize : fix load vocab crash when len is 128

* ci : add quantize job

22 months agoexamples : add tinydiarization support for streaming (#1137)
Duncan McConnell [Thu, 3 Aug 2023 08:24:07 +0000 (03:24 -0500)]
examples : add tinydiarization support for streaming (#1137)

23 months agocmake : fix MSVC compile error C3688 (#1136)
bobqianic [Wed, 26 Jul 2023 15:57:25 +0000 (23:57 +0800)]
cmake : fix MSVC compile error C3688 (#1136)

Instead of simply using 'add_compile_options(/utf-8)' to address the MSVC compile error C3688, a better approach would be to handle it in a way that prevents passing '/utf-8' to NVCC.

23 months agoRevert "cmake : fix MSVC compile error C3688 on non-unicode Windows (#1110)"
Georgi Gerganov [Wed, 26 Jul 2023 07:25:09 +0000 (10:25 +0300)]
Revert "cmake : fix MSVC compile error C3688 on non-unicode Windows (#1110)"

This reverts commit fe5c1a7341a973107c1e38286c287d32090082db.

23 months agowhisper : fix visibility warning of struct whisper_full_params by declaring in advanc...
Yang Shen [Tue, 25 Jul 2023 16:15:57 +0000 (00:15 +0800)]
whisper : fix visibility warning of struct whisper_full_params by declaring in advance (#1124)

23 months agocmake : enable OpenBLAS on Windows (#1128)
bobqianic [Tue, 25 Jul 2023 16:15:08 +0000 (00:15 +0800)]
cmake : enable OpenBLAS on Windows (#1128)

Fixed the issue of not being able to find OpenBLAS on the Windows platform. Even though the name of the previously released binary file was whisper-blas-bin-x64.zip, BLAS was actually not enabled. After enabling, the inference speed can increase by 3-4 times.

23 months agomake : fix CLBlast build on MacOS (#1120)
Christian [Tue, 25 Jul 2023 16:12:03 +0000 (18:12 +0200)]
make : fix CLBlast build on MacOS (#1120)

23 months agomake : check nvcc version and set flag (#1115)
alonfaraj [Tue, 25 Jul 2023 16:10:54 +0000 (19:10 +0300)]
make : check nvcc version and set flag (#1115)

23 months agogo : implement SetSplitOnWord (#1114)
xdrudis [Tue, 25 Jul 2023 16:10:12 +0000 (09:10 -0700)]
go : implement SetSplitOnWord (#1114)

* Go binding: Implement SetSplitOnWord

* Add comment for consistency

23 months agomake : tests can be called as "make tests base.en" (#1113)
Jose [Tue, 25 Jul 2023 16:09:38 +0000 (18:09 +0200)]
make : tests can be called as "make tests base.en" (#1113)

23 months agocmake : fix MSVC compile error C3688 on non-unicode Windows (#1110)
Gang Chen [Tue, 25 Jul 2023 16:08:37 +0000 (00:08 +0800)]
cmake : fix MSVC compile error C3688 on non-unicode Windows (#1110)

Co-authored-by: Gang Chen <redacted>
23 months agoreadme : add OpenVINO support details (#1112)
Ryan Metcalfe [Tue, 25 Jul 2023 16:07:59 +0000 (12:07 -0400)]
readme : add OpenVINO support details (#1112)

23 months agoopencl : sync opencl compilation fix in ggml (#1111)
Gang Chen [Tue, 25 Jul 2023 16:07:08 +0000 (00:07 +0800)]
opencl : sync opencl compilation fix in ggml (#1111)

23 months agosamples : add a larger (30min) sample (#1092)
Vadim Peretokin [Tue, 25 Jul 2023 16:00:45 +0000 (18:00 +0200)]
samples : add a larger (30min) sample (#1092)

Co-authored-by: Vadim Peretokin <redacted>
23 months agowhisper : expose API to let user control log output (#1060)
Evan Martin [Tue, 25 Jul 2023 15:58:25 +0000 (08:58 -0700)]
whisper : expose API to let user control log output (#1060)

* expose api to let user control log output

Add
  whisper_set_log_callback()
that lets user set a callback for log messages.

Change all the
  fprintf(stderr, ...)
to call via the above.

* whisper : add <cstdarg>

---------

Co-authored-by: Georgi Gerganov <redacted>
23 months agowhisper : move progress calculation out of whisper.cpp (#1081)
Hrishikesh Barman [Tue, 25 Jul 2023 15:53:34 +0000 (21:23 +0530)]
whisper : move progress calculation out of whisper.cpp (#1081)

Current `progress_step` was hardcoded into whisper.cpp, this resulted in
bindings having to access progress only at that step even if progress
callback was being called at every iteration.

With this change we get greater granularity progress reporting from
whisper.cpp and bindings/implementations can define their own progress step.

23 months agoexamples : add Vim plugin (#1131)
AustinMroz [Tue, 25 Jul 2023 15:34:23 +0000 (10:34 -0500)]
examples : add Vim plugin (#1131)

* Initial proof of concept Vim plugin

At present, this is likely only slightly better than feature parity with
the existing whisper.nvim

Known issues:
 Trailing whitespace
 Up to an existing length(5 seconds) of speech may be processed when
  listening is enabled
 CPU cycles are spent processing speech even when not listening.

Fixing these issues is likely dependent upon future efforts to create a
dedicated library instead of wrapping examples/stream

* Support $WHISPER_CPP_HOME environment variable

A minor misunderstanding of the whisper.nvim implementation resulted in
a plugin that was functional, but not a drop in replacement as it should
be now.

23 months agoci : more platforms coverage (#1101)
alonfaraj [Sun, 16 Jul 2023 20:00:34 +0000 (23:00 +0300)]
ci : more platforms coverage (#1101)

* add multi platform

* add image name

* fix

* fix /bin/sh path

* add missing \

* add all platforms for check

* remove platforms

* remove s390x

* - add arm v6
- format run cmd

* remove arm v6

* - bump checkout to v3
- use setup emsdk action
- add arch to all ubuntu jobs

* mymindstorm/setup-emsdk to v12

* add missing QEMU step

* add fail-fast: false for debug

* add freebsd

* remark all jobs except freebsd for test

* add sudo

* enable all tests again

* format

* check __AVX__ support before include immintrin.h

* try auto detect flag by cmake

* fix check for immintrin.h

* fix include check for immintrin.h

* Remove all platforms for sanitizer build except amd64

We have no clue why they failed.

---------

Co-authored-by: Alon Faraj <redacted>
23 months agowhisper : minor OpenVINO refactoring (#1037)
Georgi Gerganov [Tue, 4 Jul 2023 17:28:27 +0000 (20:28 +0300)]
whisper : minor OpenVINO refactoring (#1037)

Hopefully I didn't break something - haven't tested

23 months agogo : call SetDuration appropriately (#1077)
Travis Cline [Tue, 4 Jul 2023 13:13:25 +0000 (06:13 -0700)]
go : call SetDuration appropriately (#1077)

23 months agogo : fix context.Process call in examples (#1067)
Murilo Santana [Tue, 4 Jul 2023 13:05:35 +0000 (10:05 -0300)]
go : fix context.Process call in examples (#1067)

23 months agowhisper : add OpenVINO support (#1037)
Ryan Metcalfe [Tue, 4 Jul 2023 12:56:11 +0000 (08:56 -0400)]
whisper : add OpenVINO support (#1037)

* openvino: use OpenVINO encoder inference

* openvino: add python script for OpenVINO model generation

* whisper: Fix 'unused' warnings when OpenVINO isn't enabled in build

* Apply suggestions from code review

Co-authored-by: Georgi Gerganov <redacted>
* whisper: Fix compilation error

* whisper: revert whisper_get_openvino_path_encoder & whisper_get_openvino_path_cache to non-const func signatures

* cmake: Add openvino-encoder as separate object target

* whisper : minor style fixes

* minor : indentation fixes

---------

Co-authored-by: Georgi Gerganov <redacted>
23 months agoreadme : better wording (#1064)
Martin Warnaar [Tue, 4 Jul 2023 12:30:31 +0000 (14:30 +0200)]
readme : better wording (#1064)

23 months agoreadme : add tinydiarize instructions (#1058)
Georgi Gerganov [Tue, 4 Jul 2023 06:51:22 +0000 (09:51 +0300)]
readme : add tinydiarize instructions (#1058)

23 months agowhisper : support speaker segmentation (local diarization) of mono audio via tinydiar...
Akash Mahajan [Tue, 4 Jul 2023 06:45:00 +0000 (23:45 -0700)]
whisper : support speaker segmentation (local diarization) of mono audio via tinydiarize (#1058)

* add HuggingFace mirror to download  ggml model

* support tdrz via simple hack overriding solm tokens

* fix incorrect translate/transcribe token_ids that are not static const

* add apollo 13 sample for tdrz demo

* render [SPEAKER TURN] consistently in all terminal output using vocab.id_to_token

* extend whisper_segment with speaker_turn_next field and save in json output

* fix failing go build

* slipped in some python syntax whoops

* whisper : finalize tinydiarize support (add flag + fixes)

* whisper : tdrz support for word-level timestamps (respect max_len)

* java : try to fix tests after adding tdrz_enable flag

* main : remove TODO leftover

* java : fix params order list after adding "tdrz_enable"

* whisper : fix solm and add nosp token

* main : print tinydiarize help

---------

Co-authored-by: Georgi Gerganov <redacted>
23 months agotalk-llama : fix new rope interface
Georgi Gerganov [Mon, 3 Jul 2023 16:24:01 +0000 (19:24 +0300)]
talk-llama : fix new rope interface

23 months agoRevert "ggml : do not use _GNU_SOURCE gratuitously (#1027)"
Georgi Gerganov [Sun, 2 Jul 2023 18:53:52 +0000 (21:53 +0300)]
Revert "ggml : do not use _GNU_SOURCE gratuitously (#1027)"

This reverts commit 3f7a03ebe3b65be0792849e300a122f6a050e3f8.

23 months agoggml : sync latest repo (mostly refactoring changes)
Georgi Gerganov [Sun, 2 Jul 2023 18:45:27 +0000 (21:45 +0300)]
ggml : sync latest repo (mostly refactoring changes)

2 years agotalk-llama : fix build on macOS (#1062)
Przemysław Pawełczyk [Wed, 28 Jun 2023 19:34:50 +0000 (21:34 +0200)]
talk-llama : fix build on macOS (#1062)

* talk-llama : use posix_madvise() instead of madvise() derived from BSD

sed -i 's,\<madvise\>,posix_&,g;s,\<MADV_,POSIX_&,g' examples/talk-llama/llama-util.h

* make : enable Darwin extensions for macOS builds

This is an attempt at fixing macOS build error coming from the fact that
RLIMIT_MEMLOCK define is not available there without Darwin extensions.

2 years agoextra : update 'quantize-all.sh' to quantize all downloaded models (#1054)
thefinaldegree [Wed, 28 Jun 2023 19:07:02 +0000 (07:07 +1200)]
extra : update 'quantize-all.sh' to quantize all downloaded models (#1054)

Script will now do what it says: quantize everything except testing models in the 'models'  directory.

2 years agowhisper : `split_on_word` no longer trims (#1046)
Georgi Gerganov [Sun, 25 Jun 2023 20:51:01 +0000 (23:51 +0300)]
whisper : `split_on_word` no longer trims (#1046)

2 years agoggml : do not use _GNU_SOURCE gratuitously (#1027)
Przemysław Pawełczyk [Sun, 25 Jun 2023 13:34:30 +0000 (15:34 +0200)]
ggml : do not use _GNU_SOURCE gratuitously (#1027)

* Do not use _GNU_SOURCE gratuitously.

What is needed to build whisper.cpp and examples is availability of
stuff defined in The Open Group Base Specifications Issue 6
(https://pubs.opengroup.org/onlinepubs/009695399/) known also as
Single Unix Specification v3 (SUSv3) or POSIX.1-2001 + XSI extensions.

There is no need to penalize musl libc which simply follows standards.

Not having feature test macros in source code gives greater flexibility
to those wanting to reuse it in 3rd party app, as they can build it with
minimal FTM (_XOPEN_SOURCE=600) or other FTM depending on their needs.

It builds without issues in Alpine (musl libc), Ubuntu (glibc), MSYS2.

* examples : include SDL headers before other headers

This is an attempt at fixing macOS build error coming from SDL2 relying
on Darwin extension memset_pattern4/8/16 coming from Apple's string.h.

2 years agotalk-llama : fix build after ggml sync (#1049)
Przemysław Pawełczyk [Sun, 25 Jun 2023 13:13:50 +0000 (15:13 +0200)]
talk-llama : fix build after ggml sync (#1049)

sed -i 's,GGML_BACKEND_CUDA,GGML_BACKEND_GPU,g' examples/talk-llama/llama.cpp

2 years agometal : sync ggml-metal (ref #1047)
Georgi Gerganov [Sun, 25 Jun 2023 12:40:30 +0000 (15:40 +0300)]
metal : sync ggml-metal (ref #1047)

2 years agoopencl : sync latest ggml-opencl
Georgi Gerganov [Sun, 25 Jun 2023 12:38:12 +0000 (15:38 +0300)]
opencl : sync latest ggml-opencl

2 years agowhisper : fix build with -Werror=undef (#1045)
Philippe Normand [Sun, 25 Jun 2023 12:30:39 +0000 (13:30 +0100)]
whisper : fix build with -Werror=undef (#1045)

2 years agomodels : add ggml_to_pt script (#1042)
Simon Moisselin [Sun, 25 Jun 2023 12:29:54 +0000 (02:29 -1000)]
models : add ggml_to_pt script (#1042)

* adding ggml_to_pt

* typo sys too many args

* fixing swap errors dimensions

---------

Co-authored-by: simonMoisselin <redacted>
2 years agomodels : cd statements are quoted to allow spaces in path (#1041)
Roddur Dasgupta [Sun, 25 Jun 2023 12:27:28 +0000 (05:27 -0700)]
models : cd statements are quoted to allow spaces in path (#1041)

2 years agomodels : handle paths with spaces in download script (close #1038)
Georgi Gerganov [Sun, 25 Jun 2023 12:22:49 +0000 (15:22 +0300)]
models : handle paths with spaces in download script (close #1038)

2 years agomain : add diarization support for all current output types (#1031)
Colin [Sun, 25 Jun 2023 12:07:57 +0000 (07:07 -0500)]
main : add diarization support for all current output types (#1031)

Co-authored-by: Georgi Gerganov <redacted>
2 years agoreadme : add java alternative binding (#1029)
GiviMAD [Sun, 25 Jun 2023 11:46:07 +0000 (04:46 -0700)]
readme : add java alternative binding (#1029)

Signed-off-by: Miguel Álvarez <redacted>
2 years agogo : add support for whisper_full_lang_id() (#1010)
Jay Binks [Sun, 25 Jun 2023 11:45:33 +0000 (21:45 +1000)]
go : add support for whisper_full_lang_id() (#1010)

* * Add support for whisper_full_lang_id() to go bindings

* Expose token.id so we can test beg, eot etc

---------

Co-authored-by: Jay Binks <redacted>
2 years agogo : fix "cb" -> "callNewSegment"
Georgi Gerganov [Sun, 25 Jun 2023 11:34:10 +0000 (14:34 +0300)]
go : fix "cb" -> "callNewSegment"

2 years agoggml : sync latest ggml lib
Georgi Gerganov [Sun, 25 Jun 2023 11:22:21 +0000 (14:22 +0300)]
ggml : sync latest ggml lib

2 years agogo : improve progress reporting and callback handling (#1024)
Bo-Yi Wu [Sun, 25 Jun 2023 11:07:55 +0000 (19:07 +0800)]
go : improve progress reporting and callback handling (#1024)

- Rename `cb` to `callNewSegment` in the `Process` function
- Add `callProgress` as a new parameter to the `Process` function
- Introduce `ProgressCallback` type for reporting progress during processing
- Update `Whisper_full` function to include `progressCallback` parameter
- Add `registerProgressCallback` function and `cbProgress` map for handling progress callbacks

Signed-off-by: appleboy <redacted>
2 years agomake : update cuBLAS build both x86 and aarch64 (#1015)
byte-6174 [Sun, 25 Jun 2023 10:59:48 +0000 (06:59 -0400)]
make : update cuBLAS build both x86 and aarch64 (#1015)

make cuBLAS compilation compatible with x86 as well as aarch64.

2 years agomake : fix for CUDA native not working as an option on Ubuntu (#1012)
KP Kaiser [Sun, 25 Jun 2023 10:57:18 +0000 (06:57 -0400)]
make : fix for CUDA native not working as an option on Ubuntu (#1012)

2 years agomain : exit gracefully when invalid params are passed
faker [Sun, 25 Jun 2023 10:52:29 +0000 (18:52 +0800)]
main : exit gracefully when invalid params are passed

* Refactor whisper_params_parse to return false on failure

* Updated help flag behavior

2 years agomain : gracefully exit when invalid params are passed (#1002)
faker [Sun, 25 Jun 2023 10:51:59 +0000 (18:51 +0800)]
main : gracefully exit when invalid params are passed (#1002)

* Refactor whisper_params_parse to return false on failure

* Updated help flag behavior

2 years agopy : make convert-pt-to-ggml.py backwards compatible with older vocab.json tokenizer...
Akash Mahajan [Sun, 25 Jun 2023 10:50:14 +0000 (03:50 -0700)]
py : make convert-pt-to-ggml.py backwards compatible with older vocab.json tokenizer files (#1001)

* patch checkpoint convert script to keep compatibility with older hf_transformers whisper tokenizer

* typo fix

2 years agoreadme : corrected syntax for markdown link (#995)
Larry Battle [Sun, 25 Jun 2023 10:46:44 +0000 (05:46 -0500)]
readme : corrected syntax for markdown link (#995)

2 years agoupdated java README
Nicholas Albion [Tue, 6 Jun 2023 00:27:26 +0000 (10:27 +1000)]
updated java README

2 years ago`speak` scripts for Windows
Nicholas Albion [Thu, 1 Jun 2023 12:45:00 +0000 (22:45 +1000)]
`speak` scripts for Windows

2 years agoupdated README for java
Nicholas Albion [Thu, 1 Jun 2023 06:53:56 +0000 (16:53 +1000)]
updated README for java

2 years agowhisper.android : support decode wav file has 2 channels (#972)
geniusnut [Wed, 31 May 2023 07:13:14 +0000 (15:13 +0800)]
whisper.android : support decode wav file has 2 channels (#972)

2 years agoFeature/java bindings2 (#944)
Nicholas Albion [Sun, 28 May 2023 23:38:58 +0000 (09:38 +1000)]
Feature/java bindings2 (#944)

* Java needs to call `whisper_full_default_params_by_ref()`, returning struct by val does not seem to work.
* added convenience methods to WhisperFullParams
* Remove unused WhisperJavaParams

2 years agomodels : fix README.md (#964)
genevera (she/her) [Sat, 27 May 2023 07:40:28 +0000 (03:40 -0400)]
models : fix README.md (#964)

Fixes typo on line 76 of models/README.md

2 years agoexamples : update elevenlabs scripts to use official python API (#837)
DGdev91 [Wed, 24 May 2023 18:11:01 +0000 (20:11 +0200)]
examples : update elevenlabs scripts to use official python API (#837)

* Update elevenlabs example to use ufficial python API

* Update elevenlabs example to use official python API

2 years agoreadme : highlight OpenBLAS support (#956)
0xsourcecode [Wed, 24 May 2023 08:23:51 +0000 (04:23 -0400)]
readme : highlight OpenBLAS support (#956)

* highlight openblas support

* Update README.md

2 years agotalk-llama : sync latest llama.cpp (close #922, close #954)
Georgi Gerganov [Tue, 23 May 2023 11:04:39 +0000 (14:04 +0300)]
talk-llama : sync latest llama.cpp (close #922, close #954)

2 years agocmake : build with any BLAS compatible library (#927)
Alexey Kharlamov [Sat, 20 May 2023 18:23:45 +0000 (19:23 +0100)]
cmake : build with any BLAS compatible library (#927)

* Build with any BLAS library

* ci: Removed explicit CUDA nvcc path

2 years agoggml : update WASM SIMD
Georgi Gerganov [Sat, 20 May 2023 17:00:06 +0000 (20:00 +0300)]
ggml : update WASM SIMD

2 years agoggml : sync latest ggml repo
Georgi Gerganov [Sat, 20 May 2023 15:56:30 +0000 (18:56 +0300)]
ggml : sync latest ggml repo

- new Q4 and Q8 quantization
- updated CUDA

2 years agobindings : add java bindings (#931)
Nicholas Albion [Sat, 20 May 2023 15:25:02 +0000 (01:25 +1000)]
bindings : add java bindings (#931)

* WIP - java bindings

* updated README

* failed attempt at JNI

* fullTranscribe() test passes

* tested on Ubuntu 20

* link to Java bindings

2 years agowhisper : fix hebrew language code (#935)
Elkana Bardugo [Sat, 20 May 2023 15:17:54 +0000 (18:17 +0300)]
whisper : fix hebrew language code (#935)

2 years agocoreml : add support of large-v1 model (#926)
Ahmad Bilal [Mon, 15 May 2023 15:36:06 +0000 (20:36 +0500)]
coreml : add support of large-v1 model (#926)

2 years agorelease : v1.4.2
Georgi Gerganov [Sun, 14 May 2023 16:06:45 +0000 (19:06 +0300)]
release : v1.4.2

2 years agoggml : add AVX dot products
Georgi Gerganov [Sun, 14 May 2023 15:56:46 +0000 (18:56 +0300)]
ggml : add AVX dot products

2 years agotalk-llama : fix build + sync latest llama.cpp
Georgi Gerganov [Sun, 14 May 2023 15:46:19 +0000 (18:46 +0300)]
talk-llama : fix build + sync latest llama.cpp

2 years agoreadme : improve Core ML model conversion guidance (#915)
Jhen-Jie Hong [Sun, 14 May 2023 15:11:08 +0000 (23:11 +0800)]
readme : improve Core ML model conversion guidance (#915)

2 years agocoreml : support quantized model files
Georgi Gerganov [Sun, 14 May 2023 15:09:44 +0000 (18:09 +0300)]
coreml : support quantized model files

2 years agoggml : sync latest ggml
Georgi Gerganov [Sun, 14 May 2023 15:04:23 +0000 (18:04 +0300)]
ggml : sync latest ggml

- New Q4 and Q5 formats
- Various improvements

2 years agomain : fix help for --no-timestamps arg (#908)
Rich Jones [Sun, 14 May 2023 14:54:57 +0000 (16:54 +0200)]
main : fix help for --no-timestamps arg (#908)

2 years agoextra : update ggml sync script
Georgi Gerganov [Sun, 14 May 2023 07:01:52 +0000 (10:01 +0300)]
extra : update ggml sync script

2 years agowhisper.objc : enable Core ML in example & fix segmentation fault (#910)
Jhen-Jie Hong [Sun, 14 May 2023 06:47:02 +0000 (14:47 +0800)]
whisper.objc : enable Core ML in example & fix segmentation fault (#910)

* coreml : update endcoder header import path

* coreml : force objc_arc in whisper-encoder.mm

* whisper.objc : create coreml/ group link

* whisper.objc : add coreml model link

* whisper.objc : update readme

* coreml : use -fobjc-arc for coreml/whisper-encoder.mm

* ci: create dummy .mlmodelc for pass ios build

* whisper.objc : update readme

---------

Co-authored-by: Georgi Gerganov <redacted>
2 years agocoreml : fix seg fault, double free (#919, #917, #899)
Georgi Gerganov [Sun, 14 May 2023 06:42:19 +0000 (09:42 +0300)]
coreml : fix seg fault, double free (#919, #917, #899)

2 years agocoreml : fix memory leak (#899)
Georgi Gerganov [Tue, 9 May 2023 15:38:12 +0000 (18:38 +0300)]
coreml : fix memory leak (#899)

2 years agocmake : fix define used for COREML_ALLOW_FALLBACK (#893)
Jonathan Soo [Mon, 8 May 2023 18:08:09 +0000 (14:08 -0400)]
cmake : fix define used for COREML_ALLOW_FALLBACK (#893)

2 years agotalk-llama : only copy used KV cache in get / set state (#890)
Luis Herrera [Mon, 8 May 2023 17:59:21 +0000 (12:59 -0500)]
talk-llama : only copy used KV cache in get / set state (#890)

---------

Co-authored-by: ejones <redacted>
2 years agoreadme : add instructions on converting to GGML + "--no-config" to wget (#874)
Clifford Heath [Mon, 8 May 2023 17:58:36 +0000 (03:58 +1000)]
readme : add instructions on converting to GGML + "--no-config" to wget (#874)

2 years agocmake : fix options disabling AVX and AVX2 flags (#885)
ZaBlazzingZephyrus [Mon, 8 May 2023 17:45:53 +0000 (00:45 +0700)]
cmake : fix options disabling AVX and AVX2 flags (#885)

2 years agocmake : add options to disable CPU flags (#860)
Georgi Gerganov [Thu, 4 May 2023 16:31:04 +0000 (19:31 +0300)]
cmake : add options to disable CPU flags (#860)

2 years agoci : add cuBLAS build workflow and fix error causing lines in CMakeLists (#867)
RelatedTitle [Wed, 3 May 2023 20:47:37 +0000 (14:47 -0600)]
ci : add cuBLAS build workflow and fix error causing lines in CMakeLists (#867)

* Add windows build with cuBLAS

* Remove error causing lines for cuBLAS on Windows

2 years agoreadme : partial OpenCL GPU support via CLBlast (#863)
Vulcan [Wed, 3 May 2023 16:24:43 +0000 (21:54 +0530)]
readme : partial OpenCL GPU support via CLBlast (#863)

* ggml : CLBlast support as in llama.cpp

Building with CLBlast speeds up whisper.cpp ~2x on low end / older AMD APUs (CPU with integrated GPU) such as the A9.

Usage:
WHISPER_CLBLAST=1 make

* CMake/Makefile : CLBlast support as in llama.cpp

Building with CLBlast speeds up whisper.cpp ~2x on low end / older AMD APUs (CPU with integrated GPU) such as the A9.

Usage:
```
Makefile:
cd whisper.cpp
WHISPER_CLBLAST=1 make

CMake:
cd whisper.cpp ; mkdir build ; cd build
cmake -DWHISPER_CLBLAST=ON  ..
make
```

* Update README.md

Added OpenCL Build Instructions

* Instruction: Partial OpenCL GPU support via CLBlast

Added build instructions and examples for Make and CMake to support OpenCL enabled GPUs.

2 years agobuild : CLBlast support as in llama.cpp (#862)
Vulcan [Tue, 2 May 2023 19:50:32 +0000 (01:20 +0530)]
build : CLBlast support as in llama.cpp  (#862)

* ggml : CLBlast support as in llama.cpp

Building with CLBlast speeds up whisper.cpp ~2x on low end / older AMD APUs (CPU with integrated GPU) such as the A9.

Usage:
WHISPER_CLBLAST=1 make

* CMake/Makefile : CLBlast support as in llama.cpp

Building with CLBlast speeds up whisper.cpp ~2x on low end / older AMD APUs (CPU with integrated GPU) such as the A9.

Usage:
```
Makefile:
cd whisper.cpp
WHISPER_CLBLAST=1 make

CMake:
cd whisper.cpp ; mkdir build ; cd build
cmake -DWHISPER_CLBLAST=ON  ..
make
```

2 years agoggml : fix 32-bit ARM build + quantization
Georgi Gerganov [Tue, 2 May 2023 18:47:12 +0000 (21:47 +0300)]
ggml : fix 32-bit ARM build + quantization

2 years agoggml : sync ggml (clBLAST + tensor names)
Georgi Gerganov [Tue, 2 May 2023 18:23:54 +0000 (21:23 +0300)]
ggml : sync ggml (clBLAST + tensor names)

2 years agotalk-llama : fix session prompt load (#854)
Luis Herrera [Tue, 2 May 2023 17:05:27 +0000 (12:05 -0500)]
talk-llama : fix session prompt load (#854)

2 years agowhisper : add detect-language mode (#853)
CRD716 [Tue, 2 May 2023 16:51:52 +0000 (11:51 -0500)]
whisper : add detect-language mode (#853)

* add detectlanguage flag

* renaming and help

* no idea why that last one didn't commit

* run language detection if dl is set

* help message fix

* various fixes

* fix quitting

* fix language being english on print

2 years agotalk-llama : add --session support (#845)
Luis Herrera [Mon, 1 May 2023 17:18:10 +0000 (12:18 -0500)]
talk-llama : add --session support (#845)

* feat: adding session support

* readme: adding --session info in examples/talk-llama

* llama: adding session fixes

* readme: updating session doc

* talk-llama: update the value of need_to_save_session to true in order to save the session in the subsequent interaction

* talk-llama: adding missing function which updates session_tokens

2 years agobench : improve benchmarks
Georgi Gerganov [Mon, 1 May 2023 11:44:39 +0000 (14:44 +0300)]
bench : improve benchmarks

2 years agowhisper : add memory sizes for Q8_0 (close #846)
Georgi Gerganov [Mon, 1 May 2023 07:03:56 +0000 (10:03 +0300)]
whisper : add memory sizes for Q8_0 (close #846)

2 years agowhisper.wasm : fix typo in readme (#832)
Baffin Lee [Mon, 1 May 2023 06:28:05 +0000 (14:28 +0800)]
whisper.wasm : fix typo in readme (#832)