omle-server
Inference server for OMLE models, speaking the Open Inference Protocol over both REST and gRPC.
pip install omle-server
omle-server # built-in defaults
omle-server --help # every flag
omle-server --model-dir ./models --rest-port 9000
omle-server /etc/omle/server.json # an explicit config
This package is a delivery vehicle for a compiled binary, not a Python library.
Installing it puts omle-server on PATH; that console script execs the native
executable, so no Python remains in the process once the server is running.
Requirements
OpenSSL 3 must be present on the system. Everything else the server needs — gRPC, Abseil, protobuf, Drogon, jsoncpp, simdjson and the OMLE runtime itself — is linked statically into the binary, so there is nothing else to install.
OpenSSL is the deliberate exception. Bundling it would freeze a cryptographic library at build time, cut off from the security updates the operating system provides, and it could then only be patched by releasing a new wheel. It ships with every current Linux distribution and is in the Homebrew baseline on macOS:
# only if it is somehow missing
apt install libssl3 # Debian / Ubuntu
dnf install openssl-libs # Fedora / RHEL
brew install openssl@3 # macOS
Wheels are published for linux-x86_64, linux-aarch64 and macos-arm64. Other platforms build from source — see the repository README.
Configuring
Four sources, each overriding the one above it: built-in defaults, then a JSON config file, then the environment, then command-line flags.
omle-server init-config -o server.json # every setting, at its default
omle-server --config server.json
| Variable | Flag | Default | Meaning |
|---|---|---|---|
OMLE_CONFIG |
--config |
configs/server.json |
config file |
OMLE_MODEL_DIR |
--model-dir |
/models |
directory scanned for .omle files |
OMLE_REST_PORT |
--rest-port |
8080 |
REST listen port |
OMLE_GRPC_PORT |
--grpc-port |
8081 |
gRPC listen port |
OMLE_REST_THREADS |
--rest-threads |
one per core | REST workers |
OMLE_GRPC_THREADS |
--grpc-threads |
one per core | gRPC workers |
OMLE_MODEL_THREADS |
--model-threads |
1 |
threads per model |
OMLE_LOG_LEVEL |
--log-level |
info |
trace…error |
OMLE_MODEL_DIR=./models omle-server --rest-port 9000
omle-server --help # the full list
Environment sits below flags so a container image can set a baseline that
docker run still overrides.
There is deliberately no Python wrapper translating arguments into these. It could only restate what the binary already does, and would drift from it. To launch the server from Python, run it as a subprocess like any other program:
import os, subprocess
import omle_server
proc = subprocess.Popen(
[omle_server.binary_path()],
env={**os.environ, "OMLE_MODEL_DIR": "/models"},
)
omle_server.binary_path() returns the absolute path to the bundled
executable, and is the only function this package exposes.
Checking it works
curl localhost:8080/v2/health/ready # 200 once the registry has loaded
curl localhost:8080/v2/models/<name> # input/output metadata
Related packages
omle— the model IR and convertersomle-runtime— the local runtimeomle-spark— PySpark transformer
License
Apache-2.0
Release files for omle-server 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| omle_server-0.1.0-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| omle_server-0.1.0-py3-none-manylinux_2_28_x86_64.whl | Python 3 | none | Linux glibc 2.28+ x86-64 | Details |
| omle_server-0.1.0-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
Total release size: 24.3 MB
Release files / omle_server-0.1.0-py3-none-win_amd64.whl
| Download URL | omle_server-0.1.0-py3-none-win_amd64.whl |
|---|---|
| Size | 7.2 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
976ddd35dcb59de1f2b77e9536c43d5e0e8822c842185045737c78e8e0908644
|
|
BLAKE2b-256 checksum How to use checksums |
a069ae9fb9299a98e968e1722ddfdef7580304327951728d96c96f89d19f5a67
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency logRelease files / omle_server-0.1.0-py3-none-manylinux_2_28_x86_64.whl
| Download URL | omle_server-0.1.0-py3-none-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 10.1 MB |
| Tags | Linux glibc 2.28+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
4d3658e1d84ac9478648f0e9d0ec7ec28ea1bd42cc0e64acb9e84b5af51e4e6a
|
|
BLAKE2b-256 checksum How to use checksums |
2c7f9f6e1d1d868abe139dd2c1001928300ec3883ea647ad51b376db0d99b808
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency logRelease files / omle_server-0.1.0-py3-none-macosx_11_0_arm64.whl
| Download URL | omle_server-0.1.0-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 7.0 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
42c7d99358b8cedb8181521aaba4305968767f4e660052c89cdac7f27dde15d3
|
|
BLAKE2b-256 checksum How to use checksums |
107673c6fbae5fb4320f7569de3f9235ec44bb3c5a0a2addfac1596cec9f73dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency log