Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 24 Next »

The following requirements were considered when updating openIMIS’s Claim adjudication process:

  • the default openIMIS Claim adjudication process should be modified as less as possible

  • Medical Officers should not be impacted too much by the activation of the openIMIS-AI module

Claim AI-based Adjudication System

Use cases

AI-based Claim Adjudication Status

The following state diagram corresponds to the Claim fields status with the updated adjudication process.

AI-based Claim Adjudication Process

The following activity diagram proposes the updated adjudication process.

Deployment architecture

Claim-AI Quality Module

Claim-AI Quality Responsibilities

  • Contribute to Claim Review Search with Medical Item/Service and AI-categorized filters

  • Prepare the new checked claims for AI categorisation

  • Push Claims to Claim-AI module on scheduled task and/or event-based activation and update Claims based on the response

  • Reports Claim adjudication misclassifications

Models

The following JSON extensions will be created to support the Claim AI-based Categorisation:

  • claim_ai to add information on Claim. The field was_categorized allow to filter automatically checked Claim that have not been categorized by AI and ‘hide’ them for manual adjudication.

    "json_ext": {
      "claim_ai_quality": {
        "was_categorized": "boolean", // whether the claim has been categorized by Claim-AI module or not
        "request_time": "datetime", // time when the claim has been sent to Claim-AI module
        "response_time": "datetime" // time when the claim adjudication response has been received from Claim-AI module
      }
    }
  • claim_ai_item to add information on ClaimItem and ClaimService. This is used to store AI categorisation result to allow the misclassification report.

    "json_ext": {
      "claim_ai_quality": {
        "ai_result": "integer" // claim adjudication value provided by Claim-AI module (for misclassification report)
      }
    }

Because ClaimItem and ClaimService doesn’t support custom fields, these classes need to be extended with ExtendableModel class.

Migrations

Because the Claim-AI modules are activated after Claims have been adjudicated (the data used for the training), a migration script needs to be created to insert the JSON fields into the available data. The following initializations will be used:

Claim.json_ext.claim_ai_quality.was_categorized = true
Claim.json_ext.claim_ai_quality.request_time = Claim.ValidityFromReview
Claim.json_ext.claim_ai_quality.response_time = Claim.ValidityFromReview
ClaimService.json_ext.claim_ai_quality.ai_result = ClaimService.ClaimServiceStatus
ClaimItem.json_ext.claim_ai_quality.ai_result = ClaimItem.ClaimItemStatus

Module Configuration

The following module configuration is accepted:

{
  claim_ai_url: string // URL of the openIMIS instance running Claim-AI module. Default: ""
  event_based_activation: boolean // True if the checked Claims are sent to Claim-AI module immediatly after check. Default: False 
}

FHIR Contained Resources

FHIR Contained Resources feature (https://www.hl7.org/fhir/references.html#contained) allows to integrate the referred resourced. In our case for FHIR Claim, these are Patient, Condition, Medication, HealthcareService, Practitioner, ActivityDefinition.

Because AI-model is requiring information from other resources referenced by the Claim, these resources must to be accessible in the POST call sent by claim-ai-quality module.

The mechanism to build Claim resource with Contained Resources is to be developed in the openIMIS FHIR R4 module.

The construction based on Contained Resources should be possible based on query variable contained=true/false. Default false.

Custom Claim Review Search Filters - Frontend

The following contributor filters to claim.ReviewsFilter are defined:

  • ClaimFilterMedicalItem allows Medical Officers to filter the Claims list based on a specific Medical Item (only one from autocomplete list)

  • ClaimFilterMedicalService allows Medical Officers to filter the Claims list based on a specific Medical Service (only one from autocomplete list)

  • ClaimFilterAIProcessed allows Medical Officers to display or hide the non AI-processed Claims (checkbox, decision if this is hidden or not (question))

AI Categorisation Misclassification Report

A report is generated that provides the following information (based on manual reviewed Claims (question)):

  • accuracy scores

  • number of True Positives results

  • number of True Negative results

  • number of False Positive results

  • number of False Negative results

Decision: should this report be a webpage or a PDF (question)

Claim-AI Module

Claim-AI Responsibilities

  • REST API accepting FHIR Claims to categorize them based on a ML model

  • AI-model execution

REST API

The Claim-AI module will define one endpoint that will receive the FHIR Claim Bundle to be adjudicated. The base URL for this module is /claim_ai

Call: POST /claim_ai/Claim
Body: FHIR R4 Claim Bundle with Contained Resources 
Response: FHIR R4 ClaimResponse Bundle 

  • No labels