Mooncake/mooncake-integration/ollama/scripts/bridged_start.sh

40 lines
1.5 KiB
Bash

#!/usr/bin/env bash
# Build (if needed) and start the Go sidecar (bridged).
# Usage: bridged_start.sh [mooncake|local]
set -euo pipefail
source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/env.sh"
BACKEND="${1:-mooncake}"
if [ ! -x "$OMB_RUN/bridged" ] || [ "${OMB_REBUILD:-0}" = "1" ]; then
echo "[bridged] building"
(cd "$WS/bridge" && go build -o "$OMB_RUN/bridged" ./cmd/bridged)
fi
if ss -ltn 2>/dev/null | grep -qE "[:.]$OMB_BRIDGE_GRPC_PORT\b"; then
echo "[bridged] already on $OMB_BRIDGE_GRPC_PORT"; exit 0
fi
nohup "$OMB_RUN/bridged" \
-grpc-addr "127.0.0.1:$OMB_BRIDGE_GRPC_PORT" \
-grpc-unix "$OMB_SOCK/bridged.sock" \
-http-addr "127.0.0.1:$OMB_BRIDGE_HTTP_PORT" \
-store-backend "$BACKEND" \
-store-proxy-addr "127.0.0.1:$OMB_STORE_PROXY_PORT" \
-local-store-dir "$OMB_RUN/store-local" \
-slot-save-path "$OMB_SLOTS/" \
-block-size "${OMB_BLOCK_SIZE:-256}" \
-replica-num "${OMB_REPLICA_NUM:-1}" \
-min-prefix-blocks "${OMB_MIN_PREFIX_BLOCKS:-1}" \
-prior-get-gbps "${OMB_PRIOR_GBPS:-8}" \
-prior-prefill-tps "${OMB_PRIOR_TPS:-8000}" \
-arb-min-tokens "${OMB_ARB_MIN_TOKENS:-256}" \
-arb-safety "${OMB_ARB_SAFETY:-0.9}" \
> "$OMB_LOGS/bridged.log" 2>&1 &
echo $! > "$OMB_RUN/bridged.pid"
for _ in $(seq 1 40); do
curl -fsS "http://127.0.0.1:$OMB_BRIDGE_HTTP_PORT/healthz" >/dev/null 2>&1 && {
echo "[bridged] up (grpc $OMB_BRIDGE_GRPC_PORT, http $OMB_BRIDGE_HTTP_PORT, backend $BACKEND)"; exit 0; }
sleep 0.25
done
echo "[bridged] FAILED"; tail -25 "$OMB_LOGS/bridged.log"; exit 1