Skip to content

feat: add multi-model image generation support#1

Open
katieschilling wants to merge 5 commits intomainfrom
katieschilling/multi-img-gen
Open

feat: add multi-model image generation support#1
katieschilling wants to merge 5 commits intomainfrom
katieschilling/multi-img-gen

Conversation

@katieschilling
Copy link
Contributor

Summary

  • Add image generation UI that lets users select a search result and generate variations
  • Support multiple generation models: Reve, Fal AI (FLUX), and HuggingFace (img2img)
  • Fix search to return base64 images directly, resolving asyncio threading issues when fetching multiple images concurrently
  • Add visible progress indicator during image generation

Test plan

  • Search for images and verify 6 results are displayed
  • Select an image and verify it highlights with border
  • Test generation with each model option (Reve, Fal AI, HuggingFace)
  • Verify progress indicator shows during generation
  • Verify generated image displays correctly

🤖 Generated with Claude Code

katieschilling and others added 5 commits January 16, 2026 14:41
The template already supported multiple images, but the search was
limited to 1 result. Now returns top 6 matches by similarity.

Assisted-by: Claude Opus 4.5 via Claude Code
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add UI to select search result image and enter generation prompt
- Integrate Pixeltable's Reve edit() for image-to-image generation
- Add /api/generate-image endpoint with computed column pipeline
- Add generate_result.html and generate_error.html templates
- Add CSS styles for generation panel, buttons, and textarea
- Make OpenAI client optional (not needed for Reve)
- Update pixeltable version requirement to >=0.5.1

Note: Requires REVE_API_KEY environment variable for generation.

Assisted-by: Claude Opus 4.5 via Claude Code
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add Tigris S3 endpoint URL (t3.storage.dev) to storage_options
- Remove invalid if_exists argument from load_dataset call
- Store input_image directly as pxt.Image instead of using computed query
- Update /api/generate-image to fetch image before insert

Assisted-by: Claude Opus 4.5 via Claude Code

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Images are stored locally by Pixeltable, not on S3. Added /api/image/<uuid>
endpoint to serve images directly from the screenshots table.

Assisted-by: Claude Opus 4.5 via Claude Code

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix threading issue by returning base64 images directly in search
- Add visible progress indicator during image generation
- Add model selection dropdown (Reve, Fal AI/Replicate, HuggingFace)
- Update backend to support multiple generation models
- Add CSS styling for select dropdown

Assisted-by: Claude Opus 4.5 via Claude Code

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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.

2 participants