Files
fil/docs/snippets/swift/llm/structured_extraction.md
Henrik Jess Nielsen b4c07d3693
All checks were successful
Deploy fil (kreuzberg) / deploy (push) Successful in 49s
Nomad changes
2026-06-01 23:40:55 +02:00

810 B

import Foundation
import Kreuzberg
import RustBridge

let configJson = """
{
    "structured_extraction": {
        "schema": {
            "type": "object",
            "properties": {
                "title": { "type": "string" },
                "authors": { "type": "array", "items": { "type": "string" } },
                "date": { "type": "string" }
            },
            "required": ["title", "authors", "date"],
            "additionalProperties": false
        },
        "llm": {
            "model": "openai/gpt-4o-mini"
        },
        "strict": true
    }
}
"""

let config = try extractionConfigFromJson(configJson)
let result = try extractFileSync("paper.pdf", nil, config)

if let structured = result.structured_output() {
    print(structured.toString())
}