From f728fea4897283a798f4fc6d3e6fbf3296c61169 Mon Sep 17 00:00:00 2001 From: Yiorgis Gozadinos Date: Tue, 18 Nov 2025 12:33:52 +0200 Subject: [PATCH] Stop building full docker image --- .github/workflows/docker-publish.yml | 57 ---------------------------- CHANGELOG.md | 3 ++ docker/README.md | 24 ++++++------ docs/configuration.md | 6 +-- docs/installation.md | 22 ++++++----- 5 files changed, 31 insertions(+), 81 deletions(-) delete mode 100644 .github/workflows/docker-publish.yml diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml deleted file mode 100644 index 4568dcc3..00000000 --- a/.github/workflows/docker-publish.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: Build & publish Docker image -on: - workflow_run: - workflows: ["Build & publish haiku.rag to pypi"] - types: - - completed - workflow_dispatch: - -jobs: - docker: - runs-on: ubuntu-latest - if: ${{ github.event.workflow_run.conclusion == 'success' || github.event_name == 'workflow_dispatch' }} - permissions: - contents: read - packages: write - steps: - - name: Free disk space - uses: jlumbroso/free-disk-space@main - with: - tool-cache: false - android: true - dotnet: true - haskell: true - large-packages: true - docker-images: true - swap-storage: true - - - uses: actions/checkout@v4 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Log in to GitHub Container Registry - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - - name: Extract version from pyproject.toml - id: version - run: | - VERSION=$(grep -oP '^version = "\K[^"]+' haiku_rag_slim/pyproject.toml) - echo "version=$VERSION" >> $GITHUB_OUTPUT - - - name: Build and push Docker image - uses: docker/build-push-action@v6 - with: - context: . - file: docker/Dockerfile - platforms: linux/amd64,linux/arm64 - push: true - tags: | - ghcr.io/${{ github.repository }}:${{ steps.version.outputs.version }} - ghcr.io/${{ github.repository }}:latest - cache-from: type=gha - cache-to: type=gha,mode=max diff --git a/CHANGELOG.md b/CHANGELOG.md index 2281297f..6a19b905 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,10 @@ # Changelog ## [Unreleased] +### Changed + - Increase reranking candidate retrieval multiplier from 3x to 10x for improved result quality +- **Docker Images**: Main `haiku.rag` image no longer automatically built and published ## [0.17.0] - 2025-11-17 diff --git a/docker/README.md b/docker/README.md index 22d457c5..ff7a63d7 100644 --- a/docker/README.md +++ b/docker/README.md @@ -1,13 +1,21 @@ # haiku.rag Docker Image -Pre-built images are available at `ghcr.io/ggozad/haiku.rag` with all extras (voyageai, mxbai). +The full haiku.rag Docker image includes all features and extras (docling, voyageai, mxbai). You can build it locally using the provided Dockerfile. -## Using Pre-built Image +## Building the Image + +Build the full image with all features: ```bash -docker pull ghcr.io/ggozad/haiku.rag:latest +docker build -f docker/Dockerfile -t haiku-rag . ``` +This creates an image with: +- All document processing capabilities (Docling) +- VoyageAI embeddings +- MixedBread AI reranking +- Full feature set + ## Configuration Create a configuration file `haiku.rag.yaml`: @@ -36,7 +44,7 @@ Mount your config file and data directory: docker run -p 8001:8001 \ -v $(pwd)/haiku.rag.yaml:/app/haiku.rag.yaml \ -v $(pwd)/data:/data \ - ghcr.io/ggozad/haiku.rag:latest + haiku-rag ``` The container will automatically use the mounted `haiku.rag.yaml` configuration file. @@ -48,13 +56,7 @@ docker run -p 8001:8001 \ -v $(pwd)/haiku.rag.yaml:/app/haiku.rag.yaml \ -v $(pwd)/data:/data \ -e OPENAI_API_KEY=your-key-here \ - ghcr.io/ggozad/haiku.rag:latest -``` - -## Building Locally - -```bash -docker build -f docker/Dockerfile -t haiku-rag . + haiku-rag ``` ## Docker Compose diff --git a/docs/configuration.md b/docs/configuration.md index 70291d6f..31952632 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -95,15 +95,15 @@ agui: cors_headers: ["*"] processing: - chunk_size: 256 - context_chunk_radius: 0 - markdown_preprocessor: "" converter: docling-local # docling-local or docling-serve chunker: docling-local # docling-local or docling-serve chunker_type: hybrid # hybrid or hierarchical + chunk_size: 256 + context_chunk_radius: 0 chunking_tokenizer: "Qwen/Qwen3-Embedding-0.6B" chunking_merge_peers: true chunking_use_markdown_tables: false + markdown_preprocessor: "" providers: ollama: diff --git a/docs/installation.md b/docs/installation.md index a6b2acb3..3cebe5c6 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -77,21 +77,23 @@ See [Remote processing](remote-processing.md) for setup instructions and [Docume Two Docker images are available: -### Full Image (Self-contained) - -Includes all features and document processing built-in: - -```bash -docker pull ghcr.io/ggozad/haiku.rag:latest -docker run -p 8001:8001 -v $(pwd)/data:/data ghcr.io/ggozad/haiku.rag:latest -``` - ### Slim Image (Minimal) -Minimal dependencies - use with external docling-serve for document processing: +Pre-built slim image with minimal dependencies - use with external docling-serve for document processing: ```bash docker pull ghcr.io/ggozad/haiku.rag-slim:latest ``` See `examples/docker/docker-compose.yml` for a complete setup with docling-serve. + +### Full Image (Self-contained) + +Build locally to include all features and document processing without docling-serve: + +```bash +docker build -f docker/Dockerfile -t haiku-rag . +docker run -p 8001:8001 -v $(pwd)/data:/data haiku-rag +``` + +See `docker/README.md` for complete build and configuration instructions.