```php title="pdf_hierarchy_config.php" true, 'k_clusters' => 6, 'include_bbox' => true, 'ocr_coverage_threshold' => 0.8 ] ) ); $kreuzberg = new Kreuzberg($config); $result = $kreuzberg->extractFile('document.pdf'); echo "Hierarchy detection enabled\n"; echo "Content length: " . strlen($result->content) . " characters\n"; // Alternative: Custom hierarchy parameters for complex documents $advancedConfig = new ExtractionConfig( pdf: new PdfConfig( extractImages: true, hierarchy: [ 'enabled' => true, 'k_clusters' => 12, // More clusters for detailed hierarchy 'include_bbox' => true, // Include bounding box coordinates 'ocr_coverage_threshold' => 0.7 // Higher OCR threshold ] ) ); $kreuzberg = new Kreuzberg($advancedConfig); $result = $kreuzberg->extractFile('complex_document.pdf'); echo "Advanced hierarchy detection completed\n"; echo "Detected structure preserved in output\n"; // Disabling hierarchy detection for speed $fastConfig = new ExtractionConfig( pdf: new PdfConfig( extractImages: false, hierarchy: [ 'enabled' => false ] ) ); $kreuzberg = new Kreuzberg($fastConfig); $result = $kreuzberg->extractFile('simple_document.pdf'); echo "Fast extraction without hierarchy detection\n"; ```