diff --git a/.github/workflows/backend.yml b/.github/workflows/backend.yml index 4e7252c6c..66b1c683b 100644 --- a/.github/workflows/backend.yml +++ b/.github/workflows/backend.yml @@ -1452,10 +1452,10 @@ jobs: quayUsername: ${{ secrets.LOCALAI_REGISTRY_USERNAME }} quayPassword: ${{ secrets.LOCALAI_REGISTRY_PASSWORD }} llama-cpp-darwin: - runs-on: macOS-14 + runs-on: macos-latest strategy: matrix: - go-version: ['1.21.x'] + go-version: ['1.25.x'] steps: - name: Clone uses: actions/checkout@v6 @@ -1537,91 +1537,3 @@ jobs: for tag in $(echo "${{ steps.quaymeta.outputs.tags }}" | tr ',' '\n'); do crane push llama-cpp.tar $tag done - llama-cpp-darwin-x86: - runs-on: macos-13 - strategy: - matrix: - go-version: ['1.21.x'] - steps: - - name: Clone - uses: actions/checkout@v6 - with: - submodules: true - - name: Setup Go ${{ matrix.go-version }} - uses: actions/setup-go@v5 - with: - go-version: ${{ matrix.go-version }} - cache: false - # You can test your matrix by printing the current Go version - - name: Display Go version - run: go version - - name: Dependencies - run: | - brew install protobuf grpc make protoc-gen-go protoc-gen-go-grpc libomp llvm - - name: Build llama-cpp-darwin - run: | - make protogen-go - make build - export PLATFORMARCH=darwin/amd64 - make backends/llama-cpp-darwin - - name: Upload llama-cpp.tar - uses: actions/upload-artifact@v6 - with: - name: llama-cpp-tar-x86 - path: backend-images/llama-cpp.tar - llama-cpp-darwin-x86-publish: - if: github.event_name != 'pull_request' - needs: llama-cpp-darwin-x86 - runs-on: ubuntu-latest - steps: - - name: Download llama-cpp.tar - uses: actions/download-artifact@v7 - with: - name: llama-cpp-tar-x86 - path: . - - name: Install crane - run: | - curl -L https://github.com/google/go-containerregistry/releases/latest/download/go-containerregistry_Linux_x86_64.tar.gz | tar -xz - sudo mv crane /usr/local/bin/ - - name: Log in to DockerHub - run: | - echo "${{ secrets.DOCKERHUB_PASSWORD }}" | crane auth login docker.io -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin - - name: Log in to quay.io - run: | - echo "${{ secrets.LOCALAI_REGISTRY_PASSWORD }}" | crane auth login quay.io -u "${{ secrets.LOCALAI_REGISTRY_USERNAME }}" --password-stdin - - name: Docker meta - id: meta - uses: docker/metadata-action@v5 - with: - images: | - localai/localai-backends - tags: | - type=ref,event=branch - type=semver,pattern={{raw}} - type=sha - flavor: | - latest=auto - suffix=-darwin-x86-llama-cpp,onlatest=true - - name: Docker meta - id: quaymeta - uses: docker/metadata-action@v5 - with: - images: | - quay.io/go-skynet/local-ai-backends - tags: | - type=ref,event=branch - type=semver,pattern={{raw}} - type=sha - flavor: | - latest=auto - suffix=-darwin-x86-llama-cpp,onlatest=true - - name: Push Docker image (DockerHub) - run: | - for tag in $(echo "${{ steps.meta.outputs.tags }}" | tr ',' '\n'); do - crane push llama-cpp.tar $tag - done - - name: Push Docker image (Quay) - run: | - for tag in $(echo "${{ steps.quaymeta.outputs.tags }}" | tr ',' '\n'); do - crane push llama-cpp.tar $tag - done diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 42ce16ed2..5efdd28ef 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -190,7 +190,7 @@ jobs: limit-access-to-actor: true tests-apple: - runs-on: macOS-14 + runs-on: macos-latest strategy: matrix: go-version: ['1.25.x'] diff --git a/.goreleaser.yaml b/.goreleaser.yaml index b2e101f61..5c5bf9987 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -22,6 +22,9 @@ builds: goarch: - amd64 - arm64 + ignore: + - goos: darwin + goarch: amd64 archives: - formats: [ 'binary' ] # this removes the tar of the archives, leaving the binaries alone name_template: local-ai-{{ .Tag }}-{{ .Os }}-{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }} diff --git a/backend/index.yaml b/backend/index.yaml index 8b7219c18..a383a15fd 100644 --- a/backend/index.yaml +++ b/backend/index.yaml @@ -25,7 +25,6 @@ metal: "metal-llama-cpp" vulkan: "vulkan-llama-cpp" nvidia-l4t: "nvidia-l4t-arm64-llama-cpp" - darwin-x86: "darwin-x86-llama-cpp" nvidia-cuda-13: "cuda13-llama-cpp" nvidia-cuda-12: "cuda12-llama-cpp" nvidia-l4t-cuda-12: "nvidia-l4t-arm64-llama-cpp" @@ -85,7 +84,6 @@ nvidia-cuda-12: "cuda12-stablediffusion-ggml" nvidia-l4t-cuda-12: "nvidia-l4t-arm64-stablediffusion-ggml" nvidia-l4t-cuda-13: "cuda13-nvidia-l4t-arm64-stablediffusion-ggml" - # darwin-x86: "darwin-x86-stablediffusion-ggml" - &rfdetr name: "rfdetr" alias: "rfdetr" @@ -606,16 +604,6 @@ mirrors: - localai/localai-backends:master-piper ## llama-cpp -- !!merge <<: *llamacpp - name: "darwin-x86-llama-cpp" - uri: "quay.io/go-skynet/local-ai-backends:latest-darwin-x86-llama-cpp" - mirrors: - - localai/localai-backends:latest-darwin-x86-llama-cpp -- !!merge <<: *llamacpp - name: "darwin-x86-llama-cpp-development" - uri: "quay.io/go-skynet/local-ai-backends:master-darwin-x86-llama-cpp" - mirrors: - - localai/localai-backends:master-darwin-x86-llama-cpp - !!merge <<: *llamacpp name: "nvidia-l4t-arm64-llama-cpp" uri: "quay.io/go-skynet/local-ai-backends:latest-nvidia-l4t-arm64-llama-cpp" diff --git a/go.mod b/go.mod index 63fa809d8..2071c7f70 100644 --- a/go.mod +++ b/go.mod @@ -10,6 +10,7 @@ require ( github.com/Masterminds/sprig/v3 v3.3.0 github.com/alecthomas/kong v1.13.0 github.com/charmbracelet/glamour v0.10.0 + github.com/cloudfoundry/gosigar v1.3.112 github.com/containerd/containerd v1.7.29 github.com/ebitengine/purego v0.9.1 github.com/fsnotify/fsnotify v1.9.0 @@ -56,18 +57,17 @@ require ( go.opentelemetry.io/otel/metric v1.39.0 go.opentelemetry.io/otel/sdk/metric v1.39.0 google.golang.org/grpc v1.77.0 + google.golang.org/protobuf v1.36.10 gopkg.in/yaml.v2 v2.4.0 gopkg.in/yaml.v3 v3.0.1 oras.land/oras-go/v2 v2.6.0 ) require ( - github.com/cloudfoundry/gosigar v1.3.112 // indirect github.com/ghodss/yaml v1.0.0 // indirect github.com/labstack/gommon v0.4.2 // indirect github.com/swaggo/files/v2 v2.0.2 // indirect github.com/valyala/fasttemplate v1.2.2 // indirect - google.golang.org/protobuf v1.36.10 // indirect ) require ( diff --git a/go.sum b/go.sum index 5fe1d6061..225a6dffd 100644 --- a/go.sum +++ b/go.sum @@ -275,8 +275,6 @@ github.com/google/jsonschema-go v0.3.0 h1:6AH2TxVNtk3IlvkkhjrtbUc4S8AvO0Xii0DxIy github.com/google/jsonschema-go v0.3.0/go.mod h1:r5quNTdLOYEz95Ru18zA0ydNbBuYoo9tgaYcxEYhJVE= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= -github.com/google/pprof v0.0.0-20250403155104-27863c87afa6 h1:BHT72Gu3keYf3ZEu2J0b1vyeLSOYI8bm5wbJM/8yDe8= -github.com/google/pprof v0.0.0-20250403155104-27863c87afa6/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA= github.com/google/pprof v0.0.0-20250630185457-6e76a2b096b5 h1:xhMrHhTJ6zxu3gA4enFM9MLn9AY7613teCdFnlUVbSQ= github.com/google/pprof v0.0.0-20250630185457-6e76a2b096b5/go.mod h1:5hDyRhoBCxViHszMt12TnOpEI4VVi+U8Gm9iphldiMA= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=