74 lines · 2.7 KB · TypeScript
RawDownload
import { describe, expect, test } from "bun:test"; import type { Config } from "../../src/config/env";import { getEngineSpec } from "../../src/modules/engines/engine-spec";import { detectBackend } from "../../src/modules/engines/process/process-utilities"; describe("process utilities", () => {  test("does not classify frontend server paths as vLLM inference", () => {    expect(      detectBackend([        "next-server",        "/home/ser/projects/vllm/lmvllm/frontend/.next/standalone/frontend/server.js",      ]),    ).toBeNull();  });   test("classifies exact vLLM and SGLang launch invocations", () => {    expect(detectBackend(["/opt/venvs/vllm/bin/vllm", "serve", "/models/model-a"])).toBe("vllm");    expect(detectBackend(["python", "-m", "vllm.entrypoints.openai.api_server"])).toBe("vllm");    expect(detectBackend(["python", "-m", "sglang.launch_server", "/models/model-b"])).toBe(      "sglang",    );  });}); describe("SGLang command builder", () => {  test("emits the launch flags accepted by the installed SGLang runtime", () => {    const command = getEngineSpec("sglang").buildCommand(      {        id: "glm-5.1",        name: "GLM-5.1",        model_path: "/mnt/llm_models/GLM-5.1-478B-REAP-NVFP4",        backend: "sglang",        env_vars: null,        tensor_parallel_size: 4,        pipeline_parallel_size: 1,        max_model_len: 202752,        gpu_memory_utilization: 0.94,        kv_cache_dtype: "fp8_e4m3",        max_num_seqs: 1,        trust_remote_code: true,        tool_call_parser: "glm47",        reasoning_parser: "glm45",        enable_auto_tool_choice: true,        quantization: "modelopt_fp4",        dtype: null,        host: "0.0.0.0",        port: 8000,        served_model_name: "glm-5.1",        python_path: null,        extra_args: {          "chunked-prefill-size": 4096,          "page-size": 128,          "enable-metrics": true,        },        max_thinking_tokens: null,        thinking_mode: "conservative",      } as never,      { sglang_python: "python", data_dir: "/tmp/local-studio-test" } as Config,    );     expect(command.slice(0, 4)).toEqual(["python", "-m", "sglang.launch_server", "--model-path"]);    expect(command).toContain("/mnt/llm_models/GLM-5.1-478B-REAP-NVFP4");    expect(command).toContain("--context-length");    expect(command).toContain("--max-running-requests");    expect(command).toContain("--mem-fraction-static");    expect(command).toContain("--tool-call-parser");    expect(command).toContain("--reasoning-parser");    expect(command).not.toContain("--enable-auto-tool-choice");    expect(command).not.toContain("--max-model-len");    expect(command).not.toContain("--max-num-seqs");    expect(command).not.toContain("--gpu-memory-utilization");  });});

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t