-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCuratorRun.lean
More file actions
40 lines (36 loc) · 1.8 KB
/
Copy pathCuratorRun.lean
File metadata and controls
40 lines (36 loc) · 1.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import Eureka
/-!
The curator ablation (DESIGN_CURATOR L7-i), live on the Nat domain: the
standing configuration — symbolic proposers + mutation stream — run
twice with identical seeds and budgets, without and with the LLM in
Lenat's seat. No NL proposer rung: the curator tends a symbolic stream.
Instruments: admissions per judge slot, mutants born and their yield,
kill decisions, and (with the curator) boosts/damps/flags against what
the agents went on to earn. Requires Bedrock credentials; NOT in CI.
Curator transcript to `transcripts/curator-ablation.jsonl` (R1).
Run with `lake env lean CuratorRun.lean`.
-/
open Lean Eureka.Runtime
set_option maxHeartbeats 400000000 in
#eval show MetaM Unit from do
let templates := [identityH, commH, idemH, assocH, distribH, mixerH].map Agent.ofConj
let base : EvolveConfig :=
{ generations := 6, judgeBudget := 40, perAgentCap := 25,
seedGenomes := templateGenomes, mutationRoundRobin := 1 }
IO.println "════ control: symbolic + round-robin mutation, no curator ════"
let control ← evolveWith (templates ++ [specializerH]) base
IO.println ""
IO.println "════ experiment: same population, the LLM in Lenat's seat ════"
let ccall ← Eureka.LLM.withTranscript "transcripts/curator-ablation.jsonl"
"curator" (Eureka.LLM.invoke {})
let cured ← evolveWith (templates ++ [specializerH])
{ base with curatorCall := some ccall }
IO.println ""
IO.println s!"control: {control.corpus.facts.size} facts, \
{control.dead.size} dead, {control.population.size} agents"
IO.println s!"experiment: {cured.corpus.facts.size} facts, \
{cured.dead.size} dead, {cured.population.size} agents"
unless cured.labels.isEmpty do
IO.println "curator notes:"
for (n, note) in cured.labels do
IO.println s!" {n}: {note}"