Toolchain research infrastructure · local loopback environment
rad-nlp research toolchain
READYReady for research experiments: all 10 required component and seam verifications passed for the identified local versions in this CPU environment. This does not establish radiology interpretation correctness or clinical validity.
Selected: Component framenet-1.7. The complete evidence context remains visible below.
Readiness derivation
Readiness requires every current service identity and all ten required component, capability, and seam verifications to pass in one completed evaluation. Service liveness, component installation, and verified useful behavior remain separate claims.
Executable transport path
- Text → Stanza
Go sends bounded text; Stanza returns CoNLL-U.
Inspect seam - CoNLL-U → UCxn/Grew
The resident private backend applies pinned English rules.
Inspect seam - Annotations → Prolog
Serialized Cxn/CxnElt features cross the runtime boundary.
Inspect seam - Class → ontology context
RadLex exposes class facts, never case instances.
Inspect seam
Services and hosted components
linguistics service ready
| Component | Kind | Version | Identity |
|---|---|---|---|
| python | runtime | 3.13.5 | python:3.13.5 |
| stanza | tool | 1.14.0 | stanza:1.14.0 |
| torch | runtime | 2.14.0+cu130 | torch:2.14.0…130:cpu |
| stanza-models-en-default | knowledge_resource | 1.14.0 | sha256:4e41c…e3cb99c |
| grew | tool | 1.21.0 | git:4d810ad9…16ae393 |
| grewpy | adapter | 0.7.1 | grewpy:0.7.1 |
| grewpy-backend | tool | 0.6.2 | grewpy-backend:0.6.2 |
| ucxn-english-rules | knowledge_resource | ae39b3a26187490c41ec1ed9b0888487e9021dea | sha256:9d7ca…f407d4d |
| ucxn-adapter | adapter | ae39b3a26187490c41ec1ed9b0888487e9021dea | sha256:42977…4e5715d |
| mocca-cc-database | knowledge_resource | 1.0@git:f4783f85b8e49ac53e52663e83321cdb1c49e4ac | sha256:c8de6…dcb62ad |
| framenet-1.7 | knowledge_resource | 1.7 | sha256:c6433…f5f910f |
| radnlp-constructicon | knowledge_resource | linguistic.poc.v1 | sha256:c73c8…e42e81f |
prolog service ready
| Component | Kind | Version | Identity |
|---|---|---|---|
| swi-prolog | runtime | 9.2.9 | 9.2.9 |
| radlex-runtime-bundle | tool | 0.1.0 | sha256:cf0fe…47eb840 |
| radlex-ontology | knowledge_resource | 4.3 | sha256:b13aa…63b29b1 |
| radnlp-semantic-rules | knowledge_resource | semantic.poc.v1 | sha256:570e4…12ec214 |
Capabilities and endpoints
| Capability | Owning service | Endpoint |
|---|---|---|
| conllu.inspect | prolog | POST /v1/conllu/inspect |
| framenet.frame | linguistics | GET /v1/framenet/frames/{name} |
| framenet.lexical-unit-search | linguistics | POST /v1/framenet/lexical-units/search |
| grew.transform | linguistics | POST /v1/grew/transform |
| linguistics.analyze | linguistics | POST /v1/linguistics/analyze |
| mocca.concept | linguistics | GET /v1/mocca/concepts/{id} |
| mocca.search | linguistics | POST /v1/mocca/search |
| radlex.class | prolog | GET /v1/radlex/classes/{rid} |
| radlex.context | prolog | GET /v1/radlex/classes/{rid}/context |
| radlex.ground | prolog | POST /v1/radlex/ground |
| semantics.interpret | prolog | POST /v1/semantics/interpret |
| stanza.parse | linguistics | POST /v1/stanza/parse |
| ucxn.annotate | linguistics | POST /v1/ucxn/annotate |
Verification ledger
| ID | Requirement | Target | Outcome | Evidence |
|---|---|---|---|---|
| V-01 | Current service manifests | component · service identities | passed | Both service manifests match the pinned contract and component identities. artifact |
| V-02 | Stanza parse | capability · stanza.parse | passed | Stanza produced a non-empty dependency parse and transportable CoNLL-U. artifact artifact artifact |
| V-03 | Grew mutation | capability · grew.transform | passed | The allowlisted Grew ruleset performed its expected graph mutation. artifact |
| V-04 | UCxn annotation | capability · ucxn.annotate | passed | The official English UCxn rules identified the existential construction. artifact artifact |
| V-05 | MoCCA complete-resource query | capability · mocca.search | passed | MoCCA resolved the transitive construction across all 1,278 concepts. artifact |
| V-06 | FrameNet complete-resource query | capability · framenet.frame | passed | FrameNet exposed Medical_conditions, Patient, and cancer.n across all 1,221 frames. artifact |
| V-07 | Prolog CoNLL-U transport | capability · conllu.inspect | passed | SWI-Prolog recovered the exact UCxn anchor and pivot from transported CoNLL-U. artifact |
| V-08 | RadLex exact grounding | capability · radlex.ground | passed | The runtime-only RadLex bundle grounded right kidney to RID29662. artifact |
| V-09 | Assembled Stanza → UCxn → Prolog seam | seam · text-to-annotated-conllu-to-prolog | passed | The exact existential anchor and Pivot element survived every HTTP and serialization seam. artifact artifact artifact artifact |
| V-10 | RadLex ontology/application boundary | seam · radlex-class-context | passed | RadLex exposes class-level context without asserting transcript, patient, or instance facts. artifact |
Retained artifacts
| Artifact | Media type | Bytes | Digest |
|---|---|---|---|
| service-manifests.json | application/json | 5619 | e5ba88c46aa6…7d39908 |
| assembly-input.txt | text/plain | 18 | fa795a7ae7c6…12eeb8e |
| stanza.conllu | text/plain | 369 | 3739e5e0a0af…810ee99 |
| stanza-result.json | application/json | 1500 | 89e30f5e8686…b81b8fd |
| grew-result.json | application/json | 1527 | f384d525174f…10c11ed |
| ucxn-annotated.conllu | text/plain | 449 | 7cf8420b85d6…949f0c0 |
| ucxn-result.json | application/json | 1630 | 8e37a7124280…993f281 |
| mocca-result.json | application/json | 1772 | 10c5c39a1308…a4e71ce |
| framenet-result.json | application/json | 7377 | 1ec057da4130…5e67d26 |
| prolog-inspection.json | application/json | 839 | 386489f55a7d…6a965f5 |
| radlex-grounding.json | application/json | 846 | 428f0da5c17f…220d562 |
| radlex-context.json | application/json | 2375 | 484236ef67fe…1e9567c |
Named verification operation
Target: rad-nlp-research. Scope: manifests, seven resident capability families, the assembled Stanza → UCxn → Prolog transport, and the RadLex class-context boundary. Environment: this local CPU host. The operation creates a new immutable result; it does not restart services or accept commands, paths, URLs, or rule text.
Scope boundary
This application validates research-tool presence, resident operation, identity, and interoperability. It does not implement the radiology application specification, interpret a transcript, make a clinical claim, or establish correctness of a future interpretation model.