Technical overview

From wafer map to defect pattern JSON in under 3 seconds.

Wafertune is an API service. You send wafer map data. We return structured defect pattern classifications.

Data flow

How your data moves through Wafertune

Data flow diagram: wafer map data from fab to Wafertune API to JSON classification response
Supported inputs

Wafer map formats Wafertune accepts

No preprocessing layer needed — Wafertune normalizes format differences at the API boundary.

Format Description Required fields
STDF Standard Test Data Format — WaferSort (WSR), EWS lot/wafer records. Most common in analog and power-device EWS flows. WRR, WIR records; die pass/fail bin data
CSV die map Binary or multi-bin CSV grid. Row-major order, X/Y die coordinates inferred from grid position or explicit columns. Bin value per die cell; wafer diameter (optional)
PNG wafer map Rendered wafer map image. Supports standard color conventions for pass/fail zones. Min 300×300px; aspect ratio approximately 1:1
HDF5 Hierarchical data format. Common in research fab environments and inline inspection tool exports. Dataset path; die coordinate arrays
Response schema

What comes back from the API

Every classification response is a structured JSON object. Fields are stable across model versions.

Response: POST /v1/classify
{
  "wafer_id": "LOT42_W03_EWS",
  "classification_time_ms": 2381,
  "pattern_classes": [
    {
      "class_id": "RING_EDGE_EXCL",     // Wafertune taxonomy ID
      "confidence": 0.94,              // 0.0 – 1.0
      "bbox": [0, 0, 300, 300],       // [x, y, w, h] in die units
      "process_origin_hint": "edge_bevel"
    },
    {
      "class_id": "CLUSTER_RANDOM",
      "confidence": 0.81,
      "bbox": [120, 95, 45, 52],
      "process_origin_hint": "particle_fallout"
    }
  ],
  "overall_yield_risk_score": 0.72,   // 0 = no risk, 1 = high risk
  "model_version": "wft-v1.4.2"
}
Integration paths

REST API direct vs Python SDK

REST API (any language)

Direct HTTP

  • Standard POST request, JSON body
  • Works with curl, requests, axios, fetch — any HTTP client
  • API key in Authorization header
  • Full response schema available immediately
  • Best for: existing pipeline integration, R, Julia, Perl, shell scripts
Python SDK (recommended)

wafertune-python

  • pip install wafertune
  • Handles STDF parsing, format detection, retry logic
  • Batch submission with async support
  • Typed response objects for IDE completion
  • Best for: new integrations, Jupyter notebooks, automation scripts
Performance

Latency and reliability

<2.5s P50 classification latency
<4s P99 classification latency
99.5% Uptime SLA (Production tier)
100 Max batch size per request

Retry behavior

The API returns HTTP 429 on rate limit and HTTP 503 on temporary capacity. Both are safe to retry with exponential backoff (suggested: 1s, 2s, 4s, 8s). The Python SDK handles retry automatically with configurable max_attempts.

Ready to see the API reference?

Full endpoint documentation, authentication guide, and error code reference.

See the API Reference Request Pilot Access