Add Tamil NER routing and WPF test harness for POC validation.
Introduce dual-script ONNX NER routing (English/Tamil/mixed), Tamil console samples and integration tests, model download scripts, and a resizable WPF MVVM harness with click-to-load prompts, batch validation, and runtime-adjustable detection panels.
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
using Microsoft.Extensions.Options;
|
||||
using PiiRedaction.Core.Configuration;
|
||||
using PiiRedaction.Infrastructure.Onnx;
|
||||
using PiiRedaction.TestHarness.Wpf.Models;
|
||||
|
||||
namespace PiiRedaction.TestHarness.Wpf.Services;
|
||||
|
||||
public sealed class ModelStatusService : IModelStatusService
|
||||
{
|
||||
private readonly EnglishOnnxNerRunner _englishRunner;
|
||||
private readonly TamilOnnxNerRunner _tamilRunner;
|
||||
private readonly PiiRedactionOptions _options;
|
||||
|
||||
public ModelStatusService(
|
||||
EnglishOnnxNerRunner englishRunner,
|
||||
TamilOnnxNerRunner tamilRunner,
|
||||
IOptions<PiiRedactionOptions> options)
|
||||
{
|
||||
_englishRunner = englishRunner;
|
||||
_tamilRunner = tamilRunner;
|
||||
_options = options.Value;
|
||||
}
|
||||
|
||||
public ModelStatusSnapshot GetStatus()
|
||||
{
|
||||
var englishPath = OnnxAssetPathResolver.ResolveModelPath(
|
||||
_options.EnglishOnnxModelPath,
|
||||
_options.OnnxModelPath);
|
||||
|
||||
var tamilPath = OnnxAssetPathResolver.ResolveModelPath(_options.TamilOnnxModelPath);
|
||||
|
||||
var englishAvailability = _englishRunner.IsModelAvailable
|
||||
? ModelAvailability.Ready
|
||||
: ModelAvailability.Missing;
|
||||
|
||||
var tamilAvailability = !_options.EnableTamilNer
|
||||
? ModelAvailability.Disabled
|
||||
: _tamilRunner.IsModelAvailable
|
||||
? ModelAvailability.Ready
|
||||
: ModelAvailability.Missing;
|
||||
|
||||
return new ModelStatusSnapshot(
|
||||
new NerModelStatus("English", englishAvailability, englishPath),
|
||||
new NerModelStatus("Tamil", tamilAvailability, tamilPath));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user