Vendoring HIP-LLM¶
HIP-LLM’s sources are copied into this repository, not depended on. This page records what, from where, and why.
What is vendored¶
Path |
Origin |
Contents |
|---|---|---|
|
|
The high-level API: |
|
same repository, |
The replication engine: hyperposteriors, imprecise envelopes, reliability transforms, baselines, benchmark evaluation, plotting, schemas |
|
same repository, |
HIP-LLM’s own tests, minus the live-API suite — see |
|
same repository |
The configuration and reference numerics those tests need |
The upstream commit the copy was taken from is recorded in
src/hip_llm/_VENDOR_COMMIT.
cat src/hip_llm/_VENDOR_COMMIT
Why vendored rather than depended on¶
HIP-LLM is not published on PyPI, so a dependency would have to be a git URL — which does not survive a PyPI release of this package, does not pin reproducibly without a commit hash, and adds a network fetch to every install, including in Colab and Kaggle sessions where that is the slowest step.
Vendoring makes this repository a single reproducible artefact: clone it, install it, and every number in the documentation is computable offline.
The cost is drift. Two things hold it down:
HIP-LLM’s own tests run here. All 157 of them, against the vendored copy. An accidental edit or a bad merge fails loudly rather than silently changing a reliability number.
The re-export is asserted complete. A test walks HIPLLM.__all__ and
hip_llm.__all__ and fails if any symbol is not reachable through
hiphopsllm.reliability.hipllm, so an upstream addition that is not carried
over is caught rather than quietly missing.
Licence¶
HIP-LLM is MIT. Its notice is retained verbatim as LICENSE.HIPLLM in the
repository root, and both licence files are declared in pyproject.toml. This
package is also MIT, so the combination is unambiguous.
Authorship of the vendored code is unchanged: Robab Aghazadeh Chakherlou, Qing Guo, Siddartha Khastgir, Peter Popov, Xiaoge Zhang and Xingyu Zhao. The paper it implements is
R. Aghazadeh-Chakherlou, Q. Guo, S. Khastgir, P. Popov, X. Zhang and X. Zhao, “A hierarchical imprecise probability approach to reliability assessment of large language models”, Reliability Engineering & System Safety 272 (2026) 112615. https://doi.org/10.1016/j.ress.2026.112615
Please cite it alongside this package.
Importing¶
Both packages remain importable under their own names, so existing code keeps working:
from HIPLLM import OperationalFailureProb # unchanged
import hip_llm # unchanged
and both are reachable through this package’s namespace:
from hiphopsllm import OperationalFailureProb, quick_inference_settings
One name is deliberately not passed through unchanged. HIP-LLM’s
OperationalProfile is a schema with parallel labels/weights arrays; this
package’s OperationalProfile is a mapping-shaped class that converts to it. The
HIP-LLM one is available as HIPLLMOperationalProfile.
Updating the vendored copy¶
git clone --depth=1 https://github.com/koo-ec/HIP_LLM /tmp/hipllm
rm -rf src/HIPLLM src/hip_llm
cp -r /tmp/hipllm/src/HIPLLM /tmp/hipllm/src/hip_llm src/
cp -r /tmp/hipllm/configs /tmp/hipllm/numerics .
cp /tmp/hipllm/tests/test_*.py tests/vendor/ # then re-remove the live-API suite
git -C /tmp/hipllm rev-parse HEAD > src/hip_llm/_VENDOR_COMMIT
pytest
pytest is the acceptance gate. If HIP-LLM’s own tests still pass and the
re-export completeness test still passes, the update is safe; if the second fails
it will name the symbols to add to src/HIP_HOPS_LLM/reliability/hipllm.py.