:py:mod:`api.utils` =================== .. py:module:: api.utils Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: api.utils.RemoteEntity api.utils.RemoteSpacyDoc api.utils.SimpleFilters Functions ~~~~~~~~~ .. autoapisummary:: api.utils.call_remote_model_service api.utils.remove_annotations api.utils.add_annotations api.utils.clear_cdb_cnf_addons api.utils.get_create_cdb_infos api.utils.create_annotation api.utils.train_medcat api.utils.prep_docs api.utils.save_project_anno api.utils.env_str_to_bool Attributes ~~~~~~~~~~ .. autoapisummary:: api.utils.logger .. py:data:: logger .. py:class:: RemoteEntity(entity_data, text) A simple class to mimic spaCy entity structure for remote API responses. .. py:method:: __init__(entity_data, text) .. py:method:: get_addon_data(key) Mimic get_addon_data for meta_cat_meta_anns. .. py:class:: RemoteSpacyDoc(linked_ents) A simple class to mimic spaCy document structure for remote API responses. .. py:method:: __init__(linked_ents) .. py:function:: call_remote_model_service(service_url, text) Call the remote MedCAT service API to process text. Args: service_url: Base URL of the remote service (e.g., http://medcat-service:8000) text: Text to process Returns: RemoteSpacyDoc object with linked_ents .. py:function:: remove_annotations(document, project, partial=False) .. py:class:: SimpleFilters(cuis=None, cuis_exclude=None) Simple filter object for remote service when cat is not available. .. py:method:: __init__(cuis=None, cuis_exclude=None) .. py:function:: add_annotations(spacy_doc, user, project, document, existing_annotations, cat=None, filters=None, similarity_threshold=0.3) Add annotations from spacy_doc to the database. Args: spacy_doc: spaCy document with linked_ents or RemoteSpacyDoc user: User object project: ProjectAnnotateEntities object document: Document object existing_annotations: List of existing AnnotatedEntity objects cat: CAT object (optional, required if filters not provided) filters: SimpleFilters object (optional, used when cat is None) similarity_threshold: float (optional, default 0.3, used when cat is None) .. py:function:: clear_cdb_cnf_addons(cdb, cdb_id) .. py:function:: get_create_cdb_infos(cdb, concept, cui, cui_info_prop, code_prop, desc_prop, model_clazz) .. py:function:: create_annotation(source_val, selection_occurrence_index, cui, user, project, document) .. py:function:: train_medcat(cat, project, document) .. py:function:: prep_docs(project_id, doc_ids, user_id) .. py:function:: save_project_anno(sender, instance, **kwargs) .. py:function:: env_str_to_bool(var, default)