mirror of
https://github.com/qdrant/landing_page.git
synced 2026-10-11 05:48:31 +02:00
Add code snippets for the text search guide (#2056)
* Python snippets * TS snippets * Rust snippets * Java snippets * C# snippets * Go snippets * Generate .md files * Hide client connection in Rust snippets * Switch to builder pattern for Rust snippets * Use Document::new instead of DocumentBuilder::new * docs: Updated Go snippets Signed-off-by: Anush008 <mail@anush.sh> * docs: Updated Java snippets Signed-off-by: Anush008 <anushshetty90@gmail.com> * docs: Updated C# snippets Signed-off-by: Anush008 <anushshetty90@gmail.com> * docs: Updated BM25 avg_len Java snippet Signed-off-by: Anush008 <anushshetty90@gmail.com> * chore: review and format rust snippets * chore: trigger pr update * chore: remove qdrant_storage folder * fix: remove tokio::main * chore: trigger pr update * Regenerate .md files * George's feedback: set bm25 params at ingest-time, change Python client init to use cloud inference explicitly, and mark bm25 options unavailable in FastEmbed --------- Signed-off-by: Anush008 <mail@anush.sh> Signed-off-by: Anush008 <anushshetty90@gmail.com> Co-authored-by: Anush008 <mail@anush.sh> Co-authored-by: Anush008 <anushshetty90@gmail.com> Co-authored-by: Daniel Boros <dancixx@gmail.com>
This commit is contained in:
co-authored by
Anush008
Anush008
Daniel Boros
parent
b5e0908946
commit
2497c368ed
+29
@@ -0,0 +1,29 @@
|
||||
using Qdrant.Client;
|
||||
using Qdrant.Client.Grpc;
|
||||
|
||||
public class Snippet
|
||||
{
|
||||
public static async Task Run()
|
||||
{
|
||||
var client = new QdrantClient("localhost", 6334); // @hide
|
||||
|
||||
await client.CreateCollectionAsync(
|
||||
collectionName: "books",
|
||||
vectorsConfig: new VectorParamsMap
|
||||
{
|
||||
Map =
|
||||
{
|
||||
["description-dense"] = new VectorParams
|
||||
{
|
||||
Size = 384,
|
||||
Distance = Distance.Cosine,
|
||||
},
|
||||
},
|
||||
},
|
||||
sparseVectorsConfig: new SparseVectorConfig
|
||||
{
|
||||
Map = { ["isbn-bm25"] = new SparseVectorParams { Modifier = Modifier.Idf } },
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
```csharp
|
||||
using Qdrant.Client;
|
||||
using Qdrant.Client.Grpc;
|
||||
|
||||
await client.CreateCollectionAsync(
|
||||
collectionName: "books",
|
||||
vectorsConfig: new VectorParamsMap
|
||||
{
|
||||
Map =
|
||||
{
|
||||
["description-dense"] = new VectorParams
|
||||
{
|
||||
Size = 384,
|
||||
Distance = Distance.Cosine,
|
||||
},
|
||||
},
|
||||
},
|
||||
sparseVectorsConfig: new SparseVectorConfig
|
||||
{
|
||||
Map = { ["isbn-bm25"] = new SparseVectorParams { Modifier = Modifier.Idf } },
|
||||
}
|
||||
);
|
||||
```
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
```go
|
||||
client.CreateCollection(context.Background(), &qdrant.CreateCollection{
|
||||
CollectionName: "books",
|
||||
VectorsConfig: qdrant.NewVectorsConfigMap(
|
||||
map[string]*qdrant.VectorParams{
|
||||
"description-dense": {Size: 384, Distance: qdrant.Distance_Cosine},
|
||||
}),
|
||||
SparseVectorsConfig: qdrant.NewSparseVectorsConfig(
|
||||
map[string]*qdrant.SparseVectorParams{
|
||||
"isbn-bm25": {Modifier: qdrant.Modifier_Idf.Enum()},
|
||||
}),
|
||||
})
|
||||
```
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
```java
|
||||
import io.qdrant.client.QdrantClient;
|
||||
import io.qdrant.client.QdrantGrpcClient;
|
||||
import io.qdrant.client.grpc.Collections.*;
|
||||
|
||||
QdrantClient client =
|
||||
|
||||
client
|
||||
.createCollectionAsync(
|
||||
CreateCollection.newBuilder()
|
||||
.setCollectionName("books")
|
||||
.setVectorsConfig(
|
||||
VectorsConfig.newBuilder()
|
||||
.setParamsMap(
|
||||
VectorParamsMap.newBuilder()
|
||||
.putMap(
|
||||
"description-dense",
|
||||
VectorParams.newBuilder()
|
||||
.setSize(384)
|
||||
.setDistance(Distance.Cosine)
|
||||
.build())
|
||||
.build())
|
||||
.build())
|
||||
.setSparseVectorsConfig(
|
||||
SparseVectorConfig.newBuilder()
|
||||
.putMap(
|
||||
"isbn-bm25",
|
||||
SparseVectorParams.newBuilder().setModifier(Modifier.Idf).build())
|
||||
.build())
|
||||
.build())
|
||||
.get();
|
||||
```
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
```python
|
||||
from qdrant_client import QdrantClient, models
|
||||
|
||||
client = QdrantClient(
|
||||
url="https://xyz-example.qdrant.io:6333",
|
||||
api_key="<your-api-key>",
|
||||
cloud_inference=True,
|
||||
)
|
||||
|
||||
client.create_collection(
|
||||
collection_name="books",
|
||||
vectors_config={
|
||||
"description-dense": models.VectorParams(size=384, distance=models.Distance.COSINE)
|
||||
},
|
||||
sparse_vectors_config={
|
||||
"isbn-bm25": models.SparseVectorParams(modifier=models.Modifier.IDF)
|
||||
},
|
||||
)
|
||||
```
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
```rust
|
||||
use qdrant_client::Qdrant;
|
||||
use qdrant_client::qdrant::{
|
||||
CreateCollectionBuilder, Distance, Modifier, SparseVectorParamsBuilder,
|
||||
SparseVectorsConfigBuilder, VectorParamsBuilder, VectorsConfigBuilder,
|
||||
};
|
||||
|
||||
let mut vectors = VectorsConfigBuilder::default();
|
||||
vectors.add_named_vector_params(
|
||||
"description-dense",
|
||||
VectorParamsBuilder::new(384, Distance::Cosine),
|
||||
);
|
||||
|
||||
let mut sparse = SparseVectorsConfigBuilder::default();
|
||||
sparse.add_named_vector_params(
|
||||
"isbn-bm25",
|
||||
SparseVectorParamsBuilder::default().modifier(Modifier::Idf),
|
||||
);
|
||||
|
||||
client
|
||||
.create_collection(
|
||||
CreateCollectionBuilder::new("books")
|
||||
.vectors_config(vectors)
|
||||
.sparse_vectors_config(sparse),
|
||||
)
|
||||
.await?;
|
||||
```
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
```typescript
|
||||
client.createCollection("books", {
|
||||
vectors: {
|
||||
"description-dense": { size: 384, distance: "Cosine" },
|
||||
},
|
||||
sparse_vectors: {
|
||||
"isbn-bm25": { modifier: "idf" },
|
||||
},
|
||||
});
|
||||
```
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package snippet
|
||||
|
||||
// @hide-start
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/qdrant/go-client/qdrant"
|
||||
)
|
||||
|
||||
// @hide-end
|
||||
func Main() {
|
||||
//@hide-start
|
||||
client, err := qdrant.NewClient(&qdrant.Config{
|
||||
Host: "localhost",
|
||||
Port: 6334,
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
// @hide-end
|
||||
|
||||
client.CreateCollection(context.Background(), &qdrant.CreateCollection{
|
||||
CollectionName: "books",
|
||||
VectorsConfig: qdrant.NewVectorsConfigMap(
|
||||
map[string]*qdrant.VectorParams{
|
||||
"description-dense": {Size: 384, Distance: qdrant.Distance_Cosine},
|
||||
}),
|
||||
SparseVectorsConfig: qdrant.NewSparseVectorsConfig(
|
||||
map[string]*qdrant.SparseVectorParams{
|
||||
"isbn-bm25": {Modifier: qdrant.Modifier_Idf.Enum()},
|
||||
}),
|
||||
})
|
||||
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.example.snippets_amalgamation;
|
||||
|
||||
import io.qdrant.client.QdrantClient;
|
||||
import io.qdrant.client.QdrantGrpcClient;
|
||||
import io.qdrant.client.grpc.Collections.*;
|
||||
|
||||
public class Snippet {
|
||||
public static void run() throws Exception {
|
||||
QdrantClient client =
|
||||
new QdrantClient(QdrantGrpcClient.newBuilder("localhost", 6334, false).build()); // @hide
|
||||
|
||||
client
|
||||
.createCollectionAsync(
|
||||
CreateCollection.newBuilder()
|
||||
.setCollectionName("books")
|
||||
.setVectorsConfig(
|
||||
VectorsConfig.newBuilder()
|
||||
.setParamsMap(
|
||||
VectorParamsMap.newBuilder()
|
||||
.putMap(
|
||||
"description-dense",
|
||||
VectorParams.newBuilder()
|
||||
.setSize(384)
|
||||
.setDistance(Distance.Cosine)
|
||||
.build())
|
||||
.build())
|
||||
.build())
|
||||
.setSparseVectorsConfig(
|
||||
SparseVectorConfig.newBuilder()
|
||||
.putMap(
|
||||
"isbn-bm25",
|
||||
SparseVectorParams.newBuilder().setModifier(Modifier.Idf).build())
|
||||
.build())
|
||||
.build())
|
||||
.get();
|
||||
}
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
from qdrant_client import QdrantClient, models
|
||||
|
||||
client = QdrantClient(
|
||||
url="https://xyz-example.qdrant.io:6333",
|
||||
api_key="<your-api-key>",
|
||||
cloud_inference=True,
|
||||
)
|
||||
|
||||
client.create_collection(
|
||||
collection_name="books",
|
||||
vectors_config={
|
||||
"description-dense": models.VectorParams(size=384, distance=models.Distance.COSINE)
|
||||
},
|
||||
sparse_vectors_config={
|
||||
"isbn-bm25": models.SparseVectorParams(modifier=models.Modifier.IDF)
|
||||
},
|
||||
)
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
use qdrant_client::Qdrant;
|
||||
use qdrant_client::qdrant::{
|
||||
CreateCollectionBuilder, Distance, Modifier, SparseVectorParamsBuilder,
|
||||
SparseVectorsConfigBuilder, VectorParamsBuilder, VectorsConfigBuilder,
|
||||
};
|
||||
|
||||
pub async fn main() -> anyhow::Result<()> {
|
||||
let client = Qdrant::from_url("http://localhost:6334").build()?; // @hide
|
||||
|
||||
let mut vectors = VectorsConfigBuilder::default();
|
||||
vectors.add_named_vector_params(
|
||||
"description-dense",
|
||||
VectorParamsBuilder::new(384, Distance::Cosine),
|
||||
);
|
||||
|
||||
let mut sparse = SparseVectorsConfigBuilder::default();
|
||||
sparse.add_named_vector_params(
|
||||
"isbn-bm25",
|
||||
SparseVectorParamsBuilder::default().modifier(Modifier::Idf),
|
||||
);
|
||||
|
||||
client
|
||||
.create_collection(
|
||||
CreateCollectionBuilder::new("books")
|
||||
.vectors_config(vectors)
|
||||
.sparse_vectors_config(sparse),
|
||||
)
|
||||
.await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
import { QdrantClient } from "@qdrant/js-client-rest"; // @hide
|
||||
|
||||
const client = new QdrantClient({ host: "localhost", port: 6333 }); // @hide
|
||||
|
||||
client.createCollection("books", {
|
||||
vectors: {
|
||||
"description-dense": { size: 384, distance: "Cosine" },
|
||||
},
|
||||
sparse_vectors: {
|
||||
"isbn-bm25": { modifier: "idf" },
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user