ALEX is an extensible AI assistant framework built in Python, featuring a modular skill system, voice capabilities, and multi-language support. It's designed to be easily extensible through a robust skill system while maintaining core assistant functionalities.
Note: This project is actively under development. Some features may be subject to change.
- Modular Skill System: Easy-to-create custom skills with built-in intent recognition
- Voice Interaction: Full voice command support with customizable voice responses
- Multi-Language Support: Built-in translation system (currently supporting English and Portuguese)
- Flexible Interface Modes:
- Command Line (cmd)
- Web Interface
- Voice Interface
- API Interface (in development)
- Process Management: Advanced process handling with scheduling capabilities
- Context Management: Built-in context system for maintaining conversation state
- Event System: Notification and event handling system
- Psychological Support: Based on ELIZA's therapeutic approach, enhanced for modern interaction
- Install the AlexBaseServer:
git clone https://github.com/Apoll011/AlexBaseServer
cd AlexBaseServer
# Follow AlexBaseServer installation instructions
- Install ALEX dependencies:
pip install -r requirements.txt
- Python 3.12+
- AlexBaseApi Up and running.
- pip package manager
Run ALEX with different configurations:
# Basic start
python -m alex -s
# Start with voice mode
python -m alex -s --voice
# Start with web interface
python -m alex -s -i web
# Start with different language
python -m alex -s -l pt
# Debug mode
python -m alex -s -d
ALEX uses a skill-based system for extending functionality. Go to SKILLS for more information on how to create a skill.
ALEX is built with several key components:
- Process System: Handles input processing and skill execution
- Intent System: Manages intent recognition and routing
- Interface System: Provides different interaction modes
- Translation System: Handles multi-language support
- Context Manager: Maintains conversation state
- Event System: Handles asynchronous events and notifications
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
- Based on the ELIZA psychological chatbot implementation in Python
- Uses AlexBaseAPI for core functionality
Contributions are welcome! Please feel free to submit pull requests.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request