Skip to content

v1.1.0

Choose a tag to compare

@mukoubuchi mukoubuchi released this 11 Jun 17:53
· 41 commits to main since this release

Highlights

This release hardens the hands-on environment and improves the participant tooling.

⚠️ If you ran a hands-on with v1.0.0 and exposed Milvus publicly (e.g. ngrok TCP), please upgrade. In v1.0.0 the Milvus server did not enforce authentication: the root/Milvus credentials were accepted but never verified, so anyone who knew the endpoint could connect.

Security

  • Milvus user/password authentication is now enforced (COMMON_SECURITY_AUTHORIZATIONENABLED=true in setup/instructor/docker-compose.yml)
  • MinIO (9000/9001) and Milvus metrics (9091) ports are bound to 127.0.0.1 instead of all interfaces
  • README and the instructor guide explain how to change the default root password before public delivery

Shared-Milvus safety

  • Each participant now sets a unique COLLECTION_NAME in .env; the scripts refuse to run while the template placeholder is unchanged, so participants can no longer overwrite each other's collections
  • insert_sample_data.py shows the entity count and asks for confirmation before dropping an existing collection (--yes to skip)

Demo application

  • FastAPI startup/shutdown migrated from the deprecated on_event hooks to a lifespan handler
  • /search and /health run in the threadpool and no longer block the event loop
  • The collection is loaded lazily, so inserting data after starting the app no longer requires a restart
  • Input validation for query (non-empty) and top_k (1–100)
  • The embedding dimension is detected from the model; EMBEDDING_DIMENSION was removed from .env

Tooling and docs

  • New setup/instructor/build-participant-zips.sh regenerates the participant zips from the repository sources; CI fails when the committed zips drift
  • MkDocs image and plugin versions are pinned in sync with CI
  • stop-all.sh only stops processes whose command line matches the expected server
  • Participant scripts exit non-zero on failure
  • Python dependencies updated (FastAPI 0.136.x, sentence-transformers 5.5.x, uvicorn 0.49.x, python-dotenv 1.2.x)
  • Participant docs (EN/JA), README, and the instructor guide updated accordingly, including the Part 3 sample review

Upgrade notes for instructors

  1. Restart the environment to enable authentication: cd setup/instructor && ./stop-all.sh && ./start-all.sh
  2. Distribute the regenerated zips (vector-search-builder-en.zip / vector-search-builder-ja.zip)
  3. Tell participants to set a unique COLLECTION_NAME (e.g. products_taro) in setup/participant/.env
  4. Before public (ngrok) delivery, change the Milvus root password as described in the README

Full Changelog: v1.0.0...v1.1.0