Local AI Orchestration to Make Privacy and Performance Possible
A modular, extensible, and high-performance framework for running AI tasks locally, designed with privacy, portability, and scalability at its core.
Solo Server JS enables developers to orchestrate AI tasks on local devices with minimal setup. By leveraging on-device computation, it ensures privacy, reduces latency, and eliminates cloud dependency. With built-in tools for benchmarking and profiling, Solo Server JS is perfect for building cutting-edge AI solutions.
All computations happen locally on the device, ensuring that your data never leaves your system.
Optimized for low-latency AI tasks, with support for on-device acceleration (e.g., GPUs, TPUs).
Add custom AI tasks or categories with ease using the modular architecture.
Integrated tools for performance measurement, resource utilization analysis, and optimization.
Supports multiple AI domains:
- NLP: Tasks like Fill-Mask, Question Answering, Sentence Similarity
- Vision: Image Classification, Object Detection, Image Segmentation
- Audio: ASR, Text-to-Speech, Audio Classification
- Installation
- Quick Start
- Supported Categories and Tasks
- Benchmarking and Profiling
- Testing
- Contributing
- License
Install Solo Server JS using npm:
npm install solo-server-js
Run the server to access AI tasks locally:
const soloServer = require('solo-server-js');
soloServer.start(() => {
console.log('Solo Server is running on http://localhost:3000');
});
Use the built-in tasks for quick results. Example: Fill-Mask (NLP task):
const { run } = require('solo-server-js/src/categories/nlp/fillMask');
const result = await run({
sentence: 'The sky is [MASK].',
mask: '[MASK]'
});
console.log(result); // Output: "The sky is <predicted-word>."
Task | Description | Supported |
---|---|---|
Fill-Mask | Predicts words to replace masked tokens in a sentence. | ✅ |
Question Answering | Answers questions based on a given context. | ✅ |
Sentence Similarity | Determines how similar two sentences are. | ✅ |
Text Classification | Assigns labels to given text. | ✅ |
Text Generation | Produces new text by predicting the next word in a sequence. | ✅ |
Task | Description | Supported |
---|---|---|
Image Classification | Assigns labels to an image. | ✅ |
Object Detection | Identifies objects and their locations in an image. | ✅ |
Image Segmentation | Divides an image into regions mapped to objects or segments. | ✅ |
Task | Description | Supported |
---|---|---|
Audio Classification | Classifies audio into predefined categories. | ✅ |
ASR | Converts spoken audio to text. | ✅ |
Text-to-Speech | Converts text to natural-sounding speech. | ✅ |
Measure performance for AI tasks using the benchmarking scripts:
node benchmarks/nlp/fillMask.benchmark.js
Analyze memory and CPU usage for AI tasks:
node profiles/nlp/fillMask.profile.js
Run the test suite to ensure functionality:
npm test
We welcome contributions to make Solo Server JS even better! Here’s how you can contribute:
- Fork the repository.
- Create a new branch (
feature/my-new-feature
). - Commit your changes (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature/my-new-feature
). - Create a pull request.
- Multimodal Support:
- Document Question Answering
- Zero-Shot Audio Classification
- Advanced Benchmarking Features:
- Comparative Benchmarks Across Tasks
- GUI for Local Orchestration:
- Intuitive dashboards for task management and profiling
This project is licensed under the MIT License. See the LICENSE file for details.
For questions, feedback, or support:
- Email: your.email@example.com
- GitHub: Solo Server JS Repository