LuisMayo / objection_engine

Library that turns comment chains into ace attorney scenes, used in several bots
MIT License
107 stars 20 forks source link

Move some parts of the engine into modules that can be installed separately #116

Open Meorge opened 1 month ago

Meorge commented 1 month ago

I've been working on an application for the Objection Engine that doesn't require things like sentiment analysis or specialized Unicode parsing, but I've been struggling a bit with getting it installed on my server because of those packages.

This is a screenshot from a fresh virtual environment, with only Objection Engine (and the dependencies it has) installed: CleanShot 2024-09-09 at 21 47 12@2x

Torch and the NVIDIA drivers(?) together take up over 3 GB, and the .venv folder as a whole takes up about 4 GB; by contrast, the actual assets folder that Objection Engine uses is 133 MB.

Based on this, I'm wondering if it may make sense to look into splitting Objection Engine into separate modules that can be installed separately or all together, depending on the user's needs. For example, in my use case because I don't need the machine learning capabilities, I could install only the rendering engine.

To maintain compatibility, this repository could serve as the "all together" option, with the core rendering engine being split off into its own repository/module that is required and imported by this one.