Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Urgency Triage Naming convention and Score changes #13

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/main/antlr/in.handyman.raven/gmr/Raven.g4
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ action:
|hwDetection
|intellimatch
|checkboxVqa
|hwUrgencyTriage
|pixelClassifierUrgencyTriage
|qrExtraction
|paperItemizer
|nerAdapter
Expand Down Expand Up @@ -739,8 +739,8 @@ checkboxVqa:
'output-dir' outputDir=STRING
'using' '{' querySet=STRING '}' ('on-condition' condition=expression)*;

hwUrgencyTriage:
'hwUrgency-triage' 'as' name=STRING
pixelClassifierUrgencyTriage:
'pixel-classifier-urgency-triage' 'as' name=STRING
'on-resource-conn' resourceConn=STRING
'process-id' processID=STRING
'binary-classifier-model-file-path' binaryClassifierModelFilePath=STRING
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import in.handyman.raven.lambda.action.ActionExecution;
import in.handyman.raven.lambda.action.IActionExecution;
import in.handyman.raven.lambda.doa.audit.ActionExecutionAudit;
import in.handyman.raven.lib.model.HwUrgencyTriage;
import in.handyman.raven.lib.model.PixelClassifierUrgencyTriage;
import in.handyman.raven.util.ExceptionUtil;
import lombok.AllArgsConstructor;
import lombok.Builder;
Expand All @@ -34,32 +34,32 @@
* Auto Generated By Raven
*/
@ActionExecution(
actionName = "HwUrgencyTriage"
actionName = "PixelClassifierUrgencyTriage"
)
public class HwUrgencyTriageAction implements IActionExecution {
public class PixelClassifierUrgencyTriageAction implements IActionExecution {
private final ActionExecutionAudit action;

private final Logger log;

private static HwUrgencyTriage hwUrgencyTriage = new HwUrgencyTriage();
private static PixelClassifierUrgencyTriage pixelClassifierUrgencyTriage = new PixelClassifierUrgencyTriage();

private final Marker aMarker;

public HwUrgencyTriageAction(final ActionExecutionAudit action, final Logger log,
final Object hwUrgencyTriage) {
this.hwUrgencyTriage = (HwUrgencyTriage) hwUrgencyTriage;
public PixelClassifierUrgencyTriageAction(final ActionExecutionAudit action, final Logger log,
final Object hwUrgencyTriage) {
this.pixelClassifierUrgencyTriage = (PixelClassifierUrgencyTriage) hwUrgencyTriage;
this.action = action;
this.log = log;
this.aMarker = MarkerFactory.getMarker(" HwUrgencyTriage:" + this.hwUrgencyTriage.getName());
this.aMarker = MarkerFactory.getMarker(" HwUrgencyTriage:" + this.pixelClassifierUrgencyTriage.getName());
}

@Override
public void execute() throws Exception {
try {
final Jdbi jdbi = ResourceAccess.rdbmsJDBIConn(hwUrgencyTriage.getResourceConn());
final Jdbi jdbi = ResourceAccess.rdbmsJDBIConn(pixelClassifierUrgencyTriage.getResourceConn());
jdbi.getConfig(Arguments.class).setUntypedNullArgument(new NullArgument(Types.NULL));
log.info(aMarker, "<-------Handwritten Urgency Triage Action for {} has been started------->", hwUrgencyTriage.getName());
final String insertQuery = "INSERT INTO urgency_triage.hw_triage_transaction_"+hwUrgencyTriage.getProcessID()+"(created_on, created_user_id, last_updated_on, last_updated_user_id, process_id, group_id, tenant_id, model_score, origin_id, paper_no, template_id, model_registry_id, binary_model, multiclass_model, checkbox_model, status, stage, message)" +
log.info(aMarker, "<-------Handwritten Urgency Triage Action for {} has been started------->", pixelClassifierUrgencyTriage.getName());
final String insertQuery = "INSERT INTO urgency_triage.pixel_classifier_triage_transaction_"+pixelClassifierUrgencyTriage.getProcessID()+"(created_on, created_user_id, last_updated_on, last_updated_user_id, process_id, group_id, tenant_id, model_score, origin_id, paper_no, template_id, model_registry_id, binary_model, multiclass_model, checkbox_model, status, stage, message)" +
"values(now(),?,now(),?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
final List<URL> urls = Optional.ofNullable(action.getContext().get("copro.hw-urgency-triage.url")).map(s -> Arrays.stream(s.split(",")).map(s1 -> {
try {
Expand All @@ -76,19 +76,19 @@ public void execute() throws Exception {
HwUrgencyTriageInputTable.class,
jdbi, log,
new HwUrgencyTriageInputTable(), urls, action);
coproProcessor.startProducer(hwUrgencyTriage.getQuerySet(), Integer.valueOf(action.getContext().get("read.batch.size")));
coproProcessor.startProducer(pixelClassifierUrgencyTriage.getQuerySet(), Integer.valueOf(action.getContext().get("read.batch.size")));
Thread.sleep(1000);
coproProcessor.startConsumer(insertQuery, 1, 1, new HwUrgencyTriageConsumerProcess(log, aMarker, action));
log.info(aMarker, " Handwritten Urgency Triage has been completed {} ", hwUrgencyTriage.getName());
log.info(aMarker, " Handwritten Urgency Triage has been completed {} ", pixelClassifierUrgencyTriage.getName());
} catch (Throwable t) {
action.getContext().put(hwUrgencyTriage.getName() + ".isSuccessful", "false");
action.getContext().put(pixelClassifierUrgencyTriage.getName() + ".isSuccessful", "false");
log.error(aMarker, "Error at handwritten urgency triage execute method {}", t);
}
}

@Override
public boolean executeIf() throws Exception {
return hwUrgencyTriage.getCondition();
return pixelClassifierUrgencyTriage.getCondition();
}

public static class HwUrgencyTriageConsumerProcess implements CoproProcessor.ConsumerProcess<HwUrgencyTriageInputTable, HwUrgencyTriageOutputTable> {
Expand Down Expand Up @@ -116,20 +116,20 @@ public List<HwUrgencyTriageOutputTable> process(URL endpoint, HwUrgencyTriageInp
List<HwUrgencyTriageOutputTable> parentObj = new ArrayList<>();
final ObjectNode objectNode = mapper.createObjectNode();
objectNode.put("inputFilePath", entity.getFilePath());
objectNode.put("binaryClassifierModelFilePath", hwUrgencyTriage.getBinaryClassifierModelFilePath());
objectNode.put("multiClassifierModelFilePath", hwUrgencyTriage.getMultiClassifierModelFilePath());
objectNode.put("checkboxClassifierModelFilePath", hwUrgencyTriage.getCheckboxClassifierModelFilePath());
objectNode.putPOJO("synonyms", hwUrgencyTriage.getSynonyms().split(","));
objectNode.putPOJO("binaryClassifierLabels", hwUrgencyTriage.getBinaryClassifierLabels().split(","));
objectNode.putPOJO("multiClassifierLabels", hwUrgencyTriage.getMultiClassifierLabels().split(","));
objectNode.putPOJO("checkboxClassifierLabels", hwUrgencyTriage.getCheckboxClassifierLabels().split(","));
objectNode.put("outputDir", hwUrgencyTriage.getOutputDir());
objectNode.put("binaryImageWidth", hwUrgencyTriage.getBinaryImageWidth());
objectNode.put("binaryImageHeight", hwUrgencyTriage.getBinaryImageHeight());
objectNode.put("multiImageWidth", hwUrgencyTriage.getMultiImageWidth());
objectNode.put("multiImageHeight", hwUrgencyTriage.getMultiImageHeight());
objectNode.put("checkboxImageWidth", hwUrgencyTriage.getCheckboxImageWidth());
objectNode.put("checkboxImageHeight", hwUrgencyTriage.getCheckboxImageHeight());
objectNode.put("binaryClassifierModelFilePath", pixelClassifierUrgencyTriage.getBinaryClassifierModelFilePath());
objectNode.put("multiClassifierModelFilePath", pixelClassifierUrgencyTriage.getMultiClassifierModelFilePath());
objectNode.put("checkboxClassifierModelFilePath", pixelClassifierUrgencyTriage.getCheckboxClassifierModelFilePath());
objectNode.putPOJO("synonyms", pixelClassifierUrgencyTriage.getSynonyms().split(","));
objectNode.putPOJO("binaryClassifierLabels", pixelClassifierUrgencyTriage.getBinaryClassifierLabels().split(","));
objectNode.putPOJO("multiClassifierLabels", pixelClassifierUrgencyTriage.getMultiClassifierLabels().split(","));
objectNode.putPOJO("checkboxClassifierLabels", pixelClassifierUrgencyTriage.getCheckboxClassifierLabels().split(","));
objectNode.put("outputDir", pixelClassifierUrgencyTriage.getOutputDir());
objectNode.put("binaryImageWidth", pixelClassifierUrgencyTriage.getBinaryImageWidth());
objectNode.put("binaryImageHeight", pixelClassifierUrgencyTriage.getBinaryImageHeight());
objectNode.put("multiImageWidth", pixelClassifierUrgencyTriage.getMultiImageWidth());
objectNode.put("multiImageHeight", pixelClassifierUrgencyTriage.getMultiImageHeight());
objectNode.put("checkboxImageWidth", pixelClassifierUrgencyTriage.getCheckboxImageWidth());
objectNode.put("checkboxImageHeight", pixelClassifierUrgencyTriage.getCheckboxImageHeight());

log.info("request builder object node {}",objectNode);

Expand Down Expand Up @@ -160,7 +160,7 @@ public List<HwUrgencyTriageOutputTable> process(URL endpoint, HwUrgencyTriageInp
.multiClassModel(multiClassModelOutput)
.checkboxModel(checkboxModelOutput)
.status("COMPLETED")
.stage("TRIAGE_HANDWRITTEN")
.stage("PIXEL_CLASSIFIER_URGENCY_TRIAGE")
.message("Handwritten Urgency Triage Finished")
.build());
log.info(aMarker, "Execute for handwritten urgency triage {}",response);
Expand All @@ -177,7 +177,7 @@ public List<HwUrgencyTriageOutputTable> process(URL endpoint, HwUrgencyTriageInp
.templateId(Optional.ofNullable(entity.getTemplateId()).map(String::valueOf).orElse(null))
.modelRegistryId(Optional.ofNullable(entity.getModelRegistryId()).map(String::valueOf).map(Integer::parseInt).orElse(null))
.status("FAILED")
.stage("TRIAGE_HANDWRITTEN")
.stage("PIXEL_CLASSIFIER_URGENCY_TRIAGE")
.message(response.message())
.build());
log.error(aMarker, "The Exception occurred in handwritten urgency triage {}",response);
Expand All @@ -195,7 +195,7 @@ public List<HwUrgencyTriageOutputTable> process(URL endpoint, HwUrgencyTriageInp
.templateId(Optional.ofNullable(entity.getTemplateId()).map(String::valueOf).orElse(null))
.modelRegistryId(Optional.ofNullable(entity.getModelRegistryId()).map(String::valueOf).map(Integer::parseInt).orElse(null))
.status("FAILED")
.stage("TRIAGE_HANDWRITTEN")
.stage("PIXEL_CLASSIFIER_URGENCY_TRIAGE")
.message(ExceptionUtil.toString(e))
.build());
log.error(aMarker, "The Exception occurred in handwritten urgency triage", e);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@
@AllArgsConstructor
@Builder
@ActionContext(
actionName = "HwUrgencyTriage"
actionName = "PixelClassifierUrgencyTriage"
)
public class HwUrgencyTriage implements IActionContext {
public class PixelClassifierUrgencyTriage implements IActionContext {
private String name;

private String resourceConn;
Expand Down