Review Highlighted Issues

Le cartelle di lavoro Excel possono contenere valori mancanti, record duplicati, numeri insoliti e formule incoerenti difficili da rilevare manualmente, soprattutto quando si lavora con grandi set di dati.

Con un agente IA, questi problemi possono essere identificati tramite istruzioni di audit in linguaggio naturale anziché affidarsi interamente a regole di validazione codificate. Questo articolo mostra come utilizzare Spire.Agent.Office in C# per eseguire l'audit di una cartella di lavoro Excel, identificare potenziali problemi nei dati e nelle formule, evidenziare le celle sospette e generare un report di audit strutturato.

1. Che cos'è un audit Excel basato sull'IA?

Un audit Excel tradizionale si basa solitamente su regole di validazione predefinite, formule o codice personalizzato. Ad esempio, un programma può verificare se una cella obbligatoria è vuota, se un valore supera una soglia fissa o se esistono ID duplicati in una colonna.

Un audit Excel basato sull'IA aggiunge a questo processo un'analisi contestuale. Invece di definire nel codice ogni possibile condizione, è possibile descrivere i requisiti di audit in linguaggio naturale e lasciare che l'agente IA esamini la cartella di lavoro alla ricerca di schemi e incoerenze.

Ad esempio, a un agente IA può essere chiesto di cercare:

  • Dati mancanti o incompleti
  • Record duplicati o sospetti
  • Valori numerici insoliti o outlier
  • Schemi di dati incoerenti
  • Formule mancanti
  • Formule che differiscono in modo imprevisto dalle righe vicine
  • Risultati di calcolo o riferimenti di cella sospetti

Questo è particolarmente utile per problemi difficili da esprimere come semplici regole fisse. Un valore può rientrare in un intervallo numerico accettabile ma apparire comunque insolito rispetto ai record circostanti, mentre una formula può produrre un risultato valido ma utilizzare uno schema diverso da quello delle celle adiacenti.

I risultati di audit generati dall'IA dovrebbero generalmente essere considerati come potenziali problemi piuttosto che come errori definitivi. I risultati possono quindi essere evidenziati nella cartella di lavoro e riepilogati in un report di audit per un'ulteriore revisione.

2. Configurare il progetto C#

Creare una nuova applicazione console C# e aggiungere al progetto il pacchetto Spire.Agent.Office richiesto.

L'esempio utilizza i seguenti namespace:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

L'accesso alle funzionalità IA richiede un token Spire valido. È possibile richiedere un token di test temporaneo tramite la pagina della licenza temporanea Spire.

La configurazione di base è:

AIOptions options = new AIOptions();
options.SpireToken = "YOUR_SPIRE_TOKEN";

Gli esempi seguenti utilizzano una cartella di lavoro Excel denominata:

SalesData.xlsx

La cartella di lavoro può contenere uno o più fogli di lavoro con record di vendita, formule, date, quantità, prezzi, sconti o altri dati aziendali.

3. Preparare la cartella di lavoro Excel per l'audit

Il primo passo è caricare la cartella di lavoro con Workbook.

Workbook workbook = new Workbook();
workbook.LoadFromFile("SalesData.xlsx");

Poiché la cartella di lavoro viene passata direttamente al processore di documenti abilitato all'IA, non è necessario convertire manualmente ogni foglio di lavoro, valore di cella o formula in testo semplice.

L'agente può lavorare con il foglio di calcolo come documento Office strutturato e ispezionare informazioni quali:

  • Contenuti dei fogli di lavoro
  • Valori delle celle
  • Formule
  • Righe e colonne
  • Schemi di dati
  • Relazioni tra celle vicine

Ad esempio, un foglio di lavoro delle vendite potrebbe contenere dati simili ai seguenti:

Order ID Date Product Quantity Unit Price Discount Total
ORD-1001 2026-08-01 Laptop 2 850 0.10 1530
ORD-1002 2026-08-02 Monitor 5 260 0.05 1235
ORD-1003 2026-08-03 Keyboard 10 45 0.10 405
ORD-1004 2026-08-04 Laptop 3 850 0.80 510

L'ultima riga potrebbe meritare attenzione perché uno sconto dell'80% è significativamente diverso dai record circostanti.

Altri potenziali problemi potrebbero includere ID ordine duplicati, date mancanti, quantità insolite o una formula diversa da quelle utilizzate nelle righe vicine.

4. Creare un agente IA per l'audit delle cartelle di lavoro Excel

La parte principale del flusso di lavoro consiste nel definire l'attività di audit.

Invece di scrivere manualmente condizioni C# separate per ogni possibile errore, i requisiti possono essere descritti tramite un'istruzione in linguaggio naturale.

Definire le regole e le istruzioni di audit

Ad esempio:

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for:
- Missing or incomplete values
- Duplicate records
- Unusual or suspicious numeric values
- Inconsistent data patterns
- Missing formulas
- Formulas that differ unexpectedly from nearby rows
- Suspicious cell references or calculation results

Do not modify valid source data.

For every detected issue, record:
- Worksheet name
- Cell or range
- Issue type
- Explanation

Highlight problematic cells and create a new worksheet named
'Audit Report' containing the audit results.
";

L'istruzione definisce sia cosa l'agente dovrebbe ispezionare sia come dovrebbero essere presentati i risultati.

Questo è utile perché l'audit di un foglio di calcolo è spesso dipendente dal contesto. Un valore di 80 può essere del tutto normale in una colonna ma altamente insolito in un'altra. L'agente può valutare il valore insieme ai record vicini e al significato dei dati.

Analizzare i dati e gli schemi delle formule

Dopo aver caricato la cartella di lavoro e configurato le opzioni IA, creare un processore di documenti IA dalla cartella di lavoro:

AIDocumentProcessor processor = workbook.AI(options);

Quindi inviare l'istruzione di audit all'agente:

processor.ExecuteInstruction(
    workbook,
    instruction,
    "AuditedSalesData.xlsx",
    Array.Empty<string>()
);

Il codice principale completo è quindi molto breve:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

string inputPath = "SalesData.xlsx";
string outputPath = "AuditedSalesData.xlsx";
string spireToken = "YOUR_SPIRE_TOKEN";

Workbook workbook = new Workbook();
workbook.LoadFromFile(inputPath);

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for missing values, duplicate records, unusual numeric values,
inconsistent data patterns, missing formulas, formulas that differ
unexpectedly from nearby rows, and suspicious calculation results.

Do not modify valid source data.

Highlight cells containing potential issues and create a worksheet named
'Audit Report' with the following columns:

Worksheet | Cell | Issue | Explanation
";

AIDocumentProcessor processor = workbook.AI(options);

processor.ExecuteInstruction(
    workbook,
    instruction,
    outputPath,
    Array.Empty<string>()
);

Rispetto a un programma di validazione Excel convenzionale, la maggior parte della logica di audit è espressa attraverso l'istruzione anziché attraverso una lunga serie di istruzioni if.

Restituire risultati di audit strutturati

È importante indicare all'agente come dovrebbero essere organizzati i risultati dell'audit.

Ad esempio:

Worksheet | Cell | Issue | Explanation

Un report di audit generato potrebbe apparire così:

Worksheet Cell Issue Explanation
Sales F5 Unusual Value Discount of 80% is significantly higher than surrounding records.
Sales A12 Duplicate Record The order ID also appears in another row.
Sales B18 Missing Value The order date is empty.
Sales G24 Formula Inconsistency The formula differs from the formula pattern used in adjacent rows.

I risultati strutturati rendono l'audit più facile da revisionare e possono anche essere utilizzati per successive elaborazioni automatizzate.

5. Evidenziare i problemi rilevati e generare un report di audit

Restituire semplicemente una descrizione testuale dei problemi del foglio di calcolo è utile, ma un audit diventa molto più facile da revisionare quando i risultati vengono scritti direttamente nella cartella di lavoro.

L'istruzione può chiedere all'agente di eseguire due azioni:

string outputInstruction = @"
Highlight every cell that contains a potential issue.

Create an 'Audit Report' worksheet and list every issue using these columns:

Worksheet | Cell | Issue | Explanation

Do not change cells that do not contain an identified issue.
";

Ciò produce due livelli di output: i risultati evidenziati nel foglio di lavoro originale e un report centralizzato contenente spiegazioni dettagliate.

Revisionare i problemi evidenziati nel foglio di lavoro originale

Nel foglio di lavoro originale, l'agente evidenzia le celle contenenti potenziali problemi. I risultati dello stesso tipo utilizzano lo stesso colore di evidenziazione, rendendo più facile distinguere valori mancanti, record duplicati, numeri insoliti, dati incoerenti e problemi legati alle formule.

Review Highlighted Issues

Figura 1. Potenziali problemi evidenziati nel foglio di lavoro originale. Lo stesso colore è utilizzato per i risultati dello stesso tipo.

In questo esempio, l'agente ha identificato diversi tipi di problemi, tra cui lo sconto insolitamente elevato in G6, l'outlier di quantità in E10, la data dell'ordine mancante in B17, il prezzo unitario negativo in F23 e problemi legati alle formule nella colonna Total.

Scrivendo i risultati nelle loro posizioni originali, l'agente consente agli utenti di rivedere i valori sospetti nel loro contesto invece di cercarli manualmente.

Revisionare il report di audit dettagliato

Oltre a evidenziare i dati di origine, l'agente crea un foglio di lavoro Audit Report che elenca la cella interessata, il tipo di problema e la spiegazione per ogni risultato.

Review the Detailed Audit Report

Figura 2. Il report di audit generato fornisce la posizione, il tipo e la spiegazione di ogni problema rilevato.

Il report include risultati quali valori mancanti, ID ordine duplicati, valori numerici insoliti, schemi di dati incoerenti, formule mancanti e risultati di calcolo sospetti.

Ad esempio, l'agente ha rilevato che:

  • A8 e A13 contengono lo stesso ID ordine.
  • G6 contiene uno sconto dell'80%, significativamente più alto degli altri sconti.
  • H13 contiene un valore codificato in modo fisso invece dello schema di formula utilizzato nelle righe vicine.
  • H19 utilizza l'addizione invece della sottrazione quando applica lo sconto.
  • H30 produce un totale che non corrisponde al calcolo previsto.

Una singola cella può apparire più di una volta nel report quando coinvolge più dimensioni di audit. Ad esempio, H25 può essere segnalata sia come valore mancante sia come formula mancante.

I risultati generati dall'IA dovrebbero essere trattati come potenziali problemi piuttosto che come errori definitivi. Alcuni valori insoliti possono rappresentare eccezioni aziendali legittime. Il foglio di lavoro evidenziato e il report di audit forniscono quindi un punto di partenza strutturato per la revisione umana anziché modificare automaticamente i dati sottostanti.

6. Best practice per l'audit Excel basato sull'IA

L'audit basato sull'IA funziona particolarmente bene quando viene utilizzato insieme a chiari requisiti di audit.

In primo luogo, fornire sufficiente contesto nell'istruzione. Invece di chiedere all'agente di "trovare errori" semplicemente, specificare i tipi di problemi che contano, come record duplicati, valori anomali, formule mancanti o calcoli incoerenti.

In secondo luogo, distinguere tra regole deterministiche e analisi contestuale. Condizioni come "La quantità non deve mai essere negativa" possono essere verificate in modo affidabile con regole convenzionali. L'IA è più utile per situazioni come identificare un valore che appare incoerente con i record circostanti o riconoscere uno schema di formula imprevisto.

In terzo luogo, evitare di chiedere all'agente di correggere automaticamente ogni problema rilevato. Un valore sospetto non è necessariamente un valore errato. Evidenziare la cella e spiegarne il motivo offre agli utenti l'opportunità di verificare il risultato prima di apportare modifiche.

Per cartelle di lavoro di grandi dimensioni, l'audit può anche essere limitato a fogli di lavoro specifici o categorie di problemi. Questo rende l'attività più mirata e può ridurre l'elaborazione non necessaria.

Infine, rendere strutturato l'output. Includere il foglio di lavoro, la posizione della cella, il tipo di problema e la spiegazione rende i risultati generati dall'IA più facili da verificare e da integrare nei flussi di lavoro successivi.

7. Conclusione

L'audit di un foglio di calcolo spesso comporta più della semplice verifica se le celle sono vuote o se le formule restituiscono errori. Molti problemi diventano visibili solo quando valori, formule e schemi di dati circostanti vengono considerati insieme.

Con un AI Agent SDK, questi requisiti di audit possono essere descritti in linguaggio naturale invece di essere implementati interamente tramite regole di validazione codificate.

Utilizzando Spire.Agent.Office in C#, il flusso di lavoro può rimanere relativamente semplice: caricare la cartella di lavoro Excel, definire i requisiti di audit, eseguire l'istruzione e generare una nuova cartella di lavoro contenente i problemi evidenziati e un report di audit strutturato.

Questo approccio è particolarmente utile per rilevare potenziali anomalie, formule incoerenti, record duplicati, informazioni mancanti e altri problemi dei fogli di calcolo che possono richiedere un'analisi contestuale.

8. Domande frequenti

L'IA può rilevare formule errate in Excel?

L'IA può identificare formule che appaiono incoerenti con le formule vicine, contengono riferimenti sospetti o producono risultati che non corrispondono agli schemi di dati previsti. Tuttavia, se una formula sia logicamente corretta può dipendere dalle regole aziendali alla base della cartella di lavoro, quindi i problemi rilevati dovrebbero comunque essere revisionati.

Le regole di audit possono essere personalizzate?

Sì. I requisiti di audit sono definiti principalmente attraverso l'istruzione inviata all'agente. È possibile aggiungere regole per colonne specifiche, fogli di lavoro, intervalli di valori, formule o condizioni aziendali.

Ad esempio:

"Flag discounts above 50% and orders with a missing customer ID."

L'IA può rilevare record Excel duplicati?

Sì. All'agente può essere chiesto di identificare ID duplicati, righe ripetute o record potenzialmente duplicati in base a più campi.

Per un rilevamento dei duplicati più deterministico, anche la logica convenzionale di Excel o C# può essere combinata con l'audit IA.

L'IA può correggere automaticamente gli errori rilevati?

All'agente può essere chiesto di modificare il contenuto della cartella di lavoro, ma correggere automaticamente ogni anomalia rilevata di solito non è consigliato. Alcuni valori insoliti possono essere eccezioni aziendali valide.

Un flusso di lavoro più sicuro consiste nell'evidenziare le celle sospette, spiegare perché sono state segnalate e lasciare che gli utenti revisionino i risultati prima di applicare le correzioni.

Lo stesso approccio può essere utilizzato per diversi tipi di file Excel?

Sì. Lo stesso flusso di lavoro può essere adattato a report di vendita, fogli di calcolo finanziari, registri di inventario, report operativi, dati di sondaggi e altre cartelle di lavoro Excel strutturate. Nella maggior parte dei casi, è sufficiente adattare l'istruzione di audit ai dati e alle regole aziendali specifici.

Vedi anche

Examiner les problèmes mis en évidence

Les classeurs Excel peuvent contenir des valeurs manquantes, des enregistrements en double, des nombres inhabituels et des formules incohérentes difficiles à détecter manuellement, en particulier lorsqu'il s'agit de grands ensembles de données.

Avec un agent IA, ces problèmes peuvent être identifiés au moyen d'instructions d'audit en langage naturel plutôt qu'en s'appuyant entièrement sur des règles de validation codées en dur. Cet article montre comment utiliser Spire.Agent.Office en C# pour auditer un classeur Excel, identifier les problèmes potentiels de données et de formules, mettre en évidence les cellules suspectes et générer un rapport d'audit structuré.

1. Qu'est-ce qu'un audit Excel assisté par IA ?

Un audit Excel traditionnel repose généralement sur des règles de validation prédéfinies, des formules ou du code personnalisé. Par exemple, un programme peut vérifier si une cellule requise est vide, si une valeur dépasse un seuil fixe ou si des ID en double existent dans une colonne.

Un audit Excel assisté par IA ajoute une analyse contextuelle à ce processus. Au lieu de définir chaque condition possible dans le code, vous pouvez décrire les exigences d'audit en langage naturel et laisser l'agent IA examiner le classeur pour y repérer des modèles et des incohérences.

Par exemple, un agent IA peut être chargé de rechercher :

  • Données manquantes ou incomplètes
  • Enregistrements en double ou suspects
  • Valeurs numériques inhabituelles ou valeurs aberrantes
  • Modèles de données incohérents
  • Formules manquantes
  • Formules qui diffèrent de manière inattendue des lignes voisines
  • Résultats de calcul ou références de cellules suspects

Cela est particulièrement utile pour les problèmes difficiles à exprimer sous forme de règles fixes simples. Une valeur peut se situer dans une plage numérique acceptable tout en semblant inhabituelle par rapport aux enregistrements voisins, tandis qu'une formule peut produire un résultat valide mais utiliser un modèle différent de celui des cellules voisines.

Les conclusions d'audit générées par IA doivent généralement être considérées comme des problèmes potentiels plutôt que comme des erreurs définitives. Les résultats peuvent ensuite être mis en évidence dans le classeur et résumés dans un rapport d'audit pour un examen plus approfondi.

2. Configurer le projet C#

Créez une application console C# et ajoutez le package Spire.Agent.Office requis au projet.

L'exemple utilise les espaces de noms suivants :

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

L'accès aux fonctionnalités d'IA nécessite un jeton Spire valide. Vous pouvez demander un jeton de test temporaire via la page de licence temporaire Spire.

La configuration de base est :

AIOptions options = new AIOptions();
options.SpireToken = "YOUR_SPIRE_TOKEN";

Les exemples ci-dessous utilisent un classeur Excel nommé :

SalesData.xlsx

Le classeur peut contenir une ou plusieurs feuilles de calcul avec des enregistrements de ventes, des formules, des dates, des quantités, des prix, des remises ou d'autres données métier.

3. Préparer le classeur Excel pour l'audit

La première étape consiste à charger le classeur avec Workbook.

Workbook workbook = new Workbook();
workbook.LoadFromFile("SalesData.xlsx");

Comme le classeur est transmis directement au processeur de documents compatible IA, il n'est pas nécessaire de convertir manuellement chaque feuille de calcul, valeur de cellule ou formule en texte brut.

L'agent peut travailler avec la feuille de calcul comme un document Office structuré et inspecter des informations telles que :

  • Contenu des feuilles de calcul
  • Valeurs des cellules
  • Formules
  • Lignes et colonnes
  • Modèles de données
  • Relations entre cellules voisines

Par exemple, une feuille de calcul des ventes peut contenir des données similaires à ce qui suit :

ID de commande Date Produit Quantité Prix unitaire Remise Total
ORD-1001 2026-08-01 Ordinateur portable 2 850 0.10 1530
ORD-1002 2026-08-02 Écran 5 260 0.05 1235
ORD-1003 2026-08-03 Clavier 10 45 0.10 405
ORD-1004 2026-08-04 Ordinateur portable 3 850 0.80 510

La dernière ligne peut mériter une attention particulière, car une remise de 80 % est très différente de celle des enregistrements voisins.

D'autres problèmes potentiels peuvent inclure des ID de commande en double, des dates manquantes, des quantités inhabituelles ou une formule différente de celles utilisées dans les lignes voisines.

4. Créer un agent IA pour auditer les classeurs Excel

La partie principale du workflow consiste à définir la tâche d'audit.

Au lieu d'écrire manuellement des conditions C# distinctes pour chaque erreur possible, les exigences peuvent être décrites au moyen d'une instruction en langage naturel.

Définir les règles et instructions d'audit

Par exemple :

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for:
- Missing or incomplete values
- Duplicate records
- Unusual or suspicious numeric values
- Inconsistent data patterns
- Missing formulas
- Formulas that differ unexpectedly from nearby rows
- Suspicious cell references or calculation results

Do not modify valid source data.

For every detected issue, record:
- Worksheet name
- Cell or range
- Issue type
- Explanation

Highlight problematic cells and create a new worksheet named
'Audit Report' containing the audit results.
";

L'instruction définit à la fois ce que l'agent doit inspecter et comment les résultats doivent être présentés.

Cela est utile car l'audit de feuilles de calcul dépend souvent du contexte. Une valeur de 80 peut être parfaitement normale dans une colonne, mais très inhabituelle dans une autre. L'agent peut évaluer la valeur conjointement avec les enregistrements voisins et la signification des données.

Analyser les données et les modèles de formules

Après avoir chargé le classeur et configuré les options d'IA, créez un processeur de documents IA à partir du classeur :

AIDocumentProcessor processor = workbook.AI(options);

Envoyez ensuite l'instruction d'audit à l'agent :

processor.ExecuteInstruction(
    workbook,
    instruction,
    "AuditedSalesData.xlsx",
    Array.Empty<string>()
);

Le code principal complet est donc très court :

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

string inputPath = "SalesData.xlsx";
string outputPath = "AuditedSalesData.xlsx";
string spireToken = "YOUR_SPIRE_TOKEN";

Workbook workbook = new Workbook();
workbook.LoadFromFile(inputPath);

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for missing values, duplicate records, unusual numeric values,
inconsistent data patterns, missing formulas, formulas that differ
unexpectedly from nearby rows, and suspicious calculation results.

Do not modify valid source data.

Highlight cells containing potential issues and create a worksheet named
'Audit Report' with the following columns:

Worksheet | Cell | Issue | Explanation
";

AIDocumentProcessor processor = workbook.AI(options);

processor.ExecuteInstruction(
    workbook,
    instruction,
    outputPath,
    Array.Empty<string>()
);

Par rapport à un programme de validation Excel classique, la majeure partie de la logique d'audit est exprimée dans l'instruction plutôt que dans une longue série d'instructions if.

Retourner des résultats d'audit structurés

Il est important d'indiquer à l'agent comment les résultats d'audit doivent être organisés.

Par exemple :

Worksheet | Cell | Issue | Explanation

Un rapport d'audit généré peut se présenter comme suit :

Feuille de calcul Cellule Problème Explication
Sales F5 Valeur inhabituelle La remise de 80 % est nettement plus élevée que celle des enregistrements voisins.
Sales A12 Enregistrement en double L'ID de commande apparaît également dans une autre ligne.
Sales B18 Valeur manquante La date de commande est vide.
Sales G24 Incohérence de formule La formule diffère du modèle de formule utilisé dans les lignes adjacentes.

Des résultats structurés facilitent la relecture de l'audit et peuvent également être utilisés pour un traitement automatisé ultérieur.

5. Mettre en évidence les problèmes détectés et générer un rapport d'audit

Un simple retour textuel décrivant les problèmes de la feuille de calcul est utile, mais un audit devient bien plus facile à examiner lorsque les conclusions sont réécrites dans le classeur lui-même.

L'instruction peut demander à l'agent d'effectuer deux actions :

string outputInstruction = @"
Highlight every cell that contains a potential issue.

Create an 'Audit Report' worksheet and list every issue using these columns:

Worksheet | Cell | Issue | Explanation

Do not change cells that do not contain an identified issue.
";

Cela produit deux niveaux de sortie : les conclusions mises en évidence dans la feuille de calcul d'origine et un rapport centralisé contenant des explications détaillées.

Examiner les problèmes mis en évidence dans la feuille de calcul d'origine

Dans la feuille de calcul d'origine, l'agent met en évidence les cellules contenant des problèmes potentiels. Les conclusions du même type utilisent la même couleur de surbrillance, ce qui facilite la distinction entre valeurs manquantes, enregistrements en double, nombres inhabituels, données incohérentes et problèmes liés aux formules.

Examiner les problèmes mis en évidence

Figure 1. Problèmes potentiels mis en évidence dans la feuille de calcul d'origine. La même couleur est utilisée pour les conclusions du même type.

Dans cet exemple, l'agent a identifié plusieurs types de problèmes, notamment la remise anormalement élevée dans G6, la valeur aberrante de quantité dans E10, la date de commande manquante dans B17, le prix unitaire négatif dans F23 et des problèmes liés aux formules dans la colonne Total.

En réécrivant les conclusions à leurs emplacements d'origine, l'agent permet aux utilisateurs d'examiner les valeurs suspectes dans leur contexte au lieu de les rechercher manuellement.

Examiner le rapport d'audit détaillé

En plus de mettre en évidence les données source, l'agent crée une feuille de calcul Audit Report qui répertorie la cellule concernée, le type de problème et l'explication pour chaque conclusion.

Examiner le rapport d'audit détaillé

Figure 2. Le rapport d'audit généré fournit l'emplacement, le type et l'explication de chaque problème détecté.

Le rapport inclut des conclusions telles que des valeurs manquantes, des ID de commande en double, des valeurs numériques inhabituelles, des modèles de données incohérents, des formules manquantes et des résultats de calcul suspects.

Par exemple, l'agent a détecté que :

  • A8 et A13 contiennent le même ID de commande.
  • G6 contient une remise de 80 %, nettement plus élevée que les autres remises.
  • H13 contient une valeur codée en dur au lieu du modèle de formule utilisé dans les lignes voisines.
  • H19 utilise l'addition au lieu de la soustraction lors de l'application de la remise.
  • H30 produit un total qui ne correspond pas au calcul attendu.

Une même cellule peut apparaître plusieurs fois dans le rapport lorsqu'elle concerne plusieurs dimensions d'audit. Par exemple, H25 peut être signalée à la fois comme valeur manquante et comme formule manquante.

Les conclusions générées par IA doivent être traitées comme des problèmes potentiels plutôt que comme des erreurs définitives. Certaines valeurs inhabituelles peuvent représenter des exceptions métier légitimes. La feuille de calcul mise en évidence et le rapport d'audit fournissent donc un point de départ structuré pour un examen humain plutôt que de modifier automatiquement les données sous-jacentes.

6. Bonnes pratiques pour l'audit Excel assisté par IA

L'audit basé sur l'IA fonctionne particulièrement bien lorsqu'il est utilisé conjointement avec des exigences d'audit claires.

Premièrement, fournissez suffisamment de contexte dans l'instruction. Au lieu de demander simplement à l'agent de « trouver les erreurs », précisez les types de problèmes qui comptent, tels que les enregistrements en double, les valeurs anormales, les formules manquantes ou les calculs incohérents.

Deuxièmement, distinguez les règles déterministes de l'analyse contextuelle. Des conditions telles que « La quantité ne doit jamais être négative » peuvent être vérifiées de manière fiable avec des règles conventionnelles. L'IA est plus utile dans des situations telles que l'identification d'une valeur qui semble incohérente par rapport aux enregistrements voisins ou la reconnaissance d'un modèle de formule inattendu.

Troisièmement, évitez de demander à l'agent de corriger automatiquement chaque problème détecté. Une valeur suspecte n'est pas nécessairement une valeur incorrecte. Mettre la cellule en évidence et expliquer la raison donne aux utilisateurs la possibilité de vérifier la conclusion avant d'apporter des modifications.

Pour les classeurs volumineux, l'audit peut également être limité à des feuilles de calcul spécifiques ou à des catégories de problèmes. Cela rend la tâche plus ciblée et peut réduire le traitement inutile.

Enfin, structurez la sortie. Inclure la feuille de calcul, l'emplacement de la cellule, le type de problème et l'explication facilite la vérification des conclusions générées par IA et leur intégration dans les workflows ultérieurs.

7. Conclusion

L'audit de feuilles de calcul implique souvent plus que de vérifier si des cellules sont vides ou si des formules renvoient des erreurs. De nombreux problèmes ne deviennent visibles que lorsque les valeurs, les formules et les modèles de données environnants sont examinés ensemble.

Avec un SDK d'agent IA, ces exigences d'audit peuvent être décrites en langage naturel au lieu d'être entièrement implémentées via des règles de validation codées en dur.

En utilisant Spire.Agent.Office en C#, le workflow peut rester relativement simple : charger le classeur Excel, définir les exigences d'audit, exécuter l'instruction et générer un nouveau classeur contenant les problèmes mis en évidence et un rapport d'audit structuré.

Cette approche est particulièrement utile pour détecter des anomalies potentielles, des formules incohérentes, des enregistrements dupliqués, des informations manquantes et d'autres problèmes de feuilles de calcul pouvant nécessiter une analyse contextuelle.

8. FAQ

L'IA peut-elle détecter des formules incorrectes dans Excel ?

L'IA peut identifier des formules qui semblent incohérentes par rapport aux formules voisines, contiennent des références suspectes ou produisent des résultats qui ne correspondent pas aux modèles de données attendus. Toutefois, la justesse logique d'une formule peut dépendre des règles métier du classeur ; les problèmes détectés doivent donc toujours être examinés.

Les règles d'audit peuvent-elles être personnalisées ?

Oui. Les exigences d'audit sont principalement définies par l'instruction envoyée à l'agent. Vous pouvez ajouter des règles pour des colonnes, des feuilles de calcul, des plages de valeurs, des formules ou des conditions métier spécifiques.

Par exemple :

"Flag discounts above 50% and orders with a missing customer ID."

L'IA peut-elle détecter des enregistrements Excel en double ?

Oui. L'agent peut être chargé d'identifier des ID dupliqués, des lignes répétées ou des enregistrements potentiellement dupliqués en fonction de plusieurs champs.

Pour une détection des doublons plus déterministe, la logique Excel ou C# classique peut également être combinée à l'audit par IA.

L'IA peut-elle corriger automatiquement les erreurs détectées ?

L'agent peut être chargé de modifier le contenu du classeur, mais corriger automatiquement chaque anomalie détectée n'est généralement pas recommandé. Certaines valeurs inhabituelles peuvent être des exceptions métier valides.

Un workflow plus sûr consiste à mettre en évidence les cellules suspectes, à expliquer pourquoi elles ont été signalées et à laisser les utilisateurs examiner les conclusions avant d'appliquer des corrections.

La même approche peut-elle être utilisée pour différents types de fichiers Excel ?

Oui. Le même workflow peut être adapté aux rapports de ventes, aux feuilles de calcul financières, aux registres d'inventaire, aux rapports opérationnels, aux données d'enquête et à d'autres classeurs Excel structurés. Dans la plupart des cas, seule l'instruction d'audit doit être ajustée pour les données et les règles métier spécifiques.

Voir aussi

Review Highlighted Issues

Los libros de Excel pueden contener valores faltantes, registros duplicados, números inusuales y fórmulas inconsistentes que son difíciles de detectar manualmente, especialmente cuando se trabaja con grandes conjuntos de datos.

Con un agente de IA, estos problemas se pueden identificar mediante instrucciones de auditoría en lenguaje natural en lugar de depender por completo de reglas de validación codificadas de forma rígida. Este artículo muestra cómo usar Spire.Agent.Office en C# para auditar un libro de Excel, identificar posibles problemas de datos y fórmulas, resaltar celdas sospechosas y generar un informe de auditoría estructurado.

1. ¿Qué es una auditoría de Excel con IA?

Una auditoría tradicional de Excel suele basarse en reglas de validación predefinidas, fórmulas o código personalizado. Por ejemplo, un programa puede comprobar si una celda obligatoria está vacía, si un valor supera un umbral fijo o si existen ID duplicados en una columna.

Una auditoría de Excel con IA añade análisis contextual a este proceso. En lugar de definir todas las condiciones posibles en el código, puede describir los requisitos de auditoría en lenguaje natural y dejar que el agente de IA examine el libro en busca de patrones e inconsistencias.

Por ejemplo, se puede indicar a un agente de IA que busque:

  • Datos faltantes o incompletos
  • Registros duplicados o sospechosos
  • Valores numéricos inusuales o atípicos
  • Patrones de datos inconsistentes
  • Fórmulas faltantes
  • Fórmulas que difieren inesperadamente de las filas cercanas
  • Resultados de cálculo o referencias de celda sospechosos

Esto es especialmente útil para problemas que son difíciles de expresar como reglas fijas simples. Un valor puede estar dentro de un rango numérico aceptable pero aun así parecer inusual en comparación con los registros circundantes, mientras que una fórmula puede producir un resultado válido pero usar un patrón que difiere de las celdas vecinas.

Los hallazgos de auditoría generados por IA generalmente deben tratarse como posibles problemas en lugar de errores definitivos. Los resultados se pueden resaltar en el libro y resumir en un informe de auditoría para su revisión posterior.

2. Configurar el proyecto de C#

Cree una nueva aplicación de consola de C# y agregue el paquete Spire.Agent.Office requerido al proyecto.

El ejemplo utiliza los siguientes espacios de nombres:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

El acceso a la funcionalidad de IA requiere un token de Spire válido. Puede solicitar un token de prueba temporal a través de la página de licencia temporal de Spire.

La configuración básica es:

AIOptions options = new AIOptions();
options.SpireToken = "YOUR_SPIRE_TOKEN";

Los ejemplos a continuación utilizan un libro de Excel llamado:

SalesData.xlsx

El libro puede contener una o varias hojas de cálculo con registros de ventas, fórmulas, fechas, cantidades, precios, descuentos u otros datos comerciales.

3. Preparar el libro de Excel para la auditoría

El primer paso es cargar el libro con Workbook.

Workbook workbook = new Workbook();
workbook.LoadFromFile("SalesData.xlsx");

Como el libro se pasa directamente al procesador de documentos habilitado para IA, no es necesario convertir manualmente cada hoja de cálculo, valor de celda o fórmula a texto sin formato.

El agente puede trabajar con la hoja de cálculo como un documento de Office estructurado e inspeccionar información como:

  • Contenido de la hoja de cálculo
  • Valores de celda
  • Fórmulas
  • Filas y columnas
  • Patrones de datos
  • Relaciones entre celdas cercanas

Por ejemplo, una hoja de cálculo de ventas podría contener datos similares a los siguientes:

ID de pedido Fecha Producto Cantidad Precio unitario Descuento Total
ORD-1001 2026-08-01 Portátil 2 850 0.10 1530
ORD-1002 2026-08-02 Monitor 5 260 0.05 1235
ORD-1003 2026-08-03 Teclado 10 45 0.10 405
ORD-1004 2026-08-04 Portátil 3 850 0.80 510

La última fila puede merecer atención porque un descuento del 80% es significativamente diferente de los registros circundantes.

Otros posibles problemas podrían incluir ID de pedido duplicados, fechas faltantes, cantidades inusuales o una fórmula que difiere de las fórmulas utilizadas en las filas vecinas.

4. Crear un agente de IA para auditar libros de Excel

La parte principal del flujo de trabajo es definir la tarea de auditoría.

En lugar de escribir manualmente condiciones de C# separadas para cada posible error, los requisitos se pueden describir mediante una instrucción en lenguaje natural.

Definir reglas e instrucciones de auditoría

Por ejemplo:

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for:
- Missing or incomplete values
- Duplicate records
- Unusual or suspicious numeric values
- Inconsistent data patterns
- Missing formulas
- Formulas that differ unexpectedly from nearby rows
- Suspicious cell references or calculation results

Do not modify valid source data.

For every detected issue, record:
- Worksheet name
- Cell or range
- Issue type
- Explanation

Highlight problematic cells and create a new worksheet named
'Audit Report' containing the audit results.
";

La instrucción define tanto qué debe inspeccionar el agente como cómo deben presentarse los resultados .

Esto es útil porque la auditoría de hojas de cálculo a menudo depende del contexto. Un valor de 80 puede ser completamente normal en una columna pero muy inusual en otra. El agente puede evaluar el valor junto con los registros cercanos y el significado de los datos.

Analizar patrones de datos y fórmulas

Después de cargar el libro y configurar las opciones de IA, cree un procesador de documentos de IA a partir del libro:

AIDocumentProcessor processor = workbook.AI(options);

Luego envíe la instrucción de auditoría al agente:

processor.ExecuteInstruction(
    workbook,
    instruction,
    "AuditedSalesData.xlsx",
    Array.Empty<string>()
);

Por lo tanto, el código central completo es muy corto:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

string inputPath = "SalesData.xlsx";
string outputPath = "AuditedSalesData.xlsx";
string spireToken = "YOUR_SPIRE_TOKEN";

Workbook workbook = new Workbook();
workbook.LoadFromFile(inputPath);

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for missing values, duplicate records, unusual numeric values,
inconsistent data patterns, missing formulas, formulas that differ
unexpectedly from nearby rows, and suspicious calculation results.

Do not modify valid source data.

Highlight cells containing potential issues and create a worksheet named
'Audit Report' with the following columns:

Worksheet | Cell | Issue | Explanation
";

AIDocumentProcessor processor = workbook.AI(options);

processor.ExecuteInstruction(
    workbook,
    instruction,
    outputPath,
    Array.Empty<string>()
);

En comparación con un programa de validación de Excel convencional, la mayor parte de la lógica de auditoría se expresa mediante la instrucción en lugar de una larga serie de sentencias if.

Devolver resultados de auditoría estructurados

Es importante indicar al agente cómo deben organizarse los resultados de la auditoría.

Por ejemplo:

Worksheet | Cell | Issue | Explanation

Un informe de auditoría generado puede verse así:

Hoja de cálculo Celda Problema Explicación
Ventas F5 Valor inusual El descuento del 80% es significativamente mayor que el de los registros circundantes.
Ventas A12 Registro duplicado El ID de pedido también aparece en otra fila.
Ventas B18 Valor faltante La fecha del pedido está vacía.
Ventas G24 Inconsistencia de fórmula La fórmula difiere del patrón de fórmula utilizado en las filas adyacentes.

Los resultados estructurados facilitan la revisión de la auditoría y también se pueden utilizar para el procesamiento automatizado posterior.

5. Resaltar los problemas detectados y generar un informe de auditoría

Devolver simplemente una descripción textual de los problemas de la hoja de cálculo es útil, pero una auditoría es mucho más fácil de revisar cuando los hallazgos se escriben de nuevo en el propio libro.

La instrucción puede pedir al agente que realice dos acciones:

string outputInstruction = @"
Highlight every cell that contains a potential issue.

Create an 'Audit Report' worksheet and list every issue using these columns:

Worksheet | Cell | Issue | Explanation

Do not change cells that do not contain an identified issue.
";

Esto produce dos niveles de salida: hallazgos resaltados en la hoja de cálculo original y un informe centralizado que contiene explicaciones detalladas.

Revisar los problemas resaltados en la hoja de cálculo original

En la hoja de cálculo original, el agente resalta las celdas que contienen posibles problemas. Los hallazgos del mismo tipo usan el mismo color de resaltado, lo que facilita distinguir valores faltantes, registros duplicados, números inusuales, datos inconsistentes y problemas relacionados con fórmulas.

Review Highlighted Issues

Figura 1. Posibles problemas resaltados en la hoja de cálculo original. Se utiliza el mismo color para los hallazgos del mismo tipo.

En este ejemplo, el agente identificó varios tipos de problemas, incluido el descuento inusualmente alto en G6, el valor atípico de cantidad en E10, la fecha de pedido faltante en B17, el precio unitario negativo en F23 y problemas relacionados con fórmulas en la columna Total.

Al escribir los hallazgos de nuevo en sus ubicaciones originales, el agente permite a los usuarios revisar los valores sospechosos en contexto en lugar de buscarlos manualmente.

Revisar el informe de auditoría detallado

Además de resaltar los datos de origen, el agente crea una hoja de cálculo Audit Report que enumera la celda afectada, el tipo de problema y la explicación de cada hallazgo.

Review the Detailed Audit Report

Figura 2. El informe de auditoría generado proporciona la ubicación, el tipo y la explicación de cada problema detectado.

El informe incluye hallazgos como valores faltantes, ID de pedido duplicados, valores numéricos inusuales, patrones de datos inconsistentes, fórmulas faltantes y resultados de cálculo sospechosos.

Por ejemplo, el agente detectó que:

  • A8 y A13 contienen el mismo ID de pedido.
  • G6 contiene un descuento del 80%, que es significativamente mayor que los otros descuentos.
  • H13 contiene un valor codificado de forma rígida en lugar del patrón de fórmula utilizado en las filas cercanas.
  • H19 usa suma en lugar de resta al aplicar el descuento.
  • H30 produce un total que no coincide con el cálculo esperado.

Una sola celda puede aparecer más de una vez en el informe cuando involucra múltiples dimensiones de auditoría. Por ejemplo, H25 puede informarse tanto como valor faltante como fórmula faltante.

Los hallazgos generados por IA deben tratarse como posibles problemas en lugar de errores definitivos. Algunos valores inusuales pueden representar excepciones comerciales legítimas. Por lo tanto, la hoja de cálculo resaltada y el informe de auditoría proporcionan un punto de partida estructurado para la revisión humana en lugar de cambiar automáticamente los datos subyacentes.

6. Buenas prácticas para la auditoría de Excel con IA

La auditoría basada en IA funciona especialmente bien cuando se utiliza junto con requisitos de auditoría claros.

Primero, proporcione suficiente contexto en la instrucción. En lugar de pedirle al agente que simplemente "encuentre errores", especifique los tipos de problemas que importan, como registros duplicados, valores anómalos, fórmulas faltantes o cálculos inconsistentes.

Segundo, distinga entre reglas deterministas y análisis contextual. Condiciones como "La cantidad nunca debe ser negativa" se pueden comprobar de forma fiable con reglas convencionales. La IA es más útil para situaciones como identificar un valor que parece inconsistente con los registros circundantes o reconocer un patrón de fórmula inesperado.

Tercero, evite pedirle al agente que corrija automáticamente cada problema detectado. Un valor sospechoso no es necesariamente un valor incorrecto. Resaltar la celda y explicar el motivo brinda a los usuarios la oportunidad de verificar el hallazgo antes de realizar cambios.

Para libros grandes, la auditoría también se puede limitar a hojas de cálculo específicas o categorías de problemas. Esto hace que la tarea sea más específica y puede reducir el procesamiento innecesario.

Finalmente, haga que la salida sea estructurada. Incluir la hoja de cálculo, la ubicación de la celda, el tipo de problema y la explicación hace que los hallazgos generados por IA sean más fáciles de verificar e integrar en flujos de trabajo posteriores.

7. Conclusión

La auditoría de hojas de cálculo a menudo implica más que comprobar si las celdas están vacías o si las fórmulas devuelven errores. Muchos problemas solo se hacen visibles cuando se consideran juntos los valores, las fórmulas y los patrones de datos circundantes.

Con un SDK de Agente de IA, estos requisitos de auditoría se pueden describir en lenguaje natural en lugar de implementarse por completo mediante reglas de validación codificadas de forma rígida.

Al usar Spire.Agent.Office en C#, el flujo de trabajo puede seguir siendo relativamente sencillo: cargar el libro de Excel, definir los requisitos de auditoría, ejecutar la instrucción y generar un nuevo libro que contenga los problemas resaltados y un informe de auditoría estructurado.

Este enfoque es especialmente útil para detectar posibles anomalías, fórmulas inconsistentes, registros duplicados, información faltante y otros problemas de hojas de cálculo que pueden requerir análisis contextual.

8. Preguntas frecuentes

¿Puede la IA detectar fórmulas incorrectas en Excel?

La IA puede identificar fórmulas que parecen inconsistentes con las fórmulas cercanas, contienen referencias sospechosas o producen resultados que no coinciden con los patrones de datos esperados. Sin embargo, si una fórmula es lógicamente correcta puede depender de las reglas de negocio detrás del libro, por lo que los problemas detectados aún deben revisarse.

¿Se pueden personalizar las reglas de auditoría?

Sí. Los requisitos de auditoría se definen principalmente a través de la instrucción enviada al agente. Puede agregar reglas para columnas específicas, hojas de cálculo, rangos de valores, fórmulas o condiciones comerciales.

Por ejemplo:

"Flag discounts above 50% and orders with a missing customer ID."

¿Puede la IA detectar registros duplicados de Excel?

Sí. Se puede indicar al agente que identifique ID duplicados, filas repetidas o registros potencialmente duplicados basados en múltiples campos.

Para una detección de duplicados más determinista, la lógica convencional de Excel o C# también se puede combinar con la auditoría de IA.

¿Puede la IA corregir automáticamente los errores detectados?

Se puede indicar al agente que modifique el contenido del libro, pero normalmente no se recomienda corregir automáticamente todas las anomalías detectadas. Algunos valores inusuales pueden ser excepciones comerciales válidas.

Un flujo de trabajo más seguro es resaltar las celdas sospechosas, explicar por qué se marcaron y permitir que los usuarios revisen los hallazgos antes de aplicar correcciones.

¿Se puede usar el mismo enfoque para diferentes tipos de archivos de Excel?

Sí. El mismo flujo de trabajo se puede adaptar a informes de ventas, hojas de cálculo financieras, registros de inventario, informes operativos, datos de encuestas y otros libros de Excel estructurados. En la mayoría de los casos, solo es necesario ajustar la instrucción de auditoría para los datos y las reglas de negocio específicos.

Véase también

Review Highlighted Issues

Excel-Arbeitsmappen können fehlende Werte, doppelte Datensätze, ungewöhnliche Zahlen und inkonsistente Formeln enthalten, die manuell schwer zu erkennen sind, insbesondere bei der Arbeit mit großen Datenmengen.

Mit einem KI-Agenten können diese Probleme durch natürlichsprachliche Audit-Anweisungen identifiziert werden, anstatt sich vollständig auf hartcodierte Validierungsregeln zu verlassen. In diesem Artikel wird gezeigt, wie Sie Spire.Agent.Office in C# verwenden, um eine Excel-Arbeitsmappe zu auditieren, potenzielle Daten- und Formelprobleme zu identifizieren, verdächtige Zellen hervorzuheben und einen strukturierten Auditbericht zu generieren.

1. Was ist ein KI-gestütztes Excel-Audit?

Ein traditionelles Excel-Audit stützt sich normalerweise auf vordefinierte Validierungsregeln, Formeln oder benutzerdefinierten Code. Beispielsweise kann ein Programm prüfen, ob eine erforderliche Zelle leer ist, ob ein Wert einen festen Schwellenwert überschreitet oder ob doppelte IDs in einer Spalte vorhanden sind.

Ein KI-gestütztes Excel-Audit fügt diesem Prozess eine kontextbezogene Analyse hinzu. Anstatt jede mögliche Bedingung im Code zu definieren, können Sie die Audit-Anforderungen in natürlicher Sprache beschreiben und den KI-Agenten die Arbeitsmappe auf Muster und Inkonsistenzen untersuchen lassen.

Beispielsweise kann ein KI-Agent angewiesen werden, nach Folgendem zu suchen:

  • Fehlende oder unvollständige Daten
  • Doppelte oder verdächtige Datensätze
  • Ungewöhnliche numerische Werte oder Ausreißer
  • Inkonsistente Datenmuster
  • Fehlende Formeln
  • Formeln, die unerwartet von benachbarten Zeilen abweichen
  • Verdächtige Berechnungsergebnisse oder Zellbezüge

Dies ist besonders nützlich für Probleme, die sich nur schwer als einfache feste Regeln ausdrücken lassen. Ein Wert kann innerhalb eines akzeptablen numerischen Bereichs liegen und im Vergleich zu umgebenden Datensätzen dennoch ungewöhnlich erscheinen, während eine Formel ein gültiges Ergebnis liefern, aber ein Muster verwenden kann, das von benachbarten Zellen abweicht.

KI-generierte Audit-Ergebnisse sollten im Allgemeinen als potenzielle Probleme und nicht als definitive Fehler behandelt werden. Die Ergebnisse können dann in der Arbeitsmappe hervorgehoben und in einem Auditbericht zur weiteren Überprüfung zusammengefasst werden.

2. C#-Projekt einrichten

Erstellen Sie eine neue C#-Konsolenanwendung und fügen Sie dem Projekt das erforderliche Paket Spire.Agent.Office hinzu.

Das Beispiel verwendet die folgenden Namespaces:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

Der Zugriff auf KI-Funktionen erfordert ein gültiges Spire-Token. Sie können ein temporäres Testtoken über die temporäre Spire-Lizenzseite beantragen.

Die grundlegende Konfiguration lautet:

AIOptions options = new AIOptions();
options.SpireToken = "YOUR_SPIRE_TOKEN";

Die folgenden Beispiele verwenden eine Excel-Arbeitsmappe mit dem Namen:

SalesData.xlsx

Die Arbeitsmappe kann ein oder mehrere Arbeitsblätter mit Verkaufsdatensätzen, Formeln, Datumsangaben, Mengen, Preisen, Rabatten oder anderen Geschäftsdaten enthalten.

3. Excel-Arbeitsmappe für das Audit vorbereiten

Der erste Schritt besteht darin, die Arbeitsmappe mit Workbook zu laden.

Workbook workbook = new Workbook();
workbook.LoadFromFile("SalesData.xlsx");

Da die Arbeitsmappe direkt an den KI-fähigen Dokumentprozessor übergeben wird, ist es nicht erforderlich, jedes Arbeitsblatt, jeden Zellwert oder jede Formel manuell in reinen Text umzuwandeln.

Der Agent kann mit der Tabellenkalkulation als strukturiertes Office-Dokument arbeiten und Informationen wie die folgenden prüfen:

  • Arbeitsblattinhalte
  • Zellwerte
  • Formeln
  • Zeilen und Spalten
  • Datenmuster
  • Beziehungen zwischen benachbarten Zellen

Beispielsweise könnte ein Verkaufsarbeitsblatt Daten ähnlich den folgenden enthalten:

Bestell-ID Datum Produkt Menge Stückpreis Rabatt Gesamt
ORD-1001 2026-08-01 Laptop 2 850 0.10 1530
ORD-1002 2026-08-02 Monitor 5 260 0.05 1235
ORD-1003 2026-08-03 Keyboard 10 45 0.10 405
ORD-1004 2026-08-04 Laptop 3 850 0.80 510

Die letzte Zeile könnte Aufmerksamkeit verdienen, da ein Rabatt von 80 % deutlich von den umgebenden Datensätzen abweicht.

Weitere potenzielle Probleme könnten doppelte Bestell-IDs, fehlende Datumsangaben, ungewöhnliche Mengen oder eine Formel sein, die von den in benachbarten Zeilen verwendeten Formeln abweicht.

4. Einen KI-Agenten zum Auditieren von Excel-Arbeitsmappen erstellen

Der Hauptteil des Workflows ist die Definition der Audit-Aufgabe.

Anstatt für jeden möglichen Fehler manuell separate C#-Bedingungen zu schreiben, können die Anforderungen durch eine natürlichsprachliche Anweisung beschrieben werden.

Audit-Regeln und Anweisungen definieren

Zum Beispiel:

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for:
- Missing or incomplete values
- Duplicate records
- Unusual or suspicious numeric values
- Inconsistent data patterns
- Missing formulas
- Formulas that differ unexpectedly from nearby rows
- Suspicious cell references or calculation results

Do not modify valid source data.

For every detected issue, record:
- Worksheet name
- Cell or range
- Issue type
- Explanation

Highlight problematic cells and create a new worksheet named
'Audit Report' containing the audit results.
";

Die Anweisung definiert sowohl was der Agent prüfen soll als auch wie die Ergebnisse präsentiert werden sollen .

Dies ist nützlich, da die Prüfung von Tabellenkalkulationen oft kontextabhängig ist. Ein Wert von 80 kann in einer Spalte völlig normal, in einer anderen jedoch höchst ungewöhnlich sein. Der Agent kann den Wert zusammen mit benachbarten Datensätzen und der Bedeutung der Daten bewerten.

Daten- und Formelmuster analysieren

Nachdem Sie die Arbeitsmappe geladen und die KI-Optionen konfiguriert haben, erstellen Sie einen KI-Dokumentprozessor aus der Arbeitsmappe:

AIDocumentProcessor processor = workbook.AI(options);

Senden Sie dann die Audit-Anweisung an den Agenten:

processor.ExecuteInstruction(
    workbook,
    instruction,
    "AuditedSalesData.xlsx",
    Array.Empty<string>()
);

Der vollständige Kerncode ist daher sehr kurz:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

string inputPath = "SalesData.xlsx";
string outputPath = "AuditedSalesData.xlsx";
string spireToken = "YOUR_SPIRE_TOKEN";

Workbook workbook = new Workbook();
workbook.LoadFromFile(inputPath);

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for missing values, duplicate records, unusual numeric values,
inconsistent data patterns, missing formulas, formulas that differ
unexpectedly from nearby rows, and suspicious calculation results.

Do not modify valid source data.

Highlight cells containing potential issues and create a worksheet named
'Audit Report' with the following columns:

Worksheet | Cell | Issue | Explanation
";

AIDocumentProcessor processor = workbook.AI(options);

processor.ExecuteInstruction(
    workbook,
    instruction,
    outputPath,
    Array.Empty<string>()
);

Im Vergleich zu einem herkömmlichen Excel-Validierungsprogramm wird der größte Teil der Audit-Logik durch die Anweisung ausgedrückt und nicht durch eine lange Reihe von if-Anweisungen.

Strukturierte Audit-Ergebnisse zurückgeben

Es ist wichtig, dem Agenten mitzuteilen, wie die Audit-Ergebnisse organisiert werden sollen.

Zum Beispiel:

Worksheet | Cell | Issue | Explanation

Ein generierter Auditbericht könnte wie folgt aussehen:

Arbeitsblatt Zelle Problem Erklärung
Sales F5 Ungewöhnlicher Wert Rabatt von 80 % ist deutlich höher als bei umgebenden Datensätzen.
Sales A12 Doppelter Datensatz Die Bestell-ID erscheint auch in einer anderen Zeile.
Sales B18 Fehlender Wert Das Bestelldatum ist leer.
Sales G24 Formelinkonsistenz Die Formel weicht vom Formelmuster in benachbarten Zeilen ab.

Strukturierte Ergebnisse erleichtern die Überprüfung des Audits und können auch für die anschließende automatisierte Verarbeitung verwendet werden.

5. Erkannte Probleme hervorheben und einen Auditbericht generieren

Die bloße Rückgabe einer Textbeschreibung von Tabellenkalkulationsproblemen ist nützlich, aber ein Audit lässt sich viel leichter überprüfen, wenn die Ergebnisse in die Arbeitsmappe selbst zurückgeschrieben werden.

Die Anweisung kann den Agenten auffordern, zwei Aktionen auszuführen:

string outputInstruction = @"
Highlight every cell that contains a potential issue.

Create an 'Audit Report' worksheet and list every issue using these columns:

Worksheet | Cell | Issue | Explanation

Do not change cells that do not contain an identified issue.
";

Dies erzeugt zwei Ausgabeebenen: hervorgehobene Ergebnisse im ursprünglichen Arbeitsblatt und einen zentralisierten Bericht mit detaillierten Erklärungen.

Hervorgehobene Probleme im ursprünglichen Arbeitsblatt überprüfen

Im ursprünglichen Arbeitsblatt hebt der Agent Zellen hervor, die potenzielle Probleme enthalten. Ergebnisse desselben Typs verwenden dieselbe Hervorhebungsfarbe, wodurch sich fehlende Werte, doppelte Datensätze, ungewöhnliche Zahlen, inkonsistente Daten und formelbezogene Probleme leichter unterscheiden lassen.

Review Highlighted Issues

Abbildung 1. Potenzielle Probleme, die im ursprünglichen Arbeitsblatt hervorgehoben sind. Für Ergebnisse desselben Typs wird dieselbe Farbe verwendet.

In diesem Beispiel hat der Agent mehrere Arten von Problemen identifiziert, darunter den ungewöhnlich hohen Rabatt in G6, den Mengenausreißer in E10, das fehlende Bestelldatum in B17, den negativen Stückpreis in F23 und formelbezogene Probleme in der Spalte „Gesamt“.

Indem der Agent die Ergebnisse an ihre ursprünglichen Positionen zurückschreibt, können Benutzer verdächtige Werte im Kontext überprüfen, anstatt sie manuell zu suchen.

Den detaillierten Auditbericht überprüfen

Zusätzlich zum Hervorheben der Quelldaten erstellt der Agent ein Arbeitsblatt Audit Report, das für jeden Befund die betroffene Zelle, den Problemtyp und eine Erklärung auflistet.

Review the Detailed Audit Report

Abbildung 2. Der generierte Audit Report enthält den Ort, den Typ und die Erklärung jedes erkannten Problems.

Der Bericht enthält Befunde wie fehlende Werte, doppelte Bestell-IDs, ungewöhnliche numerische Werte, inkonsistente Datenmuster, fehlende Formeln und verdächtige Berechnungsergebnisse.

Beispielsweise hat der Agent erkannt, dass:

  • A8 und A13 dieselbe Bestell-ID enthalten.
  • G6 einen Rabatt von 80 % enthält, der deutlich höher ist als die anderen Rabatte.
  • H13 einen fest codierten Wert anstelle des in benachbarten Zeilen verwendeten Formelmusters enthält.
  • H19 bei der Anwendung des Rabatts eine Addition anstelle einer Subtraktion verwendet.
  • H30 eine Summe erzeugt, die nicht der erwarteten Berechnung entspricht.

Eine einzelne Zelle kann mehr als einmal im Bericht erscheinen, wenn sie mehrere Audit-Dimensionen betrifft. Beispielsweise kann H25 sowohl als fehlender Wert als auch als fehlende Formel gemeldet werden.

KI-generierte Befunde sollten als potenzielle Probleme und nicht als definitive Fehler behandelt werden. Einige ungewöhnliche Werte können legitime geschäftliche Ausnahmen darstellen. Das hervorgehobene Arbeitsblatt und der Auditbericht bieten daher einen strukturierten Ausgangspunkt für die menschliche Überprüfung, anstatt die zugrunde liegenden Daten automatisch zu ändern.

6. Best Practices für KI-gestütztes Excel-Auditing

KI-basiertes Auditing funktioniert besonders gut, wenn es zusammen mit klaren Audit-Anforderungen verwendet wird.

Erstens: Geben Sie genügend Kontext in der Anweisung an. Anstatt den Agenten einfach zu bitten, "Fehler zu finden", geben Sie die Arten von Problemen an, die relevant sind, wie doppelte Datensätze, abnormale Werte, fehlende Formeln oder inkonsistente Berechnungen.

Zweitens: Unterscheiden Sie zwischen deterministischen Regeln und kontextbezogener Analyse. Bedingungen wie "Die Menge darf niemals negativ sein" können mit herkömmlichen Regeln zuverlässig geprüft werden. KI ist nützlicher für Situationen wie das Identifizieren eines Werts, der mit umgebenden Datensätzen inkonsistent erscheint, oder das Erkennen eines unerwarteten Formelmusters.

Drittens: Vermeiden Sie es, den Agenten zu bitten, jedes erkannte Problem automatisch zu korrigieren. Ein verdächtiger Wert ist nicht unbedingt ein falscher Wert. Das Hervorheben der Zelle und die Erklärung des Grundes geben Benutzern die Möglichkeit, den Befund zu überprüfen, bevor Änderungen vorgenommen werden.

Bei großen Arbeitsmappen kann das Audit auch auf bestimmte Arbeitsblätter oder Problemkategorien beschränkt werden. Dadurch wird die Aufgabe fokussierter und unnötige Verarbeitung kann reduziert werden.

Schließlich sollten Sie die Ausgabe strukturiert gestalten. Die Angabe von Arbeitsblatt, Zellposition, Problemtyp und Erklärung erleichtert die Überprüfung KI-generierter Befunde und deren Integration in nachfolgende Workflows.

7. Fazit

Das Auditieren von Tabellenkalkulationen umfasst oft mehr als die Prüfung, ob Zellen leer sind oder Formeln Fehler zurückgeben. Viele Probleme werden erst sichtbar, wenn Werte, Formeln und umgebende Datenmuster gemeinsam betrachtet werden.

Mit einem KI-Agent-SDK können diese Audit-Anforderungen in natürlicher Sprache beschrieben werden, anstatt vollständig durch hartcodierte Validierungsregeln implementiert zu werden.

Bei Verwendung von Spire.Agent.Office in C# kann der Workflow relativ einfach bleiben: Excel-Arbeitsmappe laden, Audit-Anforderungen definieren, die Anweisung ausführen und eine neue Arbeitsmappe mit hervorgehobenen Problemen und einem strukturierten Auditbericht generieren.

Dieser Ansatz ist besonders nützlich, um potenzielle Anomalien, inkonsistente Formeln, duplizierte Datensätze, fehlende Informationen und andere Tabellenkalkulationsprobleme zu erkennen, die eine kontextbezogene Analyse erfordern könnten.

8. Häufig gestellte Fragen

Kann KI falsche Formeln in Excel erkennen?

KI kann Formeln identifizieren, die mit benachbarten Formeln inkonsistent erscheinen, verdächtige Bezüge enthalten oder Ergebnisse liefern, die nicht den erwarteten Datenmustern entsprechen. Ob eine Formel logisch korrekt ist, kann jedoch von den Geschäftsregeln hinter der Arbeitsmappe abhängen, sodass erkannte Probleme dennoch überprüft werden sollten.

Können die Audit-Regeln angepasst werden?

Ja. Die Audit-Anforderungen werden in erster Linie durch die an den Agenten gesendete Anweisung definiert. Sie können Regeln für bestimmte Spalten, Arbeitsblätter, Wertebereiche, Formeln oder Geschäftsbedingungen hinzufügen.

Zum Beispiel:

"Flag discounts above 50% and orders with a missing customer ID."

Kann KI doppelte Excel-Datensätze erkennen?

Ja. Der Agent kann angewiesen werden, duplizierte IDs, wiederholte Zeilen oder potenziell duplizierte Datensätze anhand mehrerer Felder zu identifizieren.

Für eine deterministischere Duplikaterkennung kann herkömmliche Excel- oder C#-Logik auch mit dem KI-Audit kombiniert werden.

Kann KI die erkannten Fehler automatisch beheben?

Der Agent kann angewiesen werden, den Inhalt der Arbeitsmappe zu ändern, aber die automatische Korrektur jeder erkannten Anomalie wird normalerweise nicht empfohlen. Einige ungewöhnliche Werte können gültige geschäftliche Ausnahmen sein.

Ein sicherer Workflow besteht darin, verdächtige Zellen hervorzuheben, zu erklären, warum sie markiert wurden, und Benutzer die Befunde überprüfen zu lassen, bevor Korrekturen angewendet werden.

Kann derselbe Ansatz für verschiedene Arten von Excel-Dateien verwendet werden?

Ja. Derselbe Workflow kann an Verkaufsberichte, Finanztabellen, Bestandsdatensätze, Betriebsberichte, Umfragedaten und andere strukturierte Excel-Arbeitsmappen angepasst werden. In den meisten Fällen muss nur die Audit-Anweisung an die spezifischen Daten und Geschäftsregeln angepasst werden.

Siehe auch

Обзор выделенных проблем

Книги Excel могут содержать пропущенные значения, дублирующиеся записи, необычные числа и противоречивые формулы, которые трудно обнаружить вручную, особенно при работе с большими наборами данных.

С помощью ИИ-агента такие проблемы можно выявлять посредством инструкций по аудиту на естественном языке, вместо того чтобы полностью полагаться на жестко заданные правила проверки. В этой статье показано, как использовать Spire.Agent.Office в C# для аудита книги Excel, выявления потенциальных проблем с данными и формулами, выделения подозрительных ячеек и создания структурированного отчета об аудите.

1. Что такое аудит Excel на основе ИИ?

Традиционный аудит Excel обычно опирается на заранее заданные правила проверки, формулы или пользовательский код. Например, программа может проверять, пуста ли обязательная ячейка, превышает ли значение фиксированный порог или есть ли в столбце дублирующиеся идентификаторы.

Аудит Excel на основе ИИ добавляет к этому процессу контекстный анализ. Вместо того чтобы определять в коде каждое возможное условие, вы можете описать требования к аудиту на естественном языке и позволить ИИ-агенту исследовать книгу на предмет закономерностей и несоответствий.

Например, ИИ-агенту можно поручить искать:

  • Отсутствующие или неполные данные
  • Дублирующиеся или подозрительные записи
  • Необычные числовые значения или выбросы
  • Несогласованные шаблоны данных
  • Отсутствующие формулы
  • Формулы, которые неожиданно отличаются от соседних строк
  • Подозрительные результаты вычислений или ссылки на ячейки

Это особенно полезно для проблем, которые сложно выразить в виде простых фиксированных правил. Значение может находиться в допустимом числовом диапазоне, но все равно выглядеть необычно по сравнению с окружающими записями, а формула может давать корректный результат, но использовать шаблон, отличающийся от соседних ячеек.

Результаты аудита, сгенерированные ИИ, как правило, следует рассматривать как потенциальные проблемы, а не как окончательные ошибки. Затем результаты можно выделить в книге и обобщить в отчете об аудите для дальнейшей проверки.

2. Настройка проекта C#

Создайте новое консольное приложение C# и добавьте в проект необходимый пакет Spire.Agent.Office.

В примере используются следующие пространства имен:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

Для доступа к функциональности ИИ требуется действующий токен Spire. Вы можете запросить временный тестовый токен на странице временной лицензии Spire.

Базовая конфигурация выглядит так:

AIOptions options = new AIOptions();
options.SpireToken = "YOUR_SPIRE_TOKEN";

В приведенных ниже примерах используется книга Excel с именем:

SalesData.xlsx

Книга может содержать один или несколько листов с записями о продажах, формулами, датами, количеством, ценами, скидками или другими бизнес-данными.

3. Подготовка книги Excel к аудиту

Первый шаг — загрузить книгу с помощью Workbook.

Workbook workbook = new Workbook();
workbook.LoadFromFile("SalesData.xlsx");

Поскольку книга передается непосредственно в обработчик документов с поддержкой ИИ, нет необходимости вручную преобразовывать каждый лист, значение ячейки или формулу в обычный текст.

Агент может работать с электронной таблицей как со структурированным документом Office и проверять такую информацию, как:

  • Содержимое листов
  • Значения ячеек
  • Формулы
  • Строки и столбцы
  • Шаблоны данных
  • Связи между соседними ячейками

Например, лист с продажами может содержать данные, подобные следующим:

Номер заказа Дата Товар Количество Цена за единицу Скидка Итого
ORD-1001 2026-08-01 Ноутбук 2 850 0.10 1530
ORD-1002 2026-08-02 Монитор 5 260 0.05 1235
ORD-1003 2026-08-03 Клавиатура 10 45 0.10 405
ORD-1004 2026-08-04 Ноутбук 3 850 0.80 510

Последняя строка может заслуживать внимания, поскольку скидка 80 % существенно отличается от окружающих записей.

Другие потенциальные проблемы могут включать дублирующиеся номера заказов, отсутствующие даты, необычные количества или формулу, отличающуюся от формул, используемых в соседних строках.

4. Создание ИИ-агента для аудита книг Excel

Основная часть рабочего процесса — определение задачи аудита.

Вместо того чтобы вручную писать отдельные условия на C# для каждой возможной ошибки, требования можно описать с помощью инструкции на естественном языке.

Определение правил и инструкций аудита

Например:

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for:
- Missing or incomplete values
- Duplicate records
- Unusual or suspicious numeric values
- Inconsistent data patterns
- Missing formulas
- Formulas that differ unexpectedly from nearby rows
- Suspicious cell references or calculation results

Do not modify valid source data.

For every detected issue, record:
- Worksheet name
- Cell or range
- Issue type
- Explanation

Highlight problematic cells and create a new worksheet named
'Audit Report' containing the audit results.
";

Инструкция определяет как то, что агент должен проверить, так и то, как следует представить результаты.

Это полезно, поскольку аудит электронных таблиц часто зависит от контекста. Значение 80 может быть совершенно нормальным в одном столбце, но крайне необычным в другом. Агент может оценить значение вместе с окружающими записями и смыслом данных.

Анализ данных и шаблонов формул

После загрузки книги и настройки параметров ИИ создайте обработчик документов ИИ на основе книги:

AIDocumentProcessor processor = workbook.AI(options);

Затем отправьте агенту инструкцию по аудиту:

processor.ExecuteInstruction(
    workbook,
    instruction,
    "AuditedSalesData.xlsx",
    Array.Empty<string>()
);

Таким образом, полный основной код получается очень коротким:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

string inputPath = "SalesData.xlsx";
string outputPath = "AuditedSalesData.xlsx";
string spireToken = "YOUR_SPIRE_TOKEN";

Workbook workbook = new Workbook();
workbook.LoadFromFile(inputPath);

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for missing values, duplicate records, unusual numeric values,
inconsistent data patterns, missing formulas, formulas that differ
unexpectedly from nearby rows, and suspicious calculation results.

Do not modify valid source data.

Highlight cells containing potential issues and create a worksheet named
'Audit Report' with the following columns:

Worksheet | Cell | Issue | Explanation
";

AIDocumentProcessor processor = workbook.AI(options);

processor.ExecuteInstruction(
    workbook,
    instruction,
    outputPath,
    Array.Empty<string>()
);

По сравнению с обычной программой проверки Excel большая часть логики аудита выражается через инструкцию, а не через длинную последовательность операторов if.

Получение структурированных результатов аудита

Важно сообщить агенту, как следует организовать результаты аудита.

Например:

Worksheet | Cell | Issue | Explanation

Сгенерированный отчет об аудите может выглядеть так:

Лист Ячейка Проблема Пояснение
Sales F5 Необычное значение Скидка 80 % значительно выше, чем в окружающих записях.
Sales A12 Дублирующаяся запись Этот номер заказа также встречается в другой строке.
Sales B18 Отсутствующее значение Дата заказа не заполнена.
Sales G24 Несогласованность формул Формула отличается от шаблона формул, используемого в соседних строках.

Структурированные результаты упрощают проверку аудита и могут также использоваться для последующей автоматизированной обработки.

5. Выделение обнаруженных проблем и создание отчета об аудите

Простое возвращение текстового описания проблем электронной таблицы полезно, но аудит становится гораздо удобнее проверять, когда результаты записываются обратно в саму книгу.

В инструкции можно попросить агента выполнить два действия:

string outputInstruction = @"
Highlight every cell that contains a potential issue.

Create an 'Audit Report' worksheet and list every issue using these columns:

Worksheet | Cell | Issue | Explanation

Do not change cells that do not contain an identified issue.
";

Это дает два уровня результата: выделенные находки на исходном листе и централизованный отчет с подробными пояснениями.

Просмотр выделенных проблем на исходном листе

На исходном листе агент выделяет ячейки, содержащие потенциальные проблемы. Находки одного типа выделяются одним и тем же цветом, что позволяет легче различать пропущенные значения, дублирующиеся записи, необычные числа, несогласованные данные и проблемы, связанные с формулами.

Обзор выделенных проблем

Рисунок 1. Потенциальные проблемы, выделенные на исходном листе. Для находок одного типа используется один и тот же цвет.

В этом примере агент выявил несколько типов проблем, включая необычно высокую скидку в G6, выброс по количеству в E10, отсутствующую дату заказа в B17, отрицательную цену за единицу в F23 и проблемы, связанные с формулами, в столбце «Итого».

Записывая находки обратно в их исходные места, агент позволяет пользователям проверять подозрительные значения в контексте, а не искать их вручную.

Просмотр подробного отчета об аудите

Помимо выделения исходных данных, агент создает лист Audit Report, в котором для каждой находки указаны затронутая ячейка, тип проблемы и пояснение.

Просмотр подробного отчета об аудите

Рисунок 2. Сгенерированный отчет об аудите содержит расположение, тип и пояснение для каждой обнаруженной проблемы.

Отчет включает такие находки, как пропущенные значения, дублирующиеся номера заказов, необычные числовые значения, несогласованные шаблоны данных, отсутствующие формулы и подозрительные результаты вычислений.

Например, агент обнаружил, что:

  • A8 и A13 содержат одинаковый номер заказа.
  • G6 содержит скидку 80 %, которая значительно выше остальных скидок.
  • H13 содержит жестко заданное значение вместо шаблона формулы, используемого в соседних строках.
  • H19 использует сложение вместо вычитания при применении скидки.
  • H30 дает итог, не соответствующий ожидаемому вычислению.

Одна и та же ячейка может встречаться в отчете несколько раз, если она затрагивает несколько измерений аудита. Например, H25 может быть указана как с пропущенным значением, так и с отсутствующей формулой.

Находки, сгенерированные ИИ, следует рассматривать как потенциальные проблемы, а не как окончательные ошибки. Некоторые необычные значения могут представлять собой законные бизнес-исключения. Поэтому лист с выделениями и отчет об аудите служат структурированной отправной точкой для проверки человеком, а не автоматически изменяют исходные данные.

6. Лучшие практики аудита Excel на основе ИИ

Аудит на основе ИИ работает особенно хорошо, когда он применяется вместе с четкими требованиями к аудиту.

Во-первых, обеспечьте достаточный контекст в инструкции. Вместо того чтобы просто просить агента «найти ошибки», укажите типы проблем, которые имеют значение, например дублирующиеся записи, аномальные значения, отсутствующие формулы или несогласованные вычисления.

Во-вторых, различайте детерминированные правила и контекстный анализ. Такие условия, как «Количество никогда не должно быть отрицательным», можно надежно проверять с помощью обычных правил. ИИ более полезен в ситуациях, например, когда нужно выявить значение, которое выглядит несоответствующим окружающим записям, или распознать неожиданный шаблон формулы.

В-третьих, не просите агента автоматически исправлять каждую обнаруженную проблему. Подозрительное значение не обязательно является неправильным. Выделение ячейки и пояснение причины дает пользователям возможность проверить находку, прежде чем вносить изменения.

Для больших книг аудит также можно ограничить конкретными листами или категориями проблем. Это делает задачу более целенаправленной и может сократить ненужную обработку.

Наконец, делайте вывод структурированным. Включение листа, расположения ячейки, типа проблемы и пояснения облегчает проверку находок, сгенерированных ИИ, и их интеграцию в последующие рабочие процессы.

7. Заключение

Аудит электронных таблиц часто включает не только проверку того, пусты ли ячейки или возвращают ли формулы ошибки. Многие проблемы становятся заметными только при совместном рассмотрении значений, формул и окружающих шаблонов данных.

С помощью AI Agent SDK такие требования к аудиту можно описать на естественном языке, вместо того чтобы полностью реализовывать их через жестко заданные правила проверки.

Используя Spire.Agent.Office в C#, рабочий процесс может оставаться относительно простым: загрузить книгу Excel, определить требования к аудиту, выполнить инструкцию и создать новую книгу с выделенными проблемами и структурированным отчетом об аудите.

Этот подход особенно полезен для обнаружения потенциальных аномалий, несогласованных формул, дублирующихся записей, отсутствующей информации и других проблем электронных таблиц, которые могут требовать контекстного анализа.

8. Часто задаваемые вопросы

Может ли ИИ обнаруживать неправильные формулы в Excel?

ИИ может выявлять формулы, которые выглядят несогласованными с соседними формулами, содержат подозрительные ссылки или дают результаты, не соответствующие ожидаемым шаблонам данных. Однако то, является ли формула логически правильной, может зависеть от бизнес-правил, лежащих в основе книги, поэтому обнаруженные проблемы все равно следует проверять.

Можно ли настраивать правила аудита?

Да. Требования к аудиту в первую очередь определяются через инструкцию, отправляемую агенту. Вы можете добавлять правила для конкретных столбцов, листов, диапазонов значений, формул или бизнес-условий.

Например:

"Flag discounts above 50% and orders with a missing customer ID."

Может ли ИИ обнаруживать дублирующиеся записи Excel?

Да. Агенту можно поручить выявлять дублирующиеся идентификаторы, повторяющиеся строки или потенциально дублирующиеся записи на основе нескольких полей.

Для более детерминированного обнаружения дубликатов обычную логику Excel или C# также можно объединить с ИИ-аудитом.

Может ли ИИ автоматически исправлять обнаруженные ошибки?

Агенту можно поручить изменять содержимое книги, но автоматическое исправление каждой обнаруженной аномалии обычно не рекомендуется. Некоторые необычные значения могут быть допустимыми бизнес-исключениями.

Более безопасный рабочий процесс — выделить подозрительные ячейки, объяснить, почему они были отмечены, и позволить пользователям проверить находки, прежде чем вносить исправления.

Можно ли использовать тот же подход для разных типов файлов Excel?

Да. Тот же рабочий процесс можно адаптировать для отчетов о продажах, финансовых таблиц, записей об инвентаризации, операционных отчетов, данных опросов и других структурированных книг Excel. В большинстве случаев нужно скорректировать только инструкцию по аудиту с учетом конкретных данных и бизнес-правил.

Смотрите также

Review Highlighted Issues

Excel workbooks can contain missing values, duplicate records, unusual numbers, and inconsistent formulas that are difficult to detect manually, especially when working with large datasets.

With an AI agent, these issues can be identified through natural-language audit instructions instead of relying entirely on hard-coded validation rules. This article shows how to use Spire.Agent.Office in C# to audit an Excel workbook, identify potential data and formula issues, highlight suspicious cells, and generate a structured audit report.

1. What Is an AI-Powered Excel Audit?

A traditional Excel audit usually relies on predefined validation rules, formulas, or custom code. For example, a program may check whether a required cell is empty, whether a value exceeds a fixed threshold, or whether duplicate IDs exist in a column.

An AI-powered Excel audit adds contextual analysis to this process. Instead of defining every possible condition in code, you can describe the auditing requirements in natural language and let the AI agent examine the workbook for patterns and inconsistencies.

For example, an AI agent can be instructed to look for:

  • Missing or incomplete data
  • Duplicate or suspicious records
  • Unusual numeric values or outliers
  • Inconsistent data patterns
  • Missing formulas
  • Formulas that differ unexpectedly from nearby rows
  • Suspicious calculation results or cell references

This is particularly useful for issues that are difficult to express as simple fixed rules. A value may fall within an acceptable numeric range but still appear unusual compared with surrounding records, while a formula may produce a valid result but use a pattern that differs from neighboring cells.

AI-generated audit findings should generally be treated as potential issues rather than definitive errors. The results can then be highlighted in the workbook and summarized in an audit report for further review.

2. Set Up the C# Project

Create a new C# console application and add the required Spire.Agent.Office package to the project.

The example uses the following namespaces:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

Access to AI functionality requires a valid Spire token. You may apply for a temporary test token via the Spire temporary license page.

The basic configuration is:

AIOptions options = new AIOptions();
options.SpireToken = "YOUR_SPIRE_TOKEN";

The examples below use an Excel workbook named:

SalesData.xlsx

The workbook can contain one or multiple worksheets with sales records, formulas, dates, quantities, prices, discounts, or other business data.

3. Prepare the Excel Workbook for Auditing

The first step is to load the workbook with Workbook.

Workbook workbook = new Workbook();
workbook.LoadFromFile("SalesData.xlsx");

Because the workbook is passed directly to the AI-enabled document processor, there is no need to manually convert every worksheet, cell value, or formula into plain text.

The agent can work with the spreadsheet as a structured Office document and inspect information such as:

  • Worksheet contents
  • Cell values
  • Formulas
  • Rows and columns
  • Data patterns
  • Relationships between nearby cells

For example, a sales worksheet might contain data similar to the following:

Order ID Date Product Quantity Unit Price Discount Total
ORD-1001 2026-08-01 Laptop 2 850 0.10 1530
ORD-1002 2026-08-02 Monitor 5 260 0.05 1235
ORD-1003 2026-08-03 Keyboard 10 45 0.10 405
ORD-1004 2026-08-04 Laptop 3 850 0.80 510

The last row may deserve attention because an 80% discount is significantly different from the surrounding records.

Other potential problems could include duplicate order IDs, missing dates, unusual quantities, or a formula that differs from the formulas used in neighboring rows.

4. Build an AI Agent to Audit Excel Workbooks

The main part of the workflow is defining the audit task.

Instead of manually writing separate C# conditions for every possible error, the requirements can be described through a natural-language instruction.

Define Audit Rules and Instructions

For example:

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for:
- Missing or incomplete values
- Duplicate records
- Unusual or suspicious numeric values
- Inconsistent data patterns
- Missing formulas
- Formulas that differ unexpectedly from nearby rows
- Suspicious cell references or calculation results

Do not modify valid source data.

For every detected issue, record:
- Worksheet name
- Cell or range
- Issue type
- Explanation

Highlight problematic cells and create a new worksheet named
'Audit Report' containing the audit results.
";

The instruction defines both what the agent should inspect and how the results should be presented .

This is useful because spreadsheet auditing is often context-dependent. A value of 80 may be completely normal in one column but highly unusual in another. The agent can evaluate the value together with nearby records and the meaning of the data.

Analyze Data and Formula Patterns

After loading the workbook and configuring the AI options, create an AI document processor from the workbook:

AIDocumentProcessor processor = workbook.AI(options);

Then send the audit instruction to the agent:

processor.ExecuteInstruction(
    workbook,
    instruction,
    "AuditedSalesData.xlsx",
    Array.Empty<string>()
);

The complete core code is therefore very short:

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Xls;

string inputPath = "SalesData.xlsx";
string outputPath = "AuditedSalesData.xlsx";
string spireToken = "YOUR_SPIRE_TOKEN";

Workbook workbook = new Workbook();
workbook.LoadFromFile(inputPath);

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

string instruction = @"
Audit this Excel workbook for potential data quality and formula issues.

Check for missing values, duplicate records, unusual numeric values,
inconsistent data patterns, missing formulas, formulas that differ
unexpectedly from nearby rows, and suspicious calculation results.

Do not modify valid source data.

Highlight cells containing potential issues and create a worksheet named
'Audit Report' with the following columns:

Worksheet | Cell | Issue | Explanation
";

AIDocumentProcessor processor = workbook.AI(options);

processor.ExecuteInstruction(
    workbook,
    instruction,
    outputPath,
    Array.Empty<string>()
);

Compared with a conventional Excel validation program, most of the auditing logic is expressed through the instruction rather than a long series of if statements.

Return Structured Audit Results

It is important to tell the agent how the audit results should be organized.

For example:

Worksheet | Cell | Issue | Explanation

A generated audit report may look like this:

Worksheet Cell Issue Explanation
Sales F5 Unusual Value Discount of 80% is significantly higher than surrounding records.
Sales A12 Duplicate Record The order ID also appears in another row.
Sales B18 Missing Value The order date is empty.
Sales G24 Formula Inconsistency The formula differs from the formula pattern used in adjacent rows.

Structured results make the audit easier to review and can also be used for subsequent automated processing.

5. Highlight Detected Issues and Generate an Audit Report

Simply returning a text description of spreadsheet problems is useful, but an audit becomes much easier to review when the findings are written back to the workbook itself.

The instruction can ask the agent to perform two actions:

string outputInstruction = @"
Highlight every cell that contains a potential issue.

Create an 'Audit Report' worksheet and list every issue using these columns:

Worksheet | Cell | Issue | Explanation

Do not change cells that do not contain an identified issue.
";

This produces two levels of output: highlighted findings in the original worksheet and a centralized report containing detailed explanations.

Review Highlighted Issues in the Original Worksheet

In the original worksheet, the agent highlights cells containing potential issues. Findings of the same type use the same highlight color, making it easier to distinguish missing values, duplicate records, unusual numbers, inconsistent data, and formula-related problems.

Review Highlighted Issues

Figure 1. Potential issues highlighted in the original worksheet. The same color is used for findings of the same type.

In this example, the agent identified several types of issues, including the unusually high discount in G6, the quantity outlier in E10, the missing order date in B17, the negative unit price in F23, and formula-related problems in the Total column.

By writing the findings back to their original locations, the agent allows users to review suspicious values in context instead of searching for them manually.

Review the Detailed Audit Report

In addition to highlighting the source data, the agent creates an Audit Report worksheet that lists the affected cell, issue type, and explanation for every finding.

Review the Detailed Audit Report

Figure 2. The generated Audit Report provides the location, type, and explanation of each detected issue.

The report includes findings such as missing values, duplicate order IDs, unusual numeric values, inconsistent data patterns, missing formulas, and suspicious calculation results.

For example, the agent detected that:

  • A8 and A13 contain the same order ID.
  • G6 contains an 80% discount, which is significantly higher than the other discounts.
  • H13 contains a hardcoded value instead of the formula pattern used in nearby rows.
  • H19 uses addition instead of subtraction when applying the discount.
  • H30 produces a total that does not match the expected calculation.

A single cell may appear more than once in the report when it involves multiple audit dimensions. For example, H25 can be reported both as a missing value and as a missing formula.

AI-generated findings should be treated as potential issues rather than definitive errors. Some unusual values may represent legitimate business exceptions. The highlighted worksheet and audit report therefore provide a structured starting point for human review rather than automatically changing the underlying data.

6. Best Practices for AI-Powered Excel Auditing

AI-based auditing works particularly well when it is used together with clear audit requirements.

First, provide enough context in the instruction. Instead of asking the agent to simply "find errors," specify the types of issues that matter, such as duplicate records, abnormal values, missing formulas, or inconsistent calculations.

Second, distinguish between deterministic rules and contextual analysis. Conditions such as "Quantity must never be negative" can be checked reliably with conventional rules. AI is more useful for situations such as identifying a value that appears inconsistent with surrounding records or recognizing an unexpected formula pattern.

Third, avoid asking the agent to automatically correct every detected issue. A suspicious value is not necessarily an incorrect value. Highlighting the cell and explaining the reason gives users an opportunity to verify the finding before making changes.

For large workbooks, the audit can also be narrowed to specific worksheets or categories of problems. This makes the task more focused and can reduce unnecessary processing.

Finally, make the output structured. Including the worksheet, cell location, issue type, and explanation makes AI-generated findings easier to verify and integrate into subsequent workflows.

7. Conclusion

Spreadsheet auditing often involves more than checking whether cells are empty or formulas return errors. Many problems only become visible when values, formulas, and surrounding data patterns are considered together.

With an AI Agent SDK, these auditing requirements can be described in natural language instead of being implemented entirely through hard-coded validation rules.

Using Spire.Agent.Office in C#, the workflow can remain relatively simple: load the Excel workbook, define the auditing requirements, execute the instruction, and generate a new workbook containing highlighted issues and a structured audit report.

This approach is particularly useful for detecting potential anomalies, inconsistent formulas, duplicated records, missing information, and other spreadsheet issues that may require contextual analysis.

8. FAQs

Can AI detect incorrect formulas in Excel?

AI can identify formulas that appear inconsistent with nearby formulas, contain suspicious references, or produce results that do not match expected data patterns. However, whether a formula is logically correct may depend on the business rules behind the workbook, so detected issues should still be reviewed.

Can the audit rules be customized?

Yes. The auditing requirements are primarily defined through the instruction sent to the agent. You can add rules for specific columns, worksheets, value ranges, formulas, or business conditions.

For example:

"Flag discounts above 50% and orders with a missing customer ID."

Can AI detect duplicate Excel records?

Yes. The agent can be instructed to identify duplicated IDs, repeated rows, or potentially duplicated records based on multiple fields.

For more deterministic duplicate detection, conventional Excel or C# logic can also be combined with the AI audit.

Can AI automatically fix the detected errors?

The agent can be instructed to modify workbook content, but automatically correcting every detected anomaly is usually not recommended. Some unusual values may be valid business exceptions.

A safer workflow is to highlight suspicious cells, explain why they were flagged, and let users review the findings before applying corrections.

Can the same approach be used for different types of Excel files?

Yes. The same workflow can be adapted to sales reports, financial spreadsheets, inventory records, operational reports, survey data, and other structured Excel workbooks. In most cases, only the audit instruction needs to be adjusted for the specific data and business rules.

See Also

C# Implementation of AI Document Redaction with Format Preservation

Documentos usados em atendimento ao cliente, finanças, recursos humanos e fluxos de trabalho jurídicos frequentemente contêm nomes, endereços de e-mail, números de telefone, endereços residenciais, números de contas e outras informações sensíveis. Antes que esses arquivos possam ser compartilhados, arquivados ou usados para análise, o conteúdo identificador pode precisar ser removido ou substituído.

Programas tradicionais de redação dependem de regras de pesquisa predefinidas e lógica de processamento separada para cada formato de documento. Um SDK de Agente de IA oferece outra abordagem: os desenvolvedores podem descrever o requisito de redação em linguagem natural, permitindo que o agente identifique informações sensíveis e modifique os elementos correspondentes do documento do Office. Este artigo demonstra como redigir arquivos do Word, Excel e PowerPoint em C# preservando sua estrutura e formatação originais.

O que é Redação de Documentos?

A redação de documentos é o processo de remover ou substituir informações que não devem ser divulgadas. Alvos comuns de redação incluem:

  • Nomes pessoais
  • Endereços de e-mail
  • Números de telefone e fax
  • Endereços residenciais ou de correspondência
  • Datas de nascimento
  • Identificadores de clientes e funcionários
  • Números bancários e de contas
  • Outras informações confidenciais ou de identificação pessoal

Para arquivos editáveis do Office, a redação envolve mais do que alterar texto simples. Conteúdo sensível pode aparecer em parágrafos e tabelas do Word, células do Excel, formas do PowerPoint, cabeçalhos, rodapés ou outros elementos do documento. Um fluxo de trabalho de redação útil deve remover o valor detectado sem alterar desnecessariamente o layout, os estilos, as imagens, os gráficos ou a estrutura do documento ao redor.

Três Maneiras de Redigir Documentos do Office em C#

Existem três abordagens gerais de implementação: APIs tradicionais de documentos, uma integração direta com LLM e um SDK de Agente de IA.

Redação Tradicional Baseada em API

Uma implementação tradicional normalmente começa com substituição exata de texto ou expressões regulares. Por exemplo, o Spire.Doc for .NET fornece APIs para localizar e substituir texto em documentos do Word.

O pseudocódigo simplificado a seguir ilustra um fluxo de trabalho de redação baseado em regras. Ele é intencionalmente incompleto e mostra apenas as principais responsabilidades que a aplicação precisaria tratar.

Document document = new Document();
document.LoadFromFile("Input.docx");

// Patterns must be defined and maintained by the developer.
Regex emailPattern = new Regex("...");
Regex phonePattern = new Regex("...");
Regex accountPattern = new Regex("...");

document.Replace(emailPattern, "[REDACTED]");
document.Replace(phonePattern, "[REDACTED]");
document.Replace(accountPattern, "[REDACTED]");

// Additional logic may still be required for different content containers.
foreach (Section section in document.Sections)
{
    ProcessParagraphs(section);
    ProcessTables(section.Tables);
    ProcessHeadersAndFooters(section.HeadersFooters);
    ProcessTextBoxes(section);
}

document.SaveToFile("Redacted.docx", FileFormat.Docx);

Esta abordagem funciona bem quando os valores sensíveis seguem padrões previsíveis. Endereços de e-mail, números de telefone e números de identificação padronizados geralmente podem ser encontrados com expressões regulares.

A dificuldade aumenta quando a informação depende do contexto. Um programa pode precisar determinar se uma palavra é o nome de uma pessoa, se um número é um número de conta ou um número de fatura, e se um local é um endereço privado ou um endereço público de empresa. Os desenvolvedores também devem adicionar lógica diferente de travessia e substituição para Word, Excel e PowerPoint.

Integração Direta com LLM

Um modelo de linguagem de grande porte pode compreender o contexto de forma mais eficaz do que uma coleção de expressões regulares. Por exemplo, ele pode reconhecer o nome de uma pessoa em uma frase mesmo quando o nome não segue um padrão previsível.

No entanto, um LLM não fornece automaticamente o processamento completo de documentos do Office. Uma integração direta geralmente exige que a aplicação:

  1. Extraia texto de cada elemento relevante do documento.
  2. Divida o conteúdo em solicitações adequadas.
  3. Envie o texto extraído para o modelo.
  4. Mapeie os resultados do modelo de volta para os parágrafos, células ou formas originais.
  5. Substitua o conteúdo sensível sem perder sua formatação.
  6. Salve o arquivo modificado em seu formato original.

Se o documento for convertido em texto simples antes de ser enviado ao modelo, informações sobre tabelas, intervalos de texto, fontes, alinhamento e outras propriedades de layout podem ser perdidas. O desenvolvedor, portanto, permanece responsável por conectar os resultados semânticos do modelo ao modelo de objetos do documento do Office.

SDK de Agente de IA

Um SDK de Agente de IA combina compreensão de linguagem natural com recursos de processamento de documentos. Em vez de definir cada regra de detecção e coordenar manualmente cada etapa de substituição, o desenvolvedor fornece o documento e descreve o resultado pretendido.

O Spire.Agent.Office usa os recursos subjacentes do Spire.Office for .NET para trabalhar com objetos do Word, Excel e PowerPoint. Em um documento do Word, por exemplo, a camada de processamento pode acessar seções, parágrafos, intervalos de texto, tabelas, células, cabeçalhos, rodapés, imagens, hiperlinks e sua formatação. O modelo identifica o conteúdo sensível, enquanto as APIs de documento modificam os elementos correspondentes.

Esse processamento em nível de objeto é o que torna possível substituir texto mantendo a estrutura e os estilos ao redor do documento.

API Tradicional vs. LLM vs. SDK de Agente de IA

Abordagem Detecção contextual Preservação de formato Implementação multiformato Esforço de desenvolvimento Mais adequado para
API tradicional e expressões regulares Limitada, a menos que lógica adicional de NLP seja adicionada Forte e controlável Normalmente é necessária lógica separada Alto Padrões fixos e regras altamente determinísticas
API do Office com chamadas diretas a LLM Forte Deve ser implementada pelo desenvolvedor É necessária lógica de extração e gravação de volta para cada formato Muito alto Pipelines de IA totalmente personalizados
SDK de Agente de IA Forte Tratada por meio de processamento ciente do documento Uma instrução comum pode ser aplicada a vários formatos do Office Menor Redação sensível ao contexto com menos código de orquestração

A abordagem tradicional continua útil quando cada alvo de redação segue um padrão conhecido e a aplicação exige comportamento estritamente determinístico. A abordagem do SDK de Agente torna-se mais atraente quando os documentos contêm informações variadas e contextuais ou quando o mesmo fluxo de trabalho deve suportar vários formatos do Office.

Configurar o Projeto C#

Crie um aplicativo de console em C# e adicione o Spire.Agent.Office e suas dependências necessárias ao projeto. Você também precisará de um SpireToken válido para processamento de IA.

O exemplo abaixo oferece suporte aos seguintes formatos:

  • Word: DOC e DOCX
  • Excel: XLS e XLSX
  • PowerPoint: PPT e PPTX

PDF não está incluído neste exemplo.

Redigir Documentos do Word, Excel e PowerPoint com um Agente de IA

O código a seguir determina o formato de origem a partir de sua extensão, carrega o objeto de documento do Office apropriado e passa a mesma instrução de redação ao processador de IA.

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Presentation;
using Spire.Doc;
using Spire.Xls;

string inputPath = @"E:\Documents\Input.docx";
string outputPath = @"E:\Documents\Redacted.docx";
string spireToken = "your spireToken";

string instruction = """
Find personal information such as names, email addresses, phone numbers, addresses, 
account numbers, and other sensitive information. Replace the detected content with 
“[REDACTED]” while preserving the original document structure and formatting.
""";

// Configure the AI processing options
AIOptions options = new AIOptions();
options.SpireToken = spireToken;

// Select the appropriate document object according to the file extension
string extension = Path.GetExtension(inputPath).ToLower();

if (extension == ".doc" || extension == ".docx")
{
    using (Document document = new Document())
    {
        document.LoadFromFile(inputPath);
        AIDocumentProcessor processor = document.AI(options);
        processor.ExecuteInstruction(
            document,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".xls" || extension == ".xlsx")
{
    using (Workbook workbook = new Workbook())
    {
        workbook.LoadFromFile(inputPath);
        AIDocumentProcessor processor = workbook.AI(options);
        processor.ExecuteInstruction(
            workbook,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".ppt" || extension == ".pptx")
{
    using (Presentation presentation = new Presentation())
    {
        presentation.LoadFromFile(inputPath);
        AIDocumentProcessor processor = presentation.AI(options);
        processor.ExecuteInstruction(
            presentation,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}

Se os usings globais implícitos estiverem desabilitados em seu projeto, adicione também using System; e using System.IO; para Array e Path.

Definir a Entrada, a Saída e a Instrução

inputPath especifica o documento de origem, enquanto outputPath especifica onde o arquivo redigido será salvo. As extensões de entrada e saída devem corresponder para que o resultado permaneça no formato original.

A instrução em linguagem natural define tanto o escopo de detecção quanto a modificação necessária. Neste exemplo, o agente procura tipos comuns de informações pessoais e os substitui por [REDACTED].

Você pode ajustar a instrução para um fluxo de trabalho mais restrito. Por exemplo:

Find email addresses, phone numbers, and customer account numbers. Replace each detected value with “[REDACTED]”. Do not redact company names, product names, invoice numbers, or dates. Preserve the original layout and formatting.

Adicionar exclusões explícitas pode reduzir falsos positivos quando um documento contém identificadores comerciais que se assemelham a números de contas pessoais.

Configurar o Processamento de IA

AIOptions armazena o SpireToken usado pelo serviço de processamento de IA:

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

O mesmo objeto de opções pode ser usado com a instância de documento do Word, Excel ou PowerPoint.

Selecionar o Tipo de Documento Apropriado

O programa lê a extensão do arquivo e cria o objeto correspondente:

  • Document para arquivos do Word
  • Workbook para arquivos do Excel
  • Presentation para arquivos do PowerPoint

Cada objeto expõe o método de extensão AI(). Isso retorna um AIDocumentProcessor, que executa a instrução em linguagem natural no documento carregado.

A matriz de anexos vazia indica que a instrução não requer nenhum arquivo de suporte:

processor.ExecuteInstruction(
    document,
    instruction,
    outputPath,
    Array.Empty<string>());

Resultado da Redação

No documento de teste do Word, informações sensíveis apareceram em parágrafos normais, em uma tabela de informações do cliente e no rodapé da página. Após o processamento, os nomes, endereços de e-mail, números de telefone, endereços e informações de conta foram substituídos por [REDACTED].

A estrutura da tabela, a formatação dos parágrafos, os títulos, as cores e o layout do rodapé permaneceram no lugar. Esse resultado é importante porque demonstra que o fluxo de trabalho não simplesmente extrai o documento como texto simples e o reconstrói do zero. Ele modifica os elementos relevantes do documento enquanto mantém sua estrutura ao redor.

Original Word document vs. Redacted Version

Considerações Importantes para Redação com IA

Revise o Resultado Antes de Compartilhar

A redação com IA não é perfeitamente determinística. Um modelo pode deixar passar um identificador incomum ou classificar incorretamente conteúdo comum como sensível. Documentos destinados à distribuição externa devem ser revisados após o processamento, especialmente em fluxos de trabalho jurídicos, financeiros, de saúde ou sensíveis à conformidade.

Torne a Instrução Específica

A instrução deve descrever tanto o que deve ser removido quanto o que deve permanecer. Se números de fatura, nomes de empresas, códigos de produtos ou endereços públicos de escritórios não devem ser redigidos, declare essas exclusões explicitamente.

A Substituição Visível Nem Sempre é uma Sanitização Completa

Substituir o texto visível não remove necessariamente todas as cópias da informação do arquivo. Dados sensíveis também podem aparecer em:

  • Comentários e alterações controladas
  • Propriedades do documento e metadados
  • Planilhas ocultas ou slides ocultos
  • Notas do orador do PowerPoint
  • Arquivos e objetos incorporados
  • Imagens contendo texto
  • Versões anteriores ou cópias de backup

Para fluxos de trabalho de alta segurança, esses locais devem ser inspecionados separadamente. Se um documento contiver páginas digitalizadas ou capturas de tela, pode ser necessário OCR antes que o texto dentro das imagens possa ser avaliado.

Preserve o Arquivo Original

Salve o resultado redigido em um novo caminho em vez de sobrescrever o documento de origem. Manter os arquivos separados facilita comparar a saída, investigar conteúdo não detectado e repetir o processo com uma instrução aprimorada.

Conclusão

A redação tradicional baseada em API oferece controle preciso, mas os desenvolvedores devem definir regras de detecção e manter lógica de travessia separada para diferentes formatos de documento e contêineres de conteúdo. A integração direta com LLM melhora o reconhecimento contextual, mas ainda exige uma camada substancial de extração, mapeamento e gravação de volta para preservar a formatação do Office.

Um SDK de Agente de IA reúne essas capacidades. Com uma única instrução em linguagem natural e uma pequena quantidade de código C#, o mesmo fluxo de trabalho pode processar arquivos do Word, Excel e PowerPoint, identificar informações sensíveis contextuais e substituí-las dentro da estrutura do documento original. O resultado ainda deve ser revisado, mas a implementação é consideravelmente mais simples do que construir manualmente todo o pipeline de detecção e orquestração de documentos.

Perguntas Frequentes

O mesmo código pode redigir arquivos do Word, Excel e PowerPoint?

Sim. O exemplo seleciona Document, Workbook ou Presentation de acordo com a extensão do arquivo de entrada e aplica a mesma instrução em linguagem natural a cada formato.

O Agente de IA preserva a formatação original?

O agente trabalha com os objetos subjacentes do documento do Office, permitindo que o texto sensível seja substituído em parágrafos, células, tabelas e formas, mantendo a estrutura e a formatação ao redor. A saída final ainda deve ser verificada, pois layouts extraordinariamente complexos podem exigir verificação adicional.

Posso usar um rótulo de redação diferente?

Sim. Altere [REDACTED] na instrução para outro rótulo, como [PRIVATE], [REMOVED] ou um valor específico de categoria como [EMAIL REDACTED].

Quando uma API tradicional é melhor que a redação com IA?

Uma API tradicional pode ser preferível quando cada valor sensível segue um padrão fixo, as regras raramente mudam e o resultado deve ser completamente determinístico. A substituição por expressões regulares geralmente é suficiente para endereços de e-mail padronizados, números de telefone ou números de identificação.

A substituição de texto garante que o documento é seguro para publicação?

Não. A substituição de texto visível não remove automaticamente comentários, alterações controladas, metadados, conteúdo oculto, objetos incorporados, texto dentro de imagens ou versões anteriores do arquivo. Documentos sensíveis à segurança exigem inspeção e validação adicionais antes da publicação.

Veja Também

C# Implementation of AI Document Redaction with Format Preservation

고객 서비스, 금융, 인사 및 법무 워크플로에서 사용되는 문서에는 이름, 이메일 주소, 전화번호, 집 주소, 계좌 번호 및 기타 민감한 정보가 포함되는 경우가 많습니다. 이러한 파일을 공유, 보관 또는 분석에 사용하기 전에 식별 가능한 콘텐츠를 제거하거나 교체해야 할 수 있습니다.

전통적인 마스킹 프로그램은 미리 정의된 검색 규칙과 각 문서 형식에 대한 별도의 처리 로직에 의존합니다. AI 에이전트 SDK는 또 다른 접근 방식을 제공합니다. 개발자는 자연어로 마스킹 요구 사항을 설명할 수 있으며, 에이전트가 민감한 정보를 식별하고 해당 Office 문서 요소를 수정할 수 있습니다. 이 문서에서는 원래 구조와 서식을 유지하면서 C#에서 Word, Excel 및 PowerPoint 파일을 마스킹하는 방법을 보여 줍니다.

문서 마스킹이란 무엇인가?

문서 마스킹은 공개해서는 안 되는 정보를 제거하거나 교체하는 프로세스입니다. 일반적인 마스킹 대상은 다음과 같습니다.

  • 개인 이름
  • 이메일 주소
  • 전화 및 팩스 번호
  • 집 또는 우편 주소
  • 생년월일
  • 고객 및 직원 식별자
  • 은행 및 계좌 번호
  • 기타 기밀 정보 또는 개인 식별 정보

편집 가능한 Office 파일의 경우 마스킹은 단순 텍스트 변경 이상을 포함합니다. 민감한 콘텐츠는 Word 단락과 표, Excel 셀, PowerPoint 도형, 머리글, 바닥글 또는 기타 문서 요소에 나타날 수 있습니다. 유용한 마스킹 워크플로는 주변 레이아웃, 스타일, 이미지, 차트 또는 문서 구조를 불필요하게 변경하지 않으면서 탐지된 값을 제거해야 합니다.

C#에서 Office 문서를 마스킹하는 세 가지 방법

일반적인 구현 접근 방식에는 전통적인 문서 API, 직접 LLM 통합, AI 에이전트 SDK의 세 가지가 있습니다.

전통적인 API 기반 마스킹

전통적인 구현은 일반적으로 정확한 텍스트 교체 또는 정규식으로 시작합니다. 예를 들어, Spire.Doc for .NET은 Word 문서에서 텍스트 찾기 및 바꾸기를 위한 API를 제공합니다.

다음의 단순화된 의사 코드는 규칙 기반 마스킹 워크플로를 보여 줍니다. 의도적으로 불완전하며 애플리케이션이 처리해야 하는 주요 책임만 보여 줍니다.

Document document = new Document();
document.LoadFromFile("Input.docx");

// Patterns must be defined and maintained by the developer.
Regex emailPattern = new Regex("...");
Regex phonePattern = new Regex("...");
Regex accountPattern = new Regex("...");

document.Replace(emailPattern, "[REDACTED]");
document.Replace(phonePattern, "[REDACTED]");
document.Replace(accountPattern, "[REDACTED]");

// Additional logic may still be required for different content containers.
foreach (Section section in document.Sections)
{
    ProcessParagraphs(section);
    ProcessTables(section.Tables);
    ProcessHeadersAndFooters(section.HeadersFooters);
    ProcessTextBoxes(section);
}

document.SaveToFile("Redacted.docx", FileFormat.Docx);

이 접근 방식은 민감한 값이 예측 가능한 패턴을 따를 때 잘 작동합니다. 이메일 주소, 전화번호 및 표준화된 식별 번호는 종종 정규식으로 찾을 수 있습니다.

정보가 컨텍스트에 의존할 때 난이도가 높아집니다. 프로그램은 단어가 사람 이름인지, 숫자가 계좌 번호인지 송장 번호인지, 위치가 개인 주소인지 공개 회사 주소인지 판단해야 할 수 있습니다. 또한 개발자는 Word, Excel 및 PowerPoint에 대해 서로 다른 순회 및 교체 로직을 추가해야 합니다.

직접 LLM 통합

대규모 언어 모델은 정규식 모음보다 컨텍스트를 더 효과적으로 이해할 수 있습니다. 예를 들어, 이름이 예측 가능한 패턴을 따르지 않더라도 문장에서 사람 이름을 인식할 수 있습니다.

그러나 LLM은 완전한 Office 문서 처리를 자동으로 제공하지 않습니다. 직접 통합은 일반적으로 애플리케이션이 다음을 수행해야 합니다.

  1. 모든 관련 문서 요소에서 텍스트를 추출합니다.
  2. 콘텐츠를 적절한 요청으로 나눕니다.
  3. 추출된 텍스트를 모델로 보냅니다.
  4. 모델의 결과를 원래 단락, 셀 또는 도형에 다시 매핑합니다.
  5. 서식을 잃지 않고 민감한 콘텐츠를 교체합니다.
  6. 수정된 파일을 원래 형식으로 저장합니다.

문서가 모델로 전송되기 전에 일반 텍스트로 변환되면 표, 텍스트 범위, 글꼴, 정렬 및 기타 레이아웃 속성에 대한 정보가 손실될 수 있습니다. 따라서 개발자는 모델의 의미론적 결과를 Office 문서 개체 모델에 연결할 책임이 있습니다.

AI 에이전트 SDK

AI 에이전트 SDK는 자연어 이해와 문서 처리 기능을 결합합니다. 모든 탐지 규칙을 정의하고 모든 교체 단계를 수동으로 조정하는 대신, 개발자는 문서를 제공하고 원하는 결과를 설명합니다.

Spire.Agent.Office는 Spire.Office for .NET의 기본 기능을 사용하여 Word, Excel 및 PowerPoint 개체와 작업합니다. 예를 들어 Word 문서에서 처리 계층은 섹션, 단락, 텍스트 범위, 표, 셀, 머리글, 바닥글, 이미지, 하이퍼링크 및 해당 서식에 액세스할 수 있습니다. 모델은 민감한 콘텐츠를 식별하고 문서 API는 해당 요소를 수정합니다.

이러한 개체 수준 처리를 통해 문서의 주변 구조와 스타일을 유지하면서 텍스트를 교체할 수 있습니다.

전통적 API vs. LLM vs. AI 에이전트 SDK

접근 방식 컨텍스트 탐지 서식 보존 다중 형식 구현 개발 노력 적합한 용도
전통적 API 및 정규식 추가 NLP 로직을 추가하지 않으면 제한적 강력하고 제어 가능 일반적으로 별도 로직 필요 높음 고정 패턴 및 매우 결정적인 규칙
직접 LLM 호출을 사용하는 Office API 강력함 개발자가 구현해야 함 각 형식에 대해 추출 및 쓰기 되돌리기 로직 필요 매우 높음 완전히 사용자 지정된 AI 파이프라인
AI 에이전트 SDK 강력함 문서 인식 처리를 통해 처리됨 공통 지침을 여러 Office 형식에 적용 가능 낮음 적은 오케스트레이션 코드로 컨텍스트 인식 마스킹

전통적인 접근 방식은 모든 마스킹 대상이 알려진 패턴을 따르고 애플리케이션이 엄격하게 결정적인 동작을 요구할 때 여전히 유용합니다. Agent SDK 접근 방식은 문서에 다양하고 상황에 맞는 정보가 포함되어 있거나 동일한 워크플로가 여러 Office 형식을 지원해야 할 때 더 매력적입니다.

C# 프로젝트 설정

C# 콘솔 애플리케이션을 만들고 Spire.Agent.Office 및 필요한 종속성을 프로젝트에 추가합니다. 또한 AI 처리를 위한 유효한 SpireToken이 필요합니다.

아래 예제는 다음 형식을 지원합니다.

  • Word: DOC 및 DOCX
  • Excel: XLS 및 XLSX
  • PowerPoint: PPT 및 PPTX

PDF는 이 예제에 포함되지 않습니다.

AI 에이전트로 Word, Excel 및 PowerPoint 문서 마스킹

다음 코드는 확장자에서 원본 형식을 확인하고 적절한 Office 문서 개체를 로드한 후 동일한 마스킹 지침을 AI 프로세서에 전달합니다.

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Presentation;
using Spire.Doc;
using Spire.Xls;

string inputPath = @"E:\Documents\Input.docx";
string outputPath = @"E:\Documents\Redacted.docx";
string spireToken = "your spireToken";

string instruction = """
Find personal information such as names, email addresses, phone numbers, addresses, 
account numbers, and other sensitive information. Replace the detected content with 
“[REDACTED]” while preserving the original document structure and formatting.
""";

// Configure the AI processing options
AIOptions options = new AIOptions();
options.SpireToken = spireToken;

// Select the appropriate document object according to the file extension
string extension = Path.GetExtension(inputPath).ToLower();

if (extension == ".doc" || extension == ".docx")
{
    using (Document document = new Document())
    {
        document.LoadFromFile(inputPath);
        AIDocumentProcessor processor = document.AI(options);
        processor.ExecuteInstruction(
            document,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".xls" || extension == ".xlsx")
{
    using (Workbook workbook = new Workbook())
    {
        workbook.LoadFromFile(inputPath);
        AIDocumentProcessor processor = workbook.AI(options);
        processor.ExecuteInstruction(
            workbook,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".ppt" || extension == ".pptx")
{
    using (Presentation presentation = new Presentation())
    {
        presentation.LoadFromFile(inputPath);
        AIDocumentProcessor processor = presentation.AI(options);
        processor.ExecuteInstruction(
            presentation,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}

프로젝트에서 암시적 전역 using이 비활성화된 경우 Array 및 Path를 위해 using System; 및 using System.IO;도 추가하세요.

입력, 출력 및 지침 정의

inputPath는 원본 문서를 지정하고, outputPath는 마스킹된 파일이 저장될 위치를 지정합니다. 결과가 원래 형식으로 유지되도록 입력 및 출력 확장자가 일치해야 합니다.

자연어 지침은 탐지 범위와 필요한 수정 사항을 모두 정의합니다. 이 예제에서 에이전트는 일반적인 유형의 개인 정보를 검색하고 이를 [REDACTED]로 교체합니다.

더 좁은 워크플로에 맞게 지침을 조정할 수 있습니다. 예를 들어:

Find email addresses, phone numbers, and customer account numbers. Replace each detected value with “[REDACTED]”. Do not redact company names, product names, invoice numbers, or dates. Preserve the original layout and formatting.

문서에 개인 계좌 번호와 유사한 비즈니스 식별자가 포함된 경우 명시적 제외를 추가하면 오탐을 줄일 수 있습니다.

AI 처리 구성

AIOptions는 AI 처리 서비스에서 사용하는 SpireToken을 저장합니다:

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

동일한 옵션 개체를 Word, Excel 또는 PowerPoint 문서 인스턴스와 함께 사용할 수 있습니다.

적절한 문서 유형 선택

프로그램은 파일 확장자를 읽고 해당 개체를 만듭니다:

  • Word 파일의 경우 Document
  • Excel 파일의 경우 Workbook
  • PowerPoint 파일의 경우 Presentation

각 개체는 AI() 확장 메서드를 노출합니다. 이는 로드된 문서에 대해 자연어 지침을 실행하는 AIDocumentProcessor를 반환합니다.

빈 첨부 파일 배열은 지침에 지원 파일이 필요하지 않음을 나타냅니다:

processor.ExecuteInstruction(
    document,
    instruction,
    outputPath,
    Array.Empty<string>());

마스킹 결과

Word 테스트 문서에서 민감한 정보는 일반 단락, 고객 정보 표 및 페이지 바닥글에 나타났습니다. 처리 후 이름, 이메일 주소, 전화번호, 주소 및 계좌 정보가 [REDACTED]로 교체되었습니다.

표 구조, 단락 서식, 제목, 색상 및 바닥글 레이아웃은 그대로 유지되었습니다. 이 결과는 워크플로가 문서를 단순히 일반 텍스트로 추출한 후 처음부터 다시 작성하는 것이 아님을 보여 주기 때문에 중요합니다. 주변 구조를 유지하면서 관련 문서 요소를 수정합니다.

Original Word document vs. Redacted Version

AI 마스킹 시 중요한 고려 사항

공유하기 전에 결과 검토

AI 마스킹은 완벽하게 결정적이지 않습니다. 모델이 드문 식별자를 놓치거나 일반 콘텐츠를 민감한 정보로 잘못 분류할 수 있습니다. 외부 배포용 문서는 처리 후 검토해야 하며, 특히 법률, 금융, 의료 또는 규정 준수에 민감한 워크플로에서는 더욱 그렇습니다.

지침을 구체적으로 작성

지침은 제거해야 할 항목과 유지해야 할 항목을 모두 설명해야 합니다. 송장 번호, 회사 이름, 제품 코드 또는 공공 기관 주소를 마스킹하지 않아야 한다면 해당 제외 항목을 명시적으로 기재하세요.

표시되는 교체가 항상 완전한 정리인 것은 아님

표시되는 텍스트를 교체한다고 해서 파일에서 해당 정보의 모든 복사본이 반드시 제거되는 것은 아닙니다. 민감한 데이터는 다음에도 나타날 수 있습니다.

  • 주석 및 변경 내용 추적
  • 문서 속성 및 메타데이터
  • 숨겨진 워크시트 또는 숨겨진 슬라이드
  • PowerPoint 발표자 노트
  • 포함된 파일 및 개체
  • 텍스트가 포함된 이미지
  • 이전 버전 또는 백업 복사본

고보안 워크플로의 경우 이러한 위치를 별도로 검사해야 합니다. 문서에 스캔한 페이지나 스크린샷이 포함된 경우 이미지 내부의 텍스트를 평가하기 전에 OCR이 필요할 수 있습니다.

원본 파일 보존

원본 문서를 덮어쓰지 말고 마스킹된 결과를 새 경로에 저장하세요. 파일을 별도로 유지하면 출력을 비교하고, 누락된 콘텐츠를 조사하고, 개선된 지침으로 프로세스를 반복하기가 더 쉽습니다.

결론

전통적인 API 기반 마스킹은 정밀한 제어를 제공하지만, 개발자는 탐지 규칙을 정의하고 다양한 문서 형식과 콘텐츠 컨테이너에 대해 별도의 순회 로직을 유지해야 합니다. 직접 LLM 통합은 컨텍스트 인식을 개선하지만, Office 서식을 보존하기 위해 상당한 추출, 매핑 및 쓰기 되돌리기 계층이 여전히 필요합니다.

AI 에이전트 SDK는 이러한 기능을 하나로 모읍니다. 하나의 자연어 지침과 소량의 C# 코드로 동일한 워크플로가 Word, Excel 및 PowerPoint 파일을 처리하고, 컨텍스트에 맞는 민감한 정보를 식별하며, 원래 문서 구조 내에서 이를 교체할 수 있습니다. 결과는 여전히 검토해야 하지만, 전체 탐지 및 문서 오케스트레이션 파이프라인을 수동으로 구축하는 것보다 구현이 훨씬 간단합니다.

자주 묻는 질문

동일한 코드로 Word, Excel 및 PowerPoint 파일을 마스킹할 수 있나요?

예. 예제는 입력 파일 확장자에 따라 Document, Workbook 또는 Presentation을 선택하고 각 형식에 동일한 자연어 지침을 적용합니다.

AI 에이전트가 원본 서식을 보존하나요?

에이전트는 기본 Office 문서 개체와 함께 작동하므로 주변 구조와 서식을 유지하면서 단락, 셀, 표 및 도형 내의 민감한 텍스트를 교체할 수 있습니다. 매우 복잡한 레이아웃은 추가 확인이 필요할 수 있으므로 최종 출력은 여전히 확인해야 합니다.

다른 마스킹 레이블을 사용할 수 있나요?

예. 지침의 [REDACTED]를 [PRIVATE], [REMOVED] 또는 [EMAIL REDACTED]와 같은 범주별 값으로 변경하세요.

전통적인 API가 AI 마스킹보다 더 나은 경우는 언제인가요?

모든 민감한 값이 고정 패턴을 따르고, 규칙이 거의 변경되지 않으며, 결과가 완전히 결정적이어야 할 때 전통적인 API가 더 바람직할 수 있습니다. 정규식 교체는 표준화된 이메일 주소, 전화번호 또는 식별 번호에 종종 충분합니다.

텍스트를 교체하면 문서를 게시해도 안전한가요?

아니요. 표시되는 텍스트 교체는 주석, 변경 내용 추적, 메타데이터, 숨겨진 콘텐츠, 포함된 개체, 이미지 내부 텍스트 또는 이전 파일 버전을 자동으로 제거하지 않습니다. 보안에 민감한 문서는 게시 전에 추가 검사와 검증이 필요합니다.

참고 항목

Implementazione in C# dell'oscuramento dei documenti tramite AI con conservazione del formato

I documenti utilizzati nei flussi di lavoro dell'assistenza clienti, della finanza, delle risorse umane e del settore legale contengono spesso nomi, indirizzi email, numeri di telefono, indirizzi di casa, numeri di conto e altre informazioni sensibili. Prima che questi file possano essere condivisi, archiviati o utilizzati per l'analisi, potrebbe essere necessario rimuovere o sostituire i contenuti identificativi.

I programmi di oscuramento tradizionali si basano su regole di ricerca predefinite e su una logica di elaborazione separata per ogni formato di documento. Un AI Agent SDK offre un approccio diverso: gli sviluppatori possono descrivere il requisito di oscuramento in linguaggio naturale, consentendo all'agente di identificare le informazioni sensibili e modificare i corrispondenti elementi del documento Office. Questo articolo mostra come oscurare file Word, Excel e PowerPoint in C# preservandone la struttura e la formattazione originali.

Che cos'è l'oscuramento dei documenti?

L'oscuramento dei documenti è il processo di rimozione o sostituzione delle informazioni che non devono essere divulgate. Tra gli obiettivi di oscuramento più comuni vi sono:

  • Nomi di persona
  • Indirizzi email
  • Numeri di telefono e fax
  • Indirizzi di casa o postali
  • Date di nascita
  • Identificativi di clienti e dipendenti
  • Numeri bancari e di conto
  • Altre informazioni riservate o di identificazione personale

Per i file Office modificabili, l'oscuramento comporta più che la semplice modifica del testo normale. I contenuti sensibili possono comparire in paragrafi e tabelle di Word, celle di Excel, forme di PowerPoint, intestazioni, piè di pagina o altri elementi del documento. Un flusso di lavoro di oscuramento utile dovrebbe rimuovere il valore rilevato senza modificare inutilmente il layout circostante, gli stili, le immagini, i grafici o la struttura del documento.

Tre modi per oscurare documenti Office in C#

Esistono tre approcci generali di implementazione: le API tradizionali per i documenti, un'integrazione diretta con un LLM e un AI Agent SDK.

Oscuramento tradizionale basato su API

Un'implementazione tradizionale inizia normalmente con la sostituzione esatta del testo o con espressioni regolari. Ad esempio, Spire.Doc for .NET fornisce API per trovare e sostituire testo nei documenti Word.

Il seguente pseudocodice semplificato illustra un flusso di lavoro di oscuramento basato su regole. È volutamente incompleto e mostra solo le responsabilità principali che l'applicazione dovrebbe gestire.

Document document = new Document();
document.LoadFromFile("Input.docx");

// Patterns must be defined and maintained by the developer.
Regex emailPattern = new Regex("...");
Regex phonePattern = new Regex("...");
Regex accountPattern = new Regex("...");

document.Replace(emailPattern, "[REDACTED]");
document.Replace(phonePattern, "[REDACTED]");
document.Replace(accountPattern, "[REDACTED]");

// Additional logic may still be required for different content containers.
foreach (Section section in document.Sections)
{
    ProcessParagraphs(section);
    ProcessTables(section.Tables);
    ProcessHeadersAndFooters(section.HeadersFooters);
    ProcessTextBoxes(section);
}

document.SaveToFile("Redacted.docx", FileFormat.Docx);

Questo approccio funziona bene quando i valori sensibili seguono schemi prevedibili. Gli indirizzi email, i numeri di telefono e i numeri di identificazione standardizzati possono spesso essere individuati con espressioni regolari.

La difficoltà aumenta quando le informazioni dipendono dal contesto. Un programma potrebbe dover determinare se una parola è il nome di una persona, se un numero è un numero di conto o un numero di fattura e se una località è un indirizzo privato o l'indirizzo pubblico di un'azienda. Gli sviluppatori devono inoltre aggiungere logiche di scansione e sostituzione diverse per Word, Excel e PowerPoint.

Integrazione diretta con un LLM

Un modello linguistico di grandi dimensioni può comprendere il contesto in modo più efficace di un insieme di espressioni regolari. Ad esempio, può riconoscere il nome di una persona in una frase anche quando il nome non segue uno schema prevedibile.

Tuttavia, un LLM non fornisce automaticamente un'elaborazione completa dei documenti Office. Un'integrazione diretta richiede di solito che l'applicazione:

  1. Estragga il testo da ogni elemento rilevante del documento.
  2. Divida il contenuto in richieste adeguate.
  3. Invii il testo estratto al modello.
  4. Riporti i risultati del modello ai paragrafi, alle celle o alle forme originali.
  5. Sostituisca il contenuto sensibile senza perdere la sua formattazione.
  6. Salvi il file modificato nel suo formato originale.

Se il documento viene convertito in testo normale prima di essere inviato al modello, le informazioni su tabelle, intervalli di testo, caratteri, allineamento e altre proprietà di layout potrebbero andare perse. Lo sviluppatore rimane quindi responsabile di collegare i risultati semantici del modello al modello a oggetti del documento Office.

AI Agent SDK

Un AI Agent SDK combina la comprensione del linguaggio naturale con le capacità di elaborazione dei documenti. Invece di definire ogni regola di rilevamento e coordinare manualmente ogni fase di sostituzione, lo sviluppatore fornisce il documento e descrive il risultato desiderato.

Spire.Agent.Office utilizza le capacità di base di Spire.Office for .NET per lavorare con oggetti Word, Excel e PowerPoint. In un documento Word, ad esempio, il livello di elaborazione può accedere a sezioni, paragrafi, intervalli di testo, tabelle, celle, intestazioni, piè di pagina, immagini, collegamenti ipertestuali e alla loro formattazione. Il modello identifica il contenuto sensibile, mentre le API dei documenti modificano gli elementi corrispondenti.

Questa elaborazione a livello di oggetto è ciò che rende possibile sostituire il testo mantenendo la struttura e gli stili circostanti del documento.

API tradizionale vs. LLM vs. AI Agent SDK

Approccio Rilevamento contestuale Conservazione del formato Implementazione multi-formato Impegno di sviluppo Ideale per
API tradizionale ed espressioni regolari Limitato a meno che non venga aggiunta una logica NLP aggiuntiva Solida e controllabile Di norma è richiesta una logica separata Elevato Schemi fissi e regole altamente deterministiche
API Office con chiamate dirette a LLM Elevato Deve essere implementata dallo sviluppatore Sono necessarie logiche di estrazione e riscrittura per ogni formato Molto elevato Pipeline AI completamente personalizzate
AI Agent SDK Elevato Gestita tramite un'elaborazione consapevole del documento Un'istruzione comune può essere applicata a più formati Office Inferiore Oscuramento sensibile al contesto con meno codice di orchestrazione

L'approccio tradizionale rimane utile quando ogni obiettivo di oscuramento segue uno schema noto e l'applicazione richiede un comportamento strettamente deterministico. L'approccio con Agent SDK diventa più interessante quando i documenti contengono informazioni varie e contestuali o quando lo stesso flusso di lavoro deve supportare diversi formati Office.

Configurare il progetto C#

Create un'applicazione console C# e aggiungete al progetto Spire.Agent.Office e le sue dipendenze richieste. Avrete anche bisogno di un SpireToken valido per l'elaborazione AI.

L'esempio seguente supporta i seguenti formati:

  • Word: DOC e DOCX
  • Excel: XLS e XLSX
  • PowerPoint: PPT e PPTX

Il PDF non è incluso in questo esempio.

Oscurare documenti Word, Excel e PowerPoint con un AI Agent

Il codice seguente determina il formato di origine dall'estensione, carica l'oggetto documento Office appropriato e passa la stessa istruzione di oscuramento al processore AI.

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Presentation;
using Spire.Doc;
using Spire.Xls;

string inputPath = @"E:\Documents\Input.docx";
string outputPath = @"E:\Documents\Redacted.docx";
string spireToken = "your spireToken";

string instruction = """
Find personal information such as names, email addresses, phone numbers, addresses, 
account numbers, and other sensitive information. Replace the detected content with 
“[REDACTED]” while preserving the original document structure and formatting.
""";

// Configure the AI processing options
AIOptions options = new AIOptions();
options.SpireToken = spireToken;

// Select the appropriate document object according to the file extension
string extension = Path.GetExtension(inputPath).ToLower();

if (extension == ".doc" || extension == ".docx")
{
    using (Document document = new Document())
    {
        document.LoadFromFile(inputPath);
        AIDocumentProcessor processor = document.AI(options);
        processor.ExecuteInstruction(
            document,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".xls" || extension == ".xlsx")
{
    using (Workbook workbook = new Workbook())
    {
        workbook.LoadFromFile(inputPath);
        AIDocumentProcessor processor = workbook.AI(options);
        processor.ExecuteInstruction(
            workbook,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".ppt" || extension == ".pptx")
{
    using (Presentation presentation = new Presentation())
    {
        presentation.LoadFromFile(inputPath);
        AIDocumentProcessor processor = presentation.AI(options);
        processor.ExecuteInstruction(
            presentation,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}

Se nel vostro progetto gli using globali impliciti sono disabilitati, aggiungete anche using System; e using System.IO; per Array e Path.

Definire input, output e istruzione

inputPath specifica il documento di origine, mentre outputPath specifica dove verrà salvato il file oscurato. Le estensioni di input e output dovrebbero corrispondere, in modo che il risultato rimanga nel formato originale.

L'istruzione in linguaggio naturale definisce sia l'ambito di rilevamento sia la modifica richiesta. In questo esempio, l'agente cerca i tipi più comuni di informazioni personali e li sostituisce con [REDACTED].

Potete adattare l'istruzione per un flusso di lavoro più ristretto. Ad esempio:

Find email addresses, phone numbers, and customer account numbers. Replace each detected value with “[REDACTED]”. Do not redact company names, product names, invoice numbers, or dates. Preserve the original layout and formatting.

Aggiungere esclusioni esplicite può ridurre i falsi positivi quando un documento contiene identificatori aziendali che assomigliano a numeri di conto personali.

Configurare l'elaborazione AI

AIOptions memorizza lo SpireToken utilizzato dal servizio di elaborazione AI:

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

Lo stesso oggetto options può essere utilizzato con l'istanza di documento Word, Excel o PowerPoint.

Selezionare il tipo di documento appropriato

Il programma legge l'estensione del file e crea l'oggetto corrispondente:

  • Document per i file Word
  • Workbook per i file Excel
  • Presentation per i file PowerPoint

Ogni oggetto espone il metodo di estensione AI(). Questo restituisce un AIDocumentProcessor, che esegue l'istruzione in linguaggio naturale sul documento caricato.

L'array di allegati vuoto indica che l'istruzione non richiede alcun file di supporto:

processor.ExecuteInstruction(
    document,
    instruction,
    outputPath,
    Array.Empty<string>());

Risultato dell'oscuramento

Nel documento Word di test, le informazioni sensibili comparivano in paragrafi normali, in una tabella di informazioni sul cliente e nel piè di pagina. Dopo l'elaborazione, i nomi, gli indirizzi email, i numeri di telefono, gli indirizzi e le informazioni sul conto sono stati sostituiti con [REDACTED].

La struttura della tabella, la formattazione dei paragrafi, i titoli, i colori e il layout del piè di pagina sono rimasti invariati. Questo risultato è importante perché dimostra che il flusso di lavoro non si limita a estrarre il documento come testo normale e a ricostruirlo da zero. Modifica gli elementi rilevanti del documento mantenendone la struttura circostante.

Documento Word originale vs. versione oscurata

Considerazioni importanti sull'oscuramento tramite AI

Esaminate il risultato prima di condividerlo

L'oscuramento tramite AI non è perfettamente deterministico. Un modello può tralasciare un identificatore insolito o classificare erroneamente contenuti ordinari come sensibili. I documenti destinati alla distribuzione esterna dovrebbero essere esaminati dopo l'elaborazione, soprattutto nei flussi di lavoro legali, finanziari, sanitari o sensibili alla conformità.

Rendete l'istruzione specifica

L'istruzione dovrebbe descrivere sia ciò che deve essere rimosso sia ciò che deve rimanere. Se i numeri di fattura, i nomi delle aziende, i codici prodotto o gli indirizzi di uffici pubblici non devono essere oscurati, indicate esplicitamente tali esclusioni.

La sostituzione visibile non è sempre una sanificazione completa

Sostituire il testo visibile non rimuove necessariamente ogni copia dell'informazione dal file. I dati sensibili possono comparire anche in:

  • Commenti e modifiche tracciate
  • Proprietà e metadati del documento
  • Fogli di lavoro nascosti o diapositive nascoste
  • Note del relatore di PowerPoint
  • File e oggetti incorporati
  • Immagini contenenti testo
  • Versioni precedenti o copie di backup

Per i flussi di lavoro ad alta sicurezza, queste posizioni dovrebbero essere ispezionate separatamente. Se un documento contiene pagine scansionate o screenshot, potrebbe essere necessario l'OCR prima che il testo all'interno delle immagini possa essere valutato.

Preservate il file originale

Salvate il risultato oscurato in un nuovo percorso invece di sovrascrivere il documento di origine. Mantenere i file separati facilita il confronto dell'output, l'indagine sui contenuti mancanti e la ripetizione del processo con un'istruzione migliorata.

Conclusione

L'oscuramento tradizionale basato su API offre un controllo preciso, ma gli sviluppatori devono definire regole di rilevamento e mantenere logiche di scansione separate per i diversi formati di documento e contenitori di contenuto. L'integrazione diretta con un LLM migliora il riconoscimento contestuale, ma richiede comunque un livello sostanziale di estrazione, mappatura e riscrittura per preservare la formattazione di Office.

Un AI Agent SDK riunisce queste capacità. Con una singola istruzione in linguaggio naturale e una piccola quantità di codice C#, lo stesso flusso di lavoro può elaborare file Word, Excel e PowerPoint, identificare informazioni sensibili contestuali e sostituirle all'interno della struttura originale del documento. Il risultato dovrebbe comunque essere esaminato, ma l'implementazione è notevolmente più semplice rispetto alla costruzione manuale dell'intera pipeline di rilevamento e orchestrazione dei documenti.

Domande frequenti

Lo stesso codice può oscurare file Word, Excel e PowerPoint?

Sì. L'esempio seleziona Document, Workbook o Presentation in base all'estensione del file di input e applica la stessa istruzione in linguaggio naturale a ciascun formato.

L'AI Agent preserva la formattazione originale?

L'agente lavora con gli oggetti sottostanti del documento Office, consentendo di sostituire il testo sensibile all'interno di paragrafi, celle, tabelle e forme mantenendo la struttura e la formattazione circostanti. Il risultato finale dovrebbe comunque essere verificato, poiché layout particolarmente complessi potrebbero richiedere una verifica aggiuntiva.

Posso usare un'etichetta di oscuramento diversa?

Sì. Cambiate [REDACTED] nell'istruzione con un'altra etichetta, ad esempio [PRIVATE], [REMOVED] o un valore specifico per categoria come [EMAIL REDACTED].

Quando un'API tradizionale è preferibile all'oscuramento tramite AI?

Un'API tradizionale può essere preferibile quando ogni valore sensibile segue uno schema fisso, le regole cambiano raramente e il risultato deve essere completamente deterministico. La sostituzione con espressioni regolari è spesso sufficiente per indirizzi email, numeri di telefono o numeri di identificazione standardizzati.

La sostituzione del testo garantisce che il documento sia sicuro da pubblicare?

No. La sostituzione del testo visibile non rimuove automaticamente commenti, modifiche tracciate, metadati, contenuti nascosti, oggetti incorporati, testo all'interno di immagini o versioni precedenti del file. I documenti sensibili alla sicurezza richiedono ispezioni e convalide aggiuntive prima della pubblicazione.

Vedi anche

Implémentation en C# du caviardage de documents par IA avec préservation de la mise en forme

Les documents utilisés dans les workflows du service client, de la finance, des ressources humaines et du juridique contiennent souvent des noms, des adresses e-mail, des numéros de téléphone, des adresses personnelles, des numéros de compte et d'autres informations sensibles. Avant que ces fichiers puissent être partagés, archivés ou utilisés pour analyse, le contenu identifiant peut devoir être supprimé ou remplacé.

Les programmes de caviardage traditionnels s'appuient sur des règles de recherche prédéfinies et une logique de traitement distincte pour chaque format de document. Un SDK d'agent IA offre une autre approche : les développeurs peuvent décrire l'exigence de caviardage en langage naturel, ce qui permet à l'agent d'identifier les informations sensibles et de modifier les éléments correspondants du document Office. Cet article montre comment caviarder des fichiers Word, Excel et PowerPoint en C# tout en préservant leur structure et leur mise en forme d'origine.

Qu'est-ce que le caviardage de documents ?

Le caviardage de documents est le processus consistant à supprimer ou remplacer des informations qui ne doivent pas être divulguées. Les cibles de caviardage courantes comprennent :

  • Noms de personnes
  • Adresses e-mail
  • Numéros de téléphone et de fax
  • Adresses personnelles ou postales
  • Dates de naissance
  • Identifiants de clients et d'employés
  • Numéros bancaires et de compte
  • Autres informations confidentielles ou personnellement identifiables

Pour les fichiers Office modifiables, le caviardage implique davantage qu'une simple modification du texte brut. Le contenu sensible peut apparaître dans les paragraphes et les tableaux Word, les cellules Excel, les formes PowerPoint, les en-têtes, les pieds de page ou d'autres éléments du document. Un flux de travail de caviardage utile doit supprimer la valeur détectée sans modifier inutilement la mise en page environnante, les styles, les images, les graphiques ou la structure du document.

Trois façons de caviarder des documents Office en C#

Il existe trois approches d'implémentation générales : les API documentaires traditionnelles, une intégration directe de LLM, et un SDK d'agent IA.

Caviardage traditionnel basé sur les API

Une implémentation traditionnelle commence normalement par un remplacement de texte exact ou par des expressions régulières. Par exemple, Spire.Doc for .NET fournit des API pour rechercher et remplacer du texte dans des documents Word.

Le pseudocode simplifié suivant illustre un flux de travail de caviardage basé sur des règles. Il est volontairement incomplet et ne montre que les principales responsabilités que l'application devrait gérer.

Document document = new Document();
document.LoadFromFile("Input.docx");

// Patterns must be defined and maintained by the developer.
Regex emailPattern = new Regex("...");
Regex phonePattern = new Regex("...");
Regex accountPattern = new Regex("...");

document.Replace(emailPattern, "[REDACTED]");
document.Replace(phonePattern, "[REDACTED]");
document.Replace(accountPattern, "[REDACTED]");

// Additional logic may still be required for different content containers.
foreach (Section section in document.Sections)
{
    ProcessParagraphs(section);
    ProcessTables(section.Tables);
    ProcessHeadersAndFooters(section.HeadersFooters);
    ProcessTextBoxes(section);
}

document.SaveToFile("Redacted.docx", FileFormat.Docx);

Cette approche fonctionne bien lorsque les valeurs sensibles suivent des motifs prévisibles. Les adresses e-mail, les numéros de téléphone et les numéros d'identification standardisés peuvent souvent être trouvés à l'aide d'expressions régulières.

La difficulté augmente lorsque l'information dépend du contexte. Un programme peut devoir déterminer si un mot est un nom de personne, si un numéro est un numéro de compte ou un numéro de facture, et si un emplacement est une adresse privée ou l'adresse publique d'une entreprise. Les développeurs doivent également ajouter une logique de parcours et de remplacement différente pour Word, Excel et PowerPoint.

Intégration directe d'un LLM

Un grand modèle de langage peut comprendre le contexte plus efficacement qu'un ensemble d'expressions régulières. Par exemple, il peut reconnaître le nom d'une personne dans une phrase même lorsque ce nom ne suit pas un schéma prévisible.

Cependant, un LLM ne fournit pas automatiquement un traitement complet des documents Office. Une intégration directe nécessite généralement que l'application :

  1. Extrait le texte de chaque élément de document pertinent.
  2. Divise le contenu en requêtes appropriées.
  3. Envoie le texte extrait au modèle.
  4. Fasse correspondre les résultats du modèle aux paragraphes, cellules ou formes d'origine.
  5. Remplace le contenu sensible sans perdre sa mise en forme.
  6. Enregistre le fichier modifié dans son format d'origine.

Si le document est converti en texte brut avant d'être envoyé au modèle, les informations sur les tableaux, les plages de texte, les polices, l'alignement et d'autres propriétés de mise en page peuvent être perdues. Le développeur reste donc responsable de la liaison entre les résultats sémantiques du modèle et le modèle objet du document Office.

SDK d'agent IA

Un SDK d'agent IA combine la compréhension du langage naturel avec des capacités de traitement de documents. Au lieu de définir chaque règle de détection et de coordonner manuellement chaque étape de remplacement, le développeur fournit le document et décrit le résultat souhaité.

Spire.Agent.Office s'appuie sur les capacités sous-jacentes de Spire.Office for .NET pour travailler avec les objets Word, Excel et PowerPoint. Dans un document Word, par exemple, la couche de traitement peut accéder aux sections, aux paragraphes, aux plages de texte, aux tableaux, aux cellules, aux en-têtes, aux pieds de page, aux images, aux hyperliens et à leur mise en forme. Le modèle identifie le contenu sensible, tandis que les API documentaires modifient les éléments correspondants.

C'est ce traitement au niveau des objets qui permet de remplacer du texte tout en conservant la structure et les styles environnants du document.

API traditionnelle vs LLM vs SDK d'agent IA

Approche Détection contextuelle Préservation de la mise en forme Implémentation multi-format Effort de développement Idéal pour
API traditionnelle et expressions régulières Limitée, sauf si une logique NLP supplémentaire est ajoutée Robuste et contrôlable Une logique distincte est normalement requise Élevé Motifs fixes et règles hautement déterministes
API Office avec appels directs à un LLM Forte Doit être implémentée par le développeur Une logique d'extraction et de réécriture est requise pour chaque format Très élevé Pipelines IA entièrement personnalisés
SDK d'agent IA Forte Gérée grâce à un traitement conscient du document Une instruction commune peut être appliquée à plusieurs formats Office Plus faible Caviardage contextuel avec moins de code d'orchestration

L'approche traditionnelle reste utile lorsque chaque cible de caviardage suit un motif connu et que l'application exige un comportement strictement déterministe. L'approche du SDK d'agent devient plus intéressante lorsque les documents contiennent des informations variées et contextuelles, ou lorsque le même flux de travail doit prendre en charge plusieurs formats Office.

Configurer le projet C#

Créez une application console C# et ajoutez Spire.Agent.Office ainsi que ses dépendances requises au projet. Vous aurez également besoin d'un SpireToken valide pour le traitement IA.

L'exemple ci-dessous prend en charge les formats suivants :

  • Word : DOC et DOCX
  • Excel : XLS et XLSX
  • PowerPoint : PPT et PPTX

PDF n'est pas inclus dans cet exemple.

Caviarder des documents Word, Excel et PowerPoint avec un agent IA

Le code suivant détermine le format source à partir de son extension, charge l'objet de document Office approprié et transmet la même instruction de caviardage au processeur IA.

using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Presentation;
using Spire.Doc;
using Spire.Xls;

string inputPath = @"E:\Documents\Input.docx";
string outputPath = @"E:\Documents\Redacted.docx";
string spireToken = "your spireToken";

string instruction = """
Find personal information such as names, email addresses, phone numbers, addresses, 
account numbers, and other sensitive information. Replace the detected content with 
“[REDACTED]” while preserving the original document structure and formatting.
""";

// Configure the AI processing options
AIOptions options = new AIOptions();
options.SpireToken = spireToken;

// Select the appropriate document object according to the file extension
string extension = Path.GetExtension(inputPath).ToLower();

if (extension == ".doc" || extension == ".docx")
{
    using (Document document = new Document())
    {
        document.LoadFromFile(inputPath);
        AIDocumentProcessor processor = document.AI(options);
        processor.ExecuteInstruction(
            document,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".xls" || extension == ".xlsx")
{
    using (Workbook workbook = new Workbook())
    {
        workbook.LoadFromFile(inputPath);
        AIDocumentProcessor processor = workbook.AI(options);
        processor.ExecuteInstruction(
            workbook,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}
else if (extension == ".ppt" || extension == ".pptx")
{
    using (Presentation presentation = new Presentation())
    {
        presentation.LoadFromFile(inputPath);
        AIDocumentProcessor processor = presentation.AI(options);
        processor.ExecuteInstruction(
            presentation,
            instruction,
            outputPath,
            Array.Empty<string>());
    }
}

Si les using globaux implicites sont désactivés dans votre projet, ajoutez également using System; et using System.IO; pour Array et Path.

Définir l'entrée, la sortie et l'instruction

inputPath spécifie le document source, tandis que outputPath spécifie où le fichier caviardé sera enregistré. Les extensions d'entrée et de sortie doivent correspondre afin que le résultat reste dans le format d'origine.

L'instruction en langage naturel définit à la fois la portée de la détection et la modification requise. Dans cet exemple, l'agent recherche les types courants d'informations personnelles et les remplace par [REDACTED].

Vous pouvez ajuster l'instruction pour un flux de travail plus restreint. Par exemple :

Find email addresses, phone numbers, and customer account numbers. Replace each detected value with “[REDACTED]”. Do not redact company names, product names, invoice numbers, or dates. Preserve the original layout and formatting.

L'ajout d'exclusions explicites peut réduire les faux positifs lorsqu'un document contient des identifiants d'entreprise qui ressemblent à des numéros de compte personnels.

Configurer le traitement IA

AIOptions stocke le SpireToken utilisé par le service de traitement IA :

AIOptions options = new AIOptions();
options.SpireToken = spireToken;

Le même objet d'options peut être utilisé avec l'instance de document Word, Excel ou PowerPoint.

Sélectionner le type de document approprié

Le programme lit l'extension du fichier et crée l'objet correspondant :

  • Document pour les fichiers Word
  • Workbook pour les fichiers Excel
  • Presentation pour les fichiers PowerPoint

Chaque objet expose la méthode d'extension AI(). Celle-ci renvoie un AIDocumentProcessor, qui exécute l'instruction en langage naturel sur le document chargé.

Le tableau de pièces jointes vide indique que l'instruction ne nécessite aucun fichier de support :

processor.ExecuteInstruction(
    document,
    instruction,
    outputPath,
    Array.Empty<string>());

Résultat du caviardage

Dans le document Word de test, les informations sensibles apparaissaient dans des paragraphes normaux, dans un tableau d'informations client et dans le pied de page. Après traitement, les noms, adresses e-mail, numéros de téléphone, adresses et informations de compte ont été remplacés par [REDACTED].

La structure du tableau, la mise en forme des paragraphes, les titres, les couleurs et la mise en page du pied de page sont restés en place. Ce résultat est important car il démontre que le flux de travail n'extrait pas simplement le document sous forme de texte brut pour le reconstruire de zéro. Il modifie les éléments pertinents du document tout en conservant leur structure environnante.

Document Word d'origine vs version caviardée

Considérations importantes pour le caviardage par IA

Vérifier le résultat avant de le partager

Le caviardage par IA n'est pas parfaitement déterministe. Un modèle peut manquer un identifiant peu courant ou classer à tort un contenu ordinaire comme sensible. Les documents destinés à une diffusion externe doivent être vérifiés après traitement, en particulier dans les flux de travail juridiques, financiers, de santé ou sensibles à la conformité.

Rendre l'instruction précise

L'instruction doit décrire à la fois ce qui doit être supprimé et ce qui doit être conservé. Si les numéros de facture, les noms d'entreprise, les codes produit ou les adresses de bureaux publics ne doivent pas être caviardés, indiquez explicitement ces exclusions.

Le remplacement visible n'est pas toujours une anonymisation complète

Le remplacement du texte visible ne supprime pas nécessairement toutes les copies de l'information du fichier. Les données sensibles peuvent également apparaître dans :

  • Les commentaires et les modifications suivies
  • Les propriétés et métadonnées du document
  • Les feuilles de calcul ou les diapositives masquées
  • Les notes du présentateur PowerPoint
  • Les fichiers et objets incorporés
  • Les images contenant du texte
  • Les versions antérieures ou les copies de sauvegarde

Pour les flux de travail à haute sécurité, ces emplacements doivent être inspectés séparément. Si un document contient des pages numérisées ou des captures d'écran, une OCR peut être nécessaire avant que le texte contenu dans les images puisse être évalué.

Préserver le fichier d'origine

Enregistrez le résultat caviardé dans un nouveau chemin au lieu d'écraser le document source. Le fait de conserver les fichiers séparés facilite la comparaison du résultat, l'examen du contenu manqué et la répétition du processus avec une instruction améliorée.

Conclusion

Le caviardage traditionnel basé sur les API offre un contrôle précis, mais les développeurs doivent définir des règles de détection et maintenir une logique de parcours distincte pour différents formats de documents et conteneurs de contenu. L'intégration directe d'un LLM améliore la reconnaissance contextuelle, mais nécessite toujours une couche substantielle d'extraction, de mise en correspondance et de réécriture pour préserver la mise en forme Office.

Un SDK d'agent IA réunit ces capacités. Avec une seule instruction en langage naturel et une petite quantité de code C#, le même flux de travail peut traiter des fichiers Word, Excel et PowerPoint, identifier des informations sensibles contextuelles et les remplacer au sein de la structure d'origine du document. Le résultat doit toujours être vérifié, mais l'implémentation est bien plus simple que la construction manuelle de l'ensemble du pipeline de détection et d'orchestration documentaire.

FAQ

Le même code peut-il caviarder des fichiers Word, Excel et PowerPoint ?

Oui. L'exemple sélectionne Document, Workbook ou Presentation en fonction de l'extension du fichier d'entrée et applique la même instruction en langage naturel à chaque format.

L'agent IA préserve-t-il la mise en forme d'origine ?

L'agent travaille avec les objets de document Office sous-jacents, ce qui permet de remplacer le texte sensible dans les paragraphes, les cellules, les tableaux et les formes tout en conservant la structure et la mise en forme environnantes. Le résultat final doit tout de même être vérifié, car les mises en page particulièrement complexes peuvent nécessiter une vérification supplémentaire.

Puis-je utiliser une autre étiquette de caviardage ?

Oui. Remplacez [REDACTED] dans l'instruction par une autre étiquette, telle que [PRIVATE], [REMOVED], ou une valeur spécifique à une catégorie comme [EMAIL REDACTED].

Quand une API traditionnelle est-elle préférable au caviardage par IA ?

Une API traditionnelle peut être préférable lorsque chaque valeur sensible suit un motif fixe, que les règles changent rarement et que le résultat doit être complètement déterministe. Le remplacement par expressions régulières est souvent suffisant pour les adresses e-mail, les numéros de téléphone ou les numéros d'identification standardisés.

Le remplacement du texte garantit-il que le document peut être publié en toute sécurité ?

Non. Le remplacement du texte visible ne supprime pas automatiquement les commentaires, les modifications suivies, les métadonnées, le contenu masqué, les objets incorporés, le texte présent dans les images ou les versions antérieures du fichier. Les documents sensibles sur le plan de la sécurité nécessitent une inspection et une validation supplémentaires avant leur publication.

Voir aussi

Page 2 of 10