Skip to main content

No project description provided

Project description

twat-genai

(work in progress)

Image generation package that leverages fal.ai's models for AI image generation. Provides a flexible command-line interface and Python API for generating images using various AI models and techniques.

Features

  • Multiple AI image generation modes:
    • Text-to-image generation
    • Image-to-image transformation
    • Canny edge-guided generation
    • Depth-guided generation
  • Support for LoRA (Low-Rank Adaptation) models with a built-in library of style presets
  • Flexible prompt expansion with alternatives using brace syntax
  • Concurrent image generation for multiple prompts
  • Comprehensive metadata storage for generated images
  • Modern Python packaging with PEP 621 compliance
  • Type hints and runtime type checking
  • Comprehensive test suite and documentation
  • CI/CD ready configuration

Installation

pip install twat-genai

Usage

Command Line Interface

## Basic text-to-image generation
python -m twat_genai "a beautiful sunset" --output_dir images
## Using a specific style from the LoRA library
python -m twat_genai "a beautiful sunset" --lora "shou_xin"
## Image-to-image transformation
python -m twat_genai "enhance this photo" --model image --input_image input.jpg
## Multiple prompts with alternatives
python -m twat_genai "a {red; blue; green} house with {white; black} windows"

Python API

import twat_genai
from twat_genai.main import async_main, ModelTypes

## Generate images asynchronously
results = await async_main(
prompts="a beautiful sunset",
output_dir="generated_images",
model=ModelTypes.TEXT,
lora="shou_xin",
image_size="SQ"
)   

Key Features in Detail

Prompt Expansion

The tool supports flexible prompt expansion using brace syntax:

  • "a {red; blue} house" generates two images: "a red house" and "a blue house"
  • Nested alternatives are supported
  • Semicolons separate alternatives

LoRA Styles

Built-in library of LoRA styles for different artistic effects:

  • Gesture drawing
  • Sketch and smudge effects
  • 2-color illustrations
  • Pencil sketches
  • Tarot card style
  • And more...

Image Generation Modes

  • Text-to-Image: Generate images from text descriptions
  • Image-to-Image: Transform existing images
  • Canny Edge: Use edge detection to guide generation
  • Depth-Guided: Use depth information for generation

Output Management

  • Automatic file naming with customizable prefixes/suffixes
  • Metadata storage in JSON format
  • Various image size options (square, landscape, portrait)
  • Support for custom dimensions

Development

This project uses Hatch for development workflow management.

Setup Development Environment

## Install hatch if you haven't already
pip install hatch
## Create and activate development environment
hatch shell
## Run tests
hatch run test
## Run tests with coverage
hatch run test-cov
## Run linting
hatch run lint
## Format code
hatch run format

License

MIT License
.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

twat_genai-2.6.0.tar.gz (52.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

twat_genai-2.6.0-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

Details for the file twat_genai-2.6.0.tar.gz.

File metadata

  • Download URL: twat_genai-2.6.0.tar.gz
  • Upload date:
  • Size: 52.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.4

File hashes

Hashes for twat_genai-2.6.0.tar.gz
Algorithm Hash digest
SHA256 745067d0135adf2427da94143f3df049cbbdbd1cde8b417729e18cccd3d6acd7
MD5 03cccd490d8c8db43c42ebb857eefa4d
BLAKE2b-256 8a4d7e020aed7451b32a095db3c40678ea5626c94910fb8b40c3a596e2b74f17

See more details on using hashes here.

File details

Details for the file twat_genai-2.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for twat_genai-2.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9026caa00746978426f7c3d7841633d93559be6e2fc2b99c6e42890d96a06942
MD5 b8aec659e27a0465bafa09a9002efe99
BLAKE2b-256 d21fc202f30f5057510e8eeea1a3b13f0a8f2edc2ed3adda83d84794598cdc0f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page