Skip to content

Commit

Permalink
Merge pull request #7 from cloud-py-api/feat/visionatrix-1.9
Browse files Browse the repository at this point in the history
version 1.1
  • Loading branch information
bigcat88 authored Dec 18, 2024
2 parents b8ccb48 + 2ad0808 commit 59bb8bd
Show file tree
Hide file tree
Showing 11 changed files with 253 additions and 151 deletions.
27 changes: 24 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,39 @@

All notable changes to this project will be documented in this file.

## [1.1.0 - 2024-12-18]

The [Visionatrix](https://github.com/Visionatrix/Visionatrix) service has been updated from version `1.4.1` to `1.9.0`.
The main changes are summarized below:

### Added

- Support for flows that produce `video` files as output.
- `OpenAPI` specs support, enabling easier development of Nextcloud Apps that can seamlessly use Visionatrix flows.
- Many new `flows` with updated models.
- Parallel installation of `flows` and `models`.

### Changed

- Online `flows` and `models` storage has been separated, ensuring the integration remains stable.
- Added support for both `Ollama` and `Gemini` as providers for `Vision` and `Prompt translation`.

### Fixed

- Numerous bug fixes and significant performance improvements.

## [1.0.1 - 2024-10-18]

### Changed

- Bumped bundled Visionatrix from `1.3.0` to `1.4.1` version, changelog can be found [here](https://github.com/Visionatrix/Visionatrix/releases/tag/v1.4.0)
- Updated the bundled Visionatrix from version `1.3.0` to `1.4.1`. The changelog for this update can be found [here](https://github.com/Visionatrix/Visionatrix/releases/tag/v1.4.0).

### Fixed

- Warning "sudo: unable to resolve host" during container startup.
- Resolved the warning "sudo: unable to resolve host" during container startup.

## [1.0.0 - 2024-09-25]

### Added

- First release with bundled Visionatrix version `1.3.0`
- Initial release with the bundled Visionatrix version `1.3.0`.
18 changes: 14 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,21 +1,26 @@
FROM python:3.10-slim
FROM python:3.12-slim

ARG BUILD_TYPE

# Visionatrix enviroment variables
ENV VIX_HOST="127.0.0.1"
ENV VIX_PORT=8288
ENV USER_BACKENDS="vix_db;nextcloud"
ENV FLOWS_DIR="/nc_app_visionatrix_data/vix_flows"
ENV MODELS_DIR="/nc_app_visionatrix_data/vix_models"
ENV TASKS_FILES_DIR="/nc_app_visionatrix_data/vix_tasks_files"
ENV BACKEND_DIR="/Visionatrix/vix_backend"
ENV VIX_SERVER_FULL_MODELS="1"

RUN apt-get update && apt-get install -y git \
python3-dev python3-setuptools netcat-traditional \
libxml2-dev libxslt1-dev zlib1g-dev g++ \
ffmpeg libsm6 libxext6 lsb-release sudo wget procps nano xmlstarlet
ffmpeg libsm6 libxext6 lsb-release sudo wget procps nano xmlstarlet && \
apt-get autoclean

ADD ex_app_scripts/common_pgsql.sh /ex_app_scripts/
RUN chmod +x /ex_app_scripts/common_pgsql.sh

ADD ex_app_scripts/install_pgsql.sh /ex_app_scripts/
RUN chmod +x /ex_app_scripts/install_pgsql.sh && /ex_app_scripts/install_pgsql.sh && rm /ex_app_scripts/install_pgsql.sh

COPY appinfo/info.xml /info.xml

Expand Down Expand Up @@ -44,7 +49,12 @@ RUN cd /Visionatrix && \
RUN cd /Visionatrix && \
venv/bin/python -m pip install "psycopg[binary]" greenlet && \
venv/bin/python -m pip install . && \
rm -rf ~/.cache/pip

RUN cd /Visionatrix && \
venv/bin/python -m visionatrix install && \
AUTO_INIT_CONFIG_MODELS_DIR=$MODELS_DIR venv/bin/python scripts/easy_install.py && \
rm visionatrix.db && \
rm -rf ~/.cache/pip

# Setup nodejs and npm for building the front-end client
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ APP_ID := visionatrix
APP_NAME := Visionatrix
APP_VERSION := $$(xmlstarlet sel -t -v "//version" appinfo/info.xml)
VISIONATRIX_VERSION := $$(xmlstarlet sel -t -v "//image-tag" appinfo/info.xml)
JSON_INFO := "{\"id\":\"$(APP_ID)\",\"name\":\"$(APP_NAME)\",\"daemon_config_name\":\"manual_install\",\"version\":\"$(APP_VERSION)\",\"secret\":\"12345\",\"port\":9100, \"routes\": [{\"url\":\".*\",\"verb\":\"GET, POST, PUT, DELETE\",\"access_level\":1,\"headers_to_exclude\":[]}], \"translations_folder\":\"\/tmp\/vix_l10n\"}"
JSON_INFO := "{\"id\":\"$(APP_ID)\",\"name\":\"$(APP_NAME)\",\"daemon_config_name\":\"manual_install\",\"version\":\"$(APP_VERSION)\",\"secret\":\"12345\",\"port\":24000, \"routes\": [{\"url\":\".*\",\"verb\":\"GET, POST, PUT, DELETE\",\"access_level\":1,\"headers_to_exclude\":[]}], \"translations_folder\":\"\/tmp\/vix_l10n\"}"


.PHONY: help
Expand Down
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ This is a standalone [Visionatrix](https://github.com/Visionatrix/Visionatrix) s

Each user is authenticated via Nextcloud credentials and has a personal task history.

> [!NOTE]
> We recommend starting with the "light-weight" flows, such as SDXL Lighting, Remove background (BiRefNet), and Remove background (Bria), to test your hardware.
## TextToImage Provider

You can use Visionatrix as the TextToImage provider via [Nextcloud Assistant](https://github.com/nextcloud/assistant).
Expand Down Expand Up @@ -48,12 +51,12 @@ Once the Visionatrix flow is installed and supported, it will be registered as a

We offer two types of installation:

1. **Standard Installation**: This includes both the Visionatrix server for task management and a built-in worker for task processing.
1. **Standard Installation**: Includes both the Visionatrix server for task management and a built-in worker for task processing.

> For this installation, you'll need either a powerful CPU with at least 32 GB of RAM or a GPU with at least 10 GB of VRAM.
> _(Support for 8 GB GPUs is planned)._
> For this installation, you'll need either a powerful CPU with at least 32 GB of RAM or a GPU with at least 8 GB of VRAM.
> _(Some flows, like background removal, are fast even on CPU and don’t require high-end hardware.)_

2. **Advanced Installation**: Starting from Nextcloud version `30.0.2`, you can install only the server component by setting `DISABLE_WORKER=1` in the environment variables during application installation. In this mode, the server will manage tasks, while external workers (installed elsewhere) will process them.
2. **Advanced Installation**: Starting from Nextcloud version `31`, you can install only the server component by setting `DISABLE_WORKER=1` in the environment variables during application installation. In this mode, the server will manage tasks, while external workers (installed elsewhere) will process them.

> [!NOTE]
> Worker authentication uses Nextcloud credentials. If 2FA is enabled, you will need to use an App Password to connect external workers.
Expand Down
33 changes: 22 additions & 11 deletions appinfo/info.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,38 @@
<name>Visionatrix</name>
<summary>Visionatrix - scalable AI Media processing</summary>
<description>
<![CDATA[Nextcloud Visionatrix is a standalone [Visionatrix](https://github.com/Visionatrix/Visionatrix) service that allows you to process your media files right within your Nextcloud.
<![CDATA[The best open-source solution for media processing, [ComfyUI](https://github.com/comfyanonymous/ComfyUI), extended with [Visionatrix](https://github.com/Visionatrix/Visionatrix), now available in your personal Nextcloud.
*Each user gets their own Visionatrix account, authenticated using Nextcloud credentials, with a personalized task history.*
✨ Process your media files directly in Nextcloud using powerful, customizable AI workflows.
---
Experience the full potential of [ComfyUI](https://github.com/comfyanonymous/ComfyUI) integrated directly into Nextcloud Visionatrix, empowering you to explore a wide array of pre-built AI workflows or develop and integrate your own with ease.
- 🌟 **Ready-to-use flows**: A library of workflows for various AI tasks.
- 🛠️ **Custom workflows**: Design and adapt workflows to fit your needs.
- 🤝 **Nextcloud integration**: Use Visionatrix with Nextcloud Assistant as an AI provider for seamless media processing.
- 🚀 **Parallel task processing**: Scale up your workflows with support for parallel execution.
- 🌍 **Multilingual prompts**: Create AI content in any language supported by your chosen language model (e.g., QWEN or Gemini).
- 🤖 **LLM integration**: Use Ollama (LLM + Vision) and Google Gemini for enhanced functionality.
- 🖥️ **Hardware support**: Works on both CPU and GPU, with flexibility for various configurations.
- 🌐 **Ready-to-Use Flows**: Access an extensive collection of high-quality ComfyUI flows tailored for various AI tasks.
- 🛠️ **Custom Flow Development**: Build, modify, and enhance your own workflows, adapting them to your unique requirements.
- 🚀 **Seamless Integration**: Enjoy a unified experience where ComfyUI's power meets Nextcloud’s efficiency, offering an unparalleled AI workflow ecosystem.
---
⚠️ **This version is in beta** as we continue developing key features to deliver a complete and polished product:
- 💬 Chat interface with an AI media assistant.
- ✏️ Support for editing workflows directly within the Nextcloud interface using the ComfyUI interface.
- 🔄 On-the-fly model support for [CivitAI](https://civitai.com).
- ⚙️ Enhanced configuration for ultra low-VRAM GPUs (4 GB) and other performance improvements.
---
Nextcloud Visionatrix can also be used from within the Nextcloud Assistant as a "txt2img" image provider, making it your go-to solution for all AI-powered media processing needs.
💡 **We value your feedback and contributions!**
Embrace the next level of AI flow management with the synergy of ComfyUI and Nextcloud today!
Share your custom workflows, big or small. For guidance on creating AI workflows, join our [discussions](https://github.com/Visionatrix/Visionatrix/discussions). Contributions to the [documentation](https://visionatrix.github.io/VixFlowsDocs/) are always welcome.
For more information, see the [repository](https://github.com/cloud-py-api/visionatrix) readme file.
📚 For more details, visit the [repository](https://github.com/cloud-py-api/visionatrix) readme.
]]></description>
<version>1.0.1</version>
<version>1.1.0</version>
<licence>MIT</licence>
<author mail="[email protected]" homepage="https://github.com/andrey18106">Andrey Borysenko</author>
<author mail="[email protected]" homepage="https://github.com/bigcat88">Alexander Piskun</author>
Expand All @@ -44,7 +55,7 @@ For more information, see the [repository](https://github.com/cloud-py-api/visio
<docker-install>
<registry>ghcr.io</registry>
<image>cloud-py-api/visionatrix</image>
<image-tag>1.4.1</image-tag>
<image-tag>1.9.0</image-tag>
</docker-install>
<routes>
<route>
Expand Down
Loading

0 comments on commit 59bb8bd

Please sign in to comment.