summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Tai <atai@atai.org>2024-07-11 22:44:33 -0700
committerGuix Patches Tester <>2024-07-12 09:09:18 +0200
commitba929caff3673b60c2cbccffe8722fdd503932c9 (patch)
tree78ad0ddd7234e6c6b7ae2c52e53ce53ea67b71cb
parentfb11149feaa177a95e1f0d640e4f03881257e83e (diff)
downloadguix-patches-issue-72027.tar
guix-patches-issue-72027.tar.gz
gnu: Add whisper-cpp.issue-72027
* gnu/packages/machine-learning.scm (whisper-cpp): New variable. Change-Id: If191f434a3f66b16afdc702069eaed1ca22e2427
-rw-r--r--gnu/packages/machine-learning.scm43
1 files changed, 43 insertions, 0 deletions
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 3680cab044..0471db8d46 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -28,6 +28,7 @@
;;; Copyright © 2024 Timothee Mathieu <timothee.mathieu@inria.fr>
;;; Copyright © 2024 Spencer King <spencer.king@geneoscopy.com>
;;; Copyright © 2024 David Elsing <david.elsing@posteo.net>
+;;; Copyright © 2024 Andy Tai <atai@atai.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -117,6 +118,7 @@
#:use-module (gnu packages rdf)
#:use-module (gnu packages regex)
#:use-module (gnu packages rpc)
+ #:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages statistics)
@@ -5990,6 +5992,47 @@ performance library of basic building blocks for deep learning applications.")
(sha256
(base32 "1zyw5rd8x346bb7gac9a7x3saviw3zvp6aqz2z1l9sv163vmjfz6"))))))
+(define-public whisper-cpp
+ (package
+ (name "whisper-cpp")
+ (version "1.6.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ggerganov/whisper.cpp")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "01q4j602wkvsf9vw0nsazzgvjppf4fhpy90vqnm9affynyxhi0c4"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~'("-DWHISPER_STANDALONE=TRUE" "-DWHISPER_SDL2=TRUE")
+ ;; "-DWHISPER_FFMPEG=TRUE" ; TO DO
+ #:phases #~(modify-phases %standard-phases
+ #$@(if (not (target-64bit?))
+ '((add-after 'unpack 'skip-failing-tests
+ (lambda _
+ ;; 32-bit system
+ ;; large model does not fit in RAM in 32-bit system,
+ ;; disable large model test
+ (substitute* "tests/CMakeLists.txt"
+ (("LABELS \"large\"")
+ "DISABLED true")))))
+ '()))))
+ (inputs (list sdl2)) ;ffmpeg openblas ;TO DO:
+ (native-inputs (list pkg-config))
+ (properties '((tunable? . #t))) ;use AVX512, FMA, etc. when available
+ (home-page "https://github.com/ggerganov/whisper.cpp")
+ (synopsis "Port of OpenAI's Whisper model in C/C++")
+ (description
+ "This package is a high-performance inference of OpenAI's
+Whisper automatic speech recognition (ASR) model, implemented in plain C/C++
+without dependencies")
+ (license license:expat)))
+
+
(define-public python-gguf
(package
(name "python-gguf")