remove the YOLO-World engine and add a container build to verify it #17

Merged
cristhian merged 7 commits from remove-yoloworld-engine into main 2026-09-07 20:07:26 +00:00
7 Commits
Author SHA1 Message Date
cristhian f40e697b2a add a container build environment
Dockerfile provisions CUDA 12.8, ZED SDK 5.2, ONNX Runtime and Rust on
Ubuntu 24.04, the newest release Stereolabs ships a ZED SDK for, so the
node can be compiled and the build verified without installing the SDK
stack on the host.

The compile needs --gpus all: libsl_zed.so links against the CUDA driver
API, NVDEC and NVENC, which ship with the display driver rather than the
CUDA toolkit and so exist in no image. The container runtime mounts them
from the host, and only includes NVDEC/NVENC when the video capability
is requested.

Runs as the invoking user so build/ and bin/ are not left root-owned,
which needs the toolchain outside /root and the ZED SDK directory
readable to an arbitrary uid.
2026-09-07 14:33:58 -03:00
cristhian b4144dfba5 match the cargo profile to CMAKE_BUILD_TYPE
The dora bindings were always built with the debug profile and linked
from target/debug, so a release build still pulled in unoptimized arrow,
zenoh and opentelemetry code -- a 640 MB dora_zed against 48 MB once the
profile follows the build type.
2026-09-07 14:33:50 -03:00
cristhian d62f4fbb29 pin dora-rs to v1.0.1 instead of tracking main
Cloning main made the build non-reproducible and free to drift from the
dora runtime that launches the node. DORA_GIT_TAG can still pin a tag
explicitly, and an installed dora CLI continues to take precedence so
the bindings match the runtime, now with a warning when that CLI
predates the 1.0 this node targets.
2026-09-07 14:33:50 -03:00
cristhian 647be61b7b fix ONNX Runtime install layout so CMake can find it
The release tarball ships its CMake package files under lib/, but
onnxruntimeTargets.cmake resolves the library as <prefix>/lib64. Ubuntu
is multiarch, so CMake does not search lib64 for packages and ld.so does
not search /usr/local/lib64 at all, leaving find_package(onnxruntime)
failing on a stock install. Keep the libraries in lib64, move only the
package files to lib/cmake, and add lib64 to the linker path.
2026-09-07 14:33:33 -03:00
cristhian b16dfcd965 docs: clarify ONNX Runtime dependency and input handling
ONNX Runtime is a configure-time dependency for every build, not only
for the yolo_onnx engine. The event loop no longer inspects the input
id, so it grabs on any input rather than specifically on tick.
2026-09-07 14:30:01 -03:00
cristhian d6ae0f7fef remove dead split_labels helper
Its only caller was the deleted yoloworld_onnx.cc.
2026-09-07 14:29:52 -03:00
cristhian f1934c9b4a remove the YOLO-World open-vocabulary engine
Deletes the yoloworld_onnx engine, the CLIP BPE tokenizer, the standalone
test binary and both export scripts. Drops the update_vocabulary input and
the yoloworld_onnx/open_vocab dispatch from main.cc, along with the now
unused Engine::set_labels. Documentation follows.
2026-09-07 05:10:59 -03:00