This commit is contained in:
60
docs/snippets/python/config/advanced_config.md
Normal file
60
docs/snippets/python/config/advanced_config.md
Normal file
@@ -0,0 +1,60 @@
|
||||
```python title="Python"
|
||||
import asyncio
|
||||
from kreuzberg import (
|
||||
extract_file,
|
||||
ExtractionConfig,
|
||||
OcrConfig,
|
||||
ChunkingConfig,
|
||||
EmbeddingConfig,
|
||||
EmbeddingModelType,
|
||||
LanguageDetectionConfig,
|
||||
TokenReductionOptions,
|
||||
PostProcessorConfig,
|
||||
KeywordConfig,
|
||||
)
|
||||
|
||||
async def main() -> None:
|
||||
config: ExtractionConfig = ExtractionConfig(
|
||||
use_cache=True,
|
||||
enable_quality_processing=True,
|
||||
ocr=OcrConfig(
|
||||
backend="tesseract",
|
||||
language="eng",
|
||||
),
|
||||
chunking=ChunkingConfig(
|
||||
max_characters=1000,
|
||||
overlap=200,
|
||||
embedding=EmbeddingConfig(
|
||||
model=EmbeddingModelType.preset("balanced"),
|
||||
batch_size=32,
|
||||
normalize=True,
|
||||
),
|
||||
),
|
||||
language_detection=LanguageDetectionConfig(
|
||||
enabled=True,
|
||||
min_confidence=0.8,
|
||||
detect_multiple=False,
|
||||
),
|
||||
keywords=KeywordConfig(
|
||||
algorithm="yake",
|
||||
max_keywords=10,
|
||||
min_score=0.1,
|
||||
ngram_range=[1, 3],
|
||||
language="en",
|
||||
),
|
||||
token_reduction=TokenReductionOptions(
|
||||
mode="moderate",
|
||||
preserve_important_words=True,
|
||||
),
|
||||
postprocessor=PostProcessorConfig(enabled=True),
|
||||
)
|
||||
|
||||
result = await extract_file("document.pdf", config=config)
|
||||
print(f"Content: {result.content[:100]}")
|
||||
if result.detected_languages:
|
||||
print(f"Languages: {result.detected_languages}")
|
||||
if result.chunks:
|
||||
print(f"Chunks: {len(result.chunks)}")
|
||||
|
||||
asyncio.run(main())
|
||||
```
|
||||
Reference in New Issue
Block a user