Skip to main content

Private AI Hub - Host your own Generative AI Services

Project description

Private AI Hub (P8Hub)

"Host and use your own AI Services. Keep everything simple and private."

In an era where AI is transforming every aspect of our lives, I recognized the need for a private and easy-to-use platform where individuals and small teams could host and utilize their own AI services. The inspiration for P8Hub came from the desire to make AI technologies accessible and private, democratizing them for all.

P8Hub

Architecture

Architecture

The architecture of P8Hub consists of two main components: a FastAPI backend and a Next.js frontend. The backend and frontend communicate with each other via REST API. For ease of deployment, I build frontend into static files and serve them from the backend. The interaction with Docker (running, stopping, and monitoring services) is done via Python on Whales package.

Features

Some features are still in development. You can check the progress here.

  • Monitor hardware resources.
  • Service management (start, stop/delete).
  • Service logs viewer.
  • OllamaLLM - General chatbot service.
  • Teachable AI - Teach the computer to classify images - STEAM.
  • docTR - Document Text Recognition.
  • Whishper - Text to speech service.
  • TTS Generation (GPU Only)
  • Docker extension.
  • Image generation service.
  • Add documentation.
  • Add tests.
  • App editor.

The applications were not selected carefully due to limited time. I think many more interesting AI applications can be integrated into P8Hub. If you have any suggestions, please let me know or create a pull request.

I. Installation and Usage

1. Installation

  • Python 3.9 or higher.
  • Install p8hub:
pip install p8hub

2. Usage

  • Run the app:
python -m p8hub.app

or just:

p8hub

You can also run Private AI Hub publicly to your network or change the port with parameters. Example:

p8hub --host 0.0.0.0 --port 8080

3. Docker Extension (Experimental)

Docker Extension allows to extend the functionality of Docker Desktop. We've developed a Docker Extension for P8Hub. You can install it by running:

make install-extension

You should see the extension in Docker Desktop's UI.

P8Hub Docker Extension

Architecture:

P8Hub Docker Extension Architecture

II. Development

1. Clone the source code

git clone https://github.com/vietanhdev/p8hub
cd p8hub

2. Run your backend

  • Python 3.9 or higher.
  • To install from source, from p8hub source code directory, run:
pip install -e .
  • Run the app:
python -m p8hub.app

2. Run your frontend

  • Install the dependencies:
cd frontend
npm install
  • Run the app:
npm run dev

References

DockerML Hackathon 2023

This project was created for the Docker AI/ML Hackathon 2023.

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

p8hub-0.0.2.tar.gz (630.8 kB view details)

Uploaded Source

Built Distribution

p8hub-0.0.2-py3-none-any.whl (649.3 kB view details)

Uploaded Python 3

File details

Details for the file p8hub-0.0.2.tar.gz.

File metadata

  • Download URL: p8hub-0.0.2.tar.gz
  • Upload date:
  • Size: 630.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.31.0 requests-toolbelt/0.9.1 tqdm/4.65.0 CPython/3.9.7

File hashes

Hashes for p8hub-0.0.2.tar.gz
Algorithm Hash digest
SHA256 eae4a231ed1a4a2bc44dbf33664a0221ec446aaa2533b518220d3c8a8d0dfd88
MD5 1b3b4254ab22482798da877b45ec20fa
BLAKE2b-256 e3b8a4dce9d1cd32ecadb058afe36c194771dcb2c94d25e1003ae2659b0b9d80

See more details on using hashes here.

File details

Details for the file p8hub-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: p8hub-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 649.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.31.0 requests-toolbelt/0.9.1 tqdm/4.65.0 CPython/3.9.7

File hashes

Hashes for p8hub-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1bb7f7995583bb14766cfb5a97ede775cd166a00f88fb7cd43c4f3885c0767b8
MD5 8c5650147e7fae8f74a15825d461571a
BLAKE2b-256 a689b09623f66b7e5ce423e437b8d30fe3ec927f5c17c942bc2b7416be43fdb0

See more details on using hashes here.

Supported by

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