exportScript constant

String const exportScript

Python script to convert HuggingFace model to JSON weights.

Implementation

static const String exportScript = '''
import torch
import json
import base64
from transformers import DonutProcessor, VisionEncoderDecoderModel

# Load pretrained model
model = VisionEncoderDecoderModel.from_pretrained("naver-clova-ix/donut-base-finetuned-cord-v2")

# Export weights as JSON
weights = {}
for name, param in model.named_parameters():
  t = param.detach().cpu().float().numpy()
  weights[name] = {
      "shape": list(t.shape),
      "dtype": "float32",
      "data": base64.b64encode(t.tobytes()).decode("ascii")
  }

with open("weights.json", "w") as f:
  json.dump(weights, f)

print(f"Exported {len(weights)} weight tensors")
''';