Skip to content

Commit d02f6bf

Browse files
committed
refactor: move backends into the backends directory
Signed-off-by: Ettore Di Giacinto <[email protected]>
1 parent 803a0ac commit d02f6bf

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

98 files changed

+47
-64
lines changed

.github/workflows/test.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ jobs:
7878
sudo apt-get install -y libopencv-dev && sudo ln -s /usr/include/opencv4/opencv2 /usr/include/opencv2
7979
8080
sudo rm -rfv /usr/bin/conda || true
81-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/huggingface
81+
PATH=$PATH:/opt/conda/bin make -C backend/python/huggingface
8282
8383
# Pre-build piper before we start tests in order to have shared libraries in place
8484
make go-piper && \

Dockerfile

+9-19
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ARG TARGETARCH
1212
ARG TARGETVARIANT
1313

1414
ENV BUILD_TYPE=${BUILD_TYPE}
15-
ENV EXTERNAL_GRPC_BACKENDS="huggingface-embeddings:/build/extra/grpc/huggingface/run.sh,autogptq:/build/extra/grpc/autogptq/run.sh,bark:/build/extra/grpc/bark/run.sh,diffusers:/build/extra/grpc/diffusers/run.sh,exllama:/build/extra/grpc/exllama/run.sh,vall-e-x:/build/extra/grpc/vall-e-x/run.sh,vllm:/build/extra/grpc/vllm/run.sh"
15+
ENV EXTERNAL_GRPC_BACKENDS="huggingface-embeddings:/build/backend/python/huggingface/run.sh,autogptq:/build/backend/python/autogptq/run.sh,bark:/build/backend/python/bark/run.sh,diffusers:/build/backend/python/diffusers/run.sh,exllama:/build/backend/python/exllama/run.sh,vall-e-x:/build/backend/python/vall-e-x/run.sh,vllm:/build/backend/python/vllm/run.sh"
1616
ENV GALLERIES='[{"name":"model-gallery", "url":"github:go-skynet/model-gallery/index.yaml"}, {"url": "github:go-skynet/model-gallery/huggingface.yaml","name":"huggingface"}]'
1717
ARG GO_TAGS="stablediffusion tts"
1818

@@ -64,20 +64,10 @@ RUN curl https://repo.anaconda.com/pkgs/misc/gpgkeys/anaconda.asc | gpg --dearmo
6464
apt-get update && \
6565
apt-get install -y conda
6666

67-
COPY extra/requirements.txt /build/extra/requirements.txt
6867
ENV PATH="/root/.cargo/bin:${PATH}"
6968
RUN pip install --upgrade pip
7069
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
71-
#RUN if [ "${TARGETARCH}" = "amd64" ]; then \
72-
# pip install git+https://github.com/suno-ai/bark.git diffusers invisible_watermark transformers accelerate safetensors;\
73-
# fi
74-
#RUN if [ "${BUILD_TYPE}" = "cublas" ] && [ "${TARGETARCH}" = "amd64" ]; then \
75-
# pip install torch vllm && pip install auto-gptq https://github.com/jllllll/exllama/releases/download/0.0.10/exllama-0.0.10+cu${CUDA_MAJOR_VERSION}${CUDA_MINOR_VERSION}-cp39-cp39-linux_x86_64.whl;\
76-
# fi
77-
#RUN pip install -r /build/extra/requirements.txt && rm -rf /build/extra/requirements.txt
7870

79-
# Vall-e-X
80-
RUN git clone https://github.com/Plachtaa/VALL-E-X.git /usr/lib/vall-e-x && cd /usr/lib/vall-e-x && pip install -r requirements.txt
8171

8272
# \
8373
# ; fi
@@ -162,25 +152,25 @@ COPY --from=builder /build/backend-assets/grpc/stablediffusion ./backend-assets/
162152

163153
## Duplicated from Makefile to avoid having a big layer that's hard to push
164154
RUN if [ "${IMAGE_TYPE}" = "extras" ]; then \
165-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/autogptq \
155+
PATH=$PATH:/opt/conda/bin make -C backend/python/autogptq \
166156
; fi
167157
RUN if [ "${IMAGE_TYPE}" = "extras" ]; then \
168-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/bark \
158+
PATH=$PATH:/opt/conda/bin make -C backend/python/bark \
169159
; fi
170160
RUN if [ "${IMAGE_TYPE}" = "extras" ]; then \
171-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/diffusers \
161+
PATH=$PATH:/opt/conda/bin make -C backend/python/diffusers \
172162
; fi
173163
RUN if [ "${IMAGE_TYPE}" = "extras" ]; then \
174-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/vllm \
164+
PATH=$PATH:/opt/conda/bin make -C backend/python/vllm \
175165
; fi
176166
RUN if [ "${IMAGE_TYPE}" = "extras" ]; then \
177-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/huggingface \
167+
PATH=$PATH:/opt/conda/bin make -C backend/python/huggingface \
178168
; fi
179169
RUN if [ "${IMAGE_TYPE}" = "extras" ]; then \
180-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/vall-e-x \
170+
PATH=$PATH:/opt/conda/bin make -C backend/python/vall-e-x \
181171
; fi
182172
RUN if [ "${IMAGE_TYPE}" = "extras" ]; then \
183-
PATH=$PATH:/opt/conda/bin make -C extra/grpc/exllama \
173+
PATH=$PATH:/opt/conda/bin make -C backend/python/exllama \
184174
; fi
185175

186176
# Copy VALLE-X as it's not a real "lib"
@@ -190,7 +180,7 @@ RUN if [ -d /usr/lib/vall-e-x ]; then \
190180

191181
# we also copy exllama libs over to resolve exllama import error
192182
RUN if [ -d /usr/local/lib/python3.9/dist-packages/exllama ]; then \
193-
cp -rfv /usr/local/lib/python3.9/dist-packages/exllama extra/grpc/exllama/;\
183+
cp -rfv /usr/local/lib/python3.9/dist-packages/exllama backend/python/exllama/;\
194184
fi
195185

196186
# Define the health check command

Makefile

+16-16
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,7 @@ test: prepare test-models/testmodel grpcs
306306
@echo 'Running tests'
307307
export GO_TAGS="tts stablediffusion"
308308
$(MAKE) prepare-test
309-
HUGGINGFACE_GRPC=$(abspath ./)/extra/grpc/huggingface/run.sh TEST_DIR=$(abspath ./)/test-dir/ FIXTURES=$(abspath ./)/tests/fixtures CONFIG_FILE=$(abspath ./)/test-models/config.yaml MODELS_PATH=$(abspath ./)/test-models \
309+
HUGGINGFACE_GRPC=$(abspath ./)/backend/python/huggingface/run.sh TEST_DIR=$(abspath ./)/test-dir/ FIXTURES=$(abspath ./)/tests/fixtures CONFIG_FILE=$(abspath ./)/test-models/config.yaml MODELS_PATH=$(abspath ./)/test-models \
310310
$(GOCMD) run github.com/onsi/ginkgo/v2/ginkgo --label-filter="!gpt4all && !llama && !llama-gguf" --flake-attempts 5 --fail-fast -v -r ./api ./pkg
311311
$(MAKE) test-gpt4all
312312
$(MAKE) test-llama
@@ -374,27 +374,27 @@ protogen: protogen-go protogen-python
374374

375375
protogen-go:
376376
protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative \
377-
pkg/grpc/proto/backend.proto
377+
backend/backend.proto
378378

379379
protogen-python:
380-
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=extra/grpc/huggingface/ --grpc_python_out=extra/grpc/huggingface/ pkg/grpc/proto/backend.proto
381-
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=extra/grpc/autogptq/ --grpc_python_out=extra/grpc/autogptq/ pkg/grpc/proto/backend.proto
382-
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=extra/grpc/exllama/ --grpc_python_out=extra/grpc/exllama/ pkg/grpc/proto/backend.proto
383-
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=extra/grpc/bark/ --grpc_python_out=extra/grpc/bark/ pkg/grpc/proto/backend.proto
384-
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=extra/grpc/diffusers/ --grpc_python_out=extra/grpc/diffusers/ pkg/grpc/proto/backend.proto
385-
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=extra/grpc/vall-e-x/ --grpc_python_out=extra/grpc/vall-e-x/ pkg/grpc/proto/backend.proto
386-
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=extra/grpc/vllm/ --grpc_python_out=extra/grpc/vllm/ pkg/grpc/proto/backend.proto
380+
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=backend/python/huggingface/ --grpc_python_out=backend/python/huggingface/ backend/backend.proto
381+
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=backend/python/autogptq/ --grpc_python_out=backend/python/autogptq/ backend/backend.proto
382+
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=backend/python/exllama/ --grpc_python_out=backend/python/exllama/ backend/backend.proto
383+
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=backend/python/bark/ --grpc_python_out=backend/python/bark/ backend/backend.proto
384+
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=backend/python/diffusers/ --grpc_python_out=backend/python/diffusers/ backend/backend.proto
385+
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=backend/python/vall-e-x/ --grpc_python_out=backend/python/vall-e-x/ backend/backend.proto
386+
python3 -m grpc_tools.protoc -Ipkg/grpc/proto/ --python_out=backend/python/vllm/ --grpc_python_out=backend/python/vllm/ backend/backend.proto
387387

388388
## GRPC
389389
# Note: it is duplicated in the Dockerfile
390390
prepare-extra-conda-environments:
391-
$(MAKE) -C extra/grpc/autogptq
392-
$(MAKE) -C extra/grpc/bark
393-
$(MAKE) -C extra/grpc/diffusers
394-
$(MAKE) -C extra/grpc/vllm
395-
$(MAKE) -C extra/grpc/huggingface
396-
$(MAKE) -C extra/grpc/vall-e-x
397-
$(MAKE) -C extra/grpc/exllama
391+
$(MAKE) -C backend/python/autogptq
392+
$(MAKE) -C backend/python/bark
393+
$(MAKE) -C backend/python/diffusers
394+
$(MAKE) -C backend/python/vllm
395+
$(MAKE) -C backend/python/huggingface
396+
$(MAKE) -C backend/python/vall-e-x
397+
$(MAKE) -C backend/python/exllama
398398

399399

400400
backend-assets/grpc:
File renamed without changes.

backend/cpp/llama/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ include_directories(${Protobuf_INCLUDE_DIRS})
3636
message(STATUS "Using protobuf version ${Protobuf_VERSION} | Protobuf_INCLUDE_DIRS: ${Protobuf_INCLUDE_DIRS} | CMAKE_CURRENT_BINARY_DIR: ${CMAKE_CURRENT_BINARY_DIR}")
3737

3838
# Proto file
39-
get_filename_component(hw_proto "../../../../../../pkg/grpc/proto/backend.proto" ABSOLUTE)
39+
get_filename_component(hw_proto "../../../../../../backend/backend.proto" ABSOLUTE)
4040
get_filename_component(hw_proto_path "${hw_proto}" PATH)
4141

4242
# Generated sources
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

cmd/grpc/bert-embeddings/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
bert "github.com/go-skynet/LocalAI/pkg/backend/llm/bert"
8+
bert "github.com/go-skynet/LocalAI/backend/go/llm/bert"
99
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1010
)
1111

cmd/grpc/dolly/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/falcon-ggml/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/gpt2/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/gpt4all/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
gpt4all "github.com/go-skynet/LocalAI/pkg/backend/llm/gpt4all"
8+
gpt4all "github.com/go-skynet/LocalAI/backend/go/llm/gpt4all"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/gptj/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/gptneox/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/langchain-huggingface/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
langchain "github.com/go-skynet/LocalAI/pkg/backend/llm/langchain"
8+
langchain "github.com/go-skynet/LocalAI/backend/go/llm/langchain"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/llama-stable/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package main
33
import (
44
"flag"
55

6-
llama "github.com/go-skynet/LocalAI/pkg/backend/llm/llama-stable"
6+
llama "github.com/go-skynet/LocalAI/backend/go/llm/llama-stable"
77

88
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
99
)

cmd/grpc/llama/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ package main
77
import (
88
"flag"
99

10-
llama "github.com/go-skynet/LocalAI/pkg/backend/llm/llama"
10+
llama "github.com/go-skynet/LocalAI/backend/go/llm/llama"
1111

1212
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1313
)

cmd/grpc/mpt/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/piper/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
tts "github.com/go-skynet/LocalAI/pkg/backend/tts"
8+
tts "github.com/go-skynet/LocalAI/backend/go/tts"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/replit/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/rwkv/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
rwkv "github.com/go-skynet/LocalAI/pkg/backend/llm/rwkv"
8+
rwkv "github.com/go-skynet/LocalAI/backend/go/llm/rwkv"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/stablediffusion/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
image "github.com/go-skynet/LocalAI/pkg/backend/image"
8+
image "github.com/go-skynet/LocalAI/backend/go/image"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/starcoder/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transformers "github.com/go-skynet/LocalAI/pkg/backend/llm/transformers"
8+
transformers "github.com/go-skynet/LocalAI/backend/go/llm/transformers"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

cmd/grpc/whisper/main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ package main
55
import (
66
"flag"
77

8-
transcribe "github.com/go-skynet/LocalAI/pkg/backend/transcribe"
8+
transcribe "github.com/go-skynet/LocalAI/backend/go/transcribe"
99

1010
grpc "github.com/go-skynet/LocalAI/pkg/grpc"
1111
)

extra/requirements.txt

-7
This file was deleted.

pkg/grpc/proto/backend.pb.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/grpc/proto/backend_grpc.pb.go

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)