Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
123 commits
Select commit Hold shift + click to select a range
b9d32db
Added references section to weavloader's README
FranciscoLozCoding Dec 10, 2025
3495cc0
Add abstract benchmarking framework
FranciscoLozCoding Dec 10, 2025
52db292
Add Weaviate and Triton adapters for benchmarking framework
FranciscoLozCoding Dec 10, 2025
854d991
Add Dockerfile and Makefile templates along with documentation for be…
FranciscoLozCoding Dec 10, 2025
5058890
Added a template to help with adding benchmarks
FranciscoLozCoding Dec 10, 2025
edd66c0
ported existing INQUIRE benchmark code to use new framework
FranciscoLozCoding Dec 10, 2025
0519d63
create NRP k8s deployment files
FranciscoLozCoding Dec 10, 2025
2aecc79
removed files I dont need anymore
FranciscoLozCoding Dec 10, 2025
fe541f9
added benchmarking README
FranciscoLozCoding Dec 10, 2025
b4b26ed
Add GitHub Actions workflow for building and pushing benchmark images
FranciscoLozCoding Dec 10, 2025
ed6ba5b
renamed inquire_weav back to inquire
FranciscoLozCoding Dec 10, 2025
35beb04
Refactor benchmarking framework to use imsearch_eval package; removed…
FranciscoLozCoding Dec 12, 2025
fa46803
Update Kubernetes base configurations to support vector database and …
FranciscoLozCoding Dec 12, 2025
3bef1d8
Refactor load_data function to simplify batch processing by removing …
FranciscoLozCoding Dec 12, 2025
d872341
removed readme type file
FranciscoLozCoding Dec 12, 2025
2fca6b5
moved structure docs to readme
FranciscoLozCoding Dec 12, 2025
9c3ef45
deleted structure.md
FranciscoLozCoding Dec 12, 2025
52d3729
Update image paths in workflows and Makefiles to use new registry for…
FranciscoLozCoding Dec 15, 2025
ce0d645
Test nrp gitlab ci/cd
iperezx Dec 11, 2025
61c56e3
Update triton github workflow
iperezx Dec 11, 2025
2b74bb0
change weavloader paths in GitHub workflow to use new directory struc…
FranciscoLozCoding Dec 15, 2025
cf64df5
switched to a deploy token
FranciscoLozCoding Dec 15, 2025
4036683
Updated GitHub workflow to use deploy token username for Docker login
FranciscoLozCoding Dec 15, 2025
f0c7637
update gradio workflow to work with new repo structure
FranciscoLozCoding Dec 15, 2025
52bd96d
added the new token in gradio workflow
FranciscoLozCoding Dec 15, 2025
5cb7500
updated triton workflow to work with new repo structure
FranciscoLozCoding Dec 15, 2025
f8894f6
updated weavmanage workflow to work with new repo structure
FranciscoLozCoding Dec 15, 2025
7c7d624
Enhance Triton workflow and Dockerfile for improved efficiency and cl…
FranciscoLozCoding Dec 15, 2025
988fa0f
revert back
FranciscoLozCoding Dec 15, 2025
954953f
Add disk space cleanup step to Triton workflow
FranciscoLozCoding Dec 15, 2025
c308479
Update benchmarking workflow to use deploy token for Docker login
FranciscoLozCoding Dec 15, 2025
56c3410
Refactor benchmarking workflow to use lowercase benchmark names for D…
FranciscoLozCoding Dec 15, 2025
75d2043
Add git installation to Dockerfiles for benchmarking environments
FranciscoLozCoding Dec 15, 2025
920302e
Update benchmark documentation
FranciscoLozCoding Dec 16, 2025
44e9646
added another benchmark we can use
FranciscoLozCoding Dec 16, 2025
8d5814c
Update Readme.md to correct directory link for Kubernetes deployment …
FranciscoLozCoding Dec 16, 2025
300e2bd
Update Readme and Kubernetes configurations to use new Sage credentia…
FranciscoLozCoding Dec 16, 2025
9f4b00a
update benchmarking notes
FranciscoLozCoding Dec 17, 2025
4bb839a
change to latest
FranciscoLozCoding Dec 17, 2025
0509917
use nautilus context
FranciscoLozCoding Jan 6, 2026
00f8df5
dont need gpus for benchmarks
FranciscoLozCoding Jan 6, 2026
f079221
update the deployment files to default to dev and optionally deploy t…
FranciscoLozCoding Jan 6, 2026
9451f29
removed old docs
FranciscoLozCoding Jan 6, 2026
ac95888
simplified deployment
FranciscoLozCoding Jan 6, 2026
dedbd3c
Merge branch 'main' into benchmarking
FranciscoLozCoding Jan 6, 2026
d96994a
Update INQUIRE benchmark requirements to use imsearch_eval version 0.1.1
FranciscoLozCoding Jan 6, 2026
36c489a
Refactor INQUIRE data loader to utilize INQUIREConfig for configurati…
FranciscoLozCoding Jan 6, 2026
8e2e31c
added todos
FranciscoLozCoding Jan 6, 2026
dac1ece
Remove unused import of INQUIREConfig from data_loader.py
FranciscoLozCoding Jan 6, 2026
e61c6dc
upped version
FranciscoLozCoding Jan 7, 2026
6db980f
Add procps package to Dockerfiles for benchmarking environments
FranciscoLozCoding Jan 7, 2026
1dbbb7b
Remove hf_pvc.yaml from the Kubernetes benchmarking configuration and…
FranciscoLozCoding Jan 7, 2026
2c89595
remove step
FranciscoLozCoding Jan 7, 2026
f21e98f
Refactor INQUIRE data loader and main script to use environment varia…
FranciscoLozCoding Jan 8, 2026
5a02470
Update INQUIRE benchmark to implement BenchmarkDataset interface, rep…
FranciscoLozCoding Jan 8, 2026
22b2977
Update Kubernetes benchmark configurations to increase resource limit…
FranciscoLozCoding Jan 8, 2026
3d1d41e
Update INQUIRE benchmark requirements to use imsearch_eval version 0.1.6
FranciscoLozCoding Jan 8, 2026
5abb857
Update INQUIRE benchmark requirements to use imsearch_eval version 0.1.7
FranciscoLozCoding Jan 8, 2026
b18f919
Update INQUIRE benchmark requirements to switch imsearch_eval to the …
FranciscoLozCoding Jan 8, 2026
355f9b5
Refactor load_data function to simplify collection creation by direct…
FranciscoLozCoding Jan 8, 2026
34e6a6e
reference base for inquire deployment for prod env
FranciscoLozCoding Jan 9, 2026
15c5da5
Update Kubernetes Kustomization for MYBENCHMARK prod environment, add…
FranciscoLozCoding Jan 9, 2026
1e65338
Refactor Makefile to scale deployments for data loader and evaluator,…
FranciscoLozCoding Jan 9, 2026
c564941
Update INQUIRE benchmark requirements to include imsearch_eval for tr…
FranciscoLozCoding Jan 9, 2026
ab5c2d5
remove --ignore-not-found flag
FranciscoLozCoding Jan 9, 2026
b68d60d
refactored the code to run as k8s job and upload results to s3. Also …
FranciscoLozCoding Jan 12, 2026
92c72c5
Update benchmark command from `make run-job` to `make run` across doc…
FranciscoLozCoding Jan 12, 2026
32e53fb
Refactor INQUIRE benchmark dataset implementation to inherit from Hug…
FranciscoLozCoding Jan 12, 2026
709a1df
Remove unused import of ModelProvider in INQUIRE data loader
FranciscoLozCoding Jan 12, 2026
01c5ddd
fix: When iterating over a pandas DataFrame directly, you get column …
FranciscoLozCoding Jan 12, 2026
e9d3341
Enhance INQUIRE benchmark by adding dataset dependency and refactorin…
FranciscoLozCoding Jan 12, 2026
3f429a9
Update default WORKERS setting in INQUIRE configuration from 0 to 5 f…
FranciscoLozCoding Jan 12, 2026
683d90b
Update default WORKERS setting in INQUIRE configuration to 5 for enha…
FranciscoLozCoding Jan 12, 2026
bb1a5d0
Refactor INQUIRE benchmark to consistently use HuggingFace Dataset fo…
FranciscoLozCoding Jan 12, 2026
88e1969
Update logging configuration in INQUIRE benchmark scripts to use envi…
FranciscoLozCoding Jan 12, 2026
0974f19
Add LOG_LEVEL environment variable to INQUIRE benchmark configuration…
FranciscoLozCoding Jan 12, 2026
a391ca8
Enhance INQUIRE and template benchmark configurations by adding LOG_L…
FranciscoLozCoding Jan 12, 2026
b31ce43
had the vectordb close at the wrong spot
FranciscoLozCoding Jan 13, 2026
0daa495
Refactor INQUIRE configuration to improve organization and clarity by…
FranciscoLozCoding Jan 13, 2026
115154a
Refactor INQUIRE benchmark script to standardize configuration access…
FranciscoLozCoding Jan 13, 2026
6ce60b0
Update score_columns in INQUIRE benchmark
FranciscoLozCoding Jan 13, 2026
fc8da49
Refactor INQUIRE configuration attributes to use a consistent private…
FranciscoLozCoding Jan 13, 2026
fbedd68
Add CONFIG_VALUES_FILE environment variable to INQUIRE configuration
FranciscoLozCoding Jan 13, 2026
8d0d364
Add functionality to save and upload configuration values in INQUIRE …
FranciscoLozCoding Jan 13, 2026
9e2cbfb
remove unused config variable
FranciscoLozCoding Jan 13, 2026
dddc7b7
Add query_batch_size parameter to INQUIRE configuration and update ev…
FranciscoLozCoding Jan 13, 2026
2136ff2
Replace 'make deploy' with 'make run' for deploying and running bench…
FranciscoLozCoding Jan 13, 2026
06632a3
change the naming schema to match app
FranciscoLozCoding Jan 13, 2026
fedcd47
change the infra deployment of dev to match app
FranciscoLozCoding Jan 13, 2026
75ff0df
Update resource limits in benchmark-job.yaml to adhere to maximum all…
FranciscoLozCoding Jan 13, 2026
2364741
Remove INQUIRE-specific environment variables from Makefile, this is …
FranciscoLozCoding Jan 13, 2026
20bff5e
Update sample size and batch size parameters in INQUIRE configuration
FranciscoLozCoding Jan 13, 2026
2cbc2be
update batch sizes
FranciscoLozCoding Jan 13, 2026
deac632
removed variables that are already using default
FranciscoLozCoding Jan 13, 2026
565fecd
Enhance logs target in Makefile to check for running pods before fetc…
FranciscoLozCoding Jan 13, 2026
6cf8bf7
remove whitespace
FranciscoLozCoding Jan 13, 2026
33f58c4
update template and docs
FranciscoLozCoding Jan 13, 2026
666fda7
Add S3 secret template for benchmarking Kubernetes deployment
FranciscoLozCoding Jan 13, 2026
f5afbc5
Update .gitignore to ignore files that start with ._
FranciscoLozCoding Jan 13, 2026
6b4dc70
Add Hugging Face secret template for Kubernetes deployment
FranciscoLozCoding Jan 13, 2026
f197b21
Update kustomization.yaml to reference the S3 secret
FranciscoLozCoding Jan 13, 2026
16ac52f
Update kustomization.yaml to reference the renamed Hugging Face secre…
FranciscoLozCoding Jan 13, 2026
021246f
Add sage-user-secret template for Kubernetes deployment
FranciscoLozCoding Jan 13, 2026
3f2bb58
Update kustomization.yaml to reference the renamed sage-user-secret file
FranciscoLozCoding Jan 13, 2026
ab24194
Update README files to clarify S3 secret management and deployment in…
FranciscoLozCoding Jan 13, 2026
3620b75
Refactor data loading and evaluation in INQUIRE benchmark script to s…
FranciscoLozCoding Jan 20, 2026
74623ca
Enhance logging format in INQUIRE and template benchmark scripts to i…
FranciscoLozCoding Jan 26, 2026
d954f38
Update timestamp format in S3 key generation for INQUIRE and template…
FranciscoLozCoding Jan 26, 2026
171c137
add a temporary debug step
FranciscoLozCoding Jan 26, 2026
89e8c90
update debug msg
FranciscoLozCoding Jan 26, 2026
62204a6
Refactor debug statements in run_benchmark.py to use f-strings
FranciscoLozCoding Jan 26, 2026
2112150
Improve pod log retrieval in Makefile by checking for both Running an…
FranciscoLozCoding Jan 26, 2026
095c4a1
removed temp debug msg
FranciscoLozCoding Jan 26, 2026
3d5d7f7
use datasets verion from imsearch_eval[huggingface]
FranciscoLozCoding Jan 26, 2026
712a128
Add Hugging Face token support in INQUIRE and template configurations
FranciscoLozCoding Jan 26, 2026
fc7b2c2
renamed secret
FranciscoLozCoding Jan 26, 2026
316e447
update
FranciscoLozCoding Jan 30, 2026
2de8b8c
Update README.md to include information about existing benchmarks in …
FranciscoLozCoding Feb 3, 2026
224fdf3
Pin imsearch_eval dependencies to version 0.1.0 in requirements.txt f…
FranciscoLozCoding Feb 3, 2026
48da7c9
removed todos that have been completed
FranciscoLozCoding Feb 3, 2026
f7954d6
Remove imagePullPolicy TODO comment from benchmark-job.yaml
FranciscoLozCoding Feb 3, 2026
b9e7492
Update benchmark job image tag to 'latest' in kustomization.yaml
FranciscoLozCoding Feb 3, 2026
13b9b7a
update README files
FranciscoLozCoding Feb 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 117 additions & 0 deletions .github/workflows/benchmarking.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
name: Build/Push Benchmark Images
on:
push:
branches:
- main
tags:
- 'v*'
paths:
- 'benchmarking/benchmarks/**'
- '.github/workflows/benchmarking.yml'
pull_request:
branches:
- main
paths:
- 'benchmarking/benchmarks/**'
- '.github/workflows/benchmarking.yml'

jobs:
discover-benchmarks:
runs-on: ubuntu-latest
outputs:
benchmarks: ${{ steps.set-matrix.outputs.benchmarks }}
steps:
- uses: actions/checkout@v4

- name: Discover Benchmarks
id: set-matrix
run: |
# Find all benchmark directories, excluding template
BENCHMARKS=$(find benchmarking/benchmarks -mindepth 1 -maxdepth 1 -type d -not -name 'template' -not -name '.git' -exec basename {} \; | jq -R -s -c 'split("\n")[:-1]')
echo "benchmarks=$BENCHMARKS" >> $GITHUB_OUTPUT
echo "Found benchmarks: $BENCHMARKS"

build-push-benchmarks:
needs: discover-benchmarks
if: needs.discover-benchmarks.outputs.benchmarks != '[]'
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
benchmark: ${{ fromJson(needs.discover-benchmarks.outputs.benchmarks) }}
env:
REGISTRY_URL: ${{ secrets.NRP_GITLAB_REGISTRY_URL }}
IMAGE_PATH: /ndp/sage/nrp-image-search
BENCHMARK_NAME: ${{ matrix.benchmark }}
steps:
- uses: actions/checkout@v4

- name: Set Image Tag
run: |
if [[ "$GITHUB_REF" == refs/heads/* ]]; then
IMAGE_TAG="${GITHUB_REF#refs/heads/}"
elif [[ "$GITHUB_REF" == refs/tags/* ]]; then
IMAGE_TAG="${GITHUB_REF#refs/tags/}"
elif [[ "$GITHUB_REF" == refs/pull/* ]]; then
PR_NUMBER=$(echo "$GITHUB_REF" | cut -d'/' -f3)
IMAGE_TAG="pr-${PR_NUMBER}"
fi
IMAGE_TAG=$(echo "$IMAGE_TAG" | tr '/' '-')
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV

- name: Determine Dockerfile and Image Name
id: docker-config
run: |
BENCHMARK_DIR="benchmarking/benchmarks/${{ matrix.benchmark }}"

# Convert benchmark name to lowercase for Docker image name (Docker requires lowercase)
BENCHMARK_NAME_LOWER=$(echo "${{ matrix.benchmark }}" | tr '[:upper:]' '[:lower:]')

# Use Dockerfile.job for the combined job image
DOCKERFILE="$BENCHMARK_DIR/Dockerfile.job"
IMAGE_NAME="benchmark-${BENCHMARK_NAME_LOWER}-job"

# Check if Dockerfile exists
if [ ! -f "$DOCKERFILE" ]; then
echo "Dockerfile not found: $DOCKERFILE"
echo "skip=true" >> $GITHUB_OUTPUT
exit 0
fi

echo "dockerfile=$DOCKERFILE" >> $GITHUB_OUTPUT
echo "image_name=$IMAGE_NAME" >> $GITHUB_OUTPUT
echo "skip=false" >> $GITHUB_OUTPUT
echo "Building $IMAGE_NAME from $DOCKERFILE"

- name: Log in to NRP GitLab Container Registry
if: steps.docker-config.outputs.skip != 'true'
run: echo "${{ secrets.NRP_GITLAB_DEPLOY_TOKEN }}" | docker login ${{ secrets.NRP_GITLAB_REGISTRY_URL }} -u ${{ secrets.NRP_GITLAB_DEPLOY_TOKEN_USERNAME }} --password-stdin

- name: Build & Tag Benchmark Image
if: steps.docker-config.outputs.skip != 'true'
env:
REGISTRY_URL: ${{ secrets.NRP_GITLAB_REGISTRY_URL }}
IMAGE_PATH: ${{ env.IMAGE_PATH }}
IMAGE_NAME: ${{ steps.docker-config.outputs.image_name }}
run: |
BENCHMARK_DIR="benchmarking/benchmarks/${{ matrix.benchmark }}"
DOCKERFILE="${{ steps.docker-config.outputs.dockerfile }}"

# Build from benchmark directory with Dockerfile path relative to repo root
docker build -f "$DOCKERFILE" -t "$REGISTRY_URL$IMAGE_PATH/$IMAGE_NAME:$IMAGE_TAG" "$BENCHMARK_DIR"

if [ "$GITHUB_REF" = "refs/heads/main" ]; then
docker tag "$REGISTRY_URL$IMAGE_PATH/$IMAGE_NAME:$IMAGE_TAG" "$REGISTRY_URL$IMAGE_PATH/$IMAGE_NAME:latest"
fi

- name: Push Benchmark Image to NRP GitLab Image Registry
if: steps.docker-config.outputs.skip != 'true'
env:
REGISTRY_URL: ${{ secrets.NRP_GITLAB_REGISTRY_URL }}
IMAGE_PATH: ${{ env.IMAGE_PATH }}
IMAGE_NAME: ${{ steps.docker-config.outputs.image_name }}
run: |
docker push "$REGISTRY_URL$IMAGE_PATH/$IMAGE_NAME:$IMAGE_TAG"
if [ "$GITHUB_REF" = "refs/heads/main" ]; then
docker push "$REGISTRY_URL$IMAGE_PATH/$IMAGE_NAME:latest"
fi
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@ __pycache__/
**.DS_Store
**/flagged/
.env
settings.json
settings.json
._*
66 changes: 24 additions & 42 deletions Readme.md

Large diffs are not rendered by default.

101 changes: 0 additions & 101 deletions benchmarking/INQUIRE/Makefile

This file was deleted.

71 changes: 0 additions & 71 deletions benchmarking/INQUIRE/Readme.md

This file was deleted.

21 changes: 0 additions & 21 deletions benchmarking/INQUIRE/app/Dockerfile

This file was deleted.

24 changes: 0 additions & 24 deletions benchmarking/INQUIRE/app/HyperParameters.py

This file was deleted.

Loading