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/
|
||||
.vs/
|
||||
.vscode/
|
||||
.idea/
|
||||
.DS_Store
|
||||
|
||||
build/
|
||||
@ -16,6 +17,7 @@ build-cublas/
|
||||
build-no-accel/
|
||||
build-sanitize-addr/
|
||||
build-sanitize-thread/
|
||||
cmake-build-debug/
|
||||
|
||||
/main
|
||||
/stream
|
||||
|
@ -59,7 +59,9 @@ if (APPLE)
|
||||
option(WHISPER_COREML "whisper: enable Core ML framework" OFF)
|
||||
option(WHISPER_COREML_ALLOW_FALLBACK "whisper: allow non-CoreML fallback" OFF)
|
||||
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_CLBLAST "whisper: use CLBlast" OFF)
|
||||
endif()
|
||||
@ -127,19 +129,32 @@ if (APPLE)
|
||||
endif()
|
||||
|
||||
if (WHISPER_OPENBLAS)
|
||||
find_library(OPENBLAS_LIB
|
||||
NAMES openblas libopenblas
|
||||
)
|
||||
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()
|
||||
set(WHISPER_BLAS_VENDOR "OpenBLAS")
|
||||
set(WHISPER_BLAS ON)
|
||||
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)
|
||||
cmake_minimum_required(VERSION 3.17)
|
||||
|
||||
@ -147,7 +162,7 @@ if (WHISPER_CUBLAS)
|
||||
|
||||
if (CUDAToolkit_FOUND)
|
||||
message(STATUS "cuBLAS found")
|
||||
|
||||
set(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc)
|
||||
enable_language(CUDA)
|
||||
|
||||
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