Spaces:
Running
Running
Commit History
4 days ago
-
Queue: catalogue scores only for released interviews
A submission under review has no catalogue record in real use, so its card and the queue average no longer show one, even when an evaluation run scored it. The brief's catalogue tab still shows any back-test it carries. Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAE402d5e1
7 days ago
-
Tab icon: a map pin in the viewer's blue, served before sign-in
Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAE31f389a
8 days ago
-
Heading limit 20, phonetic place names, unnamed places counted separately
- CURATORBOT_MAX_HEADINGS (default 20, was a fixed 12); back-test adds the model's own R-precision. - Places marked '(ph)' are matched approximately (sound swaps, then close spellings in the collection's countries) and flagged uncertain with the spelling heard. GeoNames index widened to places of 500+ people in those countries; nearest place to a named anchor wins ties. - Journeys with unnamed places are labelled 'Not named in the testimony' and counted apart from named places not found. - Docs: protocol v4 in the evaluation log, schema, .env example. Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAE162cea3 -
Places, headings and scoring improvements from the first evaluation
Places - New curatorbot/places.py: period gazetteer first, then GeoNames towns (offline, diacritic-insensitive, alternate names), then approximate placement near a place the narrator names ('Pomortsy, near Lodz') or at a country centre. Each place records its source and precision. - Journeys gain fromNear/toNear; none is dropped silently: unplaced ends are shown as 'Not placed: needs a curator'. Coverage counts per brief. - Map frames the journeys, avoids label collisions, marks approximate places with dashed rings and points off-map arrows towards their destination. Headings - Prompt covers the whole life, pairs specific and broader place headings, and leaves generic form headings to a rule. - Form headings proposed by rule (data/form_headings.json), using a grounded narrator-gender quote; labelled 'Added by rule' in the viewer. Vocabulary and scoring - Base vocabulary: bare chronological terms removed, current 'Jewish ghettos--' forms, generic form headings added. E…3861ad6 -
Validators: match headings ignoring a final full stop; count bad quotes and out-of-vocabulary headings separately
- 'Poland--Emigration and immigration' was stopped because the vocabulary form ends with a full stop. Headings now match ignoring case, spacing and a final full stop, and are stored in the vocabulary's own form. - validation now records quotes_rejected and out_of_vocabulary as well as the combined 'rejected'; How it works shows both. - New 'curatorbot revalidate' command reapplies the validators and the back-test to a saved brief without a model call. - The page now loads the viewer's script and styles with a version tag, so browsers pick up a new deploy without a hard refresh. - Evaluation log: corrected the quote claim and explained the stopped item. Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAE05cb6a1
11 days ago
-
Model badge: short chip with details below; reject non-OpenRouter model names
- How it works shows a short chip (time, or 'Fallback model') and puts the model, fallback reason and token counts on a line under the step. - With the openrouter provider, a model name without a company prefix (e.g. 'claude-sonnet-5-5') is now a clear configuration error shown in /api/health, instead of silently falling back to the second model. Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAE129508e
19 days ago
-
Model providers: Claude via OpenRouter by default, OpenAI fallback, any OpenAI-compatible endpoint
- New default provider openrouter (anthropic/claude-sonnet-5.5), with openai/gpt-4.1-mini tried once on outages, rate limits or unreadable answers; account errors (bad key, no credit) are not retried. - New 'compatible' provider for an institution's own gateway or local open models (vLLM, Ollama) via CURATORBOT_LLM_BASE_URL. - Plain-English errors for curators; details go to the server log. - /api/health and the How it works tab show the model and any fallback. - docs/model-providers.md explains the choice and data protection. Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAEfa829bf
20 days ago
-
Site-wide passcode: share a public Space with the team without exposing interviews
CURATORBOT_SITE_PASSCODE puts every page and API call behind a sign-in page (14-day cookie, cleared when the passcode changes). Scripts can use the X-Site-Passcode header. Docs explain how to share the Space safely. Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAEbe9517e
22 days ago
-
Real-data demo: intake queue, catalogue comparison, private interview data
- Intake queue as the landing page: new submissions first, then released interviews with their catalogue scores, then the synthetic example - Interview status (under review, released, synthetic) in briefs, CLI and UI - Catalogue comparison tab for released interviews: headings found, missed (separating vocabulary gaps from model misses) and extra suggestions with their evidence - Real briefs load from a private Hugging Face dataset at start-up (and on /api/reload), so partner material never enters the code repository - Importer for the museum's released PDF transcripts (speaker initials, page headers and footers), so released interviews skip transcription - Runbook for the two data tracks; data policy and deployment guide updated; Colab notebook takes a status and a donor or catalogue file Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAEc1d045b
27 days ago
-
CuratorBot prototype: pipeline, hosted demo and project kit
- curatorbot package: Q/A transcripts, spatio-textual 0.4.1 annotation, period gazetteer with review reasons, Anthropic/OpenAI agent with quote and vocabulary validators, heading back-test, CLI - FastAPI app and viewer for a Hugging Face Docker Space, with passcode- protected live analysis and optional short-clip transcription - Synthetic demonstration interview (DEMO-0001) - Tooling for released interviews: GPU prepare script and Colab notebook - Docs (deployment, data policy, brief schema) and a project kit for the Claude and ChatGPT projects; CI and Space deploy workflows Claude-Session: https://claude.ai/code/session_01AteuhwysR4rHp4fqUteLAE3bf43cb