🐋 OrpheusPyPractice
AI-Powered Music Generation & Interactive Composition Toolkit
Where artificial intelligence meets musical creativity through elegant Python workflows
🎵 What is OrpheusPyPractice?
OrpheusPyPractice is an experimental music and AI practice package that transforms the intersection of artificial intelligence and musical creativity into an elegant, accessible toolkit. It serves as a comprehensive platform for:
- AI-Powered Music Generation using HuggingFace's ChatMusician model
- ABC Notation Processing with automatic multi-format conversion
- Interactive AI Agents for conversational music composition
- Automated Workflows for batch music creation and processing
- Research and Education in computational musicology
🚀 Quick Start
Installation
pip install orpheuspypractice
System Dependencies
# Install required music processing tools
odep install musescore # Installs MuseScore3, abc2midi, ImageMagick
Your First Musical Creation
# 1. Set up your API key
export HUGGINGFACE_API_KEY="your_key_here"
# 2. Navigate to an example
cd examples/basic-ohfi-workflow/
# 3. Generate AI music
ohfi
# 4. Convert to playable formats
oabc MyProject_v1_prompt1.json
# 5. Enjoy your AI-generated music!
# Files created: .abc, .mid, .mp3, .jpg
🎭 Core Commands
🎼 Music Generation Pipeline
ohfi- HuggingFace Inference: Boot ChatMusician endpoint, generate music from prompts, auto-suspendoabc- ABC Alchemy: Convert ABC notation → MIDI → MP3 → Visual scoresomid2score- MIDI Oracle: Transform MIDI files into beautiful musical scores
🤖 AI Agent System
olca- Interactive LangChain agent with musical knowledge and tool accessoiv- Research agent for ArXiv paper analysis and musical research
⚡ Automation Workflows
wfohfi_then_oabc_foreach_json_files- Complete automation: AI inference → batch conversion → multi-format output
🔧 System Management
odep- Dependency installer for music processing tools
🏗️ Architecture
OrpheusPyPractice is built on two core submodules:
jgcmlib(≥1.0.59) - ABC notation processing and MIDI conversionjghfmanager(≥0.1.5) - HuggingFace endpoint management and inference
📚 Comprehensive Examples
Explore our curated examples that demonstrate real-world usage:
🎯 Basic OHFI Workflow
Perfect starting point - complete workflow from configuration to musical output
🎹 Chord Progression Generation
Advanced chord progressions across Classical, Jazz, Pop, Blues, and Progressive styles
🤝 AI Agent Integration
Interactive music composition through conversational AI using olca
🌊 Workflow Automation
Batch processing multiple musical compositions with complete automation
Each example includes:
- ✅ Complete configuration files
- ✅ Step-by-step instructions
- ✅ Expected outputs
- ✅ Troubleshooting guides
🔧 Configuration
HuggingFace Setup (orpheus-config.yml)
huggingface:
name: your-endpoint-name
namespace: your-username
repository: m-a-p/ChatMusician
token_env_var: HUGGINGFACE_API_KEY
Musical Prompts (musical.yml)
musical:
name: MyComposition
sname: v1
prompts:
melody: "Create a beautiful melody in C major with ABC notation..."
harmony: "Generate jazz chord progression with extensions..."
AI Agent (olca.yml)
api_keyname: OPENAI_API_KEY
model_name: gpt-4o-mini
temperature: 0.7
tracing: true
system_instructions: "You are a musical AI assistant..."
🎨 Use Cases
🎓 Education
- Music theory demonstration through AI generation
- Interactive composition learning
- Comparative analysis of musical styles
🎬 Content Creation
- Soundtrack generation for media projects
- Background music for videos and games
- Rapid prototyping of musical ideas
🔬 Research
- Computational musicology studies
- AI-human collaboration experiments
- Musical corpus development
🎵 Personal Practice
- Creative composition assistance
- Style exploration and learning
- Musical experimentation playground
📖 Documentation
- OHFI Usage Guide - Complete reference for AI music generation
- CLAUDE.md - Developer guidance and AI agent embodiment instructions
- MIETTE.md - The storytelling perspective on our package architecture
- Examples Directory - Hands-on tutorials and real-world workflows
🚀 Advanced Features
🔄 Automated Workflows
- Batch Processing: Generate multiple compositions in one session
- Cost Optimization: Automatic endpoint management reduces cloud costs
- Multi-format Output: Every composition becomes ABC, MIDI, MP3, and visual score
🧠 AI Agent Integration
- Conversational Composition: Chat with AI to develop musical ideas
- Tool Integration: Agents can execute music generation commands
- Educational Interactions: Learn music theory through AI dialogue
📊 Research Capabilities
- ArXiv Integration: Research musical AI developments
- Analysis Tools: Study generated compositions programmatically
- Corpus Development: Build datasets for musical AI research
🔍 Quality Assurance
- Validated Examples: All examples tested and verified
- Error Handling: Graceful failure recovery in batch processing
- Documentation: Comprehensive guides with troubleshooting
- Type Safety: Modern Python practices with proper error messages
🤝 Contributing
We welcome contributions! Areas of particular interest:
- Additional musical styles and prompts
- New AI model integrations
- Educational example development
- Documentation improvements
- Research applications
🐛 Troubleshooting
Common Issues
- Missing ABC notation: Ensure prompts explicitly request ABC format
- Endpoint errors: Verify HuggingFace permissions and endpoint status
- System dependencies: Run
odep install musescorefor complete setup - API limits: Monitor usage and consider endpoint management
Getting Help
- Check the comprehensive OHFI Usage Guide
- Review example configurations in examples/
- Consult troubleshooting sections in individual example READMEs
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🌟 What's Next?
OrpheusPyPractice is continuously evolving. Future developments include:
- Integration with additional AI music models
- Enhanced educational features
- Expanded research capabilities
- Community-contributed musical styles and examples
🌸 "Every command is a spell, every composition a conversation between human creativity and artificial intelligence." - Miette
Start your musical AI journey today! 🎵✨
Metadata
Release files for orpheuspypractice 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| orpheuspypractice-0.3.1.tar.gz | 25.4 kB | Without provenance | Details for orpheuspypractice-0.3.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| orpheuspypractice-0.3.1-py3-none-any.whl | Python 3 | none | any | Details for orpheuspypractice-0.3.1-py3-none-any.whl |
Total release size: 50.5 kB
Release files / orpheuspypractice-0.3.1.tar.gz
| Download URL | orpheuspypractice-0.3.1.tar.gz |
|---|---|
| Size | 25.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a5614af833a2d1538b5f15c4a9609f1013205332d180722259eaed2415b03286
|
|
BLAKE2b-256 checksum How to use checksums |
d30e041d47e8a8145d5e9e456e6d6d5a111f3b6647f0815f4d758c71d6132526
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|
Release files / orpheuspypractice-0.3.1-py3-none-any.whl
| Download URL | orpheuspypractice-0.3.1-py3-none-any.whl |
|---|---|
| Size | 25.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
427e383498ef82a0672c49b31c2e24e4b56474894cb7ba199697017ac569d7f5
|
|
BLAKE2b-256 checksum How to use checksums |
331bf5d523f429aba859ea4c17e608c915b52a7cb6a88ef79cd7a2b6ec393c5d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|
Security for orpheuspypractice 0.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.