Commit Graph
21 Commits
Author SHA1 Message Date
slahiriandClaude Opus 4.5 786926982f feat: add scene/landmark/sky taggers, improve wildlife detection, add progress bar
New Taggers:
- LandmarkTagger: 150+ famous landmarks (monuments, natural wonders, bridges)
- SkyWeatherTagger: clouds, sun/moon, weather, celestial elements
- Places365Tagger: scene recognition with 365 categories
- CLIPSceneTagger: photo style, camera type, subject, mood
- WildlifeTagger: animals, pets, nature, biomes

Scene Detection Improvements:
- Fixed "no humans" tag override for human detection
- Fixed scene type detection for animal/wildlife photos
- Wildlife/landscape taggers now skip for portrait/fashion scenes
- Canonical structurer respects "no humans" + "animal" tags

Analysis Node Improvements:
- Added analysis_enabled toggle (skip taggers for quick caption)
- Added prompt output (florence_description)
- Progress bar now starts during taggers phase
- Progress callback passed through pipeline

Bug Fixes:
- Fixed abstract method error in Places365/CLIPScene/Wildlife taggers
- Added load() method to new CLIP-based taggers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 03:48:10 +05:30
slahiriandClaude Opus 4.5 9f6f30805b feat: Z-Image prompt pipeline redesign (WIP)
Changes:
- Add Z-Image prompt style with 6-part formula support
- Add vocabulary enhancement system (984 terms)
- Add classification improvements (age, clothing, subject count)
- Add Full and Z-Image prompt styles preserving Florence prose
- Add pipeline design document (docs/COMPOSE_PIPELINE_DESIGN.md)
- Remove RAG system (not working well)
- Remove use_rag input from compose node

Key insight: Pipeline should PRESERVE information, not destroy it.
- Florence descriptions kept intact (not tokenized)
- Tags organized into Z-Image categories
- NLP mode = structured output
- LLM mode = natural prose generation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 23:30:13 +05:30
slahiriandClaude Opus 4.5 596c860db2 docs: mark Phase 3 as complete
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 10:28:28 +05:30
slahiriandClaude Opus 4.5 2721d58cd3 docs: mark Phase 2 as complete
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 10:07:00 +05:30
slahiriandClaude Opus 4.5 06ff172b1d docs: mark Phase 1 as complete
- Update CLAUDE.md status table
- Check off Phase 1 tasks in implementation_plan.md
- Add commit reference for traceability

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 09:52:28 +05:30
slahiriandClaude Opus 4.5 7f1186d412 feat: add prompt composition pipeline and tokenization spec
New Features:
- SID_PromptCompose node with Standard and Enhance with AI modes
- SID_PromptSynthesis node for VLM-based prompt generation
- SID_ImageAnalysis node for comprehensive image analysis
- Text LLM support (Qwen2.5 0.5B-7B) for prompt enhancement
- PixAI tagger integration

Documentation:
- docs/image_tokenization_spec.md - Full technical specification
  for tokenization → classification → assembly pipeline
- docs/implementation_plan.md - 8-phase implementation roadmap
- docs/SID_PromptCompose.md - Node usage documentation

Infrastructure:
- core/compose/ module with base, pipeline, standard, llm generators
- core/log.py centralized logging
- Config files for Qwen2.5 text models (YAML)
- Web assets for ComfyUI integration

This commit establishes the foundation for rewriting the compose
pipeline based on the tokenization specification.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 02:33:17 +05:30
slahiriandClaude Opus 4.5 58fe3076f8 feat: add multi-tagger pipeline and fix Florence-2 loading
Tagging System:
- Add TagConfigurator node for configuring all taggers
- Add tagging pipeline with 10+ taggers (WD14, JoyTag, RAM++, etc.)
- Add fashion taggers (YOLOS, YOLOv8, FashionCLIP, SegFormer)
- Add pose taggers (MediaPipe, MotionBERT, Sapiens)
- Add quality taggers (NIMA, MUSIQ, BRISQUE)
- Add composition and saliency analysis
- Add auto-install dependencies on startup
- Fix JoyTag to use ONNX with correct 448x448 image size
- Fix fashion labels to skip unknown IDs (no more "item_33")
- Fix MediaPipe to exclude raw keypoints from output

Florence-2 Fixes:
- Fix loading for transformers >= 4.50 using kijai's implementation
- Add mock transformers.models.florence2 module for processor loading
- Add proper version detection with tuple comparison
- Remove broken BLIP2 model (unused)

Other:
- Add download.py for centralized model downloading
- Update caption node with tag integration
- Add documentation for tagging system

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 19:26:14 +05:30
slahiriandClaude Opus 4.5 706bf2ac7f docs: consolidate SID_Caption and SID_CaptionAdvanced into single node
Merge simple and advanced features into one unified SID_Caption node.
The node now includes model selection, quantization, quality tiers,
style, and length options all in one place.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-20 20:36:12 +05:30
slahiriandClaude Opus 4.5 2a35976780 feat: implement SID_Caption node with Florence-2 PromptGen
- Add modular core architecture with plug-and-play model support
- Implement Florence-2 model with config-driven prompts and settings
- Add platform layer for GPU detection, memory management, and state isolation
- Support transformers >= 4.51.0 via kijai's bundled Florence2 implementation
- Add caption cleaning and output formatting utilities
- Update architecture docs with KISS principle design decisions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-20 20:22:30 +05:30
slahiriandClaude Opus 4.5 08bdb58fb6 docs: add v5.0 architecture and MVP implementation plan
- architecture.md: 3-node design (Caption, CaptionAdvanced, CaptionOptions)
- mvp.md: 6-phase implementation plan (~935 lines total)
- history.md: analysis of v4.x issues and lessons learned
- research.md: survey of existing captioning nodes in ComfyUI ecosystem

Key decisions:
- Embedded WD14 tagging in pipeline (not separate node)
- Qwen-focused model lineup with tier-based selection
- Flow-based pipeline for easy modification
- ComfyUI V1 API for maximum compatibility

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-20 19:11:27 +05:30
slahiri f9bbb1e081 docs: add comprehensive VLM captioning documentation
- models.md: Supported models by tier (Quick/Standard/Detailed/Extreme)
- captioning.md: Complete VLM guide including:
  - Captioning approaches (Booru tags, e621, natural language, hybrid)
  - Model-specific recommendations for SD1.5/SDXL/Flux/Z-Image
  - Detailed model specs for 14+ captioning models
  - Vision model landscape (DINOv2, InternVL, SigLIP, etc.)
  - Workflow patterns and ComfyUI nodes reference

Generated with Claude Code
2025-12-20 15:53:56 +05:30
slahiri bb8e629091 chore: clean slate for re-architecture
- Remove all nodes and code
- Keep only minimal __init__.py with empty extension
- Update to v5.0.0-dev
- Clean requirements and pyproject.toml

Starting fresh for new architecture.

Generated with Claude Code
2025-12-20 15:29:14 +05:30
slahiriandClaude e3031e95bf feat: add prompt override, raw output, template registry, and caching fixes
- Add Prompt Override mode with System/User/Example text boxes
- Add Raw Output toggle to skip all post-processing
- Add template registry system with TOML-based templates
- Add model editor with max_tokens display
- Fix LLM response caching issues (disable cache in raw_output mode)
- Fix Simple mode overwriting Prompt Override settings
- Add debug hashes for image tracking
- Remove deprecated sid_zimage_prompt_generator.py

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-20 15:14:30 +05:30
slahiriandClaude Opus 4.5 5086598eb8 feat: major refactor with prompt editor, improved templates, and reasoning control
## New Features
- Add web-based Prompt Editor at /sid/prompt-editor
  - Monaco editor with TOML syntax highlighting
  - File browser for prompt templates
  - Save with TOML validation and auto-backup
  - Reset to git default functionality

- Add prompt_generator_core.py for standalone batch processing
- Add sid_prompt_generator_v2.py with simplified interface
- Add sid_prompt_debug.py for prompt quality evaluation
- Add cv_analyzer.py for YOLO-based human detection

## Prompt Template Improvements
- Restructure prompts into separate TOML files (portrait, scene, classification)
- Add sentence-by-sentence structure for local models
- Add comprehensive hair texture vocabulary (straight/wavy/curly/bangs)
- Add makeup vocabulary (smoky eyes, lipstick colors)
- Improve basic tier prompts to output sentences instead of keyword lists

## API Call Optimization
- Standard mode: Single API call (ignores reasoning)
- Detailed + reasoning OFF: Single API call with detailed prompts
- Detailed + reasoning ON: Multi-step agentic analysis

## Dependencies
- Add aiohttp for web routes
- Add tomlkit for TOML editing with comment preservation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 14:05:01 +05:30
slahiriandClaude Opus 4.5 365922dc67 Add workflow screenshot to README
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-09 01:46:53 +05:30
slahiriandClaude Opus 4.5 cd2a88c03d Add comprehensive NSFW body/clothing attributes to Generator UI design
- Add content_detail parameter with 4 levels: minimal, standard, detailed, explicit
- Add detailed body_upper attributes: bust size/shape/cleavage, torso, midriff
- Add full body_exposure mapping: chest, stomach, back, hips, legs, buttocks
- Add extended clothing attributes: coverage, cutouts, swimwear styles, lingerie
- Add sensuality indicators in pose attributes
- Add YAML examples for each content detail level
- Document how explicit level captures full NSFW detail for Z-Image

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 20:46:05 +05:30
slahiriandClaude Opus 4.5 b47efcd652 Add seed control, prompt modes, and focus area toggles
Seed Control:
- seed_mode: fixed, randomize, increment, decrement
- Fixed mode: deterministic caching (same input = same output)
- Randomize: fresh seed each run
- Inc/Dec: sequential variation generation

Prompt Direction:
- user_prompt: guide or override the analysis
- prompt_mode: analyze, enhance, priority, override
  * analyze: pure image analysis (ignore prompt)
  * enhance: prompt guides analysis (default)
  * priority: prompt first, image fills gaps
  * override: prompt dominates, minimal image reference

Focus Area Toggles:
- focus_subject: detailed subject description
- focus_environment: background/setting details
- focus_lighting: light source and quality
- focus_colors: materials and textures
- focus_mood: atmosphere and emotion
- include_text_quotes: quote visible text

Token Budget Allocation based on enabled toggles

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 20:39:23 +05:30
slahiriandClaude Opus 4.5 9e1df41851 Comprehensive agentic UI design with 56+ photography genres
Scene Classification:
- 11 shot framing types (ECU to VLS)
- 56 photography genres across 6 categories:
  * People (13): Portrait, Headshot, Fashion, Beauty, Glamour, etc.
  * Event (7): Wedding, Concert, Sports, Street, etc.
  * Nature (15): Landscape, Wildlife, Macro, Astro, etc.
  * Commercial (7): Product, Food, Automotive, etc.
  * Artistic (10): Fine Art, Abstract, Surreal, etc.
  * Lifestyle (4): Travel, Candid, Selfie, etc.

Agentic Pipeline:
- Stage 1: Classification (shot + genre + tags)
- Stage 2: Metadata extraction (dimensions, aspect)
- Stage 3: Attribute mapping (rule-based per scene)
- Stage 4: Detailed LLM analysis
- Stage 5: Prompt composition with token tracking
- Stage 6: Z-Image recommendations

Outputs: prompt, structured_data, metadata, debug_log

Sources: Adobe, Pixpa, Shutterstock, StudioBinder, MasterClass

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 20:30:34 +05:30
slahiriandClaude Opus 4.5 03d9fdee79 Add UI design specification for SID_Z_Image_Prompt_Generator
Visual wireframe and complete specification including:
- 12 input parameters organized in 5 UI sections
- Detail levels: Minimal, Detailed, Technical, Comprehensive
- 8 color styles, 20 photographer styles, 31 lighting options
- Widget specs: sliders, combos, multiline text, seed control
- Tooltips for all parameters
- Comparison with existing nodes
- Example usage flow with sample output

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 20:02:36 +05:30
slahiriandClaude Opus 4.5 86238c87d4 Update integration plan with two-node architecture
Split into two separate nodes:
- SID_Z_Image_Prompt_Generator: Image → Z-Image prompt (vision-based)
- SID_Z_Image_Prompt_Enhancer: Simple text → Enhanced Z-Image prompt

Key changes:
- Generator uses Claude vision to analyze images
- Enhancer transforms simple prompts without requiring images
- Shared utilities in utils/zimage_utils.py
- Subject-specific guidance (Portrait, Landscape, Product, Action, Architecture)
- Enhancement levels (Minimal, Detailed, Comprehensive)
- Existing SID_AIPromptGenerator remains unchanged

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 19:46:44 +05:30
slahiriandClaude Opus 4.5 6ea645a0d2 Add Z-Image integration research and implementation plan
- Z-IMAGE-PROMPTING-GUIDE.md: Comprehensive best practices for Z-Image prompts
  - Core principles (camera-first approach, visible descriptions only)
  - Technical settings (guidance_scale=0.0, no negative prompts)
  - Prompt structure and visual vocabulary
  - Genre-specific formulas (portrait, fashion, action, product)
  - Text quotation syntax for text-in-image
  - Anti-patterns to avoid

- Z-IMAGE-INTEGRATION-PLAN.md: Implementation plan for toolkit enhancement
  - New parameters: output_format, text_quote_style, max_narrative_length
  - New output: narrative_prompt (Z-Image compatible)
  - System prompt template for narrative generation
  - Output cleaning functions
  - Testing plan

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 19:37:54 +05:30