mirror of
https://github.com/ggerganov/whisper.cpp.git
synced 2025-06-26 18:03:21 +00:00
Compare commits
4 Commits
java-bindi
...
1.4.1-1
Author | SHA1 | Date | |
---|---|---|---|
6568459590 | |||
0ca87d2f7a | |||
1ad7cc5aa2 | |||
18d5ff8695 |
68
.github/workflows/release-deb.yml
vendored
Normal file
68
.github/workflows/release-deb.yml
vendored
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
name: release-deb
|
||||||
|
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [created]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Configure
|
||||||
|
run: |
|
||||||
|
set -x -e
|
||||||
|
VERSION=$(echo $GITHUB_REF | cut --delimiter=/ -f 3)
|
||||||
|
ID="whisper-cpp-small_${VERSION}_amd64"
|
||||||
|
|
||||||
|
echo "PKG_VERSION=$VERSION" >> $GITHUB_ENV
|
||||||
|
echo "PKG_ID=$ID" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Install deps
|
||||||
|
run: |
|
||||||
|
sudo apt install -y --no-install-recommends intel-mkl
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: |
|
||||||
|
cmake -S . -B build-mkl \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release\
|
||||||
|
-DBUILD_SHARED_LIBS=0\
|
||||||
|
-DWHISPER_BLAS=1\
|
||||||
|
-DWHISPER_BLAS_VENDOR=Intel10_64lp
|
||||||
|
cd build-mkl
|
||||||
|
make
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
- name: Create package tree
|
||||||
|
env:
|
||||||
|
GITHUB_REPO: ${{ github.repository }}
|
||||||
|
run: |
|
||||||
|
export ROOT=$PKG_ID/opt/project/whisper.cpp
|
||||||
|
mkdir -p $ROOT/bin
|
||||||
|
mkdir -p $ROOT/share
|
||||||
|
mkdir -p $PKG_ID/DEBIAN
|
||||||
|
|
||||||
|
cp build-mkl/bin/main $ROOT/bin/whisper
|
||||||
|
cp -r contrib/debian/control $PKG_ID/DEBIAN/
|
||||||
|
|
||||||
|
echo "Version: $PKG_VERSION" >> $PKG_ID/DEBIAN/control
|
||||||
|
echo "Vcs-Git: $GITHUB_REPO" >> $PKG_ID/DEBIAN/control
|
||||||
|
echo "Vcs-Git-Commit: $GITHUB_SHA" >> $PKG_ID/DEBIAN/control
|
||||||
|
|
||||||
|
models/download-ggml-model.sh small
|
||||||
|
build-mkl/bin/quantize models/ggml-small.bin \
|
||||||
|
$ROOT/share/ggml-small-q5_1.bin q5_1
|
||||||
|
|
||||||
|
- name: Create deb package
|
||||||
|
run: |
|
||||||
|
mkdir artifacts
|
||||||
|
dpkg-deb --build --root-owner-group $PKG_ID
|
||||||
|
|
||||||
|
- name: Upload Release Asset
|
||||||
|
uses: xresloader/upload-to-github-release@v1
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
with:
|
||||||
|
release_id: ${{ github.event.release.id }}
|
||||||
|
file: ${{ env.PKG_ID }}.deb
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -5,6 +5,7 @@
|
|||||||
.test/
|
.test/
|
||||||
.vs/
|
.vs/
|
||||||
.vscode/
|
.vscode/
|
||||||
|
.idea/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
||||||
build/
|
build/
|
||||||
@ -16,6 +17,7 @@ build-cublas/
|
|||||||
build-no-accel/
|
build-no-accel/
|
||||||
build-sanitize-addr/
|
build-sanitize-addr/
|
||||||
build-sanitize-thread/
|
build-sanitize-thread/
|
||||||
|
cmake-build-debug/
|
||||||
|
|
||||||
/main
|
/main
|
||||||
/stream
|
/stream
|
||||||
|
@ -59,7 +59,9 @@ if (APPLE)
|
|||||||
option(WHISPER_COREML "whisper: enable Core ML framework" OFF)
|
option(WHISPER_COREML "whisper: enable Core ML framework" OFF)
|
||||||
option(WHISPER_COREML_ALLOW_FALLBACK "whisper: allow non-CoreML fallback" OFF)
|
option(WHISPER_COREML_ALLOW_FALLBACK "whisper: allow non-CoreML fallback" OFF)
|
||||||
else()
|
else()
|
||||||
option(WHISPER_OPENBLAS "whisper: support for OpenBLAS" OFF)
|
option(WHISPER_BLAS "whisper: use BLAS libraries" OFF)
|
||||||
|
option(WHISPER_BLAS_VENDOR "whisper: BLAS library vendor" Generic)
|
||||||
|
option(WHISPER_OPENBLAS "whisper: prefer OpenBLAS" OFF)
|
||||||
option(WHISPER_CUBLAS "whisper: support for cuBLAS" OFF)
|
option(WHISPER_CUBLAS "whisper: support for cuBLAS" OFF)
|
||||||
option(WHISPER_CLBLAST "whisper: use CLBlast" OFF)
|
option(WHISPER_CLBLAST "whisper: use CLBlast" OFF)
|
||||||
endif()
|
endif()
|
||||||
@ -127,19 +129,32 @@ if (APPLE)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (WHISPER_OPENBLAS)
|
if (WHISPER_OPENBLAS)
|
||||||
find_library(OPENBLAS_LIB
|
set(WHISPER_BLAS_VENDOR "OpenBLAS")
|
||||||
NAMES openblas libopenblas
|
set(WHISPER_BLAS ON)
|
||||||
)
|
|
||||||
if (OPENBLAS_LIB)
|
|
||||||
message(STATUS "OpenBLAS found")
|
|
||||||
|
|
||||||
set(WHISPER_EXTRA_LIBS ${WHISPER_EXTRA_LIBS} ${OPENBLAS_LIB})
|
|
||||||
set(WHISPER_EXTRA_FLAGS ${WHISPER_EXTRA_FLAGS} -DGGML_USE_OPENBLAS)
|
|
||||||
else()
|
|
||||||
message(WARNING "OpenBLAS not found")
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (WHISPER_BLAS)
|
||||||
|
if (WHISPER_STATIC)
|
||||||
|
set(BLA_STATIC 1)
|
||||||
|
else()
|
||||||
|
set(BLA_STATIC 0)
|
||||||
|
endif ()
|
||||||
|
set(BLA_VENDOR ${WHISPER_BLAS_VENDOR})
|
||||||
|
set(BLA_SIZEOF_INTEGER 8)
|
||||||
|
find_package(BLAS)
|
||||||
|
|
||||||
|
if(BLAS_FOUND)
|
||||||
|
message(STATUS "BLAS compatible library found")
|
||||||
|
message(STATUS "Libraries ${BLAS_LIBRARIES}")
|
||||||
|
set(WHISPER_EXTRA_FLAGS ${WHISPER_EXTRA_FLAGS} -DGGML_USE_OPENBLAS)
|
||||||
|
|
||||||
|
include_directories(${BLAS_INCLUDE_DIRS})
|
||||||
|
set(WHISPER_EXTRA_LIBS ${WHISPER_EXTRA_LIBS} ${BLAS_LIBRARIES})
|
||||||
|
else()
|
||||||
|
message(WARNING "BLAS library was not found")
|
||||||
|
endif()
|
||||||
|
endif ()
|
||||||
|
|
||||||
if (WHISPER_CUBLAS)
|
if (WHISPER_CUBLAS)
|
||||||
cmake_minimum_required(VERSION 3.17)
|
cmake_minimum_required(VERSION 3.17)
|
||||||
|
|
||||||
@ -147,7 +162,7 @@ if (WHISPER_CUBLAS)
|
|||||||
|
|
||||||
if (CUDAToolkit_FOUND)
|
if (CUDAToolkit_FOUND)
|
||||||
message(STATUS "cuBLAS found")
|
message(STATUS "cuBLAS found")
|
||||||
|
set(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc)
|
||||||
enable_language(CUDA)
|
enable_language(CUDA)
|
||||||
|
|
||||||
set(GGML_CUDA_SOURCES ggml-cuda.cu ggml-cuda.h)
|
set(GGML_CUDA_SOURCES ggml-cuda.cu ggml-cuda.h)
|
||||||
|
5
contrib/debian/control
Normal file
5
contrib/debian/control
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Package: whisper-small-cpp
|
||||||
|
Architecture: amd64
|
||||||
|
Maintainer: Alexey Kharlamov <alexey@kharlamov.biz>
|
||||||
|
Description: Whisper Speech to Text Converter
|
||||||
|
Depends: libc6 (>= 2.2.1), intel-mkl
|
Reference in New Issue
Block a user