Python SDK for the Predixus Orca product
Project description
🐳 Orca Python SDK
The Orca Python SDK enables developers to define and register Python-based algorithms into the Orca framework.
Orca exists to make it seamless to build scalable, production-grade ML or analytics pipelines on timeseries data.
🚀 Getting Started
Before using this SDK, you should install the Orca CLI and start Orca Core.
- Install the Orca CLI Ensure that Docker is installed on your system.
Linux / macOS
curl -fsSL https://raw.githubusercontent.com/Predixus/orca/main/install-cli.sh | bash
Windows
Use WSL (Windows Subsystem for Linux) and run the above command inside your WSL shell.
Once installed, follow the instructions in the Orca documentation to start the Orca Core service.
- Start the Orca Server
orca start
- Print out the server details
orca status
- Install the Orca sdk into your python project:
pip install orca-time
- Start building out your algorithms
Write a file defining your algorithms and what windows trigger them:
# main.py
from orca_python import Processor
proc = Processor("ml")
@proc.algorithm("MyAlgo", "1.0.0", "MyWindow", "1.0.0")
def my_algorithm() -> dict:
return {"result": 42}
if __name__ == "__main__":
proc.Register()
proc.Start()
Then run your python file to register it with orca-core:
ORCA_CORE=grpc://localhost:32770 PROCESSOR_ADDRESS=172.18.0.1 PROCESSOR_PORT=8080 python main.py
Replace the contents of ORCA_CORE, PROCESSOR_ADDRESS and PROCESSOR_PORT with the output of orca status.
- Emit a window to orcacore TBD
Check out more examples here.
🧱 Key Concepts
Processor: A container for algorithms, exposing them to the Orca Core service.
Algorithm: A Python function decorated and registered for DAG execution.
Window: A temporal trigger used to activate algorithms.
⚠️ Naming Rules
Algorithm and Window names must be in PascalCase.
Versions must follow semantic versioning (e.g., 1.0.0).
Dependencies must be declared only after their algorithm is registered.
Algorithms cannot depend on others from a different window type (enforced by Orca Core).
👥 Community
GitHub Issues: https://github.com/predixus/orca-python/issues
Discussions: Coming soon!
📄 License
This SDK is part of the Orca ecosystem, but licensed under the MIT License.
See the full license terms (here)[./LICENSE].
Built with ❤️ by Predixus
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orca_python-0.7.10.tar.gz.
File metadata
- Download URL: orca_python-0.7.10.tar.gz
- Upload date:
- Size: 39.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.1 CPython/3.13.7 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5b94a6112fb27eaece722b05650a6ea0c0fef74088670bee0560b0fe24889c4a
|
|
| MD5 |
6c946c9c1d20b69f049256f11d04506f
|
|
| BLAKE2b-256 |
654fd2893072406c4d96005580b56703f239d273f680f779be293f17e477bf79
|
File details
Details for the file orca_python-0.7.10-py3-none-any.whl.
File metadata
- Download URL: orca_python-0.7.10-py3-none-any.whl
- Upload date:
- Size: 40.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.1 CPython/3.13.7 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1613253666901818a547c17bf8bb5e4bc9a7cd8d398a2f44b74056c52e34db1a
|
|
| MD5 |
4dcaaabdfcb6483b010fb2af016f706d
|
|
| BLAKE2b-256 |
abfa1cb4047f591dbc2afc45462043be3f91a1b4b3efc281634c4fbc4e54e6ce
|