Giter Club home page Giter Club logo

pollinations's Introduction

License Python Versions

๐ŸŒธ pollinations.ai

Pollinations are an effort to make generative art more approachable.

  • A frontend hosting a set of curated notebooks that allow creating and experimenting with generative art.
  • The Interplanetary Filesystem (IPFS) for decentralized censorship-resistant storage of models, code and generated content
  • Pollinations are run on Google Colab at the moment (for the free cloud GPUs)

Instructions on using Pollinations.AI.

๐Ÿ Python Package

# Usage Example

import pollinations as ai

model: object = ai.Model()

image: object = model.generate(
    prompt=f'Golden retriever puppy playing in the rain {ai.realistic}',
    model=ai.turbo,
    height=512,
    seed=57184
)
image.save('image-output.jpg')

print(image.url)
// >>> https://image.pollinations.ai/prompt/Golden%20retriever%20puppy%20playing%20in%20the%20rain%20realistic,%20realism,%20real%20life,%20ultra%20realistic,%20high%20quality,%20real?model=turbo&width=1024&height=512&seed=57184

image

๏ฟฝ๐Ÿ‘ฉโ€๐Ÿ’ป Development (outdated)

Development of Pollinations.AI Web App
`make dev` to start the development server of web app.% 

Enable logging:
`localStorage.debug = "*"`

If logs don't appear in Chrome enable logging "All Aevels" (including Verbose)


## Optionally it is possible to develop with a local IPFS node

Enable connect to local IPFS:
`localStorage.localIFS = true

`make up` to start the releant services. See next section for details
Development of Notebooks

All notebooks at pollinations/hive are automatically deployed to Pollinations.

We will add an easy way to include custom notebooks. For now, to use an external notebook it needs to be uploaded to IPFS wrapped in a folder in the form input/notebook.ipynb. The resulting IPFS hash can be used directly like so: https://pollinations.ai/p/[hash]

Development with Local IPFS node
Development environment requires `docker` & `docker-compose` for running a loca IPFS node. For docker installation, please navigate to https://docs.docker.com/get-docker/.

After docker is setup, `make` is used for managing the IPFS and development environment.

## ๐ŸŸก Initialization

To run pollinations development environment first time,

- Run `make init`, this will initialize start the IPFS docker image and fill `tmp/ipfs` folder by migrating IPFS.

## ๐ŸŸข Running

After IPFS migrated, to start development environment,
- Run `make up`, this will start the dockerized IPFS instance and detach.
- Run `make dev` to start the react application living under `/app`

## ๐Ÿ”ด Stopping

- Run `make down` to stop running IPFS instance.
- Run `make clean` to remove the `tmp` folder and its contents.

## โš™๏ธ Configuration

IPFS configuration can be found and updated in `docker/ipfs/config.json`. Every time the docker containers are started, the config file under `tmp/ipfs/config` is overwritten with this json file.
Architecture Diagram

The following diagram has an editable copy embedded. Use https://draw.io/#Hpollinations/pollinations/master/pollinations_architecture.png to edit the file.

Export the results as PNG with "Include a copy of my diagram" option selected and replace the current diagram.

Architecture Diagram

๐Ÿ”— Links

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.