This commit is contained in:
26
docs/snippets/r/utils/vector_database_integration.md
Normal file
26
docs/snippets/r/utils/vector_database_integration.md
Normal file
@@ -0,0 +1,26 @@
|
||||
```r title="R"
|
||||
library(kreuzberg)
|
||||
|
||||
document_id <- "doc-001"
|
||||
|
||||
config <- list(
|
||||
chunking = list(
|
||||
max_characters = 512L,
|
||||
overlap = 50L,
|
||||
embedding = list(
|
||||
model = list(type = "preset", name = "balanced"),
|
||||
normalize = TRUE,
|
||||
batch_size = 32L
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
json <- extract_file_sync("document.pdf", "application/pdf", config)
|
||||
result <- jsonlite::fromJSON(json, simplifyVector = FALSE)
|
||||
|
||||
# Each chunk has $content, $embedding, and $metadata. Pass these directly
|
||||
# to a vector database client (pgvector, Qdrant, Pinecone, etc.) along with
|
||||
# the document_id stored as a metadata field.
|
||||
cat(sprintf("document_id: %s\n", document_id))
|
||||
cat(sprintf("chunks ready for upsert: %d\n", length(result$chunks)))
|
||||
```
|
||||
Reference in New Issue
Block a user