ElevenTools is a comprehensive toolbox for ElevenLabs, providing a user-friendly interface for text-to-speech generation with advanced features and bulk processing capabilities.
- Phonetics processing moved to Ollama: We've migrated the phonetics processing to use Ollama, a local language model, for improved performance and privacy.
- Bug fix: Resolved an issue with the speaker boost parameter to ensure it functions correctly.
- Dynamic voice and model selection from the ElevenLabs library
- Text variable support for personalized audio generation
- Random and fixed seed options for reproducible results
- Customizable voice settings (stability, similarity, style, speaker boost)
- Single and bulk audio generation
- CSV support for batch processing
- Review and playback of generated audio
- Ollama integration for local language model processing, including phonetics
- Ensure you have Python 3.10 or later installed.
- Clone this repository:
git clone https://github.com/your-username/eleventools.git cd eleventools
- Install the required packages:
pip install -r requirements.txt
- Create a
.streamlit/secrets.toml
file in the root directory with your API key:ELEVENLABS_API_KEY = "your_elevenlabs_api_key"
- (Optional) Create a
.streamlit/config.toml
file to customize Streamlit's appearance and behavior.
ElevenTools integrates with Ollama for local language model processing, including phonetics. To use this feature, you need to install Ollama and download the appropriate model:
-
Install Ollama:
- For macOS and Linux:
curl https://ollama.ai/install.sh | sh
- For Windows: Download and install from Ollama's official website
- For macOS and Linux:
-
Download the required model: After installing Ollama, open a terminal and run:
ollama pull llama3.1:8b
This will download the small and efficient Llama 3.1:8b model, which is currently used by ElevenTools.
-
Ensure Ollama is running: Ollama should start automatically after installation. If it's not running, you can start it manually:
- On macOS/Linux:
ollama serve
- On Windows: Run the Ollama application
- On macOS/Linux:
For more information on Ollama, visit ollama.ai.
Run the Streamlit app:
streamlit run app.py
Navigate to the provided local URL to access the ElevenTools interface.
- Prepare a CSV file with columns: 'text', 'filename' (optional), and any variables used in the text.
- Use the Bulk Generation page to upload your CSV and generate multiple audio files.
- Choose between random or fixed seed generation for consistent results.
-
Implement automated testing- Unit tests for core functions
- Integration tests for API interactions
- End-to-end tests for user workflows
-
Integrate OLLAMA
- Implement OLLAMA integration in the codebase
- Create tests for OLLAMA integration
- Test and improve enhancing process
-
Enhance UI/UX
- Implement progress bars for audio generation
- Improve error messaging and user feedback
- Create a more intuitive layout for voice settings
-
Optimize performance
- Implement caching for frequently used data
- Optimize bulk generation for large datasets
-
Security enhancements
- Implement proper API key management
- Add user authentication for multi-user support
-
Improve data management
- Implement a database for storing generation history
- Create export options for generated audio metadata
- Develop a pronunciation memory system
-
Expand features
- Add search functionality for voice IDs
-
Documentation
- Create comprehensive API documentation
- Develop a user guide with examples and best practices
-
Enhance Voice-to-Voice functionality
- Add voice cleanup features
-
UI/UX improvements (continued)
- Implement a dark mode option
Implement automated testing- Unit tests for core functions
- Integration tests for API interactions
- End-to-end tests for user workflows
- Integrate OLLAMA
- Research OLLAMA API and integration requirements
- Design integration architecture
- Implement OLLAMA integration in the codebase
- Create tests for OLLAMA integration
- Enhance UI/UX
- Implement progress bars for audio generation
- Improve error messaging and user feedback
- Create a more intuitive layout for voice settings
- Implement a dark mode option
- Optimize performance
- Implement caching for frequently used data
- Optimize bulk generation for large datasets
- Security enhancements
- Implement proper API key management
- Add user authentication for multi-user support
- Improve data management
- Implement a database for storing generation history
- Create export options for generated audio metadata
- Develop a pronunciation memory system
- Expand features
- Add search functionality for voice IDs
- Enhance Voice-to-Voice functionality
- Add voice cleanup features
- Documentation
- Create comprehensive API documentation
- Develop a user guide with examples and best practices
ElevenTools is open-source software released under a custom license.
- Free for individual use and for companies with less than $10 million in annual revenue and fewer than 50 employees.
- Commercial licensing required for larger companies.
- Use for training AI models is prohibited without explicit permission.
Please see the full license for all terms and conditions.
For commercial licensing inquiries, please contact [your contact information].
Contributions are welcome! Please feel free to submit a Pull Request.
If you encounter any problems or have any questions, please open an issue in this repository.