Architecture updates #398
w4ffl35
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
The codebase has been decoupled by switching all relevant portions to a signal / slot pattern. In order to keep this clean, we have decided to use both a signal mediator (see signal_mediator.py) and a service locator (see service_locator.py).
These are instantiated in base classes along with a logger (singleton), access to settings and more.
Additionally threads have been better utilized in order to enhance stability and performance.
This boils down to better threaded performance, easier code maintenance and faster development of new features.
For example, in the UX you will see no lag while images are generated and you draw on the canvas. Additionally with this new architecture it is possible to properly manage many queues between workers which in turn manage various AI models. This allows us to serve the correct models at the right time so that users can interact with the application smoothly and get the results they expect.
AI Runner is evolving into the application it was intended to be and will be running many different AI models including vision and text to speech. These architecture changes were necessary to move the application into this next stage.
In the coming days the final pieces will be tied to together and we plan to release some videos showcasing some of the new features.
Beta Was this translation helpful? Give feedback.
All reactions