omega-api · Python client
A thin, typed Python client for the Omega-API geometric judge. It sends one turn to the judge over HTTP, reads the gate, and returns a decision your app can act on.
This is not a wrapper. It is a comfort layer over one HTTP call. Every future SDK is a thin client over the same judge.
Zero dependencies (standard library only). Python 3.9+. Apache-2.0.
What it does
Omega-API measures whether the process in an agent conversation is moving — turn by turn — and returns a decision.
There is no client-side session state to manage: the judge keeps it server-side, per session_id. The interface is
open; the judging method is proprietary.
Before you start: register → key → judge → meter
- Register and create a project at your Omega-API account page.
- Get an API key (
oapi_live_…). - Judge: one call per turn.
- Meter: your first 100 judgments are free; after that, billing applies.
There is no anonymous access. Set your key in the environment:
export OMEGA_API_KEY=oapi_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Install
pip install omega-api
Quick start
from omega_api import Omega
omega = Omega() # reads OMEGA_API_KEY
decision = omega.judge(
input="customer message",
output="agent reply",
)
if decision.release:
show(reply) # PROCEED or Shadow mode
elif decision.is_clarify:
regenerate_then_call_again()
elif decision.is_suppress:
stop_or_escalate()
turn_id is omitted by default, so the judge assigns a unique one and returns it (decision.turn_id). When
session_id is omitted, the client mints a fresh one for the call.
Act on the gate
Read the gate and act before you display the agent's response:
| gate action | what your app does |
|---|---|
release |
show the original response |
clarify |
do not release yet — ask the agent to realign / regenerate, then call again |
suppress |
do not release — stop / escalate / fall back per your policy |
none |
Shadow mode — observe only, show the original |
In Shadow mode the gate always returns none. Operator mode is opt-in per key. The helpers decision.release,
decision.is_clarify, and decision.is_suppress read the gate directly.
Real multi-turn conversations
Keep one session_id per conversation:
session = omega.session("support-ticket-123")
d1 = session.judge(input="hi", output="hello")
d2 = session.judge(input="my order never arrived", output="let me check that for you")
Fail-open is a policy, not a default
judge() raises on every error — auth, bad request, 409 TURN_CONFLICT, rate limit, server, transport. If you want
to release the original when the judge is unreachable, opt in explicitly:
decision = omega.judge_or_release(input=msg, output=reply)
# on a transport/server failure: decision.release is True, decision.judged is False
Only transport and server errors are treated as fail-open. Auth, request-shape, conflict, and rate-limit still raise.
What Omega-API does not claim
It measures whether the process moved. It does not promise the agent achieved the user's goal — the two are independent. Act and bill on the movement; read the outcome separately.
Errors
OmegaConfigError · OmegaAuthError · OmegaRequestError · OmegaConflict · OmegaRateLimited ·
OmegaServerError · OmegaTransportError — all subclasses of OmegaError.
On the roadmap
observed_event() — anchoring a real business outcome to a session — is planned for a future release. It requires a
key with the events capability. Most first integrations never send events; that is a legitimate state, not an error.
Links
- Learn more: https://omega.dailui.com/integrations.php
- Examples & HTTP runner: https://github.com/DaiLui/omega-api-examples
License
Apache-2.0.
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 omega_api-0.1.0.tar.gz.
File metadata
- Download URL: omega_api-0.1.0.tar.gz
- Upload date:
- Size: 12.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
012fed32482a0549565fc1aae9fd01ea77d763e598d6eeb2a92301efedc8128c
|
|
| MD5 |
5940c42af42f4da76b18790518b6b813
|
|
| BLAKE2b-256 |
1270f7efd2411a763a94625ea29b751e2fbaffd5c66ab98ffac4d7b7a87fb895
|
File details
Details for the file omega_api-0.1.0-py3-none-any.whl.
File metadata
- Download URL: omega_api-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
707411330306597f5187f3beb647fca5f1989fd39b7bbe92b80a6a7a51573b29
|
|
| MD5 |
d2ffe0157598ee228c7a6eaa73ab0cf3
|
|
| BLAKE2b-256 |
634f2cc9a76250377ae9b54e7e95a1ed98e81e1c5fb12e0902bbba629a4810b5
|