d[IA]gnosis:使用 IRIS for Healt 開發 RAG 應用程式

WBOY
發布: 2024-08-29 06:32:35
原創
1178 人瀏覽過

隨著IRIS 中向量資料類型和向量搜尋功能的引入,為應用程式的開發打開了一個充滿可能性的世界,這些應用程式的一個範例是我最近在公開競賽中看到的一個範例巴倫西亞衛生部要求提供一種工具來協助使用人工智慧模型進行ICD-10 編碼。

我們如何實現與所要求的應用程式類似的應用程式?讓我們看看我們需要什麼:

  1. ICD-10 代碼列表,我們將使用它作為 RAG 應用程式的上下文來搜尋純文字中的診斷。
  2. 經過訓練的模型,可對文字進行向量化,我們將在其中尋找 ICD-10 程式碼中的等效項。
  3. ICD-10 程式碼和文字的攝取和向量化所需的 Python 函式庫。
  4. 友善的前端,支援我們尋找可能診斷的文字。
  5. 對從前端收到的請求進行編排。

IRIS 為我們提供什麼來滿足上述需求?

  1. CSV 導入,可以使用 RecordMapper 功能或直接使用嵌入式 Python。
  2. 嵌入式 Python 讓我們實作使用所選模型產生向量所需的 Python 程式碼。
  3. 發布將從前端應用程式呼叫的 REST API。
  4. 互通性產品,允許在 IRIS 內追蹤資訊。

好吧,我們只需要看看開發的範例:

d[IA]靈知

與本文相關,您可以訪問已開發的應用程序,在接下來的文章中,我們將詳細了解如何實現每個功能,從模型的使用、向量的存儲和向量搜索的使用.

讓我們回顧一下應用程式:

導入 ICD-10 代碼

d[IA]gnosis: developing RAG applications with IRIS for Healt

從設定畫面中,我們被告知 CSV 檔案的格式必須符合我們要匯入的 ICD-10 代碼。載入和向量化過程會消耗大量時間和資源,這就是為什麼 Docker 容器的部署不僅要配置 Docker 可用的 RAM 內存,還要配置磁碟內存,以防需求超出分配的 RAM:

  # 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
登入後複製

帶有ICD-10程式碼的檔案位於專案路徑/shared/cie10/icd10.csv,一旦達到100%,應用程式就可以使用了。

在我們的應用程式中,我們定義了兩種不同的診斷編碼功能,一種基於系統中接收到的 HL7 訊息,另一種基於純文字。

來自 HL7 的診斷捕獲

專案包含一些準備測試的HL7訊息,只需將/shared/hl7/messagesa01_en.hl7檔案複製到/shared/HL7In資料夾和相關生產將負責從中提取診斷結果並將其顯示在Web 應用程式中:

d[IA]gnosis: developing RAG applications with IRIS for Healt

從診斷請求畫面中,我們可以看到透過 HL7 訊息傳遞收到的所有診斷。要將它們編碼為 ICD-10,我們只需點擊放大鏡即可顯示最接近收到的診斷結果的 ICD-10 代碼清單:

d[IA]gnosis: developing RAG applications with IRIS for Healt

選擇後,我們將在清單中看到診斷及其相關的 ICD-10 代碼。透過點擊帶有信封圖示的按鈕,將使用原始訊息產生一則訊息,並包含在診斷段中選擇的新訊息:

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^^JUAN.GARCIA@YAHOO.COM|||||||||||||||||N|
PV1||N
DG1|1||O10.91^Unspecified pre-existing hypertension complicating pregnancy^CIE10-ES|Gestational hypertension||A||
登入後複製

這則訊息可以在路徑/shared/HL7Out

中找到

明文診斷截圖

透過文字分析器選項,使用者可以包含將對其執行分析過程的純文字。該應用程式將搜尋 3 個詞形還原單字的元組(消除冠詞、代名詞和其他不太相關的單字)。分析後,系統將向我們顯示相關的帶下劃線的文本以及可能的診斷:

d[IA]gnosis: developing RAG applications with IRIS for Healt

分析完成後,可以隨時從分析歷史記錄中查閱。

分析歷史

所有進行的分析都會被記錄並可以隨時查閱,能夠查看所有可能的 ICD-10 代碼:

在下一篇文章...

我們將了解如何使用嵌入式 Python,使用特定的 LLM 模型對用作上下文的 ICD-10 程式碼和自由文字進行向量化。

如果您有任何問題或建議,請隨時在文章中發表評論。

以上是d[IA]gnosis:使用 IRIS for Healt 開發 RAG 應用程式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!