This commit is contained in:
46
docs/snippets/csharp/advanced/batch_processing.cs
Normal file
46
docs/snippets/csharp/advanced/batch_processing.cs
Normal file
@@ -0,0 +1,46 @@
|
||||
using Kreuzberg;
|
||||
using System.Collections.Generic;
|
||||
|
||||
class Program
|
||||
{
|
||||
static async Task Main()
|
||||
{
|
||||
var config = new ExtractionConfig
|
||||
{
|
||||
UseCache = true,
|
||||
EnableQualityProcessing = true
|
||||
};
|
||||
|
||||
var filePaths = new[]
|
||||
{
|
||||
"document1.pdf",
|
||||
"document2.pdf",
|
||||
"document3.pdf"
|
||||
};
|
||||
|
||||
try
|
||||
{
|
||||
var batchResults = new List<ExtractionResult>();
|
||||
|
||||
foreach (var filePath in filePaths)
|
||||
{
|
||||
var result = await KreuzbergLib.ExtractFileAsync(filePath, config);
|
||||
batchResults.Add(result);
|
||||
Console.WriteLine($"Processed {filePath}: {result.Content.Length} chars");
|
||||
}
|
||||
|
||||
var tasks = filePaths.Select(path =>
|
||||
KreuzbergLib.ExtractFileAsync(path, config)
|
||||
).ToArray();
|
||||
|
||||
var results = await Task.WhenAll(tasks);
|
||||
|
||||
var totalChars = results.Sum(r => r.Content.Length);
|
||||
Console.WriteLine($"Total extracted: {totalChars} characters");
|
||||
}
|
||||
catch (KreuzbergException ex)
|
||||
{
|
||||
Console.WriteLine($"Batch processing error: {ex.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user