def stream_parse_model_header()

in scripts/parser.py [0:0]


def stream_parse_model_header(url):
    # Create a new nested progress bar (position=1 for enabling nested bars)
    progress = tqdm(desc="Downloading model", unit="B", unit_scale=True, position=1)
    with RangeFetcher(url, progress_bar=progress) as fetcher:
        # 1) find graph payload
        before, graph_off, graph_len = locate_graph_header(fetcher)
        # 2) stream‐parse only node/name/input/output fields
        graph_struct = extract_graph_structure(fetcher, graph_off, graph_len)
        # 3) fetch any ModelProto fields after graph (small headers, metadata)
        after = fetcher.fetch(graph_off + graph_len, None)
    # 4) rebuild minimal ModelProto
    tag = _VarintBytes((7 << 3) | 2)
    length = _VarintBytes(len(graph_struct))
    model_bytes = before + tag + length + graph_struct + after
    # 5) parse with ONNX
    model = onnx.ModelProto()
    model.ParseFromString(model_bytes)
    strip_data(model.graph)
    return model