Kolosal AI is an OpenSource and Lightweight alternative to LM Studio to run LLMs 100% offline on your device.
Kolosal AI
https://github.com/user-attachments/assets/589cfb48-f806-493d-842b-3b6953b64e79
Kolosal AI is an open-source desktop application designed to simplify the training and inference of large language models on your own device. It supports any CPU with AVX2 instructions and also works with AMD and NVIDIA GPUs. Built to be lightweight (only ~20 MB compiled), Kolosal AI runs smoothly on most edge devices, enabling on-premise or on-edge AI solutions without heavy cloud dependencies.
- License: Apache 2.0
- Developer: Genta Technology
- Community: Join our Discord
Key Features
- Universal Hardware Support
- Lightweight & Portable
- Wide Model Compatibility
- Easy Dataset Generation & Training
- On-Premise & On-Edge Focus
Use Cases
- Local AI Inference: Quickly run LLMs on your personal laptop or desktop for offline or on-premise scenarios.
- Edge Deployment: Bring large language models to devices with limited resources, ensuring minimal latency and improved privacy.
- Custom Model Training: Simplify the process of data preparation and model training without relying on cloud hardware.
Credits & Attribution
Kolosal AI uses or references the following third-party projects, each licensed under their respective terms:
- Dear ImGui (MIT License)
- llama.cpp (MIT License)
- nativefiledialog-extended (zlib License)
- nlohmann/json (MIT License)
- stb libraries (Public Domain or MIT License)
About Genta Technology
We are a small team of students passionate about addressing key concerns in AI such as energy, privacy, on-premise, and on-edge computing. Our flagship product is the Genta Inference Engine, which allows enterprises to deploy open-source models on their own servers, with 3-4x higher throughput. This can reduce operational costs by up to 80%, as a single server optimized by our engine can handle the workload of four standard servers.
Get Involved
- Clone the Repository: [https://github.com/Genta-Technology/Kolosal]
- Join the Community: Ask questions, propose features, and discuss development on our Discord.
- Contribute: We welcome pull requests, bug reports, feature requests, and any kind of feedback to improve Kolosal AI.
How to Compile
- Project Overview
- Directory Structure
- Prerequisites
- Cloning and Preparing the Repository
- Configuring the Project with CMake
- Building the Application
- Running the Application
- Troubleshooting
Project Overview
- Name: Kolosal AI (Desktop application target is
KolosalDesktop) - Language Standard: C++17
- Build System: CMake (version 3.14 or higher)
- Dependencies (automatically handled by the provided
CMakeLists.txt, if placed in correct directories):
external/imgui)
- Other external libraries: stb, nlohmann/json, icons, etc.
Directory Structure
A simplified look at the important folders/files:
KolosalAI/
โโ cmake/
โ โโ ucm.cmake # Utility script for static runtime linking
โโ external/
โ โโ curl/ # Pre-built or source for cURL
โ โโ glad/ # GLAD loader
โ โโ genta-personal/ # genta-personal engine includes/libs
โ โโ imgui/ # ImGui source
โ โโ nativefiledialog-extended # Native File Dialog Extended
โ โโ nlohmann/ # JSON library
โ โโ stb/ # stb (single-file) headers
โ โโ fonts/ # TrueType fonts
โโ assets/
โ โโ logo.png
โ โโ resource.rc # Windows resource file
โโ source/
โ โโ main.cpp # Entry point for KolosalDesktop
โโ include/
โ โโ ... (additional headers)
โโ models/
โ โโ ... (model.json configuration files used by the inference engine to download, save, and load the model engine)
โโ CMakeLists.txt
โโ README.md # You are here!
โโ ...
Prerequisites
- CMake 3.14 or above
- A C++17-compatible compiler
- Git (optional, but recommended for cloning and submodule management).
- OpenSSL, CURL
external/openssl and external/curl (or anywhere you prefer, just ensure CMakeLists.txt sees them).
- (Optional) Vulkan SDK if you plan to use the Vulkan-based inference engine.
Cloning and Preparing the Repository
- Clone the repository:
git clone https://github.com/Genta-Technology/Kolosal.git
cd KolosalAI
- Update submodules:
git submodule update --init --recursive
- Pull Git LFS:
git lfs install
glt lfs pull
- Check external dependencies:
external folder contains:
- curl with include/, lib/, and bin/ (Windows).
- openssl or that OpenSSL is installed system-wide.
- The genta-personal engine in place if not fetched from elsewhere.
- Folder structure verification:
nativefiledialog-extended, imgui, etc., are present inside external/.
Configuring the Project with CMake
You can perform either an in-source or out-of-source build, but out-of-source is recommended. Below is an example of an out-of-source build:
- Create a build folder:
mkdir build
cd build
- Run CMake:
cmake -S .. -B . -DCMAKEBUILDTYPE=Release
or explicitly (for Visual Studio multi-config):
cmake -S .. -B . -G "Visual Studio 17 2022" -A x64
- -DDEBUG=ON can be used if you want to build a debug version:
cmake -S .. -B . -DCMAKEBUILDTYPE=Debug -DDEBUG=ON
- Check for any errors during configuration, such as missing libraries or headers. Resolve them by installing or copying the required dependencies into the correct location.
Building the Application
After successful configuration:
- On Windows with Visual Studio:
.sln file inside build/ and build the solution. Or build from the command line using:
cmake --build . --config Release
- On other platforms (e.g., using Make or Ninja):
cmake --build . --config Release
Note:
ThePOST_BUILDcommands inCMakeLists.txtwill copy the necessary DLLs, fonts, assets, and models into the final output folder (e.g.,build/Release/orbuild/Debug/, depending on your generator).
Running the Application
- Locate the output:
KolosalDesktop.exe on Windows) in a directory such as:
- build/Release/ (Visual Studio).
- build/ (single-config generators like Make).
- Check for required files:
/fonts folder next to the exe).
- Assets (/assets folder next to the exe).
- Models (/models folder next to the exe).
- OpenSSL and InferenceEngine DLLs (Windows).
- cURL DLL(s) (Windows).
Make sure these folders and files are present in the same directory as KolosalDesktop.exe.
- Double-click or run from terminal:
cd build/Release
./KolosalDesktop.exe
- Enjoy Kolosal AI!
Troubleshooting
- OpenSSL or CURL not found
external/openssl and external/curl respectively.
- Check environment variables like OPENSSLROOTDIR or CURLROOTDIR if needed.
- Update CMAKEPREFIXPATH if youโre placing these libraries somewhere non-standard.
- InferenceEngine libraries not found
external/genta-personal/lib actually contains InferenceEngineLib.lib or InferenceEngineLibVulkan.lib (on Windows).
- Adjust find_library paths in CMakeLists.txt if your structure differs.
- Missing Vulkan SDK
- ImGui not found
external/imgui folder is not empty.
- If you see compilation errors referencing ImGui headers, check that targetincludedirectories in CMakeLists.txt still points to the correct path.
- Resource or Icon issues on non-Windows
assets/resource.rc file is Windows-specific. For Linux/macOS builds, you can comment out or remove references to .rc if they cause issues.
- Runtime errors due to missing DLLs or dynamic libraries
.dll files next to the executable.
- On Linux/macOS, ensure .so/.dylib are in the library search path or same folder.