Add PII redaction POC for secure LLM prompting.
Implements detect-redact-sanitize pipeline with regex, domain rules, and ONNX NER before the LLM boundary, plus NUnit tests and Xenovex push documentation. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
8
src/PiiRedaction.Core/Models/PiiDetectionSource.cs
Normal file
8
src/PiiRedaction.Core/Models/PiiDetectionSource.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
namespace PiiRedaction.Core.Models;
|
||||
|
||||
public enum PiiDetectionSource
|
||||
{
|
||||
Regex,
|
||||
Domain,
|
||||
Ner
|
||||
}
|
||||
12
src/PiiRedaction.Core/Models/PiiEntity.cs
Normal file
12
src/PiiRedaction.Core/Models/PiiEntity.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
namespace PiiRedaction.Core.Models;
|
||||
|
||||
public sealed record PiiEntity(
|
||||
PiiEntityType Type,
|
||||
string Value,
|
||||
int StartIndex,
|
||||
int Length,
|
||||
PiiDetectionSource Source,
|
||||
double? Confidence = null)
|
||||
{
|
||||
public int EndIndex => StartIndex + Length;
|
||||
}
|
||||
14
src/PiiRedaction.Core/Models/PiiEntityType.cs
Normal file
14
src/PiiRedaction.Core/Models/PiiEntityType.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
namespace PiiRedaction.Core.Models;
|
||||
|
||||
public enum PiiEntityType
|
||||
{
|
||||
Person,
|
||||
Email,
|
||||
Phone,
|
||||
Pan,
|
||||
Aadhaar,
|
||||
CreditCard,
|
||||
LoanNumber,
|
||||
CustomerId,
|
||||
AccountNumber
|
||||
}
|
||||
5
src/PiiRedaction.Core/Models/RedactionResult.cs
Normal file
5
src/PiiRedaction.Core/Models/RedactionResult.cs
Normal file
@@ -0,0 +1,5 @@
|
||||
namespace PiiRedaction.Core.Models;
|
||||
|
||||
public sealed record RedactionResult(
|
||||
string SanitizedText,
|
||||
IReadOnlyDictionary<string, string> PlaceholderMap);
|
||||
3
src/PiiRedaction.Core/Models/SanitizationRequest.cs
Normal file
3
src/PiiRedaction.Core/Models/SanitizationRequest.cs
Normal file
@@ -0,0 +1,3 @@
|
||||
namespace PiiRedaction.Core.Models;
|
||||
|
||||
public sealed record SanitizationRequest(string OriginalPrompt);
|
||||
7
src/PiiRedaction.Core/Models/SanitizationResult.cs
Normal file
7
src/PiiRedaction.Core/Models/SanitizationResult.cs
Normal file
@@ -0,0 +1,7 @@
|
||||
namespace PiiRedaction.Core.Models;
|
||||
|
||||
public sealed record SanitizationResult(
|
||||
string OriginalPrompt,
|
||||
string SanitizedPrompt,
|
||||
IReadOnlyList<PiiEntity> DetectedEntities,
|
||||
RedactionResult Redaction);
|
||||
Reference in New Issue
Block a user