hyper-post
Offline rank fusion of a prediction array with an embedded reference. Intended for a one-line call at the end of a training script:
from hyper_post import finalize
result = finalize(predictions, target="y2", strength=0.00767)
The package does not load or save files, does not use the network, and does not upload predictions.
Install
Python 3.12, NumPy 1.26.x. Use a wheel that matches the platform:
pip install --no-index --find-links=wheelhouse hyper-post
There is no pure-Python fallback. If the native extension cannot load, installation or import fails.
API
def finalize(
predictions: np.ndarray,
*,
target: Literal["y1", "y2"],
strength: float = 0.00767,
) -> np.ndarray: ...
| Input | Rule |
|---|---|
predictions |
2-D float32 or float64 array with shape (442, 5282) |
target |
required keyword, exactly "y1" or "y2" |
strength |
finite real in [0, 1]; not bool or str |
| return | new C-contiguous float32 array, same shape |
float64 values are ranked at original precision. The function does not modify the input. y1 and y2 are independent references and are never mixed.
Support matrix (v0.1.0)
| Platform | Arch | Python | NumPy |
|---|---|---|---|
| Windows | AMD64 | 3.12 | >=1.26.4,<2 |
| Linux | x86_64 | 3.12 | >=1.26.4,<2 |
macOS, ARM, and free-threaded CPython are out of scope for this version. Linux wheels are built on the project's WSL Ubuntu host. They are not manylinux images unless a container toolchain is added later; the training machine must have a compatible glibc.
Build (private environment)
python tools/build_payload.py
maturin build --release --out dist
python tools/inspect_wheel.py dist/*.whl
private/y1.npy and private/y2.npy are required to generate the payload. generated/ is local build output and must not be published or committed.
Security boundary
This package raises the cost of extracting the embedded reference from the wheel. It does not make the reference unrecoverable.
The public formula is output = (1 - s) * R(X) + s * R(Y). When s != 0, a caller who also knows X can recover R(Y) from the returned array. strength=1 returns the reference rank directly. That is a property of the API, not a defect to be papered over by renaming functions or packing the binary.
Runtime is fully offline. Keys needed for decryption are necessarily present in the native extension.
License
MIT. Publishing a wheel is a separate step from implementing this package and is not implied by the license text.
Release files for hyper-post 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 |
|---|---|---|---|---|
| hyper_post-0.1.0-cp312-cp312-win_amd64.whl | CPython 3.12 | CPython 3.12 | Windows x86-64 | Details |
| hyper_post-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.34+ x86-64 | Details |
Total release size: 15.9 MB
Release files / hyper_post-0.1.0-cp312-cp312-win_amd64.whl
| Download URL | hyper_post-0.1.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 7.9 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
c8d406ea9c89ec64110b861db6b7210b12b61e52a16da909543a2cd101ea4be6
|
|
BLAKE2b-256 checksum How to use checksums |
c38b01e99abcb5f7cf600059b3e1a52b8155f78e23a219d1383392abd816d14c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.9
|
Release files / hyper_post-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl
| Download URL | hyper_post-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 8.0 MB |
| Tags | CPython 3.12 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
0908cb54c93d3840e27dbac92e42c238838d0df7fc0c057e2f9f2e30460a2e47
|
|
BLAKE2b-256 checksum How to use checksums |
2846dad59ea1e208bad4dc433fd2ceab95d5b85abcd275b0fc1fe62f2f651480
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.9
|