{ "schema_version": 1, "target": "MLX-8bit-Group64", "source_revision": "1d4bf0f2ff6012fd82039f2fa52739d0dd7c60c0", "validated_at": "2026-08-16T01:31:07.094962+00:00", "structural": { "passed": true, "passes": [ "artifact directory exists", "atomic build completion record", "local SHA-256 manifest", "all build-hashed files present (25)", "all build payload SHA-256 hashes match", "per-artifact quantization manifest", "artifact manifest base model", "artifact manifest source revision", "artifact manifest declares vanilla quantization", "plausible size 25.35 GB in [23, 30]", "required sidecar config.json", "required sidecar tokenizer_config.json", "required sidecar generation_config.json", "required sidecar preprocessor_config.json", "required sidecar video_preprocessor_config.json", "required sidecar chat_template.jinja", "required sidecar tokenizer.json", "required sidecar vocab.json", "required sidecar merges.txt", "required sidecar LICENSE", "chat template byte-identical to source", "generation_config.json semantically intact", "preprocessor_config.json semantically intact", "video_preprocessor_config.json semantically intact", "tokenizer.json byte-identical to source", "vocab.json byte-identical to source", "merges.txt byte-identical to source", "LICENSE byte-identical to source", "tokenizer config preserves chat_template", "tokenizer config preserves eos_token", "tokenizer config preserves pad_token", "tokenizer config preserves additional_special_tokens", "official internal architecture id retained", "MTP layer declaration retained", "vision configuration retained", "image special token id retained", "video special token id retained", "vision-start token id retained", "vision-end token id retained", "text architecture preserves num_hidden_layers", "text architecture preserves hidden_size", "text architecture preserves vocab_size", "text architecture preserves max_position_embeddings", "text architecture preserves full_attention_interval", "text architecture preserves layer_types", "text architecture preserves linear_conv_kernel_dim", "text architecture preserves linear_key_head_dim", "text architecture preserves linear_num_key_heads", "text architecture preserves linear_num_value_heads", "text architecture preserves linear_value_head_dim", "full vision configuration retained", "main safetensors readable", "vision tensors retained (333)", "main MLX bundle does not misplace MTP tensors", "MTP drafter tensors retained (15)", "MTP drafter model type", "all floating tensors finite" ], "failures": [], "warnings": [], "disk_size_bytes": 25350819237 }, "runtime": { "runtime": "mlx-vlm", "model": "/Users/oz/Documents/ChatGPT/qwen3.8-27b/qwen38-27b-quants/quantization-suite/artifacts/MLX-6bit-Group32", "artifact_role": "quantized_candidate", "source_revision": "1d4bf0f2ff6012fd82039f2fa52739d0dd7c60c0", "text_tests": [ { "id": "fact", "category": "factual", "passed": true, "failures": [], "text": "The capital of France is Paris.", "finish_reason": "stop", "prompt_tokens": 24, "generation_tokens": 8, "generation_tps": 11.769156093751425, "peak_memory_gb": 27.309369222, "wall_seconds": 1.8363882079720497, "loop_score": 0.0 }, { "id": "math", "category": "mathematical_reasoning", "passed": true, "failures": [], "text": "The user asks a simple multiplication problem: 6 rows of 7 blue marbles. I need to show a short calculation.\n\n6 × 7 = 42\n\n\n6 × 7 = **42** blue marbles.", "finish_reason": "stop", "prompt_tokens": 36, "generation_tokens": 52, "generation_tps": 10.491711370962427, "peak_memory_gb": 27.38134175, "wall_seconds": 5.26477558305487, "loop_score": 0.0 }, { "id": "code", "category": "coding", "passed": true, "failures": [], "text": "The user wants a Python function called `clamp(x, low, high)` that clamps `x` to the inclusive range `[low, high]`. This means:\n- If `x < low`, return `low`\n- If `x > high`, return `high`\n- Otherwise, return `x`\n\nThis is straightforward. I can use `max(low, min(x, high))` or use if/elif/else. The `max`/`min` approach is concise and Pythonic.\n\nThey want one fenced code block.\n\n\n```python\ndef clamp(x, low, high):\n return max(low, min(x, high))\n```", "finish_reason": "stop", "prompt_tokens": 67, "generation_tokens": 143, "generation_tps": 10.409432301474672, "peak_memory_gb": 27.472023692, "wall_seconds": 14.184512332780287, "loop_score": 0.0 }, { "id": "multiturn", "category": "multi_turn", "passed": true, "failures": [], "text": "cedar", "finish_reason": "stop", "prompt_tokens": 50, "generation_tokens": 3, "generation_tps": 15.602882424701306, "peak_memory_gb": 27.472023692, "wall_seconds": 0.5123967919498682, "loop_score": 0.0 }, { "id": "thinking_off", "category": "thinking_disabled", "passed": true, "failures": [], "text": "Yes, 17 is prime.\n\n**Reason:** It has no divisors other than 1 and itself (it is not divisible by 2, 3, or any other prime number less than its square root, $\\sqrt{17} \\approx 4.12$).", "finish_reason": "stop", "prompt_tokens": 25, "generation_tokens": 62, "generation_tps": 10.48871771290981, "peak_memory_gb": 27.472023692, "wall_seconds": 6.249060750007629, "loop_score": 0.0 }, { "id": "reasoning_low", "category": "reasoning_effort_low", "passed": true, "failures": [], "text": "Compare 3/5 and 5/9.\n\nCross multiply: 3 × 9 = 27, and 5 × 5 = 25.\n\nSince 27 > 25, 3/5 > 5/9.\n\n\n3/5", "finish_reason": "stop", "prompt_tokens": 60, "generation_tokens": 63, "generation_tps": 10.47646447749073, "peak_memory_gb": 27.472023692, "wall_seconds": 6.340470249997452, "loop_score": 0.0 }, { "id": "reasoning_high", "category": "reasoning_effort_high", "passed": true, "failures": [], "text": "We need answer user: Find smallest positive integer divisible by 6,8,15. Explain briefly. Need compute LCM. 6=2*3, 8=2^3, 15=3*5. LCM max powers: 2^3*3*5=120. Need final concise.\n\n\nThe smallest positive integer divisible by 6, 8, and 15 is their least common multiple (LCM).\n\nPrime factorizations:\n- 6 = 2 × 3\n- 8 = 2³\n- 15 = 3 × 5\n\nTake the highest power of each prime:\n- 2³, 3, 5\n\nLCM = 2³ × 3 × 5 = 8 × 3 × 5 = **120**.", "finish_reason": "stop", "prompt_tokens": 73, "generation_tokens": 182, "generation_tps": 10.402879071039868, "peak_memory_gb": 27.489369028, "wall_seconds": 17.946429082890972, "loop_score": 0.0 }, { "id": "long_form", "category": "long_form", "passed": true, "failures": [], "text": "Checksums serve as the foundational integrity layer for reproducible machine learning by providing cryptographic fingerprints for every artifact in the release pipeline, including raw datasets, preprocessed features, and model weights. By verifying that these hashes match expected values, engineers can guarantee that the exact same inputs were used during training and inference, eliminating subtle data drift or silent corruption that might otherwise lead to divergent model behavior. This deterministic verification ensures that any team member or automated system can reconstruct the precise state of the data environment, creating a verifiable baseline for consistency across different hardware or software configurations.\n\nImmutable revisions extend this integrity to the code and configuration layers by locking specific versions of source code, dependency libraries, and hyperparameters into unchangeable snapshots. Unlike mutable branches that can be altered after a release, immutable revisions ensure that the exact algorithmic logic and environment settings used to generate a model are preserved forever. This prevents \"bit rot\" or accidental updates to dependencies from altering model performance, allowing developers to trace any specific model output back to a precise, unalterable combination of code and data, thereby isolating variables during debugging or auditing processes.\n\nTogether, these mechanisms create a comprehensive audit trail that bridges the gap between experimental development and production deployment. When a model exhibits unexpected behavior in production, teams can compare the checksums and revision IDs of the live environment against the original training environment to pinpoint discrepancies, whether they stem from data changes or code updates. This transparency accelerates root cause analysis and builds trust among stakeholders, as every component of the ML system is accounted for and verifiable, reducing the risk of deploying models that behave differently than they did during validation.\n\nUltimately, the integration of checksums and immutable revisions transforms ML releases from opaque black boxes into transparent, auditable products. This approach not only satisfies regulatory and compliance requirements by providing clear evidence of model provenance but also fosters a culture of rigorous engineering practices within data science teams. By standardizing how artifacts are versioned and verified, organizations can scale their ML operations with confidence, knowing that reproducibility is not just a theoretical ideal but a practical, enforceable standard embedded in their release workflow.", "finish_reason": "stop", "prompt_tokens": 31, "generation_tokens": 430, "generation_tps": 10.314742225310587, "peak_memory_gb": 27.489369028, "wall_seconds": 42.02877908293158, "loop_score": 0.0 }, { "id": "non_english", "category": "non_english", "passed": true, "failures": [], "text": "太陽光が大気中の分子にぶつかると、波長の短い青い光が他の色よりも強く散乱されます。そのため、私たちの目には空全体が青く見えます。", "finish_reason": "stop", "prompt_tokens": 28, "generation_tokens": 41, "generation_tps": 10.536544060611645, "peak_memory_gb": 27.489369028, "wall_seconds": 4.228473083814606, "loop_score": 0.0 }, { "id": "json", "category": "structured_json", "passed": true, "failures": [], "text": "{\n \"name\": \"sample\",\n \"primes\": [2, 3, 5],\n \"active\": true\n}", "finish_reason": "stop", "prompt_tokens": 41, "generation_tokens": 33, "generation_tps": 10.578358387343139, "peak_memory_gb": 27.489369028, "wall_seconds": 3.4336860838811845, "loop_score": 0.0 } ], "tool_tests": [ { "id": "one_tool", "passed": true, "failures": [], "calls": [ { "name": "weather_at", "arguments": { "location": "Paris", "units": "celsius" } } ], "raw": "The user is asking to call weather_at for Paris in Celsius units.\n\n\n\n\n\nParis\n\n\ncelsius\n\n\n", "finish_reason": "stop", "dependent_raw": null }, { "id": "parallel_tools", "passed": true, "failures": [], "calls": [ { "name": "weather_at", "arguments": { "location": "Paris", "units": "celsius" } }, { "name": "weather_at", "arguments": { "location": "Austin", "units": "fahrenheit" } } ], "raw": "The user is asking to call weather_at in parallel for Paris (Celsius) and Austin (Fahrenheit). Since these are independent calls, they can be executed in the same block.\n\n\n\n\n\nParis\n\n\ncelsius\n\n\n\n\n\n\nAustin\n\n\nfahrenheit\n\n\n", "finish_reason": "stop", "dependent_raw": null }, { "id": "sequential_dependency", "passed": true, "failures": [], "calls": [ { "name": "weather_at", "arguments": { "location": "Paris", "units": "celsius" } } ], "raw": "The user is asking me to do the following:\n1. First, call weather_at for Paris in Celsius\n2. After receiving the result, create an event whose title is exactly the returned condition string\n\nSince the second step depends on the result of the first step, I need to wait for the first call to complete before making the second call.\n\nLet's start with the weather call first.\n\n\n\n\n\nParis\n\n\ncelsius\n\n\n", "finish_reason": "stop", "dependent_raw": "The weather condition is \"sunny\". Next, I need to create an event with the title exactly \"sunny\".\n\n\n\n\n\nsunny\n\n\n" }, { "id": "nested_json", "passed": true, "failures": [], "calls": [ { "name": "add_event", "arguments": { "title": "Release review", "attendees": [ "ana@example.test", "li@example.test" ], "metadata": { "release": { "model": "Qwen3.8-27B", "slot": 21 } } } } ], "raw": "The user is asking to call add_event with specific parameters:\n- title: \"Release review\"\n- attendees: [\"ana@example.test\", \"li@example.test\"]\n- metadata: {\"release\":{\"model\":\"Qwen3.8-27B\",\"slot\":21}}\n\nThis is a straightforward request. Let's make the function call.\n\n\n\n\n\nRelease review\n\n\n[\"ana@example.test\", \"li@example.test\"]\n\n\n{\"release\": {\"model\": \"Qwen3.8-27B\", \"slot\": 21}}\n\n\n", "finish_reason": "stop", "dependent_raw": null }, { "id": "invalid_recovery", "passed": true, "failures": [], "calls": [ { "name": "weather_at", "arguments": { "location": "Paris", "units": "celsius" } } ], "raw": "The user is asking to call weather_at for Paris with units=kelvin. However, the schema only allows \"celsius\" or \"fahrenheit\" for units. Therefore, kelvin violates the schema. The user has explicitly stated: \"If that violates the schema, recover by using celsius.\"\n\nSo I should call weather_at with location=Paris, units=celsius.\n\nShould I first try kelvin? The instructions say to call with kelvin, and if it violates the schema, recover with celsius. Since I know the schema, I can directly call with celsius. But the user's instruction is conditional: call with kelvin, and if it violates, recover. Since I know kelvin violates the schema (the enum is celsius/fahrenheit), I can directly call with celsius. That's the sensible recovery.\n\nLet's make the call.\n\n\n\n\n\nParis\n\n\ncelsius\n\n\n", "finish_reason": "stop", "dependent_raw": null } ], "vision_tests": [ { "id": "shapes_colors", "passed": true, "missing_patterns": [], "text": "From left to right, the three large shapes are:\n\n1. **Red square** \n2. **Blue circle** \n3. **Green triangle**\n\nThese match the labels directly beneath each shape in the image: “RED”, “BLUE”, and “GREEN” respectively.", "finish_reason": "stop" }, { "id": "printed_text", "passed": true, "missing_patterns": [], "text": "VISION CHECK 27B", "finish_reason": "stop" }, { "id": "chart", "passed": true, "missing_patterns": [], "text": "Based on the provided image:\n\n- The bar chart has three bars labeled **A**, **B**, and **C**.\n- The numbers printed above each bar are:\n - **A**: 60\n - **B**: 105\n - **C**: 135\n\nThe tallest bar is **C**, as it reaches the highest point on the y-axis, and the number printed above it is **135**.\n\n✅ **Answer: Bar C, with the number 135 printed above it.**", "finish_reason": "stop" } ], "mtp": { "passed": true, "drafter_kind": "mtp", "output_equivalent_temperature_zero": true, "accepted_drafts": 32, "drafted_tokens": 34, "acceptance_rate": 0.9411764705882353, "baseline_tps": 10.534608373597019, "mtp_tps": 12.708294642877327, "speedup": 1.2063376437161382, "measured_improvement": true, "baseline_wall_seconds": 5.081659916089848, "mtp_wall_seconds": 4.173762666992843, "advertise_acceleration": true }, "warnings": [], "phases": [ "mtp", "text", "tools", "vision" ], "validation_inputs": { "prompts_sha256": "136a918e5fee962f2b52f8e520a0275fd5ec5569181e0f5fdf4910ee3c34d528", "tools_sha256": "86ae46ebdbb0324c9672eec87e6b7f7683b0eb9c8c7169dcabdf646cf9bab122", "image_sha256": "0b1ae6badbe19a6049305c36d165a34cdf36df00033842e265339b2b7f057295" }, "metal_memory_policy": { "device": { "device_name": "Apple M5 Pro", "max_recommended_working_set_size": 55662788608, "memory_size": 68719476736, "architecture": "applegpu_g17s", "max_buffer_length": 41747087360, "resource_limit": 499000 }, "cache_limit_bytes": 256000000, "wired_limit_bytes": 54549532835, "previous_cache_limit_bytes": 65283502899, "previous_wired_limit_bytes": 0, "warnings": [] } }, "warnings": [], "overall_passed": true, "runtime_failures": [], "quality": { "schema_version": 1, "comparison_type": "cross-runtime output agreement against pinned BF16 source", "passed": true, "source_revision": "1d4bf0f2ff6012fd82039f2fa52739d0dd7c60c0", "embedding_model": { "repo_id": "sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2", "revision": "e8f8c211226b894fcb81acc59f3b34ba3efd5f42", "pooling": "attention-mask mean pooling followed by L2 normalization", "maximum_tokens": 256 }, "thresholds": { "mean_semantic_similarity": 0.55, "per_case_severe_regression": 0.25 }, "baseline_valid": true, "candidate_functional": true, "semantic_gate_passed": true, "validation_inputs_match": true, "validation_inputs": { "prompts_sha256": "136a918e5fee962f2b52f8e520a0275fd5ec5569181e0f5fdf4910ee3c34d528", "tools_sha256": "86ae46ebdbb0324c9672eec87e6b7f7683b0eb9c8c7169dcabdf646cf9bab122", "image_sha256": "0b1ae6badbe19a6049305c36d165a34cdf36df00033842e265339b2b7f057295" }, "mean_semantic_similarity": 0.9533392310142517, "exact_matches": 6, "comparisons": [ { "id": "fact", "reference_passed": true, "candidate_passed": true, "exact_match": true, "sequence_agreement": 1.0, "semantic_similarity": 1.0, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "math", "reference_passed": true, "candidate_passed": true, "exact_match": true, "sequence_agreement": 1.0, "semantic_similarity": 0.9999999403953552, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "code", "reference_passed": true, "candidate_passed": true, "exact_match": false, "sequence_agreement": 0.6210526315789474, "semantic_similarity": 0.9675936698913574, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "multiturn", "reference_passed": true, "candidate_passed": true, "exact_match": true, "sequence_agreement": 1.0, "semantic_similarity": 1.0, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "thinking_off", "reference_passed": true, "candidate_passed": true, "exact_match": true, "sequence_agreement": 1.0, "semantic_similarity": 0.9999998807907104, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "reasoning_low", "reference_passed": true, "candidate_passed": true, "exact_match": false, "sequence_agreement": 0.6030150753768844, "semantic_similarity": 0.8074852228164673, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "reasoning_high", "reference_passed": true, "candidate_passed": true, "exact_match": true, "sequence_agreement": 1.0, "semantic_similarity": 1.0, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "long_form", "reference_passed": true, "candidate_passed": true, "exact_match": false, "sequence_agreement": 0.33604336043360433, "semantic_similarity": 0.8582094311714172, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "non_english", "reference_passed": true, "candidate_passed": true, "exact_match": true, "sequence_agreement": 1.0, "semantic_similarity": 1.0000001192092896, "severe_regression": false, "candidate_loop_score": 0.0 }, { "id": "json", "reference_passed": true, "candidate_passed": true, "exact_match": false, "sequence_agreement": 0.9130434782608695, "semantic_similarity": 0.9001040458679199, "severe_regression": false, "candidate_loop_score": 0.0 } ], "functional_results": { "reference_text": { "passed": 10, "total": 10 }, "candidate_text": { "passed": 10, "total": 10 }, "reference_tools": { "passed": 5, "total": 5 }, "candidate_tools": { "passed": 5, "total": 5 }, "reference_vision": { "passed": 3, "total": 3 }, "candidate_vision": { "passed": 3, "total": 3 } }, "measurements": { "average_generation_tps": 11.107088812559562, "peak_memory_gb": 27.489369028, "artifact_bytes": 25350822273, "maximum_prompt_tokens_tested": 73, "loop_rate": 0.0 }, "warnings": [ "Semantic similarity is a measured embedding-model proxy, not ground-truth accuracy.", "Raw-logit equality is unavailable across all target runtimes; exact functional gates and output agreement are used for portable release validation.", "Sequence agreement is lexical and is reported diagnostically, not used as semantic accuracy." ] }, "quality_failures": [] }