From 782701ce808a47c07bcd4b2924c84eaad597daee Mon Sep 17 00:00:00 2001 From: mart-r Date: Tue, 8 Jul 2025 16:50:05 +0100 Subject: [PATCH 1/2] CU-8699q97m0: Fix negative examples in supervised training data --- medcat-v2/medcat/components/linking/vector_context_model.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/medcat-v2/medcat/components/linking/vector_context_model.py b/medcat-v2/medcat/components/linking/vector_context_model.py index 296f820cc..9afac3f7f 100644 --- a/medcat-v2/medcat/components/linking/vector_context_model.py +++ b/medcat-v2/medcat/components/linking/vector_context_model.py @@ -344,7 +344,7 @@ def train(self, cui: str, entity: MutableEntity, doc: MutableDocument, if name not in self.name2info: continue per_cui_status = self.name2info[name]['per_cui_status'] - cui_status = per_cui_status[cui] + cui_status = per_cui_status.get(cui, None) if cui_status == ST.PRIMARY_STATUS_NO_DISAMB: # Set this name to always be disambiguated, even # though it is primary From 051d7bf203b0d8861bbc5ee41e7a66ab4433b7d2 Mon Sep 17 00:00:00 2001 From: mart-r Date: Tue, 8 Jul 2025 16:57:51 +0100 Subject: [PATCH 2/2] CU-8699q97m0: Show better exceptions for KeyError when doing supervised training --- medcat-v2/medcat/trainer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/medcat-v2/medcat/trainer.py b/medcat-v2/medcat/trainer.py index 231cae707..8f1f9f87d 100644 --- a/medcat-v2/medcat/trainer.py +++ b/medcat-v2/medcat/trainer.py @@ -438,7 +438,7 @@ def _train_supervised_for_project2(self, cui=cui, name=ann['value'], mut_doc=mut_doc, mut_entity=mut_entity, negative=deleted, devalue_others=devalue_others) - except ValueError as ve: + except (ValueError, KeyError) as ve: context_window = 20 # characters splitter_left, splitter_right = "<", ">" cur_text = doc['text']