This commit is contained in:
35
docs/snippets/swift/utils/chunking_rag.md
Normal file
35
docs/snippets/swift/utils/chunking_rag.md
Normal file
@@ -0,0 +1,35 @@
|
||||
```swift title="Swift"
|
||||
import Foundation
|
||||
import Kreuzberg
|
||||
import RustBridge
|
||||
|
||||
let configJson = """
|
||||
{
|
||||
"chunking": {
|
||||
"max_characters": 500,
|
||||
"overlap": 50,
|
||||
"embedding": {
|
||||
"model": {"preset": {"name": "balanced"}},
|
||||
"normalize": true
|
||||
}
|
||||
}
|
||||
}
|
||||
"""
|
||||
|
||||
let config = try extractionConfigFromJson(configJson)
|
||||
let result = try extractFileSync("research_paper.pdf", nil, config)
|
||||
|
||||
if let chunks = result.chunks() {
|
||||
for chunk in chunks {
|
||||
let metadata = chunk.metadata()
|
||||
let content = chunk.content().toString()
|
||||
let preview = String(content.prefix(100))
|
||||
print("Chunk \(metadata.chunk_index() + 1)/\(metadata.total_chunks())")
|
||||
print("Position: \(metadata.byte_start())-\(metadata.byte_end())")
|
||||
print("Content: \(preview)...")
|
||||
if let embedding = chunk.embedding() {
|
||||
print("Embedding: \(embedding.count) dimensions")
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
Reference in New Issue
Block a user