Message system for connecting tools on a single or multiple Computer.
Project description
shikoni
This tool is for connection AI tools to combine them.
Github: https://github.com/VGDragon/shikoni
Idea
It could take a lot of computer power for tools and AI to run. It makes sense to seperate some tools or use a entrypoint. The idea behind this project is to create an tool to make it easy to connect tools between computers.
Example:
You want to take an audio file (or microfon input) and want an AI to answer you with TTS.
Audio input, AI, TTS, Audio output
You make for each point an shikoni instance and conect them together if you need them. You take an shikoni instance and tell each point to connect to the next one.
Audio output: start server
TTS: start server, connect client to "Audio output"
AI: start server, connect client to "TTS"
Audio input: connect client to "AI"
Audio input -> AI -> TTS -> Audio output
If you want to switch the AI, you only need make an instance for that AI and keep the rest. You just have to remove the old connection and create the new one.
Audio input: disconnect client from "AI"
AI: stop server, disconnect client from "TTS"
AI_2: start server, connect client to "TTS"
Audio input: connect client to "AI_2"
Audio input -> AI_2 -> TTS -> Audio output
Workflow
I try to make everything as easy to use as posible but stull have important functionality. The messages are send in bytes to keep it open for all kind of messages to be send. To be able to know the message type, shikoni uses type_id with a combination of json to find the right Message class.
It should be possible to add new message types later on.
Current status
I am still working on the base scripts.
- ✅ Server Connection
- ✅ Clinet Connection
- ✅ start script
- ✅ search for free ports (API)
- ❌ forbit access for unauthorised users
- ❌ setup script
- ❌ make module and test it
- ❌ test run with tools
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file shikoni-0.0.1.tar.gz
.
File metadata
- Download URL: shikoni-0.0.1.tar.gz
- Upload date:
- Size: 17.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7006d092ed4b208a3e93971e2e0b26d0bdd6ee4cd7752d77782c5c337cdb87b2 |
|
MD5 | 4f9f56e47a4130c546056cf4aef9b2f7 |
|
BLAKE2b-256 | 5b71e94aa776d9ae8ba0f0d2c86874eaa674aeb736b39882aa112a751b18f05e |
File details
Details for the file shikoni-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: shikoni-0.0.1-py3-none-any.whl
- Upload date:
- Size: 16.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1714b971e03e1c6d9b267a1f4b2d56b2d6cb2bf85edd816c469cb55ea1e14cc1 |
|
MD5 | 131b014bf097301db0b1a566b5b51851 |
|
BLAKE2b-256 | ef59cf0a09ba5ecb83ee01a71408157a94ce2b829ddc381e2dc05361d2450e5f |