Lumaktaw sa pangunahing nilalaman
Premier Solutions
Mga Inobasyon sa Artificial Intelligence

How to Test AI Models on Your WordPress Tasks: A Blind-Test Kit

Benchmarks do not use your tasks. Here is a blind test for Claude Sonnet 5.5, Opus 5.5 and GPT-6.1 Sol on five WordPress jobs, with prompts, a rubric and a tested script.

Ipinapakita sa orihinal na Ingles ang nilalamang wala pang available na salin.

AI Models on Your WordPress

Public benchmarks do not use your tasks, and the model that wins one leaderboard can lose on your WordPress work. This post gives you a blind test you can run in an afternoon: five WordPress tasks, a scoring rubric and a script that hides which model wrote which answer. It works for Claude Sonnet 5.5, Claude Opus 5.5, GPT-6.1 Sol or any model you want to compare.

Why test blind

If you know which model wrote an answer, you will judge it differently. A short script that relabels the outputs as A, B and C removes that bias, and you only open the key after scoring. It also helps to give every model the same prompt and the same settings, and to record the settings you used.

The five tasks

Copy each prompt as written, and replace the bracketed parts with your own material.

  1. Gutenberg block: "Build a custom Gutenberg block called Testimonial with fields for quote, author, role and image. Include block.json and a server-side render callback. Follow the WordPress Coding Standards and escape all output."
  2. JSON-LD: "Using only the page text below, write valid Service and FAQPage JSON-LD that matches the visible text exactly. Do not add any claim that is not in the text." Then paste a real service page.
  3. Security review: "Review this WordPress plugin code for security problems. List each issue with the line and a fix." Then paste the snippet below.
  4. n8n workflow: "Write an n8n workflow as importable JSON. A webhook receives a lead form (name, email, budget, message). If budget is 5000 or more, send a Slack message to #sales; otherwise add a row to a Google Sheet. Include error handling."
  5. Service-page rewrite: "Rewrite this 150-word service page intro. Answer first, no hype words, and use only the facts provided." Then paste a real intro and its facts.

The security snippet, with six planted flaws

This code is deliberately unsafe. Never use it on a site; it exists to see whether a model finds the flaws.

add_action( 'wp_ajax_save_note', 'ps_save_note' );
function ps_save_note() {
    global $wpdb;
    $title = $_POST['title'];
    $body  = $_POST['body'];
    $wpdb->query( "INSERT INTO {$wpdb->prefix}ps_notes (title, body) VALUES ('$title', '$body')" );
    echo '<p>Saved: ' . $title . '</p>';
    if ( ! empty( $_FILES['attachment'] ) ) {
        move_uploaded_file(
            $_FILES['attachment']['tmp_name'],
            WP_CONTENT_DIR . '/uploads/' . $_FILES['attachment']['name']
        );
    }
    wp_die();
}

The planted flaws are: no nonce check, no capability check, unsanitized input, an unprepared SQL query, unescaped output, and an unrestricted file upload that trusts the file name. Score each model on how many it finds and on false alarms.

A script that hides the model names

Save each output as task1__sonnet.txt, task1__opus.txt, task1__sol.txt and so on in one folder. This script copies them to a second folder with random labels and writes the key to a file. We ran it on sample files and it produced the expected output.

import json, random, shutil, sys
from pathlib import Path

src, dst = Path(sys.argv[1]), Path(sys.argv[2])
dst.mkdir(exist_ok=True)
key = {}
tasks = sorted({f.name.split("__")[0] for f in src.glob("task*__*.txt")})
for t in tasks:
    files = sorted(src.glob(f"{t}__*.txt"))
    random.shuffle(files)
    for label, f in zip("ABCDEFG", files):
        shutil.copy(f, dst / f"{t}_{label}.txt")
        key[f"{t}_{label}"] = f.stem.split("__")[1]
Path("key.json").write_text(json.dumps(key, indent=2))

Run it as python blind.py outputs blinded, score the files in blinded, and open key.json only afterwards.

Score each output

Score Meaning
5 Works as written, secure, follows the standards, needs only cosmetic edits
3 Works after small fixes, or has one real flaw
1 Needs a rewrite or has a serious flaw
0 Does not work or is unsafe

Check PHP with phpcs --standard=WordPress where it applies, import the n8n JSON into n8n, and validate JSON-LD with Google's Rich Results Test. Time how long you need to review and fix each output with a stopwatch.

Record the cost

From each API's usage data, note input and output tokens, then price them at list prices per million tokens: Claude Sonnet 5.5 at $2 input and $10 output, Claude Opus 5.5 at $4 and $20, and GPT-6.1 Sol at $2 and $10. Our guide to cost per task, not per token explains why you should divide by completed tasks, not just add up tokens.

Keep a simple sheet with one row per task and model:

Task Model Score (0 to 5) Review minutes Tokens in / out Cost
1 Gutenberg block Your model Your score Your minutes Your counts Your cost

Fair-test rules

  • Same prompt, same material, one run per model per task, and note the effort or reasoning setting you used.
  • Opus 5.5 always thinks and has changed API behavior, so read our Opus 5.5 breaking changes guide before you call it.
  • Decide your pass and fail rules before you read any output.
  • Report losses honestly, including any task where the cheapest model won.
  • Make no claim beyond your five tasks.

Frequently asked questions

Why not just use a public benchmark?

Public benchmarks measure their own tasks. Your plugins, themes and workflows may stress different skills, so a small test on your own work is more useful.

How many tasks do I need?

Five tasks give you a first signal, and 20 give you a steadier one. Add tasks from your real backlog as you go.

Can I use this for other models?

Yes. Change the file names in the script and add the new model's prices to your cost sheet.

Want a model chosen and wired in for you?

We test models on your tasks, then connect the best fit to WordPress or Next.js with spend limits and fallbacks. See our AI integration services and our custom plugin development.

Ekspertong tulong kapag kailangan mo

Isakatuparan ang mga ideyang ito.

Mula sa isang partikular na pag-aayos hanggang sa buong website, tutulungan ka naming linawin ang saklaw at maisagawa ito.

Pag-usapan ang website koCustom na WordPress Web Development

Ibahagi ang iyong mga layunin. Karaniwan kaming tumutugon sa loob ng 4 na oras na may mga tanong at praktikal na susunod na hakbang.

Isinulat ni

Muhammad Junaid Tariq

Si Muhammad Junaid Tariq ay isang full-stack na web developer at ang nagtatag ng Premier Solutions. Sa 5+ taong karanasan at 200+ na naihatid na proyekto, dalubhasa siya sa custom na WordPress development, WordPress pag-aalis ng seguridad at malware, Next.js na application, at teknikal na SEO para sa mga kliyente sa buong US, UK, at Europe.

Bumalik sa Blog
Kaugnay na serbisyo

Ang kadalubhasaan sa likod ng gabay na ito.

Tuklasin ang mga serbisyong makakatulong sa pagsasagawa ng natutunan mo.

Magpatuloy sa pagbasa

Lahat ng artikulo