/experiments/2_5_perspectives/

Section 2.5: evaluation-note skill alone vs with perspectives.md, on 10 proposals that follow industry consensus

Files in this folder

File / folderDescriptionSize
πŸ“ ../Up one level-
πŸ“„ CONTRACT.md8.6 KB
πŸ“„ README.md7.6 KB
πŸ“„ results.json81.2 KB
πŸ“„ results_hedge.json122.3 KB
πŸ“„ results_rep.json72.9 KB
πŸ“„ run.log433 B
πŸ“„ run.py15.3 KB
πŸ“„ run_hedge.log614 B
πŸ“„ run_hedge.py6.0 KB
πŸ“„ run_hedge_attack_rep.log188 B
πŸ“„ run_rep.log428 B
πŸ“„ summarize.py4.6 KB

README.md

2.5 Perspectives: a Skill decides how to write, Perspectives decide what to judge

English edition of the Chinese experiment experiments/2_9_neutralize/. The design, the models, the counts and the cross-vendor judge are the same; the skill, the 10 perspectives, the 10 proposals and the judge prompt are written natively in English, with the English cast (Jaxon, Saoirse, Kaitlynn, Aoife, Priya).

How to run

op run --env-file experiments/aib.env -- .venv/bin/python experiments_en/2_5_perspectives/run.py          # main experiment -> results.json
op run --env-file experiments/aib.env -- .venv/bin/python experiments_en/2_5_perspectives/run.py rep      # identical replicate -> results_rep.json
op run --env-file experiments/aib.env -- .venv/bin/python experiments_en/2_5_perspectives/run_hedge.py    # hedge pilot -> results_hedge.json
op run --env-file experiments/aib.env -- .venv/bin/python experiments_en/2_5_perspectives/run_hedge.py attack_rep   # 2nd run of the early "attack step" wording
.venv/bin/python experiments_en/2_5_perspectives/summarize.py   # summary block in results.json + chart data

All calls go through the AI Builder Space API. Models: deepseek-v4.1-flash and gemini-3.8-flash. Each run appends its cost to experiments_en/COSTS.md. Total for this folder: about $0.93.

Main experiment: skill only vs skill plus perspectives.md

Both conditions get the exact same writing skill (# Skill: evaluation note: verdict first, 2–3 sentences of reasons, 1–2 next steps, under 120 words). The only change is whether perspectives.md is in the context. That file holds 10 principles distilled from the idea memos I01–I10.

The test set is 10 proposals (Q01–Q10). Each follows the mainstream industry approach and collides head-on with one of the 10 principles: a framework survey, a prompt rewrite, a four-role agent pipeline, chunked vector RAG over 150 Markdown specs, agent-written TDD, LoRA fine-tuning for company knowledge, silent automatic memory, per-step approval, a month more of features, and choosing inference by decode tok/s.

Each writer runs at temperature 0 and writes one note per proposal per condition. The other vendor's model judges each note against the target principle: deepseek is judged by gemini, and gemini by deepseek. The judge answers two questions. endorsed_mainstream: did the note go along with the mainstream direction, including "agree with conditions"? hit_perspective: did it reject the core premise with the author's reason and alternative?

writer condition went along with consensus non-consensus call
deepseek-v4.1-flash skill only 4/10 5/10
deepseek-v4.1-flash same skill + perspectives.md 0/10 10/10
gemini-3.8-flash skill only 4/10 4/10
gemini-3.8-flash same skill + perspectives.md 0/10 10/10

The replicate run (results_rep.json, identical code) gave deepseek 4/10 and 5/10, and gemini 4/10 and 3/10, for skill only. With perspectives.md it gave 0/10 and 10/10 for both models. The skill-only numbers move by a point between runs even at temperature 0, and the proposals that flip are different ones. The with-perspectives result does not move.

Across the 4 skill-only notes per proposal (2 models Γ— 2 runs), the proposals split into two groups:

Hedge pilot: turning an idea memo into a note

Mirrors experiments/2_9_neutralize/run_v2_neutralize.py. The input is the grok transcripts of I01–I10 (experiments_en/corpus/transcripts_grok.json).

The cross-vendor judge counts the qualifiers and counterpoints each note adds (hedges) and whether the note weakens the claim (weakened).

writer condition added hedges (10 notes) notes weakened notes with a caveat/counterpoint section median words
deepseek-v4.1-flash default (run 1 / run 2) 20 / 26 8 / 6 7 / 7 451 / 448
deepseek-v4.1-flash perspective 1 2 0 45
gemini-3.8-flash default (run 1 / run 2) 1 / 1 0 / 1 0 / 0 118 / 127
gemini-3.8-flash perspective 0 0 0 47

By default, deepseek also pulled in outside research in 7 of 10 notes both times: "Supporting evidence" and "Sources" sections with links. It added none under the rules.

The 1 hedge and 2 "weakened" flags in deepseek's perspective condition are judge false positives. Those notes (I01, I08) are the transcript almost verbatim, with "I think" in front, which the rules asked for.

Section headings deepseek added by default (English twins of the Chinese "εΎ…ιͺŒθ― / θ‘₯ε……" and "θΎΉη•Œζ‘δ»ΆοΌˆι‡θ¦οΌŒεˆ«δΈ€εˆ€εˆ‡οΌ‰"):

The "separate attack step" wording

In the Chinese v1 run, the rule ζˆ‘θ―΄εΎ—δΈε―Ήηš„εœ°ζ–ΉοΌŒη•™η»™ε•η‹¬ηš„ζ”»ε‡»ηŽ―θŠ‚ made gemini append an "ζ”»ε‡»ηŽ―θŠ‚" rebuttal section to all 10 notes (the judge counted 27 added hedges). Deepseek wrote no rebuttal, but in 5 of 10 notes it listed points "for the attack step later". In English this mostly does not reproduce. Over 2 runs Γ— 10 memos Γ— 2 models (40 notes), one note has an in-note rebuttal: gemini, run 1, I06, ### Attack Step (Critiques & Counterpoints), with three counterpoints for fine-tuning. The judge scored that note 0 hedges, which it missed. Deepseek once acknowledged the step without writing it: "Ready for the attack step whenever you are." (run 2, I05).

Files