diff mbox series

[bug#72027,v2] gnu: Add whisper-cpp.

Message ID 52d89f216951358977afca847ac5dc4fda8aab86.1720590865.git.atai@atai.org
State New
Headers show
Series [bug#72027,v2] gnu: Add whisper-cpp. | expand

Commit Message

Andy Tai July 10, 2024, 5:55 a.m. UTC
* gnu/packages/machine-learning.scm (whisper-cpp): New variable.

Change-Id: If191f434a3f66b16afdc702069eaed1ca22e2427
---
 gnu/packages/machine-learning.scm | 33 +++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)


base-commit: 71694363f6cc79e44955acbd9f7ca108e658caca
diff mbox series

Patch

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 8ca9a6376e..2af3c188c2 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 @@  (define-module (gnu packages machine-learning)
   #: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)
@@ -5982,6 +5984,37 @@  (define-public oneapi-dnnl-for-r-torch
        (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_FFMPEG=TRUE"  ; TO DO
+
+    ;; (inputs (list ffmpeg openblas sdl2)) ;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")