Initial SQL-only 1C adapter baseline

This commit is contained in:
2026-07-22 03:03:47 +03:00
commit e2503b77e7
545 changed files with 184711 additions and 0 deletions
+50
View File
@@ -0,0 +1,50 @@
from __future__ import annotations
import argparse
import json
import time
from pathlib import Path
from check_inference_endpoint import check_endpoint
ROOT = Path(__file__).resolve().parents[1]
DEFAULT_REPORT = ROOT / "reports" / "inference-endpoint-wait.json"
def main() -> int:
parser = argparse.ArgumentParser(description="Wait for an OpenAI-compatible inference endpoint.")
parser.add_argument("--base-url", required=True)
parser.add_argument("--expected-model")
parser.add_argument("--timeout", type=int, default=900)
parser.add_argument("--interval", type=int, default=15)
parser.add_argument("--request-timeout", type=int, default=10)
parser.add_argument("--report", type=Path, default=DEFAULT_REPORT)
parser.add_argument("--print", action="store_true")
args = parser.parse_args()
deadline = time.monotonic() + args.timeout
attempts = []
while True:
result = check_endpoint(args.base_url, args.expected_model, args.request_timeout)
result["attempt"] = len(attempts) + 1
attempts.append(result)
if result["status"] == "ok":
report = {"status": "ok", "attempts": attempts}
break
if time.monotonic() >= deadline:
report = {"status": "failed", "attempts": attempts}
break
time.sleep(args.interval)
args.report.parent.mkdir(parents=True, exist_ok=True)
args.report.write_text(json.dumps(report, ensure_ascii=False, indent=2) + "\n", encoding="utf-8")
if args.print:
print(json.dumps(report, ensure_ascii=False, indent=2))
else:
print(f"Endpoint wait status: {report['status']} ({args.base_url})")
return 0 if report["status"] == "ok" else 1
if __name__ == "__main__":
raise SystemExit(main())