asol is a lightweight core for working with AI services through a single HTTP/REST API. It is built on Python 3 using FastAPI, Requests, Pydantic, and SQLite. Plugins enable integration with various AI services (such as OpenAI, Stable Diffusion, Whisper, etc.).
.
├── asol_core
│ ├── adapter_loader.py # (Optional) Loads adapters
│ ├── database.py # SQLite operations (DB and logging)
│ ├── __init__.py # Defines package
│ ├── main.py # FastAPI server entry point
│ ├── plugin_manager.py # Handles plugins
│ └── router.py # Defines API routes
├── client_scripts
│ └── sample_client.py # Example API request script
├── Dockerfile # (Optional) Containerization
├── README.md # This file
├── requirements.txt # Dependencies
└── tests # (Optional) Tests
Make sure you have Python 3 installed. Then run:
pip install -r requirements.txt
To start the server, run:
uvicorn asol_core.main:app --reload
The server will be available at http://localhost:8000
- The client sends an HTTP request to asol.
- The FastAPI server processes the request and passes it to
plugin_manager.py
. - The Plugin Manager dynamically loads the required plugin and calls its
process_request(params)
method. - The plugin interacts with an external AI service (such as OpenAI) and returns the result to the client.
asol is a simple yet extendable solution for working with AI!
This project is licensed under the GNU Affero General Public License v3.0 (AGPLv3).
The full text of the license is available in the LICENSE
file.