discoart  by jina-ai

One-line tool for creating Disco Diffusion artworks

created 3 years ago
3,841 stars

Top 13.0% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

DiscoArt provides a streamlined Python API and a high-performance service for generating artworks using Disco Diffusion. It targets generative artists, AI enthusiasts, and developers seeking an efficient, maintainable, and integrable solution for text-to-image generation, offering features like result persistence and easy deployment.

How It Works

DiscoArt leverages the CLIP-Guided Diffusion model, similar to the original Disco Diffusion notebook, but with an industry-level engineering approach. It's built on the DocArray data structure, enabling seamless integration with other Jina AI ecosystem components. This architecture allows for features like real-time result fetching, session recovery, and a robust API for both programmatic use and serving as a microservice.

Quick Start & Requirements

  • Install: pip install discoart
  • Requirements: Python 3.7+, CUDA-enabled PyTorch.
  • Usage:
    • Python API: from discoart import create; da = create()
    • CLI: python -m discoart create or python -m discoart serve
  • Documentation: https://docs.jina.ai/projects/discoart/

Highlighted Details

  • One-liner create() function with a Pythonic interface and IDE autocompletion.
  • Supports gRPC/HTTP/Websockets serving with TLS options for production deployment.
  • Integrates with Jina, CLIP-as-service, and other cross-modal applications via DocArray.
  • Offers result recovery, persistence, and visualization of intermediate steps.

Maintenance & Community

Licensing & Compatibility

  • MIT License.
  • Compatible with commercial use and closed-source linking.

Limitations & Caveats

The project is developer-centric and API-first; consumer-facing GUI improvements are out of scope, with third-party GUIs available. While it aims for lean dependencies, the underlying diffusion models can still be resource-intensive.

Health Check
Last commit

2 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
9 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.