From 5d5ec2985db97636f0487669d8880a3c7c00bef9 Mon Sep 17 00:00:00 2001 From: Daniel Boros Date: Thu, 13 Nov 2025 12:35:52 +0100 Subject: [PATCH] feat: add rust snippets --- .../snippets/inference/cohere-query/rust.md | 25 +++++++++ .../snippets/inference/cohere-upsert/rust.md | 25 +++++++++ .../snippets/inference/ingest/rust.md | 23 +++++++++ .../snippets/inference/jinaai-query/rust.md | 25 +++++++++ .../snippets/inference/jinaai-upsert/rust.md | 25 +++++++++ .../snippets/inference/multiple/rust.md | 51 +++++++++++++++++++ .../snippets/inference/openai-query/rust.md | 25 +++++++++ .../snippets/inference/openai-upsert/rust.md | 25 +++++++++ .../headless/snippets/inference/query/rust.md | 22 ++++++++ 9 files changed, 246 insertions(+) create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/cohere-query/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/cohere-upsert/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/ingest/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/jinaai-query/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/jinaai-upsert/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/multiple/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/openai-query/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/openai-upsert/rust.md create mode 100644 qdrant-landing/content/documentation/headless/snippets/inference/query/rust.md diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/cohere-query/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/cohere-query/rust.md new file mode 100644 index 000000000..5e5a3bb20 --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/cohere-query/rust.md @@ -0,0 +1,25 @@ +```rust +use qdrant_client::{ + Qdrant, QdrantError, + qdrant::{Document, Query, QueryPointsBuilder, Value}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build().unwrap(); + +let mut options = HashMap::::new(); +options.insert("cohere-api-key".to_string(), "".into()); +options.insert("output_dimension".to_string(), 512.into()); + +client + .query( + QueryPointsBuilder::new("") + .query(Query::new_nearest(Document { + text: "a green square".into(), + model: "cohere/embed-v4.0".into(), + options, + })) + .build(), + ) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/cohere-upsert/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/cohere-upsert/rust.md new file mode 100644 index 000000000..8796f6dd4 --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/cohere-upsert/rust.md @@ -0,0 +1,25 @@ +```rust +use qdrant_client::{ + Payload, Qdrant, QdrantError, + qdrant::{Document, PointStruct, UpsertPointsBuilder}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build()?; +let mut options = HashMap::new(); +options.insert("cohere-api-key".to_string(), "".into()); +options.insert("output_dimension".to_string(), 512.into()); + +client + .upsert_points(UpsertPointsBuilder::new("", + vec![ + PointStruct::new(1, + Document { + text: "Recipe for baking chocolate chip cookies requires flour, sugar, eggs, and chocolate chips.".into(), + model: "openai/text-embedding-3-small".into(), + options, + }, + Payload::default()) + ]).wait(true)) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/ingest/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/ingest/rust.md new file mode 100644 index 000000000..921d2e56f --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/ingest/rust.md @@ -0,0 +1,23 @@ +```rust +use qdrant_client::{ + Payload, Qdrant, QdrantError, + qdrant::{Document, PointStruct, UpsertPointsBuilder}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build()?; + +client + .upsert_points(UpsertPointsBuilder::new("", + vec![ + PointStruct::new(1, + HashMap::from([("my-bm25-vector".to_string(), + Document { + text: "Recipe for baking chocolate chip cookies".into(), + model: "qdrant/bm25".into(), + options: HashMap::new(), + }.into())]), + Payload::default()) + ])) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/jinaai-query/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/jinaai-query/rust.md new file mode 100644 index 000000000..a0aa94f06 --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/jinaai-query/rust.md @@ -0,0 +1,25 @@ +```rust +use qdrant_client::{ + Qdrant, QdrantError, + qdrant::{Document, Query, QueryPointsBuilder, Value}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build().unwrap(); + +let mut options = HashMap::::new(); +options.insert("jina-api-key".to_string(), "".into()); +options.insert("dimensions".to_string(), 512.into()); + +client + .query( + QueryPointsBuilder::new("") + .query(Query::new_nearest(Document { + text: "Mission to Mars".into(), + model: "jinaai/jina-clip-v2".into(), + options, + })) + .build(), + ) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/jinaai-upsert/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/jinaai-upsert/rust.md new file mode 100644 index 000000000..82de65108 --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/jinaai-upsert/rust.md @@ -0,0 +1,25 @@ +```rust +use qdrant_client::{ + Payload, Qdrant, QdrantError, + qdrant::{Image, PointStruct, UpsertPointsBuilder}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build()?; +let mut options = HashMap::new(); +options.insert("jina-api-key".to_string(), "".into()); +options.insert("dimensions".to_string(), 512.into()); + +client + .upsert_points(UpsertPointsBuilder::new("", + vec![ + PointStruct::new(1, + Image { + image: Some("https://qdrant.tech/example.png".into()), + model: "jinaai/jina-clip-v2".into(), + options, + }, + Payload::default()) + ]).wait(true)) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/multiple/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/multiple/rust.md new file mode 100644 index 000000000..93d34df1e --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/multiple/rust.md @@ -0,0 +1,51 @@ +```rust +use qdrant_client::{ + Payload, Qdrant, QdrantError, + qdrant::{Document, PointStruct, UpsertPointsBuilder, Vectors}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build()?; + +let mut jina_options = HashMap::new(); +jina_options.insert("jina-api-key".to_string(), "".into()); +jina_options.insert("dimensions".to_string(), 512.into()); + +client + .upsert_points( + UpsertPointsBuilder::new( + "", + vec![PointStruct::new( + 1, + NamedVectors::default() + .add_vector( + "image", + Image { + image: Some("https://qdrant.tech/example.png".into()), + model: "jinaai/jina-clip-v2".into(), + options: jina_options, + }, + ) + .add_vector( + "text", + Document { + text: "Mars, the red planet".into(), + model: "sentence-transformers/all-minilm-l6-v2".into(), + options: HashMap::new(), + }, + ) + .add_vector( + "bm25", + Document { + text: "How to bake cookies?".into(), + model: "qdrant/bm25".into(), + options: HashMap::new(), + }, + ), + Payload::default(), + )], + ) + .wait(true), + ) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/openai-query/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/openai-query/rust.md new file mode 100644 index 000000000..b47de3124 --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/openai-query/rust.md @@ -0,0 +1,25 @@ +```rust +use qdrant_client::{ + Qdrant, QdrantError, + qdrant::{Document, Query, QueryPointsBuilder, Value}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build().unwrap(); + +let mut options = HashMap::::new(); +options.insert("openai-api-key".to_string(), "".into()); +options.insert("dimensions".to_string(), 512.into()); + +client + .query( + QueryPointsBuilder::new("") + .query(Query::new_nearest(Document { + text: "How to bake cookies?".into(), + model: "openai/text-embedding-3-large".into(), + options, + })) + .build(), + ) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/openai-upsert/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/openai-upsert/rust.md new file mode 100644 index 000000000..9e609033a --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/openai-upsert/rust.md @@ -0,0 +1,25 @@ +```rust +use qdrant_client::{ + Payload, Qdrant, QdrantError, + qdrant::{Document, PointStruct, UpsertPointsBuilder}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build()?; +let mut options = HashMap::new(); +options.insert("openai-api-key".to_string(), "".into()); +options.insert("dimensions".to_string(), 512.into()); + +client + .upsert_points(UpsertPointsBuilder::new("", + vec![ + PointStruct::new(1, + Document { + text: "Recipe for baking chocolate chip cookies".into(), + model: "openai/text-embedding-3-large".into(), + options, + }, + Payload::default()) + ]).wait(true)) + .await?; +``` diff --git a/qdrant-landing/content/documentation/headless/snippets/inference/query/rust.md b/qdrant-landing/content/documentation/headless/snippets/inference/query/rust.md new file mode 100644 index 000000000..fb558a640 --- /dev/null +++ b/qdrant-landing/content/documentation/headless/snippets/inference/query/rust.md @@ -0,0 +1,22 @@ +```rust +use qdrant_client::{ + Qdrant, QdrantError, + qdrant::{Document, Query, QueryPointsBuilder}, +}; +use std::collections::HashMap; + +let client = Qdrant::from_url("http://localhost:6333").build().unwrap(); + +client + .query( + QueryPointsBuilder::new("") + .query(Query::new_nearest(Document { + text: "How to bake cookies?".into(), + model: "qdrant/bm25".into(), + options: HashMap::new(), + })) + .using("my-bm25-vector") + .build(), + ) + .await?; +```