File tree Expand file tree Collapse file tree 4 files changed +15
-11
lines changed Expand file tree Collapse file tree 4 files changed +15
-11
lines changed Original file line number Diff line number Diff line change @@ -60,6 +60,7 @@ docker: docker-dep submodule
60
60
--build-arg OS=${OS} \
61
61
--build-arg SOURCE=${BUILD_MODULE} \
62
62
--build-arg VERSION=${VERSION} \
63
+ --build-arg GGML_CUDA=${GGML_CUDA} \
63
64
-f etc/Dockerfile .
64
65
65
66
# Test whisper bindings
@@ -123,7 +124,7 @@ mkdir:
123
124
# go mod tidy
124
125
go-tidy : go-dep
125
126
@echo Tidy
126
- @go mod tidy
127
+ @${GO} mod tidy
127
128
128
129
# Clean
129
130
clean : submodule-clean go-tidy
Original file line number Diff line number Diff line change @@ -72,14 +72,15 @@ There's more information on the API [here](doc/API.md).
72
72
If you are building a docker image, you just need make and docker installed:
73
73
74
74
* ` DOCKER_REGISTRY=docker.io/user make docker ` - builds a docker container with the
75
- server binary, tagged to a specific registry
75
+ server binary for CUDA, tagged to a specific registry
76
+ * ` OS=linux GGML_CUDA=0 DOCKER_REGISTRY=docker.io/user make docker ` - builds a docker container
77
+ for Linux, with the server binary without CUDA, tagged to a specific registry
76
78
77
- If you want to build the server yourself for your specific combination of hardware (for example,
78
- on MacOS), you can use the ` Makefile ` in the root directory and have the following dependencies
79
- met:
79
+ If you want to build the server without docker, you can use the ` Makefile ` in the root
80
+ directory and have the following dependencies met:
80
81
81
- * Go 1.22
82
- * C++ compiler
82
+ * Recent version of Go (ie, 1.22+)
83
+ * C++ compiler and cmake
83
84
* FFmpeg 6.1 libraries (see [ here] ( doc/build.md ) for more information)
84
85
* For CUDA, you'll need the CUDA toolkit installed including the ` nvcc ` compiler
85
86
Original file line number Diff line number Diff line change @@ -2,19 +2,21 @@ ARG BASE_TAG=1.0.2
2
2
ARG BASE_DEV_CONTAINER=ghcr.io/mutablelogic/cuda-dev:${BASE_TAG}
3
3
ARG BASE_RUN_CONTAINER=ghcr.io/mutablelogic/cuda-rt:${BASE_TAG}
4
4
ARG CUDA_DOCKER_ARCH=all
5
- ARG GO_VERSION=1.22.5
5
+ ARG GGML_CUDA=1
6
+ ARG GO_VERSION=1.24.3
6
7
ARG ARCH
7
8
ARG OS
8
9
9
10
# Setup build container
10
11
FROM ${BASE_DEV_CONTAINER} AS build
11
12
ARG CUDA_DOCKER_ARCH
13
+ ARG GGML_CUDA
12
14
ARG GO_VERSION
13
15
ARG ARCH
14
16
ARG OS
15
17
16
18
RUN apt-get -y update \
17
- && apt-get -y install software-properties-common curl libgomp1 \
19
+ && apt-get -y install software-properties-common cmake curl libgomp1 \
18
20
&& add-apt-repository -y ppa:ubuntuhandbook1/ffmpeg6 \
19
21
&& apt-get -y update \
20
22
&& apt-get -y install libavformat-dev libavcodec-dev libavdevice-dev libavfilter-dev libavutil-dev libswscale-dev libswresample-dev
@@ -29,7 +31,7 @@ COPY . .
29
31
30
32
# Make whisper-server
31
33
ENV CUDA_DOCKER_ARCH=${CUDA_DOCKER_ARCH}
32
- ENV GGML_CUDA=1
34
+ ENV GGML_CUDA=${GGML_CUDA}
33
35
RUN make -j$(nproc)
34
36
35
37
# Setup runtime container
You can’t perform that action at this time.
0 commit comments