pyisolate Documentation
pyisolate is a Python library for running extensions across multiple isolated virtual environments with RPC communication.
Contents:
Overview
pyisolate solves dependency conflicts by isolating extensions in separate venvs while maintaining seamless host-extension communication through AsyncRPC.
Key Features
Dependency Isolation: Each extension gets its own virtual environment
Transparent RPC: Seamless communication between host and extensions
PyTorch Sharing: Optionally share PyTorch models across processes for memory efficiency
Simple API: Easy to use with minimal configuration
Quick Example
from pyisolate import ExtensionManager
async def main():
manager = ExtensionManager("./extensions")
await manager.start()
# Extensions can be called transparently
result = await manager.extensions['my_extension'].process_data(data)
await manager.stop()
Installation
pip install pyisolate