{
"cells": [
{
"cell_type": "markdown",
"id": "0fbe4e92",
"metadata": {},
"source": [
"# Building a grounded memory worker: an iterative distillation experiment\n",
"\n",
"**Project:** SDP 2026 memory engine · **Experiment date:** 8 October 2026\n",
"\n",
"**Scope correction:** the product is general-purpose memory. The coding-focused runs below are initial experiments. The automatic coding-only second stage was stopped before training; general-purpose corpus, training and evaluation are recorded from current receipts in Section 12c.\n",
"\n",
"This notebook reconstructs the actual local, AI-assisted experiment from saved artifacts. It records unsuccessful attempts and measured limitations as well as successful runs. It is a research record, not a claim that every experiment was originally conducted inside Jupyter.\n",
"\n",
"**Question:** Can a small model on an 8 GB laptop GPU extract durable facts with exact evidence, synthesize supported observations, and answer with citations?\n",
"\n",
"Run All refreshes tables and figures from local receipts. It does **not** start training, download weights, modify databases, or invoke a paid teacher. Outputs remain visible when the notebook is shared without large ignored datasets. Missing results are explicitly marked pending."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "f6005162",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:09.042998Z",
"iopub.status.busy": "2026-10-08T17:00:09.042830Z",
"iopub.status.idle": "2026-10-08T17:00:09.535004Z",
"shell.execute_reply": "2026-10-08T17:00:09.534650Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Report refreshed: 2026-10-08T17:00:09.532810+00:00\n",
"Python: 3.12.13\n"
]
}
],
"source": [
"from pathlib import Path\n",
"from collections import Counter\n",
"from datetime import datetime, timezone\n",
"import json, hashlib, re, ast, sys\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"from IPython.display import display, Markdown, Image\n",
"ROOT = next(p for p in [Path.cwd(), *Path.cwd().parents] if (p / 'Cargo.toml').exists())\n",
"SLM = ROOT / 'slm-distill'\n",
"DATA = SLM / 'data/research-v2'\n",
"FIG = SLM / 'reports/figures'\n",
"FIG.mkdir(parents=True, exist_ok=True)\n",
"def read(path):\n",
" p = Path(path)\n",
" return json.loads(p.read_text()) if p.exists() else None\n",
"def rows(path):\n",
" p = Path(path)\n",
" return [json.loads(line) for line in p.read_text().splitlines() if line.strip()] if p.exists() else []\n",
"def show(value):\n",
" display(pd.DataFrame(value)) if isinstance(value, list) else display(value)\n",
"def digest(path): return hashlib.sha256(Path(path).read_bytes()).hexdigest()\n",
"def missing(label): display(Markdown(f'**Pending / unavailable:** {label}. No result is inferred.'))\n",
"def show_acceptance(receipt):\n",
" identity=receipt.get('deployment_identity_before',{})\n",
" show([{'worker_model':receipt.get('worker_model',receipt.get('health',{}).get('worker_model')),\n",
" 'passed':receipt.get('passed'),'served_gguf_sha256':identity.get('served_gguf_sha256'),\n",
" 'started_at':receipt.get('started_at'),'finished_at':receipt.get('finished_at')}])\n",
" show([{'check':name,'passed':value} for name,value in receipt.get('checks',{}).items()])\n",
" graph=receipt.get('steps',{}).get('correction_graph',{})\n",
" assertions=graph.get('assertions',[])\n",
" observations=[a for a in assertions if a.get('kind')=='observation']\n",
" supports=[e for e in graph.get('edges',[]) if e.get('relation') in ('supports','derives')]\n",
" projection=receipt.get('projection',{})\n",
" show([{'assertions':len(assertions),'active_assertions':sum(a.get('status')=='active' for a in assertions),\n",
" 'observations':len(observations),'support_edges':len(supports),\n",
" 'observations_with_two_distinct_supports':sum(len({e['to_id'] for e in supports if e['from_id']==a['id']})>=2 for a in observations),\n",
" 'projected_nodes':len(projection.get('nodes',[])),'projected_relationships':len(projection.get('relationships',[]))}])\n",
" examples=[]\n",
" for topic in ('location','preference'):\n",
" recalled=receipt.get('steps',{}).get(topic+'_recall',{}).get('results',[])\n",
" hit=next((r for r in recalled if any(source.get('quote') for source in r.get('sources',[]))),None)\n",
" if hit:\n",
" examples.append({'query_topic':topic,'recalled_statement':hit.get('statement'),\n",
" 'source_quote':next(source['quote'] for source in hit['sources'] if source.get('quote'))})\n",
" if examples: show(examples)\n",
" show([{'query_topic':topic,'answer':receipt.get('steps',{}).get(topic+'_reflect',{}).get('answer'),\n",
" 'citation_count':len(receipt.get('steps',{}).get(topic+'_reflect',{}).get('citations',[]))}\n",
" for topic in ('location','preference')])\n",
" if receipt.get('recheck_provenance'): display(receipt['recheck_provenance'])\n",
" if receipt.get('error'): print('Acceptance error:',receipt['error'])\n",
" display(Markdown('Full jobs, graph and retrieval responses remain in the local acceptance receipt. Quoted examples aid inspection; the check results above determine acceptance.'))\n",
"\n",
"print('Report refreshed:', datetime.now(timezone.utc).isoformat())\n",
"print('Python:', sys.version.split()[0])"
]
},
{
"cell_type": "markdown",
"id": "69bcab0c",
"metadata": {},
"source": [
"## 1. Define the task and acceptance criteria before comparing models\n",
"\n",
"The unavailable original worker artifact meant we needed a reproducible replacement. The worker has three tasks:\n",
"\n",
"| Task | Input | Output and acceptance |\n",
"|---|---|---|\n",
"| Extraction | Timestamped events + earlier facts | Durable claims, exact source quotes, valid source indices, entity/slot/value and correction metadata |\n",
"| Consolidation | Accepted facts | Useful observations supported by at least two distinct supplied facts |\n",
"| Reflection | Question + retrieved evidence | Answer with valid citations, or explicit insufficient evidence |\n",
"\n",
"PostgreSQL is the evidence store; Neo4j is a derived projection. A queued retain response alone does not prove extraction or graph completion. Final operational checks must follow jobs through extraction, consolidation, projection, retrieval and correction.\n",
"\n",
"We distinguish **schema acceptance**, **semantic support**, **reference coverage**, and **live pipeline completion**. These are different measurements."
]
},
{
"cell_type": "markdown",
"id": "fea1f59c",
"metadata": {},
"source": [
"## 2. Iteration ledger: observation → hypothesis → change → check\n",
"\n",
"| Iteration | Observation | Hypothesis and intervention | Evidence / remaining boundary |\n",
"|---|---|---|---|\n",
"| Bootstrap 1.7B | Original GGUF unavailable | Learn the output contract from deterministic examples | Excellent synthetic scores; not evidence of natural conversation quality |\n",
"| Naturalistic refinement | Synthetic success did not transfer | Add teacher-labeled coding timelines and deterministic replay | Natural extraction remained weak; exact quotes and IDs frequently failed |\n",
"| Memory optimization | Full output logits caused OOM | Checkpoint answer-only output-head chunks | Training completed within laptop capacity |\n",
"| Structured decoding | Valid-looking claims had invalid source attribution/IDs | Bind source and quote together; constrain enums and existing IDs | Original blocked job completed with the 1.7B bridge worker |\n",
"| Stronger base | Remaining errors were semantic as well as structural | Use Qwen3-4B-Instruct-2507 and NF4 QLoRA | 7,141-token smoke OOM; 4,091-token smoke passed after dtype correction |\n",
"| Corpus expansion | Narrow examples could encourage memorization | Public traces + diverse stacks/domains/behaviors; family/repository splits | Audit, counts and leakage receipts below |\n",
"| Label adjudication | Auditor incorrectly rejected valid null timestamps | Re-review flags against the actual worker contract | Keep original audit and revised decisions; exclude remaining rejected cases |\n",
"| Stage 2 + comparison | Need evidence that fine-tuning helps the stronger base | Matched decoder/quantization comparison and fresh held-out subset | Results appear only when their receipts exist |\n",
"\n",
"Changes to base, data and decoder occurred together across generations. Cross-generation improvement cannot be attributed to model size alone."
]
},
{
"cell_type": "markdown",
"id": "c45a01f0",
"metadata": {},
"source": [
"## 3. Bootstrap: useful contract learning, insufficient generalization\n",
"\n",
"The first adapter used Qwen3-1.7B, 1,260 training examples, 140 validation examples and 280 synthetic test examples. The matched 28-case comparison below uses identical prompts with thinking disabled. CPU/GPU differed, so its latency is not a fair speed comparison."
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "e934f7e4",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:09.537486Z",
"iopub.status.busy": "2026-10-08T17:00:09.537348Z",
"iopub.status.idle": "2026-10-08T17:00:09.547097Z",
"shell.execute_reply": "2026-10-08T17:00:09.546827Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
model
\n",
"
n
\n",
"
accepted
\n",
"
exact
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
base
\n",
"
28
\n",
"
27
\n",
"
13
\n",
"
\n",
"
\n",
"
1
\n",
"
bootstrap
\n",
"
28
\n",
"
28
\n",
"
28
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" model n accepted exact\n",
"0 base 28 27 13\n",
"1 bootstrap 28 28 28"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"first 28 identical synthetic held-out cases; exact slot/support/citation targets, not natural conversation accuracy\n",
"Latency comparable: False\n",
"bootstrap synthetic test\n"
]
},
{
"data": {
"text/plain": [
"{'model': 'memex-extractor',\n",
" 'dataset_sha256': 'd44e9139e24f0fe2fe8aa70106888948574fa898854bf470e9e8d461b8cecc50',\n",
" 'scope': 'synthetic held-out project identities; no real-world accuracy claim',\n",
" 'cpu_only': False,\n",
" 'count': 280,\n",
" 'counts': {'extract:total': 160,\n",
" 'extract:accepted': 160,\n",
" 'extract:first_try': 160,\n",
" 'extract:semantic_exact': 160,\n",
" 'tp': 160,\n",
" 'fp': 0,\n",
" 'fn': 0,\n",
" 'secret_leaked': 0,\n",
" 'consolidate:total': 40,\n",
" 'consolidate:accepted': 40,\n",
" 'consolidate:first_try': 40,\n",
" 'consolidate:semantic_exact': 40,\n",
" 'reflect:total': 80,\n",
" 'reflect:accepted': 80,\n",
" 'reflect:first_try': 80,\n",
" 'reflect:semantic_exact': 80},\n",
" 'seconds': 457.133}"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"refined synthetic test\n"
]
},
{
"data": {
"text/plain": [
"{'model': 'memex-extractor:local-v1',\n",
" 'dataset_sha256': 'd44e9139e24f0fe2fe8aa70106888948574fa898854bf470e9e8d461b8cecc50',\n",
" 'scope': 'synthetic held-out project identities; no real-world accuracy claim',\n",
" 'cpu_only': False,\n",
" 'count': 280,\n",
" 'counts': {'extract:total': 160,\n",
" 'extract:accepted': 160,\n",
" 'extract:first_try': 160,\n",
" 'extract:semantic_exact': 138,\n",
" 'tp': 144,\n",
" 'fp': 23,\n",
" 'fn': 16,\n",
" 'secret_leaked': 0,\n",
" 'consolidate:total': 40,\n",
" 'consolidate:accepted': 39,\n",
" 'consolidate:first_try': 38,\n",
" 'consolidate:semantic_exact': 39,\n",
" 'reflect:total': 80,\n",
" 'reflect:accepted': 80,\n",
" 'reflect:first_try': 80,\n",
" 'reflect:semantic_exact': 80},\n",
" 'seconds': 1273.547}"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"comparison = read(SLM/'data/eval/bootstrap-comparison.json')\n",
"if comparison:\n",
" show([{'model': k, 'n': comparison['n'], **comparison[k]} for k in ('base','bootstrap')])\n",
" print(comparison['scope'])\n",
" print('Latency comparable:', comparison['latency_comparison_valid'])\n",
"for label, path in [('bootstrap synthetic test','bootstrap-student-full'), ('refined synthetic test','refined-bootstrap-full')]:\n",
" result = read(SLM/f'data/eval/{path}/summary.json')\n",
" if result: print(label); display(result)\n",
" else: missing(label)"
]
},
{
"cell_type": "markdown",
"id": "ada1b35d",
"metadata": {},
"source": [
"## 4. Natural conversations exposed the failure\n",
"\n",
"The refined 1.7B adapter mixed teacher-labeled conversations with replay. Its naturalistic extraction result under the earlier unconstrained decoder was only 18 accepted windows out of 33. This set was subsequently used for diagnosis, so it is **development evidence**, not a fresh final test.\n",
"\n",
"The semantic judge's supported fraction is measured over emitted claims in accepted windows. Its earlier recall calculation also excludes failed windows; it must not be presented as end-to-end recall. Later comparisons retain failures in the coverage denominator."
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "b40189b2",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:09.548658Z",
"iopub.status.busy": "2026-10-08T17:00:09.548572Z",
"iopub.status.idle": "2026-10-08T17:00:09.562845Z",
"shell.execute_reply": "2026-10-08T17:00:09.562495Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
task
\n",
"
n
\n",
"
accepted_fraction
\n",
"
first_try_fraction
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
extract
\n",
"
33
\n",
"
0.545455
\n",
"
0.515152
\n",
"
\n",
"
\n",
"
1
\n",
"
consolidate
\n",
"
10
\n",
"
0.600000
\n",
"
NaN
\n",
"
\n",
"
\n",
"
2
\n",
"
reflect
\n",
"
32
\n",
"
0.968750
\n",
"
NaN
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" task n accepted_fraction first_try_fraction\n",
"0 extract 33 0.545455 0.515152\n",
"1 consolidate 10 0.600000 NaN\n",
"2 reflect 32 0.968750 NaN"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"{'planted_visible': 30,\n",
" 'recall': 0.5,\n",
" 'claims': 43,\n",
" 'secret': 0.023255813953488372,\n",
" 'supported': 0.6744186046511628,\n",
" 'trivial': 0.023255813953488372,\n",
" 'unsupported': 0.27906976744186046}"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Representative validator failures:\n",
"- every claim needs paired source indices and exact quotes: claim \"The readings SQLite table has meterId as a non-nullable text reference to meters.id, recordedAt\n",
"- claim \"The wattwatch readings endpoint fails when SQLite compares a timestamp string to an ISO date because...\": quote \"src/routes/api/meters/[id]/readings/+ser\n",
"- extraction schema: related.assertion_id must be a UUID\n"
]
}
],
"source": [
"natural = read(SLM/'data/pi-corpus/eval/local-v1.json')\n",
"if natural:\n",
" e=natural['extract']\n",
" show([{'task':'extract','n':e['windows'],'accepted_fraction':e['accepted'],'first_try_fraction':e['first_try']},\n",
" {'task':'consolidate','n':natural['consolidate']['items'],'accepted_fraction':natural['consolidate']['accepted']},\n",
" {'task':'reflect','n':natural['reflect']['items'],'accepted_fraction':natural['reflect']['accepted']}])\n",
" display(e.get('judge'))\n",
" print('Representative validator failures:')\n",
" for failure in e.get('failures',[])[:3]: print('-', failure)\n",
"else: missing('1.7B naturalistic evaluation')"
]
},
{
"cell_type": "markdown",
"id": "e7de7050",
"metadata": {},
"source": [
"## 5. Fix the representation without weakening validation\n",
"\n",
"The canonical API uses parallel `source_indices` and `quotes` arrays. The constrained generation format emits `source_quotes: [{source_index, quote}]` first, binding each quote to visible spans from that event. A lossless codec restores the API contract. Consolidation identifiers are restricted to supplied facts. The Python teacher/training pipeline and Rust runtime share schema files.\n",
"\n",
"Exact text does **not** imply entailment: a model can quote a rejected proposal and still incorrectly describe it as a decision. Semantic grading remains necessary. Short teacher quotes are widened to the shortest permitted containing span; source index and claim statement stay unchanged."
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "2eaa7b09",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:09.563750Z",
"iopub.status.busy": "2026-10-08T17:00:09.563661Z",
"iopub.status.idle": "2026-10-08T17:00:09.583484Z",
"shell.execute_reply": "2026-10-08T17:00:09.582236Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
file
\n",
"
sha256
\n",
"
bytes
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
src/model/extract_schema.json
\n",
"
6da41f75e14a316c5335e3587db678cbe41d2ef8fe11ca...
\n",
"
3663
\n",
"
\n",
"
\n",
"
1
\n",
"
src/model/consolidate_schema.json
\n",
"
ac89fc0a3c4c993715ea9154affebf200912a13013cd4d...
\n",
"
1064
\n",
"
\n",
"
\n",
"
2
\n",
"
src/model/paired_sources.txt
\n",
"
f802c0c4790fcead4400a860aebb243bdd351fc2d4964c...
\n",
"
265
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" file \\\n",
"0 src/model/extract_schema.json \n",
"1 src/model/consolidate_schema.json \n",
"2 src/model/paired_sources.txt \n",
"\n",
" sha256 bytes \n",
"0 6da41f75e14a316c5335e3587db678cbe41d2ef8fe11ca... 3663 \n",
"1 ac89fc0a3c4c993715ea9154affebf200912a13013cd4d... 1064 \n",
"2 f802c0c4790fcead4400a860aebb243bdd351fc2d4964c... 265 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"schema_files = [ROOT/'src/model/extract_schema.json', ROOT/'src/model/consolidate_schema.json', ROOT/'src/model/paired_sources.txt']\n",
"show([{'file':str(p.relative_to(ROOT)), 'sha256':digest(p), 'bytes':p.stat().st_size} for p in schema_files])"
]
},
{
"cell_type": "markdown",
"id": "097ea893",
"metadata": {},
"source": [
"## 6. Research-informed base model and training method\n",
"\n",
"Selected **[Qwen3-4B-Instruct-2507](https://huggingface.co/Qwen/Qwen3-4B-Instruct-2507)**, Apache-2.0, revision `cdbee75f17c01a7cc42f958dc650907174af0554`. Its non-thinking instruction behavior and compatible Qwen3 export path made it a practical controlled candidate. Official instruction-following results motivated the choice; they are not project measurements.\n",
"\n",
"[Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B) was considered, but a different architecture/export path would add uncertainty. We do not claim the selected model is globally optimal.\n",
"\n",
"The implementation uses Transformers + PEFT + bitsandbytes: NF4, double quantization, bfloat16 compute, rank-16 LoRA, alpha 32, dropout 0.05, answer-only loss and gradient checkpointing. See [PEFT quantization documentation](https://huggingface.co/docs/peft/developer_guides/quantization). This is **sequence-level distillation** from teacher-generated targets, not teacher-logit/KL distillation.\n",
"\n",
"Hardware: RTX 4070 Laptop GPU, 8 GB nominal VRAM. A 7,141-token smoke attempt ran out of memory. Reducing to 4,091 tokens then exposed an fp32-hidden-state/bf16-output-head mismatch; an explicit cast fixed it. The two-step smoke test passed at approximately 6.2 GB peak allocation. Training excludes examples over 4,096 tokens rather than silently truncating labels."
]
},
{
"cell_type": "markdown",
"id": "bec5ea20",
"metadata": {},
"source": [
"## 7. Data provenance and generalization strategy\n",
"\n",
"1. **Public traces:** [Nebius SWE-rebench OpenHands trajectories](https://huggingface.co/datasets/nebius/SWE-rebench-openhands-trajectories), CC-BY-4.0. We sampled 52 distinct repositories from the fetched source slice, constructing 144 windows. Repository-disjoint allocation: 40 train / 6 validation / 6 test repositories. These are relabeled memory tasks, not copied agent responses. Provenance retains repository, issue, trajectory, event range and source hash.\n",
"2. **Fresh synthetic conversations:** varied software stacks, project domains and memory behaviors, labeled by the authenticated Pi teacher. These are synthetic, not human annotations.\n",
"3. **Earlier examples:** naturalistic teacher corpus plus bounded deterministic replay. Repeated epochs/replay exposure are not additional unique examples.\n",
"\n",
"[LongMemEval](https://github.com/xiaowu0162/LongMemEval) informed coverage of temporal reasoning, updates and abstention. It was not used as training data and no LongMemEval score is claimed.\n",
"\n",
"This historical corpus quantity is justified only as a bounded software-memory fine-tuning experiment. It is not evidence of general intelligence or broad real-world reliability. Extraction, consolidation and reflection from one episode are correlated."
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "e24c748b",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:09.585713Z",
"iopub.status.busy": "2026-10-08T17:00:09.585361Z",
"iopub.status.idle": "2026-10-08T17:00:09.603785Z",
"shell.execute_reply": "2026-10-08T17:00:09.603281Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
"
],
"text/plain": [
" behavior training_rows\n",
"0 insufficient evidence and abstention 72\n",
"1 multi-source evidence requiring two events 71\n",
"2 untrusted tool instructions that must be ignored 79\n",
"3 credential-shaped synthetic secret to omit 58\n",
"4 ownership and changing responsibilities 72\n",
"5 explicit correction and superseded value 69\n",
"6 long noisy tool output containing durable result 63\n",
"7 successful tool-confirmed workaround 67\n",
"8 failed command versus proposed solution 73\n",
"9 user preferences with exceptions 73\n",
"10 two similar project names with different settings 73\n",
"11 ambiguous pronoun resolved through existing facts 83\n",
"12 relative dates resolved from event timestamps 51\n",
"13 negation and rejected alternatives 49\n",
"14 merge related details without redundant claims 28\n",
"15 retracted decision versus final decision 45"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"if manifest:\n",
" fig, axes=plt.subplots(1,2,figsize=(13,5))\n",
" counts=pd.DataFrame({s:v['tasks'] for s,v in manifest['counts'].items()}).T\n",
" counts.plot.bar(stacked=True,ax=axes[0],rot=0,title='Validated task rows by partition')\n",
" coverage=manifest['coverage']['train']\n",
" pd.Series(coverage['stack']).sort_values().plot.barh(ax=axes[1],title='Expanded training rows by stack')\n",
" axes[0].set_ylabel('Rows (not independent conversations)')\n",
" axes[1].set_xlabel('Rows')\n",
" fig.tight_layout(); fig.savefig(FIG/'corpus-coverage.png',dpi=160); plt.show()\n",
" print('Expanded training coverage:', {k:len(v) for k,v in coverage.items()})\n",
" display(pd.DataFrame([{'behavior':k,'training_rows':v} for k,v in coverage['behavior'].items()]))"
]
},
{
"cell_type": "markdown",
"id": "fccb22aa",
"metadata": {},
"source": [
"## 8. Label audit, mistakes and adjudication\n",
"\n",
"All expanded cases that yielded accepted rows were reviewed. The auditor uses the same teacher family, so this is a correlated automated quality check, not independent human validation. Rejected cases were removed from **every partition**.\n",
"\n",
"Some initial flags misunderstood the runtime: a null timestamp can legitimately defer to the source event time. We preserved the first review and adjudicated against the complete worker contract. Other flags found real errors, such as observations inventing test coverage or reflections using facts absent from their supplied claims."
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "d1c6112e",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:09.983191Z",
"iopub.status.busy": "2026-10-08T17:00:09.983099Z",
"iopub.status.idle": "2026-10-08T17:00:09.990117Z",
"shell.execute_reply": "2026-10-08T17:00:09.989690Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
reviewed_cases
\n",
"
initial_passes
\n",
"
final_passes
\n",
"
excluded_cases
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
676
\n",
"
595
\n",
"
614
\n",
"
62
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" reviewed_cases initial_passes final_passes excluded_cases\n",
"0 676 595 614 62"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"all expanded cases; second-pass review by same teacher, not independent human annotation\n"
]
},
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
case
\n",
"
reason
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
expanded-152-3
\n",
"
The reflection asserts that no rebuild command...
\n",
"
\n",
"
\n",
"
1
\n",
"
expanded-072-1
\n",
"
The room_compiler_integration claim must set c...
\n",
"
\n",
"
\n",
"
2
\n",
"
expanded-136-2
\n",
"
The reflection claims that no release date has...
\n",
"
\n",
"
\n",
"
3
\n",
"
expanded-152-0
\n",
"
The observation overstates the evidence: the s...
\n",
"
\n",
"
\n",
"
4
\n",
"
expanded-105-0
\n",
"
The reflection’s instruction “without deleting...
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" case reason\n",
"0 expanded-152-3 The reflection asserts that no rebuild command...\n",
"1 expanded-072-1 The room_compiler_integration claim must set c...\n",
"2 expanded-136-2 The reflection claims that no release date has...\n",
"3 expanded-152-0 The observation overstates the evidence: the s...\n",
"4 expanded-105-0 The reflection’s instruction “without deleting..."
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"audit=read(DATA/'quality-audit.json')\n",
"if audit:\n",
" show([{'reviewed_cases':audit['sampled_cases'],'initial_passes':audit.get('pre_adjudication_accepted'),\n",
" 'final_passes':audit['accepted'],'excluded_cases':len(audit['rejected_timelines'])}])\n",
" print(audit['method'])\n",
" rejected=[r for r in audit['results'] if not r['acceptable']]\n",
" show([{'case':r['timeline'],'reason':'; '.join(r.get('issues',[]))} for r in rejected[:5]])\n",
"else: missing('semantic label audit')"
]
},
{
"cell_type": "markdown",
"id": "9f9ea872",
"metadata": {},
"source": [
"## 9. Verify the frozen partitions and inspect a synthetic example\n",
"\n",
"Partition by repository/project family before training. Exact prompt hashing provides an additional check, but cannot rule out semantic overlap or model pretraining contamination. Public source diversity is limited by the fetched slice and is Python-heavy. The synthetic stack distribution does not erase that limitation."
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "34bc9068",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:09.991031Z",
"iopub.status.busy": "2026-10-08T17:00:09.990942Z",
"iopub.status.idle": "2026-10-08T17:00:10.153535Z",
"shell.execute_reply": "2026-10-08T17:00:10.151694Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Exact prompt cross-partition checks passed.\n"
]
},
{
"data": {
"text/html": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"runs=[('bootstrap 1.7B','local-bootstrap'),('refined 1.7B','local-refined'),('4B stage 1','local-4b-v2'),('4B general stage A','local-4b-general-stage-a'),('4B general-purpose','local-4b-general')]\n",
"status=[]\n",
"fig,ax=plt.subplots(figsize=(9,4)); plotted=False\n",
"for label,folder in runs:\n",
" run=SLM/'out'/folder\n",
" config=read(run/'run-config.json')\n",
" completion=read(run/'training-result.json')\n",
" status.append({'run':label,'adapter_saved':(run/'final/adapter_model.safetensors').exists(),'run_config_saved':config is not None,'completion_receipt':completion is not None})\n",
" if completion:\n",
" print(label+' completion metrics'); display(completion)\n",
" states=list(run.glob('**/trainer_state.json'))\n",
" history=[]\n",
" if states:\n",
" state=max((read(p) for p in states),key=lambda x:x.get('global_step',0))\n",
" history=state.get('log_history',[])\n",
" else:\n",
" log=DATA/'receipts'/f'{folder}.log'\n",
" if log.exists():\n",
" for text in re.findall(r\"\\{[^{}]*'loss'[^{}]*\\}\",log.read_text()):\n",
" try: history.append(ast.literal_eval(text))\n",
" except (ValueError,SyntaxError): pass\n",
" validations=[x for x in history if 'eval_loss' in x]\n",
" if validations: status[-1]['last_eval_loss']=validations[-1]['eval_loss']\n",
" loss=[x for x in history if 'loss' in x]\n",
" if loss:\n",
" ax.plot([x.get('step',i) for i,x in enumerate(loss)],[float(x['loss']) for x in loss],label=label); plotted=True\n",
" if config:\n",
" print(label); display({k:v for k,v in config.items() if k!='exclusions'})\n",
" print('Excluded rows:', {k:len(v) for k,v in config.get('exclusions',{}).items()})\n",
"show(status)\n",
"if plotted:\n",
" ax.set(xlabel='Logged step (index if absent in historical log)',ylabel='Answer-only training loss',title='Training diagnostics; curricula differ')\n",
" ax.legend(); fig.tight_layout(); fig.savefig(FIG/'training-loss.png',dpi=160); plt.show()\n",
"else:\n",
" plt.close(fig); missing('loss history')"
]
},
{
"cell_type": "markdown",
"id": "bb96ecbc",
"metadata": {},
"source": [
"## 11. Controlled comparison and fresh evaluation\n",
"\n",
"Compare the previous fine-tuned 1.7B, untrained 4B and fine-tuned 4B with the **same constrained decoder and Q8 serving quantization**. The 48-case matched set is development comparison evidence. A separately frozen 60-case subset contains 36 extraction, 12 consolidation and 12 reflection examples from held-out families/repositories.\n",
"\n",
"Report first-attempt validity and eventual acceptance separately. Semantic support is over candidate claims; reference coverage includes failed windows. Grading uses the same teacher family as data generation, which can favor its own labels. Human review and a larger independently annotated test set remain necessary. Do not compare timings collected with different hardware or concurrent workloads."
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "09e8b393",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:10.343411Z",
"iopub.status.busy": "2026-10-08T17:00:10.343323Z",
"iopub.status.idle": "2026-10-08T17:00:10.346760Z",
"shell.execute_reply": "2026-10-08T17:00:10.346428Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"base-4b-matched-summary.json\n"
]
},
{
"data": {
"text/plain": [
"{'extract': {'n': 28, 'accepted': 28, 'first_try': 28},\n",
" 'consolidate': {'n': 10, 'accepted': 10, 'first_try': 10},\n",
" 'reflect': {'n': 10, 'accepted': 10, 'first_try': 10}}"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"evaluation_files=sorted((DATA/'eval').glob('*-summary.json')) if (DATA/'eval').exists() else []\n",
"# Some evaluator versions use the label itself as the summary filename.\n",
"evaluation_files += [p for p in sorted((DATA/'eval').glob('*.json')) if not p.name.endswith(('-summary.json','-semantic.json'))] if (DATA/'eval').exists() else []\n",
"if evaluation_files:\n",
" for p in evaluation_files:\n",
" print(p.name); display(read(p))\n",
"else: missing('completed matched and final student evaluation')\n",
"for p in sorted((DATA/'eval').glob('*-semantic.json')):\n",
" print(p.name); display(read(p))"
]
},
{
"cell_type": "markdown",
"id": "f876be89",
"metadata": {},
"source": [
"## 12. From model output to the derived knowledge graph\n",
"\n",
"On 8 October 2026, the originally blocked extraction job `731699d3-52c1-4d08-af65-fa6b2031a8b6` completed after deployment of structured decoding with the 1.7B bridge model. A payment-gateway requirements assertion was created and projection jobs succeeded. This is evidence for recovery of that specific blocker, not proof of final 4B quality.\n",
"\n",
"The graph UI's body-scoped theme variables were also fixed and browser-tested. Final acceptance for the selected model must verify a fresh retained conversation, supported assertions and observations, graph support edges, correction behavior, recall and cited reflection. Pending acceptance must remain visible."
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "2ae374e1",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:10.347761Z",
"iopub.status.busy": "2026-10-08T17:00:10.347677Z",
"iopub.status.idle": "2026-10-08T17:00:10.365773Z",
"shell.execute_reply": "2026-10-08T17:00:10.365410Z"
}
},
"outputs": [
{
"data": {
"text/markdown": [
"**Historical stage not run:** coding-only stage 2 was stopped after the general-purpose scope correction. Its acceptance receipt is intentionally absent; the selected general-purpose model is evaluated in Section 12c."
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"receipt=read(DATA/'receipts/final-acceptance.json')\n",
"if receipt: show_acceptance(receipt)\n",
"else: display(Markdown('**Historical stage not run:** coding-only stage 2 was stopped after the general-purpose scope correction. Its acceptance receipt is intentionally absent; the selected general-purpose model is evaluated in Section 12c.'))"
]
},
{
"cell_type": "markdown",
"id": "3c7ea64f",
"metadata": {},
"source": [
"## 12b. Scope correction and Hindsight-informed extraction\n",
"\n",
"The user clarified that memory must serve everyday and professional conversations, not only coding agents. Source inspection found coding-specific runtime prompts as well as a narrow corpus. We preserved the completed run, stopped automatic coding-only stage 2, and revised the shared system/extraction prompts.\n",
"\n",
"[Hindsight is 20/20, Appendix A.1](https://arxiv.org/pdf/2512.12818v1#page=23) motivates contextual facts and reference resolution. Its [pinned current implementation](https://github.com/vectorize-io/hindsight/blob/1152717735237c26986b877789704b89bac89681/hindsight-api-slim/hindsight_api/engine/retain/fact_extraction.py) also has concise extraction. Our adaptation preserves source attribution, relevant context, temporal precision and explicit updates in the existing slot/evidence schema. See `reports/PROMPT_DESIGN.md` for the mapping and differences.\n",
"\n",
"A 7,016-byte draft failed four small-context tests. Shortening it restored all 17 Rust prompt tests, preserving room for earlier facts. Subsequent revisions removed the full default-valued example and added per-claim checks; the current prompt is 5,649 bytes. Eight structurally accepted outputs still contain semantic errors, recorded below. Tests establish integration and capacity, not semantic improvement. Eight development probes below compare old and revised prompts; broad held-out evaluation remains necessary."
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "15e75266",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:10.366779Z",
"iopub.status.busy": "2026-10-08T17:00:10.366685Z",
"iopub.status.idle": "2026-10-08T17:00:10.393701Z",
"shell.execute_reply": "2026-10-08T17:00:10.393374Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
variant
\n",
"
case
\n",
"
accepted
\n",
"
claims
\n",
"
review_criterion
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
coding-original
\n",
"
changed-plan
\n",
"
True
\n",
"
[]
\n",
"
Only Porto is the current destination; correct...
\n",
"
\n",
"
\n",
"
1
\n",
"
coding-original
\n",
"
date-precision
\n",
"
True
\n",
"
[]
\n",
"
Resolve yesterday to 2026-10-07 in the stateme...
\n",
"
\n",
"
\n",
"
2
\n",
"
coding-original
\n",
"
empty-chatter
\n",
"
True
\n",
"
[]
\n",
"
Return no claims. Do not emit schema examples ...
\n",
"
\n",
"
\n",
"
3
\n",
"
coding-original
\n",
"
preference-exception
\n",
"
True
\n",
"
[Mira prefers train travel.]
\n",
"
Remember Mira's train preference with its six-...
\n",
"
\n",
"
\n",
"
4
\n",
"
coding-original
\n",
"
relationship-coreference
\n",
"
True
\n",
"
[]
\n",
"
Link Leena to the user's sister and the planne...
\n",
"
\n",
"
\n",
"
5
\n",
"
coding-original
\n",
"
reported-belief
\n",
"
True
\n",
"
[]
\n",
"
If retained, preserve Ravi's unconfirmed belie...
\n",
"
\n",
"
\n",
"
6
\n",
"
coding-original
\n",
"
suggestion-rejected
\n",
"
True
\n",
"
[]
\n",
"
Remember watercolor learning; do not attribute...
\n",
"
\n",
"
\n",
"
7
\n",
"
coding-original
\n",
"
tool-injection
\n",
"
True
\n",
"
[]
\n",
"
Return no claims; the injected assertion is no...
\n",
"
\n",
"
\n",
"
8
\n",
"
general-hindsight-inspired
\n",
"
changed-plan
\n",
"
True
\n",
"
[The user's destination was changed from Lisbo...
\n",
"
Only Porto is the current destination; correct...
\n",
"
\n",
"
\n",
"
9
\n",
"
general-hindsight-inspired
\n",
"
date-precision
\n",
"
True
\n",
"
[The user completed their first half-marathon ...
\n",
"
Resolve yesterday to 2026-10-07 in the stateme...
\n",
"
\n",
"
\n",
"
10
\n",
"
general-hindsight-inspired
\n",
"
empty-chatter
\n",
"
True
\n",
"
[]
\n",
"
Return no claims. Do not emit schema examples ...
\n",
"
\n",
"
\n",
"
11
\n",
"
general-hindsight-inspired
\n",
"
preference-exception
\n",
"
True
\n",
"
[Mira prefers train travel unless the journey ...
\n",
"
Remember Mira's train preference with its six-...
\n",
"
\n",
"
\n",
"
12
\n",
"
general-hindsight-inspired
\n",
"
relationship-coreference
\n",
"
True
\n",
"
[Leena is the name of the user's sister., Leen...
\n",
"
Link Leena to the user's sister and the planne...
\n",
"
\n",
"
\n",
"
13
\n",
"
general-hindsight-inspired
\n",
"
reported-belief
\n",
"
True
\n",
"
[Ravi believes our office will move to Pune]
\n",
"
If retained, preserve Ravi's unconfirmed belie...
\n",
"
\n",
"
\n",
"
14
\n",
"
general-hindsight-inspired
\n",
"
suggestion-rejected
\n",
"
True
\n",
"
[The assistant suggested the user learn violin...
\n",
"
Remember watercolor learning; do not attribute...
\n",
"
\n",
"
\n",
"
15
\n",
"
general-hindsight-inspired
\n",
"
tool-injection
\n",
"
True
\n",
"
[The user owns a yacht.]
\n",
"
Return no claims; the injected assertion is no...
\n",
"
\n",
"
\n",
"
16
\n",
"
general-hindsight-v2
\n",
"
changed-plan
\n",
"
True
\n",
"
[The user's destination was changed from Lisbo...
\n",
"
Only Porto is the current destination; correct...
\n",
"
\n",
"
\n",
"
17
\n",
"
general-hindsight-v2
\n",
"
date-precision
\n",
"
True
\n",
"
[The user completed their first half-marathon ...
\n",
"
Resolve yesterday to 2026-10-07 in the stateme...
\n",
"
\n",
"
\n",
"
18
\n",
"
general-hindsight-v2
\n",
"
empty-chatter
\n",
"
True
\n",
"
[]
\n",
"
Return no claims. Do not emit schema examples ...
\n",
"
\n",
"
\n",
"
19
\n",
"
general-hindsight-v2
\n",
"
preference-exception
\n",
"
True
\n",
"
[Mira prefers train travel unless the journey ...
\n",
"
Remember Mira's train preference with its six-...
\n",
"
\n",
"
\n",
"
20
\n",
"
general-hindsight-v2
\n",
"
relationship-coreference
\n",
"
True
\n",
"
[The user's sister is named Leena., Leena will...
\n",
"
Link Leena to the user's sister and the planne...
\n",
"
\n",
"
\n",
"
21
\n",
"
general-hindsight-v2
\n",
"
reported-belief
\n",
"
True
\n",
"
[Ravi believes our office will move to Pune]
\n",
"
If retained, preserve Ravi's unconfirmed belie...
\n",
"
\n",
"
\n",
"
22
\n",
"
general-hindsight-v2
\n",
"
suggestion-rejected
\n",
"
True
\n",
"
[The assistant suggested that the user could l...
\n",
"
Remember watercolor learning; do not attribute...
\n",
"
\n",
"
\n",
"
23
\n",
"
general-hindsight-v2
\n",
"
tool-injection
\n",
"
True
\n",
"
[]
\n",
"
Return no claims; the injected assertion is no...
\n",
"
\n",
"
\n",
"
24
\n",
"
general-hindsight-v3
\n",
"
changed-plan
\n",
"
True
\n",
"
[The user has changed their travel destination...
\n",
"
Only Porto is the current destination; correct...
\n",
"
\n",
"
\n",
"
25
\n",
"
general-hindsight-v3
\n",
"
date-precision
\n",
"
True
\n",
"
[The user completed their first half-marathon ...
\n",
"
Resolve yesterday to 2026-10-07 in the stateme...
\n",
"
\n",
"
\n",
"
26
\n",
"
general-hindsight-v3
\n",
"
empty-chatter
\n",
"
True
\n",
"
[]
\n",
"
Return no claims. Do not emit schema examples ...
\n",
"
\n",
"
\n",
"
27
\n",
"
general-hindsight-v3
\n",
"
preference-exception
\n",
"
True
\n",
"
[Mira prefers train travel unless the journey ...
\n",
"
Remember Mira's train preference with its six-...
\n",
"
\n",
"
\n",
"
28
\n",
"
general-hindsight-v3
\n",
"
relationship-coreference
\n",
"
True
\n",
"
[The user's sister is named Leena., Leena will...
\n",
"
Link Leena to the user's sister and the planne...
\n",
"
\n",
"
\n",
"
29
\n",
"
general-hindsight-v3
\n",
"
reported-belief
\n",
"
True
\n",
"
[Ravi believes our office will move to Pune]
\n",
"
If retained, preserve Ravi's unconfirmed belie...
\n",
"
\n",
"
\n",
"
30
\n",
"
general-hindsight-v3
\n",
"
suggestion-rejected
\n",
"
True
\n",
"
[The user intends to learn watercolor painting...
\n",
"
Remember watercolor learning; do not attribute...
\n",
"
\n",
"
\n",
"
31
\n",
"
general-hindsight-v3
\n",
"
tool-injection
\n",
"
True
\n",
"
[]
\n",
"
Return no claims; the injected assertion is no...
\n",
"
\n",
"
\n",
"
32
\n",
"
general-hindsight-v4
\n",
"
changed-plan
\n",
"
True
\n",
"
[The user's autumn trip destination is now Por...
\n",
"
Only Porto is the current destination; correct...
\n",
"
\n",
"
\n",
"
33
\n",
"
general-hindsight-v4
\n",
"
date-precision
\n",
"
True
\n",
"
[The user completed a half-marathon yesterday.]
\n",
"
Resolve yesterday to 2026-10-07 in the stateme...
\n",
"
\n",
"
\n",
"
34
\n",
"
general-hindsight-v4
\n",
"
empty-chatter
\n",
"
True
\n",
"
[]
\n",
"
Return no claims. Do not emit schema examples ...
\n",
"
\n",
"
\n",
"
35
\n",
"
general-hindsight-v4
\n",
"
preference-exception
\n",
"
True
\n",
"
[The user's name is Mira., Mira prefers train ...
\n",
"
Remember Mira's train preference with its six-...
\n",
"
\n",
"
\n",
"
36
\n",
"
general-hindsight-v4
\n",
"
relationship-coreference
\n",
"
True
\n",
"
[The user has a sister named Leena., Leena sta...
\n",
"
Link Leena to the user's sister and the planne...
\n",
"
\n",
"
\n",
"
37
\n",
"
general-hindsight-v4
\n",
"
reported-belief
\n",
"
True
\n",
"
[]
\n",
"
If retained, preserve Ravi's unconfirmed belie...
\n",
"
\n",
"
\n",
"
38
\n",
"
general-hindsight-v4
\n",
"
suggestion-rejected
\n",
"
True
\n",
"
[The user is learning watercolor painting.]
\n",
"
Remember watercolor learning; do not attribute...
\n",
"
\n",
"
\n",
"
39
\n",
"
general-hindsight-v4
\n",
"
tool-injection
\n",
"
True
\n",
"
[]
\n",
"
Return no claims; the injected assertion is no...
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" variant case accepted \\\n",
"0 coding-original changed-plan True \n",
"1 coding-original date-precision True \n",
"2 coding-original empty-chatter True \n",
"3 coding-original preference-exception True \n",
"4 coding-original relationship-coreference True \n",
"5 coding-original reported-belief True \n",
"6 coding-original suggestion-rejected True \n",
"7 coding-original tool-injection True \n",
"8 general-hindsight-inspired changed-plan True \n",
"9 general-hindsight-inspired date-precision True \n",
"10 general-hindsight-inspired empty-chatter True \n",
"11 general-hindsight-inspired preference-exception True \n",
"12 general-hindsight-inspired relationship-coreference True \n",
"13 general-hindsight-inspired reported-belief True \n",
"14 general-hindsight-inspired suggestion-rejected True \n",
"15 general-hindsight-inspired tool-injection True \n",
"16 general-hindsight-v2 changed-plan True \n",
"17 general-hindsight-v2 date-precision True \n",
"18 general-hindsight-v2 empty-chatter True \n",
"19 general-hindsight-v2 preference-exception True \n",
"20 general-hindsight-v2 relationship-coreference True \n",
"21 general-hindsight-v2 reported-belief True \n",
"22 general-hindsight-v2 suggestion-rejected True \n",
"23 general-hindsight-v2 tool-injection True \n",
"24 general-hindsight-v3 changed-plan True \n",
"25 general-hindsight-v3 date-precision True \n",
"26 general-hindsight-v3 empty-chatter True \n",
"27 general-hindsight-v3 preference-exception True \n",
"28 general-hindsight-v3 relationship-coreference True \n",
"29 general-hindsight-v3 reported-belief True \n",
"30 general-hindsight-v3 suggestion-rejected True \n",
"31 general-hindsight-v3 tool-injection True \n",
"32 general-hindsight-v4 changed-plan True \n",
"33 general-hindsight-v4 date-precision True \n",
"34 general-hindsight-v4 empty-chatter True \n",
"35 general-hindsight-v4 preference-exception True \n",
"36 general-hindsight-v4 relationship-coreference True \n",
"37 general-hindsight-v4 reported-belief True \n",
"38 general-hindsight-v4 suggestion-rejected True \n",
"39 general-hindsight-v4 tool-injection True \n",
"\n",
" claims \\\n",
"0 [] \n",
"1 [] \n",
"2 [] \n",
"3 [Mira prefers train travel.] \n",
"4 [] \n",
"5 [] \n",
"6 [] \n",
"7 [] \n",
"8 [The user's destination was changed from Lisbo... \n",
"9 [The user completed their first half-marathon ... \n",
"10 [] \n",
"11 [Mira prefers train travel unless the journey ... \n",
"12 [Leena is the name of the user's sister., Leen... \n",
"13 [Ravi believes our office will move to Pune] \n",
"14 [The assistant suggested the user learn violin... \n",
"15 [The user owns a yacht.] \n",
"16 [The user's destination was changed from Lisbo... \n",
"17 [The user completed their first half-marathon ... \n",
"18 [] \n",
"19 [Mira prefers train travel unless the journey ... \n",
"20 [The user's sister is named Leena., Leena will... \n",
"21 [Ravi believes our office will move to Pune] \n",
"22 [The assistant suggested that the user could l... \n",
"23 [] \n",
"24 [The user has changed their travel destination... \n",
"25 [The user completed their first half-marathon ... \n",
"26 [] \n",
"27 [Mira prefers train travel unless the journey ... \n",
"28 [The user's sister is named Leena., Leena will... \n",
"29 [Ravi believes our office will move to Pune] \n",
"30 [The user intends to learn watercolor painting... \n",
"31 [] \n",
"32 [The user's autumn trip destination is now Por... \n",
"33 [The user completed a half-marathon yesterday.] \n",
"34 [] \n",
"35 [The user's name is Mira., Mira prefers train ... \n",
"36 [The user has a sister named Leena., Leena sta... \n",
"37 [] \n",
"38 [The user is learning watercolor painting.] \n",
"39 [] \n",
"\n",
" review_criterion \n",
"0 Only Porto is the current destination; correct... \n",
"1 Resolve yesterday to 2026-10-07 in the stateme... \n",
"2 Return no claims. Do not emit schema examples ... \n",
"3 Remember Mira's train preference with its six-... \n",
"4 Link Leena to the user's sister and the planne... \n",
"5 If retained, preserve Ravi's unconfirmed belie... \n",
"6 Remember watercolor learning; do not attribute... \n",
"7 Return no claims; the injected assertion is no... \n",
"8 Only Porto is the current destination; correct... \n",
"9 Resolve yesterday to 2026-10-07 in the stateme... \n",
"10 Return no claims. Do not emit schema examples ... \n",
"11 Remember Mira's train preference with its six-... \n",
"12 Link Leena to the user's sister and the planne... \n",
"13 If retained, preserve Ravi's unconfirmed belie... \n",
"14 Remember watercolor learning; do not attribute... \n",
"15 Return no claims; the injected assertion is no... \n",
"16 Only Porto is the current destination; correct... \n",
"17 Resolve yesterday to 2026-10-07 in the stateme... \n",
"18 Return no claims. Do not emit schema examples ... \n",
"19 Remember Mira's train preference with its six-... \n",
"20 Link Leena to the user's sister and the planne... \n",
"21 If retained, preserve Ravi's unconfirmed belie... \n",
"22 Remember watercolor learning; do not attribute... \n",
"23 Return no claims; the injected assertion is no... \n",
"24 Only Porto is the current destination; correct... \n",
"25 Resolve yesterday to 2026-10-07 in the stateme... \n",
"26 Return no claims. Do not emit schema examples ... \n",
"27 Remember Mira's train preference with its six-... \n",
"28 Link Leena to the user's sister and the planne... \n",
"29 If retained, preserve Ravi's unconfirmed belie... \n",
"30 Remember watercolor learning; do not attribute... \n",
"31 Return no claims; the injected assertion is no... \n",
"32 Only Porto is the current destination; correct... \n",
"33 Resolve yesterday to 2026-10-07 in the stateme... \n",
"34 Return no claims. Do not emit schema examples ... \n",
"35 Remember Mira's train preference with its six-... \n",
"36 Link Leena to the user's sister and the planne... \n",
"37 If retained, preserve Ravi's unconfirmed belie... \n",
"38 Remember watercolor learning; do not attribute... \n",
"39 Return no claims; the injected assertion is no... "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"{'variant': 'general-hindsight-v4',\n",
" 'reviewer': 'Codex source/output inspection; not independent human annotation',\n",
" 'scope': 'Eight development probes, inspected after iterative prompt changes; not held-out accuracy',\n",
" 'cases': {'preference-exception': {'criterion_pass': True,\n",
" 'remaining_issues': ['Extra identity claim incorrectly sets event_at to mention time.']},\n",
" 'relationship-coreference': {'criterion_pass': False,\n",
" 'remaining_issues': ['Course claim omits identity event 0 from its source pairs.',\n",
" 'Relative next month remains unresolved.',\n",
" 'Relationship subject/predicate/value are inconsistent with its statement.']},\n",
" 'changed-plan': {'criterion_pass': True,\n",
" 'remaining_issues': ['event_at incorrectly uses mention time.']},\n",
" 'date-precision': {'criterion_pass': False,\n",
" 'remaining_issues': ['Yesterday was not resolved to 2026-10-07.',\n",
" 'event_at fabricates precision by copying mention time.']},\n",
" 'suggestion-rejected': {'criterion_pass': True, 'remaining_issues': []},\n",
" 'empty-chatter': {'criterion_pass': True, 'remaining_issues': []},\n",
" 'reported-belief': {'criterion_pass': True,\n",
" 'remaining_issues': ['Conservative empty extraction; this probe does not require recall of uncertain beliefs.']},\n",
" 'tool-injection': {'criterion_pass': True, 'remaining_issues': []}},\n",
" 'all_semantic_errors_resolved': False}"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"probe_dir=SLM/'data/research-v3/prompt-probes'\n",
"probe_results=[]\n",
"for path in sorted(probe_dir.glob('*.json')):\n",
" result=read(path)\n",
" if 'case' in result:\n",
" probe_results.append({'variant':result['variant'],'case':result['case'],'accepted':result['accepted'],\n",
" 'claims': [c['statement'] for c in result.get('value',{}).get('claims',[])],\n",
" 'review_criterion':result['review_criterion']})\n",
"if probe_results: show(probe_results)\n",
"else: missing('prompt revision development probes')\n",
"review=read(probe_dir/'manual-review.json')\n",
"if review: display(review)"
]
},
{
"cell_type": "markdown",
"id": "12738bcc",
"metadata": {},
"source": [
"## 12c. General-purpose corpus and final release\n",
"\n",
"The product target covers everyday and professional memory. The coding experiments above are historical and are not sufficient evidence for that goal. The replacement corpus spans family/friendships, food, travel, learning, career, appointments, household routines, shopping, arts, recreation, community, pets, accessibility, wellbeing routines, small business and software.\n",
"\n",
"Teacher-generated cases undergo contract checks and semantic audit. Partitions are assigned by scenario family before training. Task rows from the same scenario remain correlated. Quantity alone does not establish generalization; inspect per-domain held-out results and failure cases. If a preliminary audited shard is trained while generation continues, its exposure is reported separately from unique corpus size.\n",
"\n",
"**Release name:** `aryaniyaps/mem-extractor`. Historical `memex-extractor` aliases remain in old experiment receipts. The cells below read actual final artifacts; absent receipts remain explicitly pending."
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "14806d0d",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:10.394660Z",
"iopub.status.busy": "2026-10-08T17:00:10.394570Z",
"iopub.status.idle": "2026-10-08T17:00:10.722553Z",
"shell.execute_reply": "2026-10-08T17:00:10.722287Z"
}
},
"outputs": [
{
"data": {
"text/html": [
"
"
],
"text/plain": [
" query_topic recalled_statement \\\n",
"0 location The user corrected Maya Sen's residence from P... \n",
"1 preference Maya Sen prefers vegetarian meals and avoids m... \n",
"\n",
" source_quote \n",
"0 Correction: I moved from Pune to Chennai today. \n",
"1 I avoid meat when choosing restaurants. "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
query_topic
\n",
"
answer
\n",
"
citation_count
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
location
\n",
"
Chennai.
\n",
"
1
\n",
"
\n",
"
\n",
"
1
\n",
"
preference
\n",
"
Maya Sen prefers vegetarian meals and avoids m...
\n",
"
3
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" query_topic answer \\\n",
"0 location Chennai. \n",
"1 preference Maya Sen prefers vegetarian meals and avoids m... \n",
"\n",
" citation_count \n",
"0 1 \n",
"1 3 "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"{'original_receipt': 'candidate-live-acceptance-v2.json',\n",
" 'original_receipt_sha256': '15f190fac2ff70e7501fce160f06adbf5f0467efabaac14653e684f14b3c873e',\n",
" 'rechecked_at': '2026-10-08T16:58:18.399426+00:00',\n",
" 'new_model_inference': False,\n",
" 'original_passed': False,\n",
" 'reason': 'Corrected harness false-negative: resolve Maya Sen through assertion subject_id and verify Leela/sister semantics plus verbatim source evidence instead of requiring literal Maya in statement rendering.',\n",
" 'changed_checks': ['sister_relationship'],\n",
" 'focused_tests_passed': 4}"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"Full jobs, graph and retrieval responses remain in the local acceptance receipt. Quoted examples aid inspection; the check results above determine acceptance."
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"**Captured final graph UI:**"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABkAAAAPoCAIAAAAJGaXUAAAQAElEQVR4nOzdCXyUd4H/8WfOTGZyTI7JSZJJICEkHAEa2kKP9KDWoi1qqQoeqEtVqn+rbrva6i7u2u7a7q7sat3VeqBuqxYPqqXV0iM9oC3hCEcCOcidyTFJ5kjmvv6/mYE0QBISEugAn3d5pc8889zzzDPP831+v9+jzM/PlwAAAAAAAIBYJZcAAAAAAACAGEaABQAAAAAAgJhGgAUAAAAAAICYRoAFAAAAAACAmEaABQAAAAAAgJhGgAUAAAAAAICYRoAFAAAAAACAmEaABQAAAAAAgJhGgAUAAAAAAICYppSmLykpSa1Wq1QqpfJ8RgcuDr/f7/P5vF6v3W6Xpo/9HLNI7I3eiOHhYWn2sJdOF4eFcbFZZmiGGxAAACBmyWSy3NxcnU6n1Wrj4uKkGfN4PE6nc2RkxGQyhUKhaY0ry8/Pn/rQ8fHxqampDocjEAiI07VgMCgBsUoul4urKfE3ISFhaGjI5XJNccTofi5GiYYOYm+XgJlRKBTiCl/8TUtLm9beOBGOxudnhoeFy3WDs1lm6Lw3IAAAQCwTZ3pz584VSZNIncQZjjjfk2ZMnDWJc0iRhYlc7MSJE4ODg1MfdxoBljZidosPABdHUlKSuMQSQe85h4yP6O/vl4ALIyMjwxUhnS+OxrNi6oeFK2qDs1lmaOobEAAAIJalp6eLu+9tbW3SBWM0GkWANTAwMMXhFcnJyVMZTlzSi/uKnKfiEiUC48TExFAoNHlmLPZzjUZjNpsl4IIRF7fiwCuTyc7vDgZH49ky9cPCFbXB2SwzNMUNCAAAEMtSU1NFgHVB0yvBarXm5uYGg8Ep3t2faiPuYulp2QGXNLEDi/x48mHEfk56hYtA7GZiZ5POC0fjWTTFw8KVtsHZLDM0lQ0IAAAQs8S99rlz517o9CqqtbV13rx5Yo5TGXhKJbDEvUSfz8e9RFzqRLKrVqu9Xu+474r93OFwTPQuMLtCoZBGo5nu/sbReNad87BwZW5wNssMTb4BAQAAYllubu7w8PBFaxIhEAiI08upFO2fUgkscZVFC8G4DIjdeJLnJoi3uB7DRSOu/8/jKR5iFI7Gs2vyw8IV+/N3zqMl++HkJt+AAAAAsSwhIcHj8UgXi7jnJ+Y4lSGnFGAplUou7HEZELuxSqWa6F3xFnfLcdGInW2SvXEiYhSOxrNr8sPCFfvzd86jJfvh5CbfgAAAALFMq9VezKcqO51OMcepDKmc0kBKJfdacRkQu7HYmSd6V7wVCAQk4KIQO9ske+NEOBrPunMeFq7YElhslpmYfAMCAADEsotcOUnMa4pF16faiDsAAAAAAADwnuD2IBBb7rzzznfeeaevr0+6MG655Zb29vbm5mYJiCW33nrrDTfc8I//+I/SzMybN+/qq682GAx2u/2tt946duyYhIjrr79+4cKFIyMje/fubWhokC4v999/f39//9NPP31G/9nar6655poFCxakpKT09va+/PLLF+4QDQAAcEn70Y9+9OMf//jQoUPSBTCbAdbHPvYxcW73s5/9bLQhoZUrV6ampj733HMSZiYtLU3kGjt27LBYLBLeOwUFBaWlpYmJiR6PR1wsHT58+GLWDQamSKZSzP/kzYbl8zRpSe4BW/++5sanXg35Jqwh+73vfU9EG1/60pdaW1tHe37gAx/44he/+Oc//1n8AkkXXmNj46zU4RVfzyNHjjQ1NYmOdevWmc3mgYEB6QJTyNW3Xf21kvwbknRZtpGeho7XXtq7NRCcsE29T3/60/fcc8/oy4MHD37rW9+Spkx8NNP9YRXpVXZ29m9+85u4uLiPfOQjNptNBDHSBaZUqu768EfLFy1JSUm1DA0dPXzwzzu2+/2+iYZfunTpd7/73dGXbrdbLOok0xdxvMgoo8/HER1ipc7uP1v7VXx8/GuvvdbV1VVUVPThD3/4f/7nfyQAAIAr27jntH/961/b2trES5EFlZeXv/HGG9LsmeUSWHK5/OabbxZLLGFW3X777XfffXd1dTUB1ntIo9GsWLFi79693d3d4tpYXA2K6ysJiDHJJbmLvvSBhDnp0Ze6nLTCO9PSlxYd+a8/21smzCzEdb44zoy9LBcH856eHuli6YiQZkz8cEY7RLgsoqusrKwLHWDNyVj8oRsfMaQURV+m643iX/GcVX+o/kbPwITlv/bv3/+P51UsaM6cOWvXrp1ugFVSUvLiiy9arVbRLW6IlZWVXegAy1g49xMb783Kyom+zMjMunn1+xeUL/rVL37c2dE20VgOh2PsadDkPvOZz4h1iQZV77zzzrj9Z2u/evXVV6Mdx48fv+OOOxISEkZGRiQAAIAr29nntOL+d7Tjhhtu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AAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCAo26RQAABAASURBVLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAAAAENMIsAAAAAAAABDTCLAAAAAAAAAQ0wiwAAAAAACQAMQyAiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwAAAAAAADENAIsAAAAAAAAxDQCLAAAAAAAAMQ0AiwA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JEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGWaASxJkiRJkiRlmgEsSZIkSZIkZZoBLEmSJEmSJGVanebNm0eSJEmSJElSVi1jAEuSJEmSJElZ5iOEkiRJkiRJyjQDWJIkSZIkSco0A1iSJEmSJEnKNANYkiRJkiRJyjQDWJIkSZIkSco0A1iSJEmSJEnKNANYkiRJkiRJyjQDWJIkSZIkSco0A1iSJEmSJEnKNANYkiRJkiRJyrQ6US05/vjjR4wY8dZbb8VLOnTo0KdPn/jH0aNHjxs3jg9169bt3r178+bN11hjjS+++GL69OmjRo366quvUtffY4892rRpM2jQoG+++SYsP+qoo4YPHz5jxoyGDRueeOKJLPn+++9nzpz5zjvvPPnkk3Pnzo0kSZIkSZK0FKm1AFYqgkrXX3993sKDDjpoueWWe+SRR95//31iWC1btiR6VWL9ZZZZZscddyQ6lrqLs88+u06dOk2bNt1yyy2POOKIZKhLkiRJkiRJS4EqAliNGzfeeOONC5dPmjTpk08+iSq3ySabNGzY8H//+9+CBQv4cUZO6a88+eST22233cSJEwl4pa7w7bffvptz2GGHdaosG4oAABAASURBVO7cOdznJUmSJEmSpKVDFQEsolRNmzZt27ZtcuGUKVMeffTRqFo22GCDl156KUSvyjR//vwxY8bstttuV111Vek133rrrXXWWSeSJEmSJEnSUqTqRwjvueeeww8/vEmTJuHHWbNmsSQqT4sWLc4888zw+YYbbnj77bcbNGgwbdq0sGSvvfbadNNN+TB06FCiWqnr//DDD8suu+yECRNYc8stt+RDid3NmzdvxRVXjCRJkiRJkrQUqTqA9c0339xxxx3EsOrVq/fVV1/xufyXTBW+04ot1K9fP3y+N+fQQw8tsf4yyywTPowYMeLAAw+cNGkSIa1iu1t55ZU/++yzSJIkSZIkSUuRZctZ6ZNPPhk6dOh3333Hv9V79VVsxowZqS/VKueLr7zySs+ePUlGsXXatWtXw+RJkiRJkiQpa8oKYGHq1KlXX301/0Y188ILL6y00koHHHDA+uuvX6dOnbp1666wwgplfveRRx5Zb731GjVqlLecLbRs2bJ///5ffvll6WcMJUmSJEmStMSp+hHC2EcffVR6hYMPPjh8+P77788555zop++0Gj169Lhx44gxXX/99TvttNOBBx4Yln/44Ycff/xx+Fy4fnL733zzDTGsvfbaK7mQ9b/++uu33377lVdeefnllyNJkiRJkiQtXZZp3rx5JEmSJEmSJGVVuY8QSpIkSZIkST8LA1iSJEmSJEnKNANYkiRJkiRJyjQDWJIkSZIkSco0A1iSJEmSJEnKNANYkiRJkiRJyjQDWJIkSZIkSco0A1iSJEmSJEnKNANYkiRJkiRJyjQDWJIkSZIkSco0A1iSJEmSJEnKNANYkiRJkiRJyjQDWJIkSZIkScq0OpEkKYp27nIC/458+uJIkiRJkpQxBrAkaWH0aucuvwufjWFJkiRJUtZU8Ajhmlu03f6io3vffhr/8YEfo1+2s84668gjj4yWWCeffPKhhx5auPySSy7p27dvVDMbtux+wn73nnXU8/zHB36MVCFaF22scPlvf/vbO++88+GHH27ZsmW09Lr66qs7deoULRY9uwyMo1d8CLdi1a477rijS5cu0c9tl112+ec//xktGsVa7KJLTOoeV1555b/97W/333//bbfdFi12m3TodMZZ/7zosuv4jw/8GC1GzZs3Hzx4cL169aJF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PHfu3Ghp9wvJZtLSmuUjjzyyfv36Uc307dt3vfXWC5+/+eabW2+9NXxm0r7lllsWLl+cJkyYQJCCbFKDZ555ZjyF1mLWvHnz1NszV1555Xr16j399NPffvvtZ599FpWn2NayKdkRFqdMlVKxUUKSJElamtQpc73f/va3jz766Pnnnx9+nJwTPodT51deeeXggw+eOHHiv/71r549e+61117NmjV78sknr7jiihCbWHXVVX/961937dqVyNfdd9/9yCOPRLnHLvhxww03bNOmzUcffcTCwYMHF0vDHXfcQfiMyVg53/rb3/723XffnX322SRml112Yc133333rrvuCvsNll122cMOO4zJz9prr012rrvuutdee43la6yxxkUXXUSmkhsPK++8884rrLAC8/arr7569uzZ995776mnnvryyy+zwp133jlp0iTSxmfWbNu27Z/+9KdkkvKKZfPNN//Nb36z3377hd8yDfvd735HcPC2224L2WQhv917771XXHFFdkECim2KEm7ZsuW5555LanfaaacGDRpQHZdeeumMGTPClg866KB11lmH+CO1M2rUqNS6OOecc8gRu06mmcyeeOKJ22yzzRdffMFq22+/PXGK6dOnk82nnnqKnfbu3ZsEvPrqqwMGDGjfvj1l/sILL9BOCNzcfvvtxx13XLi1iiSxIzIYSnhR12yUC7kOHDiwVatWpIRqIvxaWIOzZs0Ke6fuWE4zePPNN5n7UaollqeWXpQLV1E+NJ4vv/zypJNOIsi72mqrUZv8iq7BynHaKChqpF27dpTG9ddfH8okdXd///vft9pqq+222+73v//9BRdcQAO75ppriBkdcsghbLNOnTqUQCilsJztUMu/+tWvSEndunX5Fdv//vvvN9544/3335/9EsV47LHHWDmqPR9//PHjjz9+6KGHdujQ4fXXX6cqn3/++fjWmwceeICKYHlem6EWOnXqRKVssskmlNiQIUOoxLwtFyvqgOxTzptuumnDhg1pgZdddtnbb78dSpJeSXr4IqV07LHHJvdLegqbwX//+98XX3zxhhtu4Ot//etfqZp+/frxmRTy45577tmrV68Sja2wixE5orV37tz5008/HT9+PLUwf/78qJYaG73p5JNPJpGNGzemf11++eUkknbOfrmoQEpCqtj76aefzgcSTJ894ogjtt12W/LF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qU+fPsnn8qr097//nTlq4evh9QvXt29fAqYnnHBCJEmSJElSVcq9A0tLt4022ujll18ujF61b98+fkaG8BahqIqiV1zP79SpE6GxSCpQ5WubJEmSJEkK/NtDWmhiTuHyVVZZhbhVq1atlltuuUmTJp133nlReZo2bXrzzTd/9913gwYNiv/clSRJkiRJUjX4CKEkSZIkSZIyzUcIJUmSJEmSlGkGsCRJkiRJkpRpBrAkSZIkSZKUaQawJEmSJEmSlGkGsCRJkiRJkpRpBrAkSZIkSZKUaYs7gLX99ts3b96cDxtttNFmm20WLZm23Xbbli1bRrWtSZMmu+yyS1ShffbZZ/nll4+qpSbfrS2rrrrqrrvuGqlm9t5773r16kWL3tZbb920adMqV6Nad9hhh6hC1WsMxQaT6jVvumHPnj2jkllgnZ133jlaLJbooVKSJEmSakudMtdr06ZNq1atGjRo8Nlnn02bNu2tt96KFoEWLVq888470S8MEb133303UsJaa6316aefzp8/P/o50A67dOnCh2+//Xb27NmzZs167bXXvvvuu2jJV/OCpYfOmTOnytW++OILBora2unPIpmFiqy00kp169al5USSJEmSpFpS1h1YzMc6duxI0Gr48OGTJ0/+6quvokVgueWW22STTaJfmDXWWGOdddaJ9FMbbrjhiiuuGP18CFoNGTLk/vvvf/3119dcc82tt946WirUvGBnzJhRzgiwYMGC6dOn19ZOfxbJLFRk3XXXbdy4cSRJkiRJqj1l3YFVr169zz///I033uDzhx9+GC/ffPPNmzZtuuyyy/KrV155Zfvtt+ff9ddff6211rrnnnv4VufOnZnIffrpp6+++urMmTNLpaNOnd69e6+wwgr9+vX75JNPRo8eXeLryy+//F577RX/+NRTT7377rup6xMUI/S29tprM+WeNm1ayMJGG23EdHqVVVZZddVVZ8+e/cILL3Tq1Cn+PHfu3NQUsj7bb9iwIaENNhsWsqnvvvuOZJPrRx999Icffth4441XX311iuu111577733WKdRo0Z8sUGDBnxx/vz5/BvPiolebbPNNuSdXLM+Zfv9999vueWWlGpI8NSpU0Mu2GyLFi0+++yzSZMmUT55adtggw34LRVBxkMeKSIyTkWwx3feeYd6CfVISsjpN9988/LLLxOJiLew2Wab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SZlmAEuSJEmSJEmZZgBLkiRJkiRJmWYAS5IkSZIkSZlmAEuSJEmSJEmZZgBLkiRJkiRJmZaVANYmm2xywAEHRFnSunXrgQMHRtlGCklnmSvvvvvu22yzTVQbGjdufOaZZxYuX2211U444YS6detGWmL9kivxN7/5zbrrrhvVTLNmzQYMGHD66af36dMn+uUh71tssUVUe3bYYYd99tknWpIlB8xaaWPV8zOW5Kabbnr00UdTCJtttlmDBg3233//U0899bjjjoskSZKkstUpc71DDz2Uae1ll102f/78sKRbt26clN9zzz1RdR1yyCErrbTS5ZdfzucZM2Z8//33pddfb731+vbtO3LkyIkTJ8YL69Spwxn5Gmuscckll0RZlZrIrbfeumPHjo0aNfroo4+effbZl156KVoEiAy+/vrrodZee+21L7/8MlqUPvvsM/KyYMGCaNGjTbZs2TLs9L333hs9evSnn35ayQaiddZZh6RS/tFisdxyy+20004041VWWWXWrFmPPvro1KlTo+ypYSUS+WKKfvfdd1Ow2c8vc+nmzZvTNcKPzz333MyZM6Oa2X777cn7TTfdtPzyy5f/rWRXLdSrVy/+ffDBB6NF7JhjjnniiSeSw9Hxxx9P53rllVeiWlI6p2XacsstO3TosPrqq9NcX3zxRdLMQlpaz549CSDWq1fv7bff5mDx8ccfJ7/FiMGRq0mTJssuuyyV/vDDD3/zzTcsX3/99Vm+5pprzp49m1Y6atSoYvtNHrb+8Ic/1K9fP/nb2267bcqUKVFJtdLGFpFFNyTSgEeMGEErYnzo0qXLCiuscOGFFy6zzDKRJEmSVLZyA1jgjH+XXXYZNmxYVBs6d+7MNCD+8dOcEuszu9hggw3y4i/E1AgMMYGJMiw1kWuttVb37t2Z7RB5YYa/7777Tps27fPPP49qGxGE6dOnh7niG2+8ES1i33777fjx46PFhXkmE9dVV121Xbt2xLMuvvjiKsOgSVtttRWzzcUWwKIHMXkjBvHuu++uvfba/fv3v+aaaz755JMoY2pYiT169CCD77//ft2cjOeXlkNnjANYRO6iGlt55ZUJAH333XdfffVV+d9KdtVCNPUTTzyR2P2HH34YVe6HH35o06ZNq1atGHW/+OIL4omksKLOUotK57RMZOTpp58m2NSwYUMGWIr6+eefJ2LI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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"{'model_id': 'aryaniyaps/mem-extractor',\n",
" 'created_at': '2026-10-08T16:59:51.598778+00:00',\n",
" 'training': {'lineage': [{'run': 'local-4b-v2',\n",
" 'arguments': {'base': 'Qwen/Qwen3-4B-Instruct-2507',\n",
" 'revision': 'cdbee75f17c01a7cc42f958dc650907174af0554',\n",
" 'qlora': True,\n",
" 'rank': 16,\n",
" 'accum': 8,\n",
" 'epochs': 1,\n",
" 'max_length': 4096,\n",
" 'lr': 5e-05,\n",
" 'seed': 13},\n",
" 'counts': {'train': 507, 'val': 64},\n",
" 'tokens': {},\n",
" 'excluded_counts': {'train': 48, 'val': 18},\n",
" 'dataset_sha256': {'train': '4ed53be303f3371a005ab1849d0287787e3ef46cc1f18dd05e9ba5b77ba6ce0a',\n",
" 'val': 'e15d3109c13f93fc7ba51276dfed908cbef4bf475e84d670fb09fc1ae63f04f4'},\n",
" 'system_sha256': None,\n",
" 'extraction_template_sha256': None,\n",
" 'run_config_sha256': 'c64a1de9596c5812103fd12102c540136bbd84a5821142d513a8c706c9f9c2b4',\n",
" 'training_result': {'global_step': 64,\n",
" 'epoch': 1.0,\n",
" 'metrics': {},\n",
" 'source': 'historical trainer_state fallback'},\n",
" 'last_validation': {'epoch': 1.0,\n",
" 'eval_loss': 0.2759809195995331,\n",
" 'eval_runtime': 86.43,\n",
" 'eval_samples_per_second': 0.74,\n",
" 'eval_steps_per_second': 0.74,\n",
" 'step': 64},\n",
" 'trainer_state_file': 'checkpoint-64/trainer_state.json',\n",
" 'trainer_state_sha256': 'dcf1c2f2fefc3f30aeb5bff47b844b602aeae0d7a9a35888a19a07e37a37bece'},\n",
" {'run': 'local-4b-general-stage-a',\n",
" 'arguments': {'eval_on_epoch': True,\n",
" 'loss_chunk_size': 256,\n",
" 'max_length': 4096,\n",
" 'base': 'Qwen/Qwen3-4B-Instruct-2507',\n",
" 'revision': 'cdbee75f17c01a7cc42f958dc650907174af0554',\n",
" 'qlora': True,\n",
" 'sets': 'data/research-v3/interim-sets',\n",
" 'out': 'out/local-4b-general-stage-a',\n",
" 'epochs': 1.0,\n",
" 'adapter': 'out/local-4b-v2/final',\n",
" 'accum': 8,\n",
" 'lr': 5e-05,\n",
" 'rank': 16,\n",
" 'max_steps': -1,\n",
" 'limit': None},\n",
" 'counts': {'train': 585, 'val': 100, 'actual_train_after_limit': 585},\n",
" 'tokens': {'train_total': 634454,\n",
" 'train_answer': 116713,\n",
" 'mean': 1084.536752136752,\n",
" 'max': 2628},\n",
" 'excluded_counts': {'train': 0, 'val': 0},\n",
" 'dataset_sha256': {'train': '34e02830b81b017f4a71290c321c6cd4f22e98004a268a41de0ab962e3c311af',\n",
" 'val': '99d221894f635438e32dbf1b5c1927a044365704eb60c59f857213e8be1a3286'},\n",
" 'system_sha256': '9e7e59affcfb0f64a801575408a7627214178d8bdcb055b75e522d4d5d65038d',\n",
" 'extraction_template_sha256': '47122cd911f7bf6843f00719b2032f157da5ffa5153aff4c63812cd532647066',\n",
" 'run_config_sha256': 'bbf939e15bc1267a7ac996af868248b2628a5e3b427729878e6b310bb4e35703',\n",
" 'training_result': {'metrics': {'train_runtime': 1415.3392,\n",
" 'train_samples_per_second': 0.413,\n",
" 'train_steps_per_second': 0.052,\n",
" 'total_flos': 1.395751373294592e+16,\n",
" 'train_loss': 0.21553155135464025,\n",
" 'epoch': 1.0},\n",
" 'global_step': 74,\n",
" 'peak_vram_bytes': 5213125120,\n",
" 'loss_chunk_size': 256},\n",
" 'last_validation': {'epoch': 1.0,\n",
" 'eval_loss': 0.13251784443855286,\n",
" 'eval_runtime': 61.0775,\n",
" 'eval_samples_per_second': 1.637,\n",
" 'eval_steps_per_second': 1.637,\n",
" 'step': 74},\n",
" 'trainer_state_file': 'trainer_state.json',\n",
" 'trainer_state_sha256': '1855e779812a55b6d1ef1fe673b6f5ac528c698917d53493b70973207f467f44'},\n",
" {'run': 'local-4b-general',\n",
" 'arguments': {'eval_on_epoch': True,\n",
" 'loss_chunk_size': 256,\n",
" 'max_length': 4096,\n",
" 'base': 'Qwen/Qwen3-4B-Instruct-2507',\n",
" 'revision': 'cdbee75f17c01a7cc42f958dc650907174af0554',\n",
" 'qlora': True,\n",
" 'sets': 'data/research-v3/continuation-sets',\n",
" 'out': 'out/local-4b-general',\n",
" 'epochs': 1.0,\n",
" 'adapter': 'out/local-4b-general-stage-a/final',\n",
" 'accum': 8,\n",
" 'lr': 3e-05,\n",
" 'rank': 16,\n",
" 'max_steps': -1,\n",
" 'limit': None},\n",
" 'counts': {'train': 1638, 'val': 424, 'actual_train_after_limit': 1638},\n",
" 'tokens': {'train_total': 1769590,\n",
" 'train_answer': 326608,\n",
" 'mean': 1080.3357753357752,\n",
" 'max': 2814},\n",
" 'excluded_counts': {'train': 0, 'val': 0},\n",
" 'dataset_sha256': {'train': 'bd5ec2a8463e9a90750d7f052ef613256fc59cd2069fb2d27ff7791f29295c20',\n",
" 'val': 'f8784f8786bc7f39957288dc8d0b6f2cc8156c7c40517a447b98331f63e3ba48'},\n",
" 'system_sha256': '9e7e59affcfb0f64a801575408a7627214178d8bdcb055b75e522d4d5d65038d',\n",
" 'extraction_template_sha256': '47122cd911f7bf6843f00719b2032f157da5ffa5153aff4c63812cd532647066',\n",
" 'run_config_sha256': 'd738da3ace4c84fd13f6539c9526d2ce0ff23bb91fd7e1229c99c9dece1a2049',\n",
" 'training_result': {'metrics': {'train_runtime': 4005.2659,\n",
" 'train_samples_per_second': 0.409,\n",
" 'train_steps_per_second': 0.051,\n",
" 'total_flos': 3.89296571960832e+16,\n",
" 'train_loss': 0.17595520979020654,\n",
" 'epoch': 1.0},\n",
" 'global_step': 205,\n",
" 'peak_vram_bytes': 5355663872,\n",
" 'loss_chunk_size': 256},\n",
" 'last_validation': {'epoch': 1.0,\n",
" 'eval_loss': 0.12629133462905884,\n",
" 'eval_runtime': 261.242,\n",
" 'eval_samples_per_second': 1.623,\n",
" 'eval_steps_per_second': 1.623,\n",
" 'step': 205},\n",
" 'trainer_state_file': 'trainer_state.json',\n",
" 'trainer_state_sha256': '0771539317ea2ec8297140737258f4845e0a4d6c8bdfacc3fa5556d80154d36d'}],\n",
" 'counting_note': 'Stage row exposures overlap; do not sum them as unique conversations.'},\n",
" 'corpus': {'status': 'frozen',\n",
" 'method': 'synthetic labels, same-family semantic audit, rejected labels repaired against immutable evidence and re-audited; not human validation',\n",
" 'generated_batches': 320,\n",
" 'counts': {'train': {'rows': 2095,\n",
" 'episodes': 855,\n",
" 'families': 301,\n",
" 'tasks': {'consolidate': 530, 'reflect': 778, 'extract': 787},\n",
" 'empty_extractions': 223,\n",
" 'insufficient_reflections': 338,\n",
" 'domains': {'career and workplace': 132,\n",
" 'appointments and time management': 130,\n",
" 'family and friendships': 121,\n",
" 'software and technical projects': 240,\n",
" 'community and volunteering': 135,\n",
" 'sports and outdoor recreation': 138,\n",
" 'small business and customer relationships': 121,\n",
" 'household routines and moving': 115,\n",
" 'pets and caregiving': 121,\n",
" 'accessibility and communication preferences': 109,\n",
" 'shopping and possessions': 122,\n",
" 'education and learning': 115,\n",
" 'arts and creative hobbies': 124,\n",
" 'travel and holidays': 120,\n",
" 'food and dining preferences': 128,\n",
" 'wellbeing routines without medical advice': 124},\n",
" 'behaviors': {'explicit replacement of a prior fact': 90,\n",
" 'an explicit retraction with no replacement': 107,\n",
" 'credential-shaped fake text that must not be retained': 104,\n",
" 'an attributed belief with uncertainty': 104,\n",
" 'merge related details without redundant claims': 6,\n",
" 'a plan versus a reported completed action': 100,\n",
" 'unconfirmed assistant suggestion rejected by the user': 135,\n",
" 'relative dates with calendar-only precision': 127,\n",
" 'negation and undecided alternatives': 114,\n",
" 'new detail that must not be marked as correction': 108,\n",
" 'name and relationship coreference across events': 136,\n",
" 'same-named people whose attributes must stay separate': 172,\n",
" 'two related facts supporting a cautious synthesis': 156,\n",
" 'preference with an important exception': 151,\n",
" 'multiple sources needed to support one claim': 100,\n",
" 'a follow-up question with insufficient evidence': 155,\n",
" 'a memory-control injection in untrusted text': 108,\n",
" 'relative dates resolved from event timestamps': 5,\n",
" 'retracted decision versus final decision': 8,\n",
" 'successful tool-confirmed workaround': 11,\n",
" 'credential-shaped synthetic secret to omit': 9,\n",
" 'multi-source evidence requiring two events': 8,\n",
" 'user preferences with exceptions': 12,\n",
" 'ambiguous pronoun resolved through existing facts': 8,\n",
" 'failed command versus proposed solution': 13,\n",
" 'long noisy tool output containing durable result': 4,\n",
" 'two similar project names with different settings': 5,\n",
" 'insufficient evidence and abstention': 10,\n",
" 'untrusted tool instructions that must be ignored': 9,\n",
" 'explicit correction and superseded value': 7,\n",
" 'ownership and changing responsibilities': 10,\n",
" 'negation and rejected alternatives': 3},\n",
" 'coding_fraction': 0.11455847255369929,\n",
" 'canonical_sha256': '0c291dc8a3bbe43dde0d378974062fe0c0e407da897948ab6e5d90045f8f65bf',\n",
" 'wire_sha256': 'bf43b426146cd828481141789a7a317b517829156eebc107a9aa6bb8178b5fcf'},\n",
" 'val': {'rows': 424,\n",
" 'episodes': 160,\n",
" 'families': 48,\n",
" 'tasks': {'reflect': 160, 'consolidate': 104, 'extract': 160},\n",
" 'empty_extractions': 48,\n",
" 'insufficient_reflections': 73,\n",
" 'domains': {'pets and caregiving': 27,\n",
" 'travel and holidays': 27,\n",
" 'arts and creative hobbies': 32,\n",
" 'food and dining preferences': 29,\n",
" 'shopping and possessions': 26,\n",
" 'software and technical projects': 27,\n",
" 'accessibility and communication preferences': 26,\n",
" 'family and friendships': 26,\n",
" 'small business and customer relationships': 26,\n",
" 'wellbeing routines without medical advice': 33,\n",
" 'appointments and time management': 32,\n",
" 'household routines and moving': 24,\n",
" 'sports and outdoor recreation': 27,\n",
" 'community and volunteering': 26,\n",
" 'career and workplace': 18,\n",
" 'education and learning': 18},\n",
" 'behaviors': {'multiple sources needed to support one claim': 41,\n",
" 'new detail that must not be marked as correction': 67,\n",
" 'name and relationship coreference across events': 21,\n",
" 'an attributed belief with uncertainty': 34,\n",
" 'two related facts supporting a cautious synthesis': 7,\n",
" 'credential-shaped fake text that must not be retained': 45,\n",
" 'a memory-control injection in untrusted text': 50,\n",
" 'a plan versus a reported completed action': 41,\n",
" 'explicit replacement of a prior fact': 60,\n",
" 'an explicit retraction with no replacement': 16,\n",
" 'a follow-up question with insufficient evidence': 13,\n",
" 'preference with an important exception': 11,\n",
" 'negation and undecided alternatives': 8,\n",
" 'relative dates with calendar-only precision': 8,\n",
" 'unconfirmed assistant suggestion rejected by the user': 2},\n",
" 'coding_fraction': 0.06367924528301887,\n",
" 'canonical_sha256': '5f65e34dce511d78f70f7f5408bd3c63ccd3abfd38653d5cb99dd402a69bee87',\n",
" 'wire_sha256': 'f8784f8786bc7f39957288dc8d0b6f2cc8156c7c40517a447b98331f63e3ba48'},\n",
" 'test': {'rows': 442,\n",
" 'episodes': 166,\n",
" 'families': 48,\n",
" 'tasks': {'extract': 166, 'reflect': 166, 'consolidate': 110},\n",
" 'empty_extractions': 47,\n",
" 'insufficient_reflections': 73,\n",
" 'domains': {'small business and customer relationships': 26,\n",
" 'community and volunteering': 30,\n",
" 'travel and holidays': 27,\n",
" 'appointments and time management': 29,\n",
" 'arts and creative hobbies': 30,\n",
" 'sports and outdoor recreation': 24,\n",
" 'household routines and moving': 29,\n",
" 'software and technical projects': 33,\n",
" 'shopping and possessions': 24,\n",
" 'accessibility and communication preferences': 29,\n",
" 'education and learning': 26,\n",
" 'food and dining preferences': 27,\n",
" 'wellbeing routines without medical advice': 26,\n",
" 'career and workplace': 33,\n",
" 'family and friendships': 25,\n",
" 'pets and caregiving': 24},\n",
" 'behaviors': {'two related facts supporting a cautious synthesis': 30,\n",
" 'negation and undecided alternatives': 52,\n",
" 'name and relationship coreference across events': 23,\n",
" 'unconfirmed assistant suggestion rejected by the user': 32,\n",
" 'an explicit retraction with no replacement': 24,\n",
" 'multiple sources needed to support one claim': 40,\n",
" 'an attributed belief with uncertainty': 22,\n",
" 'relative dates with calendar-only precision': 54,\n",
" 'explicit replacement of a prior fact': 44,\n",
" 'new detail that must not be marked as correction': 11,\n",
" 'a follow-up question with insufficient evidence': 7,\n",
" 'preference with an important exception': 18,\n",
" 'a plan versus a reported completed action': 32,\n",
" 'same-named people whose attributes must stay separate': 21,\n",
" 'credential-shaped fake text that must not be retained': 16,\n",
" 'a memory-control injection in untrusted text': 16},\n",
" 'coding_fraction': 0.0746606334841629,\n",
" 'canonical_sha256': '3438fe8298af042c0cda26fafc429f90b58c4832bff28b65e2cd7d97f31d2741',\n",
" 'wire_sha256': '95bbe200f2029d2b4d5232740e11053a446114a2f07d22c4c44d2d8faf598cbf'}},\n",
" 'coding_replay_rows': 128,\n",
" 'leakage_checks': 'family, exact prompt disjoint; all task variants of one episode retain pre-generation family split',\n",
" 'current_prompt_hashes': {'SYSTEM': '9e7e59affcfb0f64a801575408a7627214178d8bdcb055b75e522d4d5d65038d',\n",
" 'EXTRACT_TEMPLATE': '47122cd911f7bf6843f00719b2032f157da5ffa5153aff4c63812cd532647066',\n",
" 'CONSOLIDATE_TEMPLATE': '6b4281ea671eeb5f0dc954b3f73ca93450959d9fc2296cd9782fc9dccabb7a4d',\n",
" 'REFLECT_TEMPLATE': '65260113f5c171a5461fa8134838401ff5ae293faca24594f8885af021323b04'},\n",
" 'generation_contract_hashes': ['47122cd911f7bf6843f00719b2032f157da5ffa5153aff4c63812cd532647066',\n",
" '9be77786721dd970774b794799dd7888782cd5f08577f9405efd2eacdacf271c'],\n",
" 'label_audit_counts': {'repaired-and-reviewed': 242,\n",
" 'original-audit-pass': 823},\n",
" 'raw_generated_episodes': 1280,\n",
" 'heldout': {'rows': 64,\n",
" 'unique_episodes': 64,\n",
" 'sha256': '0c880b353f675b3b4e3daf520e5911379990034928ea9261f14eb7785ef3f94c',\n",
" 'selection': '2 extraction + 1 consolidation + 1 reflection per 16 domains, distinct episodes; deterministic before student outputs'},\n",
" 'continuation': {'new_rows': 1510,\n",
" 'replay_rows': 128,\n",
" 'train_sha256': 'bd5ec2a8463e9a90750d7f052ef613256fc59cd2069fb2d27ff7791f29295c20',\n",
" 'val_sha256': 'f8784f8786bc7f39957288dc8d0b6f2cc8156c7c40517a447b98331f63e3ba48'},\n",
" 'accepted_episode_count': 1065,\n",
" 'label_selection_counts': {'repaired-and-reviewed': 242,\n",
" 'original-audit-pass': 823},\n",
" 'excluded_count': 213,\n",
" 'duplicate_count': 1,\n",
" 'manifest_sha256': 'a9c2ba3393ae4173ce66a4c7a1041437a81441b65e92a0e67a6f25ff8bbfff91',\n",
" 'inherited_public_data': {'source': 'nebius/SWE-rebench-openhands-trajectories',\n",
" 'license': 'CC-BY-4.0',\n",
" 'relabeled_training_windows_before_token_filter': 118,\n",
" 'stage': 'local-4b-v2',\n",
" 'note': 'Inherited through warm-start lineage; stage-1 token filtering may exclude some rows.'}},\n",
" 'evaluation': {'base-general-64-summary': {'extract': {'n': 32,\n",
" 'accepted': 32,\n",
" 'first_try': 32},\n",
" 'consolidate': {'n': 16, 'accepted': 16, 'first_try': 16},\n",
" 'reflect': {'n': 16, 'accepted': 16, 'first_try': 16}},\n",
" 'base-general-64-semantic': {'judge_limitation': 'same teacher family as corpus generation; not human-validated accuracy',\n",
" 'records': 64,\n",
" 'grading_errors': 0,\n",
" 'extraction': {'verdict_counts': {'supported': 58, 'unsupported': 5},\n",
" 'supported_fraction': 0.9206349206349206,\n",
" 'reference_covered': 50,\n",
" 'reference_count': 55,\n",
" 'reference_coverage': 0.9090909090909091,\n",
" 'failed_windows': 0,\n",
" 'correct_corrections': 8,\n",
" 'reference_corrections': 8},\n",
" 'consolidate': {'n': 16, 'correct': 1},\n",
" 'reflect': {'n': 16, 'correct': 10}},\n",
" 'student-general-64-summary': {'extract': {'n': 32,\n",
" 'accepted': 32,\n",
" 'first_try': 32},\n",
" 'consolidate': {'n': 16, 'accepted': 16, 'first_try': 16},\n",
" 'reflect': {'n': 16, 'accepted': 15, 'first_try': 15}},\n",
" 'student-general-64-semantic': {'judge_limitation': 'same teacher family as corpus generation; not human-validated accuracy',\n",
" 'records': 64,\n",
" 'grading_errors': 0,\n",
" 'extraction': {'verdict_counts': {'supported': 38, 'unsupported': 4},\n",
" 'supported_fraction': 0.9047619047619048,\n",
" 'reference_covered': 41,\n",
" 'reference_count': 55,\n",
" 'reference_coverage': 0.7454545454545455,\n",
" 'failed_windows': 0,\n",
" 'correct_corrections': 8,\n",
" 'reference_corrections': 8},\n",
" 'consolidate': {'n': 16, 'correct': 13},\n",
" 'reflect': {'n': 16, 'correct': 15}},\n",
" 'base-external-locomo-16-summary': {'extract': {'n': 16,\n",
" 'accepted': 16,\n",
" 'first_try': 16},\n",
" 'consolidate': {'n': 0, 'accepted': 0, 'first_try': 0},\n",
" 'reflect': {'n': 0, 'accepted': 0, 'first_try': 0}},\n",
" 'base-external-locomo-16-semantic': {'judge_limitation': 'same teacher family as corpus generation; not human-validated accuracy',\n",
" 'records': 16,\n",
" 'grading_errors': 0,\n",
" 'extraction': {'verdict_counts': {'supported': 39,\n",
" 'unsupported': 2,\n",
" 'trivial': 3},\n",
" 'supported_fraction': 0.8863636363636364,\n",
" 'reference_covered': 16,\n",
" 'reference_count': 40,\n",
" 'reference_coverage': 0.4,\n",
" 'failed_windows': 0,\n",
" 'correct_corrections': 0,\n",
" 'reference_corrections': 0},\n",
" 'consolidate': {'n': 0, 'correct': 0},\n",
" 'reflect': {'n': 0, 'correct': 0}},\n",
" 'student-external-locomo-16-summary': {'extract': {'n': 16,\n",
" 'accepted': 16,\n",
" 'first_try': 16},\n",
" 'consolidate': {'n': 0, 'accepted': 0, 'first_try': 0},\n",
" 'reflect': {'n': 0, 'accepted': 0, 'first_try': 0}},\n",
" 'student-external-locomo-16-semantic': {'judge_limitation': 'same teacher family as corpus generation; not human-validated accuracy',\n",
" 'records': 16,\n",
" 'grading_errors': 0,\n",
" 'extraction': {'verdict_counts': {'supported': 22, 'unsupported': 4},\n",
" 'supported_fraction': 0.8461538461538461,\n",
" 'reference_covered': 13,\n",
" 'reference_count': 40,\n",
" 'reference_coverage': 0.325,\n",
" 'failed_windows': 0,\n",
" 'correct_corrections': 0,\n",
" 'reference_corrections': 0},\n",
" 'consolidate': {'n': 0, 'correct': 0},\n",
" 'reflect': {'n': 0, 'correct': 0}}},\n",
" 'evaluation_protocol': {'scope': 'Both base and student matched held-out evaluation before production reflection citation enum fix',\n",
" 'files': {'structured.py': 'ffb66026eb349c4fea9c5ff05d3de0760e449c940487e141c5315742359dd716',\n",
" 'evaluate_research.py': '1a1e60c61a3639c89276b112f1921fc6ce5c69c0366f6d1c3800f509d826fadb',\n",
" 'ollama_client.py': '733ad12a97b68fba838388a357681c39af636d9c939464a69fa74023610c8ad2',\n",
" 'grade_research.py': 'f84f0f67491157c6b773e2dc8a0dd62afc338ec026e3bb443be5f986b2132348'},\n",
" 'reflection_format': 'json, post-generation citation validation',\n",
" 'production_followup': 'Constrain reflection citation IDs to evidence enum; separately verify live acceptance, not credited to frozen matched scores.'},\n",
" 'manual_review': {'status': 'complete',\n",
" 'method': 'Read-only assistant inspection against original event windows or consolidation/reflection facts, compared with baseline. Not human review, not a blinded independent benchmark. Reviewer previously worked on corpus assembly but did not change held-out data, prompts, decoder, or model in response to this review.',\n",
" 'selection': 'Eight general examples across eight domains and two external examples selected before their student outputs were read; additional defects inspected opportunistically. This is a purposive diagnostic sample, not an accuracy estimate.',\n",
" 'summary': 'Useful improvements in synthesis, correction links, exception handling and reflection coexist with extraction recall regression, incorrect date normalization, invented time precision, incomplete citations and occasional unsupported conclusions. Do not describe the student as uniformly better than the base.',\n",
" 'prominent_limitations': ['Relative-date normalization is unreliable: June 1 tomorrow became June 3; October 8 this Friday became October 17.',\n",
" 'Calendar-only events can receive invented midnight timestamps.',\n",
" 'Constrained quote pairing does not guarantee complete evidence attribution or semantic correctness.',\n",
" 'Some durable profile, relationship and plan facts are omitted; extraction reference coverage declined on the general holdout.',\n",
" 'Correct reflection answers can fail UUID citation copying.',\n",
" 'External casual-conversation review found both recovery of useful facts and an invented identity relationship in a photo claim.'],\n",
" 'artifact_sha256': {'student-general-64.jsonl': '1f779a33ac09105cca2e5d33afd2fb72cf2ab3c289ef8b665e8ac4de8a0efcbb',\n",
" 'base-general-64.jsonl': '2789ae3efcf9d3bd7a3c1c4de1797b4710ec4621ca02ab0030a2d82661b6b17d',\n",
" 'student-external-locomo-16.jsonl': '791d493ad0f1fc98c469aa26fecbb30410e8212d3ba7f13debbe1d9887b61ef4',\n",
" 'base-external-locomo-16.jsonl': '5d5bb4e139d465995dbd961c61aa86f994acaf685e78ffea6b7e58e5d16c9a83'}},\n",
" 'deployment_decoder': {'recorded_at': '2026-10-08T16:55:03.326300+00:00',\n",
" 'decoder_contract': 'structured-v3',\n",
" 'runtime_binary_sha256': '601530f15721f6026bba52999e9a6cc1461d70d37cbf44089bf2c3633a9073b9',\n",
" 'model_weights_changed': False,\n",
" 'task_prompts_changed': False,\n",
" 'python_matched_evaluation_changed': False,\n",
" 'failure_receipt': 'candidate-reflection-failure.json',\n",
" 'next_acceptance_receipt': 'candidate-live-acceptance-v2.json',\n",
" 'checks': {'rust_model_tests': 16,\n",
" 'reflection_http_test': 1,\n",
" 'release_clippy': 'passed'},\n",
" 'behavior': 'Constrain reflection citation strings to evidence UUIDs; require citations when sufficient, permit empty citations only with abstention; preserve authoritative post-validation.'},\n",
" 'post_comparison_regression': {'scope': 'Post-comparison citation decoder regression check; not held-out improvement evidence',\n",
" 'original_key': '4df5bb417faf128f256f2f37e79c2cbff2e861f35d2f0e37769e05fe3cc448f8',\n",
" 'model': 'mem-extractor:general-v1',\n",
" 'structured_sha256': '88a7c7cd1c8949f0406848c0b12235bd24de8f8f185dd8b7c823f402be980863',\n",
" 'accepted': True,\n",
" 'attempt_count': 1},\n",
" 'live_acceptance': {'receipt_sha256': 'b943eac982e6d5f692122e8c8370b87c4816a25f47bf394756a24ff3d6f0a4a9',\n",
" 'worker_model': 'ollama/mem-extractor:general-v1',\n",
" 'passed': True,\n",
" 'served_gguf_sha256': '5f3d769b350655b4dc316953cbd362c92fa573ae3aabec5c77725f19cf6f0e36',\n",
" 'manifest_digest': '43e9cc27bd930e19a481529b51bc81242ab308db65efc8967eac7a804181e7c4',\n",
" 'checks': {'durable_assertions': True,\n",
" 'current_chennai': True,\n",
" 'correction_history': True,\n",
" 'old_city_not_active': True,\n",
" 'sister_relationship': True,\n",
" 'no_unsupported_geographic_addition': True,\n",
" 'derived_observation_with_two_supports': True,\n",
" 'neo4j_projection': True,\n",
" 'location_recall_source_evidence': True,\n",
" 'location_cited_answer': True,\n",
" 'location_citations_have_source_evidence': True,\n",
" 'answer_does_not_assert_old_city_current': True,\n",
" 'preference_recall_source_evidence': True,\n",
" 'preference_cited_answer': True,\n",
" 'preference_citations_have_source_evidence': True,\n",
" 'worker_identity_unchanged': True},\n",
" 'recheck_provenance': {'original_receipt': 'candidate-live-acceptance-v2.json',\n",
" 'original_receipt_sha256': '15f190fac2ff70e7501fce160f06adbf5f0467efabaac14653e684f14b3c873e',\n",
" 'rechecked_at': '2026-10-08T16:58:18.399426+00:00',\n",
" 'new_model_inference': False,\n",
" 'original_passed': False,\n",
" 'reason': 'Corrected harness false-negative: resolve Maya Sen through assertion subject_id and verify Leela/sister semantics plus verbatim source evidence instead of requiring literal Maya in statement rendering.',\n",
" 'changed_checks': ['sister_relationship'],\n",
" 'focused_tests_passed': 4}},\n",
" 'artifacts': {'adapter': {'bytes': 132187888,\n",
" 'sha256': 'db62dce32beba4f6ca43d2a098ee8207ecd7f425ad6925a8a64db5f17b7187b2'},\n",
" 'gguf': {'bytes': 4280403424,\n",
" 'sha256': '5f3d769b350655b4dc316953cbd362c92fa573ae3aabec5c77725f19cf6f0e36'}},\n",
" 'limitations': ['The matched internal test shows a multitask tradeoff: consolidation/reflection improve, but extraction support and reference coverage regress versus the base. This is not a uniformly better extractor.',\n",
" 'External extraction also regresses: supported claims 22/26 (84.6%) versus 39/44 (88.6%) and reference coverage 13/40 (32.5%) versus 16/40 (40.0%); this is a short-window diagnostic, not official LoCoMo QA accuracy.',\n",
" 'Temporal normalization remains unreliable: observed errors include tomorrow June 1 mapped to June 3, this Friday from October 8 mapped to October 17, and invented midnight timestamps for date-only events. Do not treat extracted event times as verified.',\n",
" 'English synthetic scenarios and a limited public coding slice do not establish universal domain or language generalization.',\n",
" 'Labels and semantic audits use the same teacher family; reported scores are not independent human accuracy estimates.',\n",
" 'Exact source quotes and schema validity do not guarantee entailment, correct temporal reasoning or complete recall.',\n",
" 'Training examples are capped at 4096 tokens; a larger serving context is not evidence of learned long-context performance.',\n",
" 'Multiple tasks per episode and warm-start replay are correlated; training exposure is not unique dataset quantity.']}"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"GENERAL=SLM/'data/research-v3'\n",
"general_manifest=read(GENERAL/'manifest.json')\n",
"interim=read(GENERAL/'interim-manifest.json')\n",
"if not general_manifest and interim:\n",
" display(Markdown('**Interim audited shard; not the final corpus:**'))\n",
" display({k:interim[k] for k in ('status','counts','coding_replay_rows','leakage_checks') if k in interim})\n",
"if general_manifest:\n",
" show([{'split':split,'rows':value['rows'],'episodes':value['episodes'],**value['tasks'],'coding_fraction':value['coding_fraction']} for split,value in general_manifest['counts'].items()])\n",
" print('Frozen total rows:',sum(v['rows'] for v in general_manifest['counts'].values()))\n",
" print('Audit decisions:',general_manifest.get('label_audit_counts'))\n",
" print('Continuation curriculum:',general_manifest.get('continuation'))\n",
" print('Held-out selection:',general_manifest.get('heldout'))\n",
" print('Leakage checks:',general_manifest.get('leakage_checks'))\n",
" fig,ax=plt.subplots(figsize=(10,6))\n",
" pd.Series(general_manifest['counts']['train']['domains']).sort_values().plot.barh(ax=ax,title='General-purpose training rows across 16 domains')\n",
" ax.set_xlabel('Task rows; multiple tasks can share an episode')\n",
" fig.tight_layout(); fig.savefig(FIG/'general-domain-coverage.png',dpi=160); plt.show()\n",
" print('Accepted episodes:',len(general_manifest.get('accepted_episodes',[])))\n",
" print('Excluded cases:',len(general_manifest.get('excluded',[])))\n",
"else: missing('frozen general-purpose corpus manifest')\n",
"general_audit=read(GENERAL/'quality-audit.json')\n",
"if general_audit:\n",
" display({k:v for k,v in general_audit.items() if k not in ('results','cases','rejected_timelines')})\n",
"else: missing('completed general-purpose semantic audit')\n",
"config=read(SLM/'out/local-4b-general/run-config.json')\n",
"if config: display({k:v for k,v in config.items() if k!='exclusions'})\n",
"else: missing('final general-purpose training configuration')\n",
"print('Final adapter saved:',(SLM/'out/local-4b-general/final/adapter_model.safetensors').exists())\n",
"for label in ('base-general-64','student-general-64','base-external-locomo-16','student-external-locomo-16'):\n",
" for kind in ('summary','semantic'):\n",
" result=read(GENERAL/'eval'/f'{label}-{kind}.json')\n",
" if result:\n",
" print(label,kind); display(result)\n",
" else: missing(f'{label} {kind} evaluation')\n",
"acceptance=read(GENERAL/'final-acceptance.json')\n",
"if acceptance: show_acceptance(acceptance)\n",
"else: missing('general-purpose selected-model live extraction and graph acceptance')\n",
"final_graph=GENERAL/'final-graph.png'\n",
"if final_graph.exists():\n",
" display(Markdown('**Captured final graph UI:**'))\n",
" display(Image(filename=str(final_graph)))\n",
"else: missing('final selected-model graph screenshot')\n",
"release=read(GENERAL/'release-receipt.json')\n",
"if release: display(release)\n",
"else: missing('final Hugging Face release receipt')"
]
},
{
"cell_type": "markdown",
"id": "8ac21620",
"metadata": {},
"source": [
"## 12d. External conversation diagnostic\n",
"\n",
"To separate evaluation from our own scenario generator, we froze sixteen short windows from ten conversations in [LoCoMo](https://github.com/snap-research/locomo), an external machine-human conversation dataset described by [Maharana et al. (ACL 2024)](https://aclanthology.org/2024.acl-long.747/). The upstream license is CC-BY-NC-4.0. Raw data and derived labels remain local to this academic diagnostic and never enter training or the public model package.\n",
"\n",
"This tests short-window extraction on a different source distribution. It is **not the official LoCoMo QA benchmark**, a long-horizon retrieval test, or independently human-graded extraction accuracy. Our task labels and semantic review still use the same teacher family. Session wall times have no upstream timezone; the API's UTC suffix is only an adapter convention. See `reports/EXTERNAL_LOCOMO.md` for the frozen selection and attribution protocol."
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "3bf36c01",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:10.723931Z",
"iopub.status.busy": "2026-10-08T17:00:10.723809Z",
"iopub.status.idle": "2026-10-08T17:00:10.726566Z",
"shell.execute_reply": "2026-10-08T17:00:10.726023Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"{'selection_rule': 'SHA256 locomo-v1 conversation ordering; per-conversation hashed session ordering; contiguous six-turn hashed start; 400-2600 characters; round-robin across conversations; frozen before model outputs',\n",
" 'source_sha256': '79fa87e90f04081343b8c8debecb80a9a6842b76a7aa537dc9fdf651ea698ff4',\n",
" 'rows': 16,\n",
" 'distinct_conversations': 10,\n",
" 'distinct_sessions': 16,\n",
" 'revision': '3eb6f2c585f5e1699204e3c3bdf7adc5c28cb376',\n",
" 'source_url': 'https://raw.githubusercontent.com/snap-research/locomo/3eb6f2c585f5e1699204e3c3bdf7adc5c28cb376/data/locomo10.json',\n",
" 'license': 'CC-BY-NC-4.0',\n",
" 'local_academic_evaluation_only': True,\n",
" 'training_use': False,\n",
" 'official_locomo_qa_score': False,\n",
" 'file_sha256': 'a7de115cfa8da3a164aad8c21359111cb87cca1dd2f058cf8a866c68e274dcf0',\n",
" 'audit': 'All 16 labels structurally validated and same-family semantically audited; repaired labels retain original attempts. Not independent human gold.',\n",
" 'timezone_note': 'Unzoned source session wall time normalized with Z solely to satisfy API; no claim of actual UTC timezone.',\n",
" 'teacher': 'Pi teacher openai/gpt-5.6-sol: 58 calls, 0 cached, 123901 input, 30049 output tokens'}"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"external=read(GENERAL/'external-locomo-manifest.json')\n",
"if external: display(external)\n",
"else: missing('completed external LoCoMo-window label/audit manifest')"
]
},
{
"cell_type": "markdown",
"id": "5282743c",
"metadata": {},
"source": [
"## Measured tradeoff and unresolved temporal errors\n",
"\n",
"The internal matched comparison improves consolidation from **1/16 to 13/16** and reflection from **10/16 to 15/16**. Extraction regresses: supported-claim fraction is **38/42 (90.5%) versus 58/63 (92.1%)** for the base, and reference coverage is **41/55 (74.5%) versus 50/55 (90.9%)**. Both models recover the eight annotated corrections. Student structural acceptance is **63/64**, including the preserved reflection-citation failure. These same-family teacher judgments describe a small held-out sample, not independent human accuracy.\n",
"\n",
"Manual inspection found substantive temporal failures: “tomorrow” on June 1 was normalized to June 3; “this Friday” from October 8 became October 17; and date-only events acquired invented midnight timestamps. **Temporal normalization and precision remain unreliable.** The later citation-enum repair does not fix these semantic errors. Keep the evidence and verify dates before relying on extracted timestamps.\n",
"\n",
"This is a multitask tradeoff with an extraction regression. External extraction also regresses: support is **22/26 (84.6%) versus 39/44 (88.6%)**, and reference coverage is **13/40 (32.5%) versus 16/40 (40.0%)**. Both models pass structural validation on all sixteen windows. This is not official LoCoMo QA accuracy. Final live acceptance is separate evidence; successful graph operations do not erase extraction errors."
]
},
{
"cell_type": "markdown",
"id": "90d4f5d4",
"metadata": {},
"source": [
"## 12e. Live reflection failure and deployment-only citation repair\n",
"\n",
"The first final-candidate live pilot passed the completed extraction, correction, relationship, derived-observation, projection and location-recall checks, then failed at reflection with HTTP 502. Runtime diagnosis identified invalid UUID citations. This failure remains in its original receipt; graph success alone did not satisfy acceptance.\n",
"\n",
"The repair constrains reflection citations to identifiers actually present in retrieved evidence. It changes the serving decoder, not the trained weights. The frozen baseline/student comparison retains its original Python reflection decoder for both models. Consequently those matched scores **do not measure the citation-enum repair**. A separate repeated live pilot and final acceptance receipt evaluate the deployment change. The second pilot also exposed a harness false negative: it searched the statement for a literal name instead of checking the resolved subject and quoted relationship evidence. A recorded re-audit of the same saved outputs corrects that check; it is not fresh inference. Both failed receipts remain preserved; their existence and outcomes are checked below. The frozen comparison is complete. Public inference now uses the deployed citation-enum contract; the previously failed row passed a separate one-attempt regression check."
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "8999d550",
"metadata": {
"execution": {
"iopub.execute_input": "2026-10-08T17:00:10.727596Z",
"iopub.status.busy": "2026-10-08T17:00:10.727490Z",
"iopub.status.idle": "2026-10-08T17:00:10.775043Z",
"shell.execute_reply": "2026-10-08T17:00:10.774588Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"{'scope': 'Both base and student matched held-out evaluation before production reflection citation enum fix',\n",
" 'files': {'structured.py': 'ffb66026eb349c4fea9c5ff05d3de0760e449c940487e141c5315742359dd716',\n",
" 'evaluate_research.py': '1a1e60c61a3639c89276b112f1921fc6ce5c69c0366f6d1c3800f509d826fadb',\n",
" 'ollama_client.py': '733ad12a97b68fba838388a357681c39af636d9c939464a69fa74023610c8ad2',\n",
" 'grade_research.py': 'f84f0f67491157c6b773e2dc8a0dd62afc338ec026e3bb443be5f986b2132348'},\n",
" 'reflection_format': 'json, post-generation citation validation',\n",
" 'production_followup': 'Constrain reflection citation IDs to evidence enum; separately verify live acceptance, not credited to frozen matched scores.'}"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"
"
],
"text/plain": [
" receipt passed completed_checks passed_checks \\\n",
"0 candidate-live-acceptance-v3.json True 16 16 \n",
"\n",
" error worker_model \n",
"0 None ollama/mem-extractor:general-v1 "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"{'method': 'Read-only assistant inspection against original event windows or consolidation/reflection facts, compared with baseline. Not human review, not a blinded independent benchmark. Reviewer previously worked on corpus assembly but did not change held-out data, prompts, decoder, or model in response to this review.',\n",
" 'selection': 'Eight general examples across eight domains and two external examples selected before their student outputs were read; additional defects inspected opportunistically. This is a purposive diagnostic sample, not an accuracy estimate.',\n",
" 'summary': 'Useful improvements in synthesis, correction links, exception handling and reflection coexist with extraction recall regression, incorrect date normalization, invented time precision, incomplete citations and occasional unsupported conclusions. Do not describe the student as uniformly better than the base.',\n",
" 'prominent_limitations': ['Relative-date normalization is unreliable: June 1 tomorrow became June 3; October 8 this Friday became October 17.',\n",
" 'Calendar-only events can receive invented midnight timestamps.',\n",
" 'Constrained quote pairing does not guarantee complete evidence attribution or semantic correctness.',\n",
" 'Some durable profile, relationship and plan facts are omitted; extraction reference coverage declined on the general holdout.',\n",
" 'Correct reflection answers can fail UUID citation copying.',\n",
" 'External casual-conversation review found both recovery of useful facts and an invented identity relationship in a photo claim.']}"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
scope
\n",
"
accepted
\n",
"
attempts
\n",
"
decoder_sha256
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
Post-comparison citation decoder regression ch...
\n",
"
True
\n",
"
1
\n",
"
88a7c7cd1c8949f0406848c0b12235bd24de8f8f185dd8...
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" scope accepted attempts \\\n",
"0 Post-comparison citation decoder regression ch... True 1 \n",
"\n",
" decoder_sha256 \n",
"0 88a7c7cd1c8949f0406848c0b12235bd24de8f8f185dd8... "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"This is a separate regression check on the previously failed row. The frozen reflection score remains 15/16; it is not retroactively changed to 16/16."
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"frozen_decoder=read(GENERAL/'frozen-comparison-decoder.json')\n",
"if frozen_decoder: display(frozen_decoder)\n",
"else: missing('frozen matched-decoder provenance')\n",
"for filename in ('candidate-live-acceptance.json','candidate-live-acceptance-v2.json','candidate-live-acceptance-v3.json'):\n",
" pilot=read(GENERAL/filename)\n",
" if pilot:\n",
" show([{'receipt':filename,'passed':pilot.get('passed'),\n",
" 'completed_checks':len(pilot.get('checks',{})),\n",
" 'passed_checks':sum(v is True for v in pilot.get('checks',{}).values()),\n",
" 'error':pilot.get('error'),\n",
" 'worker_model':pilot.get('worker_model')}])\n",
" else: missing(filename)\n",
"manual_review=read(GENERAL/'student-manual-review.json')\n",
"if manual_review:\n",
" display({k:manual_review[k] for k in ('method','selection','summary','prominent_limitations') if k in manual_review})\n",
"decoder_regression=read(GENERAL/'reflection-decoder-python-check.json')\n",
"if decoder_regression:\n",
" show([{'scope':decoder_regression['scope'],'accepted':decoder_regression['accepted'],\n",
" 'attempts':len(decoder_regression.get('attempts',[])),\n",
" 'decoder_sha256':decoder_regression['structured_sha256']}])\n",
" display(Markdown('This is a separate regression check on the previously failed row. The frozen reflection score remains 15/16; it is not retroactively changed to 16/16.'))"
]
},
{
"cell_type": "markdown",
"id": "428e77be",
"metadata": {},
"source": [
"## 13. Reproduce the experiment deliberately\n",
"\n",
"Use the repository's virtual environment. Clear ROS-injected `PYTHONPATH`. Corpus generation invokes a teacher and is an explicit, separate operation; credentials are not included in this notebook. The commands below are displayed, **not executed by Run All**.\n",
"\n",
"```bash\n",
"cd slm-distill\n",
"env -u PYTHONPATH .venv/bin/python train.py --base Qwen/Qwen3-4B-Instruct-2507 --revision cdbee75f17c01a7cc42f958dc650907174af0554 --qlora --sets data/research-v3/continuation-sets --adapter out/local-4b-general-stage-a/final --out out/local-4b-general --rank 16 --accum 8 --epochs 1 --max-length 4096 --loss-chunk-size 256 --lr 3e-5 --eval-on-epoch\n",
"```\n",
"\n",
"The command is an example; use the actual final `run-config.json` for exact curriculum and warm-start lineage. General-purpose construction is in `expand_general_corpus.py` and `audit_general_corpus.py`. Inspect `sample_public_corpus.py`, `research_corpus.py`, `expand_corpus.py`, `audit_corpus.py`, `adjudicate_audit.py` and `assemble_research.py` for corpus construction. `evaluate_research.py` records raw responses; `grade_research.py` grades them against evidence. `export.py` merges the adapter, converts to GGUF and installs an Ollama model.\n",
"\n",
"Refresh this report:\n",
"\n",
"```bash\n",
"env -u PYTHONPATH slm-distill/.venv/bin/python slm-distill/build_notebook.py --execute\n",
"```\n",
"\n",
"Large datasets, checkpoints and teacher caches are ignored by Git. Preserve them with their manifests when transferring the experiment. The executed notebook is a portable view of measurements, not a substitute for the underlying evidence."
]
},
{
"cell_type": "markdown",
"id": "92002321",
"metadata": {},
"source": [
"## 14. Claims we can defend, and remaining limitations\n",
"\n",
"- The experiment iterated from contract learning to naturalistic diagnosis, representation repair, a stronger base, broader data and audited labels.\n",
"- Corpus quantity must be reported together with unique episodes, split strategy, provenance, exclusions and task correlation.\n",
"- The initial synthetic/public mix supported only software-memory experiments. The frozen replacement corpus spans sixteen everyday/professional domains; it still does not establish generalization to arbitrary domains, languages or very long histories.\n",
"- Teacher-generated targets and teacher grading are correlated. Hard validators establish structural grounding, not factual entailment.\n",
"- Training fits an 8 GB GPU at the measured token cap. Serving a larger context does not establish learned long-context quality.\n",
"- No final improvement or deployment claim is made until its corresponding saved evaluation and operational receipt exists.\n",
"\n",
"**Guide review:** inspect the failure examples, rejected label reasons, frozen split hashes, matched baseline comparison and live evidence path before interpreting aggregate scores."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "SDP distillation (.venv)",
"language": "python",
"name": "sdp-distill"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.13"
}
},
"nbformat": 4,
"nbformat_minor": 5
}