Skip to content

Add download button for training artifacts#3

Open
shreyaskarnik wants to merge 1 commit intovespaai-playground:mainfrom
shreyaskarnik:feat/artifact-downloads
Open

Add download button for training artifacts#3
shreyaskarnik wants to merge 1 commit intovespaai-playground:mainfrom
shreyaskarnik:feat/artifact-downloads

Conversation

@shreyaskarnik
Copy link

@shreyaskarnik shreyaskarnik commented Mar 6, 2026

Summary

Really cool project! Love how vespaembed makes embedding model training so accessible with the no-code web UI.

This PR adds the ability to download artifacts directly from the web UI. Previously the artifacts modal only showed a "Copy Path" button — now each artifact also has a "Download" button right next to it.

What changed

  • Backend: New endpoint GET /runs/{run_id}/artifacts/{artifact_name}/download
    • Single files (e.g. config JSON) are served directly
    • Directories (models, checkpoints, logs) are zipped on-the-fly and streamed
    • Includes path traversal protection
  • Frontend: Added "Download" button alongside "Copy Path" in the artifacts modal
  • Styles: Updated to support the two-button layout

Before / After

Before After
Copy Path only Download + Copy Path
Screenshot 2026-03-06 at 9 20 29 AM

Test plan

  • Start backend + frontend dev servers locally
  • Trigger a training run, open artifacts modal
  • Verified Download button triggers browser download for each artifact type
  • Verified Copy Path still works as before

🤖 Generated with Claude Code

Add a backend endpoint to download artifact files and directories
(zipped on-the-fly). The frontend artifacts modal now shows both
Download and Copy Path buttons for each artifact.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@shreyaskarnik shreyaskarnik force-pushed the feat/artifact-downloads branch from 6da055e to 4a0e263 Compare March 6, 2026 17:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant