mirror of
https://github.com/qdrant/landing_page.git
synced 2026-10-10 05:18:32 +02:00
* Break Inference page into several pages * Make all inference code snippets testable and clean up * Make more snippets testable * Edits * Document automatic query and passage prefix injection in Cloud Inference Qdrant Cloud Inference silently applies model-specific prefixes (e.g. "query: "/"passage: " for E5, BGE-style instruction prefix for BGE/mxbai/ Snowflake arctic-embed) so users don't need to manage them manually. Add a section explaining this behavior, the idempotency guarantee, and the scope (Qdrant-hosted models only; external providers handle their own). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Document short query optimization in Cloud Inference Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Update links * Expand on external provider API key usage * Add section about external provider API keys * Default to header for external API keys --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
45 lines
1.7 KiB
Java
45 lines
1.7 KiB
Java
package com.example.snippets_amalgamation;
|
|
|
|
import static io.qdrant.client.QueryFactory.nearest;
|
|
import static io.qdrant.client.ValueFactory.value;
|
|
|
|
import io.grpc.Context;
|
|
import io.qdrant.client.QdrantClient;
|
|
import io.qdrant.client.QdrantGrpcClient;
|
|
import io.qdrant.client.RequestHeaders;
|
|
import io.qdrant.client.grpc.Points.Document;
|
|
import io.qdrant.client.grpc.Points.QueryPoints;
|
|
import java.util.Map;
|
|
|
|
public class Snippet {
|
|
public static void run() throws Exception {
|
|
// @hide-start
|
|
QdrantClient client =
|
|
new QdrantClient(
|
|
QdrantGrpcClient.newBuilder("xyz-example.qdrant.io", 6334, true)
|
|
.withApiKey("<your-api-key")
|
|
.build());
|
|
// @hide-end
|
|
|
|
Context ctx = RequestHeaders.withHeader(
|
|
Context.current(), "openai-api-key", "<YOUR_OPENAI_API_KEY>");
|
|
|
|
ctx.call(() -> client
|
|
.queryAsync(
|
|
QueryPoints.newBuilder()
|
|
.setCollectionName("{collection_name}")
|
|
.setQuery(
|
|
nearest(
|
|
Document.newBuilder()
|
|
.setModel("openai/text-embedding-3-large")
|
|
.setText("How to bake cookies?")
|
|
.putAllOptions(
|
|
Map.of(
|
|
"dimensions",
|
|
value(512)))
|
|
.build()))
|
|
.build())
|
|
.get());
|
|
}
|
|
}
|