Skip to content

Commit 4510d6c

Browse files
Merge pull request #7 from sensein/update_neuroscience_ner_prompt
Update neuroscience ner prompt
2 parents 567daac + 64b16a3 commit 4510d6c

1 file changed

Lines changed: 14 additions & 3 deletions

File tree

skills/structsense-skills/prompts/extractor-ner-neuroscience.md

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,17 @@ EXHAUSTIVENESS — READ CAREFULLY
3838
yields 800–2000+. If your output feels short, you are missing mentions
3939
— go back and re-scan.
4040
41-
LABEL TAXONOMY (use these exactly; do NOT invent others)
41+
LABEL TAXONOMY (SUGGESTED labels — prefer these, but not a closed list)
42+
These labels cover the common neuroscience entity types and should be your
43+
FIRST choice: if a mention fits one of them, use it verbatim so labels stay
44+
consistent across the corpus. They are guidance, NOT an exhaustive whitelist.
45+
When a mention is clearly an entity but none of these labels fits well, assign
46+
the MOST APPROPRIATE label you can — coin a concise, descriptive PascalCase
47+
label (e.g. `ImagingModality`, `AnatomicalAxis`) rather than forcing a poor fit
48+
or falling back to `Other`. Reserve `Other` for entities you genuinely cannot
49+
characterize. Reuse any new label consistently within a document. The judge and
50+
post-processor reconcile labels downstream, so a well-chosen new label is far
51+
more useful than a wrong one from the list.
4252
== Anatomy & function ==
4353
- BrainRegion Macroscopic structures: hippocampus, mPFC, CA1, layer 5.
4454
- NeuralCircuit Named pathways/loops: mesolimbic pathway, default mode network.
@@ -142,7 +152,7 @@ Schema:
142152
"entities": [
143153
{
144154
"entity": "<surface form, EXACTLY as in text>",
145-
"label": "<one of the labels above>",
155+
"label": "<a label from the taxonomy above, or a coined PascalCase label if none fits>",
146156
"sentence": "<full sentence containing the entity>",
147157
"start": <int char offset in input>,
148158
"end": <int char offset (exclusive)>,
@@ -171,7 +181,7 @@ RULES
171181
occurrence of the same string in a different position is fine.)
172182
6. Do NOT hallucinate (do not emit a span that isn't in the text). But DO
173183
include genuine in-text mentions even at ~50% label confidence — pick
174-
the most likely label; the judge handles uncertain labels later.
184+
the most likely label (preferring the suggested taxonomy, otherwise the\n most appropriate PascalCase label you can coin); the judge handles uncertain labels later.
175185
7. ACRONYM HANDLING: if both expansion and acronym are in the source
176186
("hippocampus (HP)"), emit BOTH as separate entities sharing a `label`.
177187
Repeat this every time the pair recurs.
@@ -237,6 +247,7 @@ Use `scripts/mask_pass.py` to build the masked text and translate offsets back t
237247
- **Sub-focus to molecular only:** drop Anatomy/Cells labels; keep Gene/Protein/Chemical/Drug/IonChannel/Neurotransmitter/Neuropeptide.
238248
- **Sub-focus to behavioral neuroscience:** keep BrainRegion/CellType/BehavioralAssay/Stimulus/Phenomenon/Phenotype; drop molecular labels.
239249
- **Strict mode (no `Other`):** drop the `Other` label entirely.
250+
- **Closed taxonomy:** to restrict output to the suggested labels only (no coined labels), replace the taxonomy header with "use these exactly; do NOT invent others" and revert rule 6 / the schema `label` field accordingly.
240251
- **Acronym strictness:** by default both forms are emitted; if your downstream consumer wants only one, add: "Emit only the long form when both appear in the same sentence."
241252

242253
## Common failure modes

0 commit comments

Comments
 (0)