Avec l'introduction des types de données vectorielles et la fonctionnalité de recherche vectorielle dans Iris, un monde entier de possibilités s'ouvre pour le développement d'applications et un exemple de ces applications est celle que j'ai récemment vue publiée dans un concours public par le ministère de la Santé à partir de Valence dans lequel ils ont demandé un outil pour aider à la codage ICD-10 en utilisant les modèles AI.
Comment pourrions-nous implémenter une application similaire à celle demandée? Voyons ce dont nous aurions besoin:
Qu'est-ce que Iris nous fournit pour couvrir les besoins ci-dessus?
Eh bien, nous n'avons qu'à voir l'exemple développé:
Associé à cet article, vous avez accès à l'application développée, dans les prochains articles, nous verrons en détail comment nous implémentons chacune des fonctionnalités, à partir de l'utilisation du modèle, du stockage des vecteurs et de l'utilisation des recherches vectorielles.
passons en revue l'application:
Dans l'écran de configuration, on nous dit au format que le fichier CSV doit se conformer aux codes ICD-10 que nous allons importer. Le processus de chargement et de vectorisation consomme beaucoup de temps et de ressources, c'est pourquoi le déploiement du conteneur Docker configure non seulement la mémoire RAM utilisable par Docker mais également la mémoire du disque au cas où les exigences dépassent la RAM allouée:
# iris iris: init: true container_name: iris build: context: . dockerfile: iris/Dockerfile ports: - 52774:52773 - 51774:1972 volumes: - ./shared:/shared environment: - ISC_DATA_DIRECTORY=/shared/durable command: --check-caps false --ISCAgent false mem_limit: 30G memswap_limit: 32G
Le fichier avec les codes ICD-10 est disponible dans le chemin du projet / shared / cie10 / icd10.csv , une fois que 100% est atteint, l'application sera prête à être utilisée.
Dans notre application, nous avons défini deux fonctionnalités différentes pour le codage de diagnostic, une basée sur les messages HL7 reçus dans le système et un autre basé sur des textes brus.
Le projet contient des messages HL7 préparés pour les tests, il est nécessaire de copier le fichier / shared / hl7 / messa01_en.hl7 dans le dossier / shared / hl7in et la production associée sera responsable de l'extraction du diagnostic de celui-ci dans l'application Web:
Dans l'écran des demandes de diagnostic, nous pouvons voir tous les diagnostics reçus via la messagerie HL7. Pour les coder sur ICD-10, nous devons cliquer sur la loupe pour afficher une liste de ces codes ICD-10 le plus proche du diagnostic reçu:
Une fois sélectionné, nous verrons le diagnostic et son code ICD-10 associé dans la liste. En cliquant sur le bouton avec l'icône de l'enveloppe, un message sera généré à l'aide de l'original et y compris le nouveau sélectionné dans le segment de diagnostic:
MSH|^~\&|HIS|HULP|EMPI||||ADT^A08|592956|P|2.5.1 EVN|A01| PID|||1556655212^^^SERMAS^SN~922210^^^HULP^PI||GARCÍA PÉREZ^JUAN^^^||20150403|M|||PASEO PEDRO ÁLVAREZ 195 1 CENTRO^^LEGANÉS^MADRID^28379^SPAIN||555283055^PRN^^[email protected]|||||||||||||||||N| PV1||N DG1|1||O10.91^Unspecified pre-existing hypertension complicating pregnancy^CIE10-ES|Gestational hypertension||A||
Ce message peut être trouvé dans le chemin / partagé / hl7out
Dans l'option Analyseur de texte, l'utilisateur peut inclure du texte brut sur lequel un processus d'analyse sera effectué. L'application recherchera des tuples de 3 mots lemmatisés (éliminant les articles, les pronoms et autres mots moins pertinents). Une fois analysé, le système nous montrera le texte souligné pertinent et les diagnostics possibles:
Une fois l'analyse effectuée, elle peut être consultée à tout moment à partir de l'historique de l'analyse.
Toutes les analyses effectuées sont enregistrées et peuvent être consultées à tout moment, en étant capable d'afficher tous les codes ICD-10 possibles:
Nous verrons comment, en utilisant un python intégré, nous utilisons un modèle LLM spécifique pour la vectorisation des deux codes ICD-10 que nous utiliserons comme contexte et textes libres.
Si vous avez des questions ou des suggestions, n'hésitez pas à écrire un commentaire sur l'article.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3