
조직은 시간이 지남에 따라 수백 또는 수천 개의 Word 문서를 축적하게 됩니다. 이러한 파일들은 다양한 부서, 직원, 공급업체 또는 레거시 시스템에서 생성되므로 글꼴, 제목 구조, 번호 매기기, 간격, 머리글 및 기타 서식이 일관되지 않는 경우가 많습니다.
게시, 마이그레이션 또는 아카이빙을 위해 이러한 문서를 준비하는 것은 단순한 서식 지정 작업 이상의 의미를 갖습니다. 많은 경우 조직은 각 문서의 내용을 파악하고, 주요 메타데이터를 추출하며, 간결한 요약을 작성하고, 결과를 검색 가능한 문서 인덱스로 정리해야 합니다.
기존의 Word 자동화는 고정된 서식 규칙을 잘 처리할 수 있지만, 문서 구조가 다양해지면 어려움을 겪습니다. AI 기반 접근 방식은 먼저 제목, 머리글, 본문, 날짜, 문서 유형과 같은 콘텐츠의 논리적 역할을 이해한 다음 적절한 문서 작업을 적용할 수 있습니다.
이 기사에서는 Spire.Agent.Office for .NET을 사용하여 C#에서 3단계 Word 처리 워크플로를 구축하는 방법을 알아봅니다.
Word 문서 → 서식 표준화 → 메타데이터 및 요약 추출 → 문서 인덱스
AI 기반 Word 문서 표준화가 중요한 이유
Word 문서 모음을 표준화하는 것이 모든 단락을 동일한 글꼴로 설정하는 것처럼 간단하지는 않습니다.
일반적인 조직에는 다음과 같은 문서들이 있을 수 있습니다:
Input/
├── Employee_Travel_Policy.docx
├── Vendor_Onboarding_Guide.docx
├── Security_Incident_Report.docx
└── Remote_Work_Policy.docx
이 문서들이 유사한 비즈니스 프로세스를 다루더라도 내부 구조는 상당히 다를 수 있습니다.
예를 들어, 한 문서는 섹션 제목에 실제 Word 제목 1 스타일을 사용하는 반면, 다른 문서는 단순히 굵게 처리된 16포인트 텍스트를 사용할 수 있습니다. 일부 문서는 다음과 같이 번호가 매겨진 섹션을 사용할 수 있습니다:
1. 목적
2. 범위
3. 책임
반면 다른 문서는 다음과 같이 일관되지 않은 번호 매기기를 사용할 수 있습니다:
I. 목적
섹션 2 - 범위
3) 책임
기존의 문서 자동화는 일반적으로 개발자가 단락 위치, 스타일 또는 텍스트 패턴을 검사하고 각 변형에 대한 규칙을 작성해야 합니다.
AI 지원 문서 처리는 접근 방식을 바꿉니다. "3번째 단락은 제목이어야 한다"라고 지정하는 대신, 개발자는 원하는 결과를 설명하기만 하면 됩니다:
문서 제목과 제목 계층 구조를 식별하고, 제목 스타일과 번호 매기기를 정규화하며, 원본 내용을 보존하십시오.
AI 계층은 문서 구조를 해석하고, 기본 Word 문서 엔진은 실제 문서 작업을 수행합니다.
이로 인해 이 접근 방식은 콘텐츠는 다르지만 원하는 출력 표준은 일관된 반구조화된 비즈니스 문서 모음에 특히 유용합니다.
이 예제에서 자동화할 내용
우리의 샘플 워크플로는 세 가지 처리 단계로 구성됩니다.
1단계: Word 서식 표준화
각 원본 문서는 분석되어 공유 기업 스타일에 따라 다시 서식이 지정됩니다. 처리 내용은 다음과 같습니다:
- 글꼴 및 글꼴 크기 정규화
- 문서 제목 식별
- 일관된 제목 수준 적용
- 제목 번호 매기기 정규화
- 단락 간격 표준화
- 공통 머리글 추가
- 바닥글에 페이지 번호 추가
- 원본 텍스트, 표, 이미지 및 하이퍼링크 보존
결과물은 모든 입력 문서의 표준화된 버전입니다.
2단계: 메타데이터 및 요약 추출
표준화된 문서는 개별적으로 분석되어 다음과 같은 정보를 추출합니다:
- 문서 제목
- 부서
- 문서 유형
- 발효일 또는 발행일
- 키워드
- 요약
각 결과는 작은 구조화된 Word 메타데이터 문서로 저장됩니다.
3단계: 문서 인덱스 구축
마지막으로, 메타데이터 파일들이 결합되어 단일 Word 문서 인덱스로 변환됩니다.
완성된 인덱스에는 다음과 유사한 정보가 포함될 수 있습니다:
| 번호 | 제목 | 부서 | 유형 | 날짜 | 요약 |
|---|---|---|---|---|---|
| 1 | 직원 출장 정책 | 인사팀 | 정책 | 2026년 7월 15일 | 출장 승인 및 비용 상환 요건을 정의합니다. |
| 2 | 공급업체 온보딩 가이드 | 구매팀 | 절차 | 2026년 6월 3일 | 신규 공급업체 등록 및 승인 절차를 설명합니다. |
| 3 | 보안 사고 보고서 | IT팀 | 보고서 | 2026년 8월 8일 | 보안 사고 및 대응 조치를 요약합니다. |
이는 더 깔끔한 Word 파일뿐만 아니라 전체 문서 모음에 대한 유용한 개요를 생성합니다.
C#용 Spire.Agent.Office 설정
먼저 .NET 프로젝트를 만들고 NuGet을 통해 Spire.Agent.Office를 설치합니다.
Visual Studio의 NuGet 패키지 관리자에서 패키지를 설치하거나 .NET CLI를 사용할 수 있습니다:
dotnet add package Spire.Agent.Office
그런 다음 필요한 네임스페이스를 가져옵니다:
using System;
using System.IO;
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Doc;
AI 문서 처리는 간단한 패턴을 따릅니다.
먼저 SpireToken으로 AIOptions 인스턴스를 구성합니다:
AIOptions options = new AIOptions();
options.SpireToken = "your SpireToken";
테스트용 임시 SpireToken은 Spire 임시 라이선스 페이지에서 요청할 수 있습니다. 토큰을 얻은 후, AI 처리 API를 호출하기 전에 SpireToken 속성에 할당하십시오.
다음으로, Word 문서를 로드하고 AIDocumentProcessor를 만듭니다:
using (Document doc = new Document())
{
doc.LoadFromFile("input.docx");
AIDocumentProcessor processor = doc.AI(options);
processor.ExecuteInstruction(
doc,
"자연어 지침",
"output.docx"
);
}
중요한 부분은 지침입니다. 긴 Word API 호출 시퀀스를 수동으로 작성하는 대신, 문서가 어떤 모습이어야 하는지 설명하고 에이전트가 해당 작업을 수행하도록 합니다.
다음 섹션에서는 이 접근 방식을 전체 Word 파일 디렉터리에 적용하겠습니다.
AI를 사용한 Word 서식 표준화
다른 부서에서 수집된 문서들이 일관되지 않은 글꼴, 제목, 번호 매기기 및 페이지 레이아웃을 사용한다고 가정해 보겠습니다.
모든 문서가 동일한 기업 문서 스타일을 따르기를 원합니다:
- 모든 텍스트에 Arial 사용
- 11pt 본문 텍스트
- 20pt 굵게 문서 제목
- 16pt 굵게 제목 1
- 13pt 굵게 제목 2
- 일관된 다단계 번호 매기기
- 1.15 줄 간격
- 기업 머리글
- 가운데 정렬된 페이지 번호
- 원본 문구 변경 없음
다음 코드는 입력 디렉터리의 모든 .docx 파일을 처리하고 표준화된 버전을 새 디렉터리에 저장합니다.
using System;
using System.IO;
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Doc;
string inputFolder = @"E:\Documents\Input";
string outputFolder = @"E:\Documents\Standardized";
string spireToken = "your SpireToken";
Directory.CreateDirectory(outputFolder);
string aiRule = """
이 Word 문서의 구조를 분석하고 다음 기업 문서 규칙에 따라 서식을 표준화하십시오:
1. 모든 원본 문구를 보존하십시오. 내용을 다시 쓰거나, 요약하거나, 줄이거나, 삭제하지 마십시오.
2. 기본 글꼴로 Arial을 사용하고 일반 본문 텍스트는 11pt를 사용하십시오.
3. 주요 문서 제목을 식별하고 20pt 굵게 서식을 지정하십시오.
4. 논리적 제목 계층 구조를 식별하고 적절한 Word 제목 스타일을 적용하십시오. 제목 1은 16pt 굵게, 제목 2는 13pt 굵게 사용하십시오.
5. 섹션 번호 매기기를 적절한 경우 1, 1.1, 1.1.1과 같은 일관된 계층 구조로 정규화하십시오.
6. 일반 본문 단락에는 1.15 줄 간격을 사용하고 단락 간격을 시각적으로 일관되게 유지하십시오.
7. 문서 머리글에 'Corporate Document Library'를 추가하십시오.
8. 바닥글에 가운데 정렬된 페이지 번호를 추가하십시오.
9. 기존의 모든 표, 이미지, 하이퍼링크 및 기타 문서 개체를 보존하십시오.
10. 전체 문서 구조와 원래 의미를 변경하지 마십시오.
""";
var aiOpts = new AIOptions { SpireToken = spireToken };
foreach (var file in Directory.GetFiles(inputFolder, "*.docx"))
{
var fileName = Path.GetFileName(file);
var savePath = Path.Combine(outputFolder, fileName);
using var doc = new Document();
doc.LoadFromFile(file);
var res = doc.AI(aiOpts).ExecuteInstruction(doc, aiRule, savePath);
Console.WriteLine(res.Success ? $"처리 완료: {fileName}" : $"실패: {fileName} - {res.ErrorMessage}");
}
지침에서 중요한 세부 사항 중 하나는 논리적 제목 계층 구조를 식별하라는 요구 사항입니다.
이는 단순히 굵게 표시된 모든 단락의 글꼴을 변경하는 것과는 다릅니다. 에이전트는 단락이 무엇을 나타내는지 분석하고 문서 제목, 주요 섹션 제목, 하위 섹션 또는 일반 본문 텍스트로 기능하는지 결정할 수 있습니다.
문서 관리 워크플로의 경우, 적절한 제목 스타일은 탐색, 자동 목차 생성, PDF 책갈피, 접근성 및 이후 문서 파싱을 개선할 수 있으므로 특히 유용합니다.
또 다른 중요한 규칙은 다음과 같습니다:
모든 원본 문구를 보존하십시오.
서식 지정과 콘텐츠 재작성은 일반적으로 별도의 작업으로 처리되어야 합니다. 이 단계의 목적이 문서 표준화일 때, AI는 원본 텍스트를 동시에 다시 쓰거나 요약해서는 안 됩니다.
실행 후 출력 디렉터리에는 표준화된 사본이 포함됩니다:
Standardized/
├── Employee_Travel_Policy.docx
├── Vendor_Onboarding_Guide.docx
├── Security_Incident_Report.docx
└── Remote_Work_Policy.docx
다음 예제는 일관되지 않게 서식이 지정된 Word 문서가 AI 기반 표준화 전후에 어떻게 보이는지 보여줍니다.

메타데이터 추출 및 문서 요약 생성
서식이 표준화되면 다음 단계는 각 문서에 무엇이 포함되어 있는지 파악하는 것입니다.
수백 개의 파일을 수동으로 열어 제목, 부서, 날짜, 범주 및 요약을 기록하는 것은 시간이 많이 걸립니다. 이 작업은 AI 문서 이해가 특히 유용한 부분입니다.
이 예제에서는 모든 문서에서 6개의 필드를 추출합니다:
- 제목
- 부서
- 문서 유형
- 날짜
- 키워드
- 요약
자유 형식의 산문을 반환하는 대신, 지침은 예측 가능한 구조를 요구합니다. 이렇게 하면 나중에 결과를 처리하기가 더 쉬워집니다.
using System;
using System.IO;
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Doc;
string inputFolder = @"E:\Documents\Standardized";
string outputFolder = @"E:\Documents\Metadata";
string spireToken = "your SpireToken";
Directory.CreateDirectory(outputFolder);
string aiRule = """
이 Word 문서를 분석하고 간결한 메타데이터 보고서를 작성하십시오.
실제 문서 내용에서 다음 정보를 추출하십시오:
- 제목
- 부서 또는 책임 비즈니스 기능
- 문서 유형 (예: 정책, 절차, 보고서, 가이드 또는 메모)
- 발효일 또는 발행일
- 3~5개의 키워드
- 약 80~120단어의 요약
이 필드들만 포함된 새롭고 간결한 문서를 만드십시오.
정확히 다음 레이블을 사용하십시오:
Title:
Department:
Document Type:
Date:
Keywords:
Summary:
소스에서 합리적으로 결정할 수 없는 정보는 지어내지 마십시오. 특정 날짜나 부서를 알 수 없는 경우 'Not specified'를 사용하십시오. 요약은 사실에 기반하고 소스 문서에만 근거해야 합니다.
""";
var aiOpts = new AIOptions { SpireToken = spireToken };
foreach (var file in Directory.GetFiles(inputFolder, "*.docx"))
{
var fileName = Path.GetFileNameWithoutExtension(file);
var savePath = Path.Combine(outputFolder, $"{fileName}_Metadata.docx");
using var doc = new Document();
doc.LoadFromFile(file);
var res = doc.AI(aiOpts).ExecuteInstruction(doc, aiRule, savePath);
Console.WriteLine(res.Success ? $"메타데이터 추출 완료: {fileName}" : $"실패: {fileName} - {res.ErrorMessage}");
}
생성된 메타데이터 문서는 다음과 같습니다:

고정된 레이블을 사용하라는 요구 사항은 중요합니다.
프롬프트가 단순히 "문서를 요약하라"고만 하면, 문서마다 출력 구조가 크게 다를 수 있습니다. 일관된 필드를 요구하면 중간 파일을 최종 인덱스로 결합하기가 훨씬 쉬워집니다.
또한 지침은 에이전트에게 누락된 메타데이터를 지어내지 말라고 명시적으로 지시합니다. 비즈니스 기록의 경우, 문서에 명시되지 않은 부서나 날짜를 추측하는 것보다 "Not specified"를 사용하는 것이 일반적으로 더 유용합니다.
여러 Word 파일에서 문서 인덱스 구축
이제 처리된 각 문서에 대해 하나의 메타데이터 파일이 준비되었습니다:
Metadata/
├── Employee_Travel_Policy_Metadata.docx
├── Vendor_Onboarding_Guide_Metadata.docx
├── Security_Incident_Report_Metadata.docx
└── Remote_Work_Policy_Metadata.docx
마지막 단계는 이러한 개별 메타데이터 파일을 단일 Word 기반 문서 인덱스로 통합하는 것입니다.
각 메타데이터 문서를 수동으로 열어 텍스트를 추출하고 C#에서 결과를 병합하는 대신, attachments 매개변수를 통해 모든 메타데이터 파일을 Spire.Agent.Office에 직접 전달할 수 있습니다. AI 에이전트는 첨부된 문서를 읽고 각 문서에서 레이블이 지정된 필드를 추출하여 통합된 인덱스가 포함된 새 Word 문서를 만듭니다.
attachments 매개변수는 AI 작업이 단일 기본 입력 문서가 아닌 여러 지원 파일에 의존할 때 유용합니다. 이 예제에서는 수정해야 할 기존 Word 문서가 없습니다. 따라서 빈 Document 개체를 만들고 메타데이터 파일을 최종 인덱스 생성을 위한 정보 소스로 사용합니다.
using System;
using System.IO;
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Doc;
string metadataFolder = @"E:\Documents\Metadata";
string outputPath = @"E:\Documents\Document_Index.docx";
string spireToken = "your SpireToken";
var attachments = Directory.GetFiles(metadataFolder, "*_Metadata.docx");
string aiRule = """
첨부 파일로 제공된 모든 메타데이터 문서를 읽고 통합된 Word 문서 인덱스를 만드십시오.
문서 상단에 'Document Index'라는 제목을 만드십시오.
다음 열이 포함된 표를 만드십시오:
No. | Title | Department | Document Type | Date | Keywords | Summary
요구 사항:
1. 각 메타데이터 문서에 대해 한 행을 만드십시오.
2. 1부터 순차적으로 레코드 번호를 매기십시오.
3. 각 첨부 파일의 레이블이 지정된 필드에서 값을 추출하십시오.
4. 추출된 정보를 보존하고 누락된 데이터를 지어내지 마십시오.
5. 필드를 사용할 수 없는 경우 'Not specified'를 사용하십시오.
6. 표 머리글을 굵게 만드십시오.
7. 요약 열의 너비를 다른 열보다 넓게 만드십시오.
8. 내부 문서 등록부에 적합한 깔끔하고 전문적인 스타일을 사용하십시오.
9. 최종 문서 인덱스만 포함된 독립형 Word 문서를 생성하십시오.
""";
var aiOpts = new AIOptions { SpireToken = spireToken };
using var doc = new Document();
var res = doc.AI(aiOpts).ExecuteInstruction(doc, aiRule, outputPath, attachments);
Console.WriteLine(res.Success
? $"문서 인덱스 생성 완료: {outputPath}"
: $"문서 인덱스 생성 실패: {res.ErrorMessage}");
최종 출력은 다음과 같이 저장됩니다:
Document_Index.docx
직원들은 모든 원본 문서를 개별적으로 열어보는 대신, 이제 하나의 통합된 인덱스를 사용하여 어떤 문서를 사용할 수 있고 각 파일에 무엇이 포함되어 있는지 빠르게 파악할 수 있습니다.

이러한 유형의 인덱스는 파일을 문서 관리 시스템으로 마이그레이션하기 전, 내부 지식 기반을 준비하거나, 레거시 문서 모음을 검토하거나, 장기 보존을 위해 기록을 정리할 때 특히 유용할 수 있습니다.
안정적인 AI 문서 처리를 위한 모범 사례
AI는 반구조화된 문서 처리를 더 유연하게 만들지만, 안정적인 결과는 작업 설계 방식에 크게 의존합니다.
서식 지정과 콘텐츠 분석 분리
에이전트에게 서식 표준화, 텍스트 재작성, 문서 요약 및 메타데이터 추출을 하나의 큰 지침으로 요청하지 마십시오.
이들은 목표가 다른 별개의 작업입니다.
더 안전한 워크플로는 다음과 같습니다:
원본 문서
↓
서식 표준화
↓
표준화된 문서
↓
메타데이터 추출
↓
구조화된 메타데이터
↓
문서 인덱스
이렇게 하면 문제를 식별하고 디버깅하기가 더 쉬워집니다.
서식 규칙을 명시적으로 정의
다음과 같은 지침은:
문서를 전문적으로 보이게 하십시오.
해석의 여지가 너무 많습니다.
일관성이 중요할 때는 실제 기업 규칙을 지정하십시오:
Arial, 11pt 본문 텍스트
20pt 문서 제목
16pt 제목 1
13pt 제목 2
1.15 줄 간격
1 / 1.1 / 1.1.1 번호 매기기
동일한 원칙이 머리글, 바닥글, 표 서식 및 페이지 레이아웃에도 적용됩니다.
원본 콘텐츠 보호
서식 작업의 경우, 다음과 같은 요구 사항을 명시적으로 포함하십시오:
모든 원본 문구를 보존하십시오.
및:
문서 내용을 다시 쓰거나, 요약하거나, 줄이거나, 삭제하지 마십시오.
또한 자동화된 일괄 처리 중에 원본 파일이 덮어쓰이지 않도록 보존해야 합니다.
실용적인 폴더 구조는 다음과 같습니다:
Documents/
├── Input/
├── Standardized/
├── Metadata/
└── Document_Index.docx
구조화된 메타데이터 요청
추출된 정보가 프로그래밍 방식으로 재사용될 경우, 창의적인 출력보다 예측 가능한 출력이 더 가치가 있습니다.
다음 대신:
이 문서가 무엇에 관한 것인지 알려주십시오.
고정된 스키마를 사용하십시오:
Title:
Department:
Document Type:
Date:
Keywords:
Summary:
이렇게 하면 다운스트림 처리가 훨씬 쉬워집니다.
누락된 정보를 명시적으로 처리
모든 문서에 부서 이름, 발효일, 문서 번호 또는 소유자가 포함되어 있지는 않습니다.
정보가 누락되었을 때 AI가 수행할 작업을 지시하십시오:
추측하는 대신 "Not specified"를 사용하십시오.
이는 문서 관리, 법률, 재무, 규정 준수 및 기타 기록에 민감한 워크플로에 특히 중요합니다.
중요도가 높은 출력물 검토
AI가 생성한 메타데이터와 요약은 중요한 워크플로에서 자동으로 권위 있는 기록으로 취급되어서는 안 됩니다.
일반적인 내부 문서 정리의 경우 자동화된 결과로 충분할 수 있습니다. 규제 대상 아카이브, 법률 기록, 규정 준수 문서 또는 공식 보존 시스템의 경우, 추출된 필드와 분류는 조직의 검토 요구 사항에 따라 검증되어야 합니다.
결론
일괄 Word 처리는 종종 두 가지 다른 문제를 포함합니다.
첫 번째는 문서 자동화입니다: 글꼴 변경, 스타일 적용, 머리글 및 바닥글 생성, 번호 매기기 관리 및 Word 파일 생성.
두 번째는 문서 이해입니다: 콘텐츠가 무엇을 나타내는지 결정, 문서 유형 식별, 날짜 및 부서 찾기, 키워드 추출 및 요약 생성.
기존 Word API는 개발자가 수정할 콘텐츠를 정확히 알고 있을 때 매우 효과적입니다. AI 지원 처리는 문서가 일관되지 않고 소프트웨어가 처리 방법을 결정하기 전에 먼저 구조를 이해해야 할 때 특히 유용합니다.
C#에서 Spire.Agent.Office를 사용하면 이 두 가지 기능을 하나의 워크플로로 결합할 수 있습니다:
분석 → 표준화 → 추출 → 정리
위의 예제에서 일관되지 않은 Word 문서가 포함된 폴더는 표준화된 문서 모음, 구조화된 메타데이터 기록 세트, 그리고 마지막으로 중앙 집중식 Word 문서 인덱스로 변환됩니다.
동일한 아키텍처를 정책 라이브러리, 절차 매뉴얼, 규정 준수 문서, 프로젝트 아카이브, 인사 기록, 공급업체 문서 및 레거시 문서 마이그레이션과 같은 다른 엔터프라이즈 워크플로로 확장할 수 있습니다.
파일을 하나씩 수동으로 검토하고 정리하는 대신, 개발자는 필요한 문서 규칙과 정보 구조를 자연어로 정의하고 워크플로의 반복적인 부분을 자동화하면서도 실제 편집 가능한 Word 문서를 생성할 수 있습니다.