from pinecone.grpc import PineconeGRPC as Pinecone
pc = Pinecone(api_key="YOUR_API_KEY")
result = pc.inference.rerank(
model="bge-reranker-v2-m3",
query="The tech company Apple is known for its innovative products like the iPhone.",
documents=[
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."},
],
top_n=4,
return_documents=True,
parameters={
"truncate": "END"
}
)
print(result)
import { Pinecone } from '@pinecone-database/pinecone';
const pc = new Pinecone({ apiKey: 'YOUR_API_KEY' });
const rerankingModel = 'bge-reranker-v2-m3';
const query = 'The tech company Apple is known for its innovative products like the iPhone.';
const documents = [
{ id: 'vec1', text: 'Apple is a popular fruit known for its sweetness and crisp texture.' },
{ id: 'vec2', text: 'Many people enjoy eating apples as a healthy snack.' },
{ id: 'vec3', text: 'Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.' },
{ id: 'vec4', text: 'An apple a day keeps the doctor away, as the saying goes.' },
];
const rerankOptions = {
topN: 4,
returnDocuments: true,
parameters: {
truncate: 'END'
},
};
const response = await pc.inference.rerank(
rerankingModel,
query,
documents,
rerankOptions
);
console.log(response);
import io.pinecone.clients.Inference;
import io.pinecone.clients.Pinecone;
import org.openapitools.inference.client.model.RerankResult;
import org.openapitools.inference.client.ApiException;
import java.util.*;
public class RerankExample {
public static void main(String[] args) throws ApiException {
Pinecone pc = new Pinecone.Builder("YOUR_API_KEY").build();
Inference inference = pc.getInferenceClient();
// The model to use for reranking
String model = "bge-reranker-v2-m3";
// The query to rerank documents against
String query = "The tech company Apple is known for its innovative products like the iPhone.";
// Add the documents to rerank
List<Map<String, Object>> documents = new ArrayList<>();
Map<String, Object> doc1 = new HashMap<>();
doc1.put("id", "vec1");
doc1.put("text", "Apple is a popular fruit known for its sweetness and crisp texture.");
documents.add(doc1);
Map<String, Object> doc2 = new HashMap<>();
doc2.put("id", "vec2");
doc2.put("text", "Many people enjoy eating apples as a healthy snack.");
documents.add(doc2);
Map<String, Object> doc3 = new HashMap<>();
doc3.put("id", "vec3");
doc3.put("text", "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.");
documents.add(doc3);
Map<String, Object> doc4 = new HashMap<>();
doc4.put("id", "vec4");
doc4.put("text", "An apple a day keeps the doctor away, as the saying goes.");
documents.add(doc4);
// The fields to rank the documents by. If not provided, the default is "text"
List<String> rankFields = Arrays.asList("text");
// The number of results to return sorted by relevance. Defaults to the number of inputs
int topN = 4;
// Whether to return the documents in the response
boolean returnDocuments = true;
// Additional model-specific parameters for the reranker
Map<String, Object> parameters = new HashMap<>();
parameters.put("truncate", "END");
// Send ranking request
RerankResult result = inference.rerank(model, query, documents, rankFields, topN, returnDocuments, parameters);
// Get ranked data
System.out.println(result.getData());
}
}
package main
import (
"context"
"fmt"
"log"
"github.com/pinecone-io/go-pinecone/v4/pinecone"
)
func main() {
ctx := context.Background()
pc, err := pinecone.NewClient(pinecone.NewClientParams{
ApiKey: "YOUR_API_KEY",
})
if err != nil {
log.Fatalf("Failed to create Client: %v", err)
}
rerankModel := "bge-reranker-v2-m3"
topN := 4
returnDocuments := true
documents := []pinecone.Document{
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."},
}
ranking, err := pc.Inference.Rerank(ctx, &pinecone.RerankRequest{
Model: rerankModel,
Query: "The tech company Apple is known for its innovative products like the iPhone.",
ReturnDocuments: &returnDocuments,
TopN: &topN,
RankFields: &[]string{"text"},
Documents: documents,
})
if err != nil {
log.Fatalf("Failed to rerank: %v", err)
}
fmt.Printf("Rerank result: %+v\n", ranking)
}
using Pinecone;
var pinecone = new PineconeClient("YOUR_API_KEY");
// The model to use for reranking
var model = "bge-reranker-v2-m3";
// The query to rerank documents against
var query = "The tech company Apple is known for its innovative products like the iPhone.";
// Add the documents to rerank
var documents = new List<Dictionary<string, object>>
{
new()
{
["id"] = "vec1",
["my_field"] = "Apple is a popular fruit known for its sweetness and crisp texture."
},
new()
{
["id"] = "vec2",
["my_field"] = "Many people enjoy eating apples as a healthy snack."
},
new()
{
["id"] = "vec3",
["my_field"] =
"Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
new()
{
["id"] = "vec4",
["my_field"] = "An apple a day keeps the doctor away, as the saying goes."
}
};
// The fields to rank the documents by. If not provided, the default is "text"
var rankFields = new List<string> { "my_field" };
// The number of results to return sorted by relevance. Defaults to the number of inputs
int topN = 4;
// Whether to return the documents in the response
bool returnDocuments = true;
// Additional model-specific parameters for the reranker
var parameters = new Dictionary<string, object>
{
["truncate"] = "END"
};
// Send ranking request
var result = await pinecone.Inference.RerankAsync(
new RerankRequest
{
Model = model,
Query = query,
Documents = documents,
RankFields = rankFields,
TopN = topN,
ReturnDocuments = true,
Parameters = parameters
});
Console.WriteLine(result);
PINECONE_API_KEY="YOUR_API_KEY"
curl https://api.pinecone.io/rerank \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "X-Pinecone-Api-Version: 2025-04" \
-H "Api-Key: $PINECONE_API_KEY" \
-d '{
"model": "bge-reranker-v2-m3",
"query": "The tech company Apple is known for its innovative products like the iPhone.",
"return_documents": true,
"top_n": 4,
"documents": [
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."}
],
"parameters": {
"truncate": "END"
}
}'
RerankResult(
model='bge-reranker-v2-m3',
data=[
{ "index": 2, "score": 0.48357219,
"document": {"id": "vec3", "text": "Apple Inc. has re..."} },
{ "index": 0, "score": 0.048405956,
"document": {"id": "vec1", "text": "Apple is a popula..."} },
{ "index": 3, "score": 0.007846239,
"document": {"id": "vec4", "text": "An apple a day ke..."} },
{"index": 1, "score": 0.0006563728,
"document": {"id": "vec2", "text": "Many people enjoy..."}}
],
usage={'rerank_units': 1}
)
{
"model": "bge-reranker-v2-m3",
"data": [
{ "index": 2, "score": 0.48357219, "document": {} },
{ "index": 0, "score": 0.048405956, "document": {} },
{ "index": 3, "score": 0.007846239, "document": {} },
{ "index": 1, "score": 0.0006563728, "document": {} }
],
"usage": { "rerankUnits": 1 }
}
[class RankedDocument {
index: 2
score: 0.48357219
document: {id=vec3, text=Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.}
additionalProperties: null
}, class RankedDocument {
index: 0
score: 0.048405956
document: {id=vec1, text=Apple is a popular fruit known for its sweetness and crisp texture.}
additionalProperties: null
}, class RankedDocument {
index: 3
score: 0.007846239
document: {id=vec4, text=An apple a day keeps the doctor away, as the saying goes.}
additionalProperties: null
}, class RankedDocument {
index: 1
score: 0.0006563728
document: {id=vec2, text=Many people enjoy eating apples as a healthy snack.}
additionalProperties: null
}]
Rerank result: {
"data": [
{
"document": {
"id": "vec3",
"text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
"index": 2,
"score": 0.48357219
},
{
"document": {
"id": "vec1",
"text": "Apple is a popular fruit known for its sweetness and crisp texture."
},
"index": 0,
"score": 0.048405956
},
{
"document": {
"id": "vec4",
"text": "An apple a day keeps the doctor away, as the saying goes."
},
"index": 3,
"score": 0.007846239
},
{
"document": {
"id": "vec2",
"text": "Many people enjoy eating apples as a healthy snack."
},
"index": 1,
"score": 0.0006563728
}
],
"model": "bge-reranker-v2-m3",
"usage": {
"rerank_units": 1
}
}
{
"model": "bge-reranker-v2-m3",
"data": [
{
"index": 2,
"score": 0.48357219,
"document": {
"id": "vec3",
"my_field": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
}
},
{
"index": 0,
"score": 0.048405956,
"document": {
"id": "vec1",
"my_field": "Apple is a popular fruit known for its sweetness and crisp texture."
}
},
{
"index": 3,
"score": 0.007846239,
"document": {
"id": "vec4",
"my_field": "An apple a day keeps the doctor away, as the saying goes."
}
},
{
"index": 1,
"score": 0.0006563728,
"document": {
"id": "vec2",
"my_field": "Many people enjoy eating apples as a healthy snack."
}
}
],
"usage": {
"rerank_units": 1
}
}
{
"data":[
{
"index":2,
"document":{
"id":"vec3",
"text":"Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
"score":0.47654688
},
{
"index":0,
"document":{
"id":"vec1",
"text":"Apple is a popular fruit known for its sweetness and crisp texture."
},
"score":0.047963805
},
{
"index":3,
"document":{
"id":"vec4",
"text":"An apple a day keeps the doctor away, as the saying goes."
},
"score":0.007587992
},
{
"index":1,
"document":{
"id":"vec2",
"text":"Many people enjoy eating apples as a healthy snack."
},
"score":0.0006491712
}
],
"usage":{
"rerank_units":1
}
}
Rerank
Rerank documents
Rerank results according to their relevance to a query.
For guidance and examples, see Rerank results.
POST
/
rerank
from pinecone.grpc import PineconeGRPC as Pinecone
pc = Pinecone(api_key="YOUR_API_KEY")
result = pc.inference.rerank(
model="bge-reranker-v2-m3",
query="The tech company Apple is known for its innovative products like the iPhone.",
documents=[
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."},
],
top_n=4,
return_documents=True,
parameters={
"truncate": "END"
}
)
print(result)
import { Pinecone } from '@pinecone-database/pinecone';
const pc = new Pinecone({ apiKey: 'YOUR_API_KEY' });
const rerankingModel = 'bge-reranker-v2-m3';
const query = 'The tech company Apple is known for its innovative products like the iPhone.';
const documents = [
{ id: 'vec1', text: 'Apple is a popular fruit known for its sweetness and crisp texture.' },
{ id: 'vec2', text: 'Many people enjoy eating apples as a healthy snack.' },
{ id: 'vec3', text: 'Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.' },
{ id: 'vec4', text: 'An apple a day keeps the doctor away, as the saying goes.' },
];
const rerankOptions = {
topN: 4,
returnDocuments: true,
parameters: {
truncate: 'END'
},
};
const response = await pc.inference.rerank(
rerankingModel,
query,
documents,
rerankOptions
);
console.log(response);
import io.pinecone.clients.Inference;
import io.pinecone.clients.Pinecone;
import org.openapitools.inference.client.model.RerankResult;
import org.openapitools.inference.client.ApiException;
import java.util.*;
public class RerankExample {
public static void main(String[] args) throws ApiException {
Pinecone pc = new Pinecone.Builder("YOUR_API_KEY").build();
Inference inference = pc.getInferenceClient();
// The model to use for reranking
String model = "bge-reranker-v2-m3";
// The query to rerank documents against
String query = "The tech company Apple is known for its innovative products like the iPhone.";
// Add the documents to rerank
List<Map<String, Object>> documents = new ArrayList<>();
Map<String, Object> doc1 = new HashMap<>();
doc1.put("id", "vec1");
doc1.put("text", "Apple is a popular fruit known for its sweetness and crisp texture.");
documents.add(doc1);
Map<String, Object> doc2 = new HashMap<>();
doc2.put("id", "vec2");
doc2.put("text", "Many people enjoy eating apples as a healthy snack.");
documents.add(doc2);
Map<String, Object> doc3 = new HashMap<>();
doc3.put("id", "vec3");
doc3.put("text", "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.");
documents.add(doc3);
Map<String, Object> doc4 = new HashMap<>();
doc4.put("id", "vec4");
doc4.put("text", "An apple a day keeps the doctor away, as the saying goes.");
documents.add(doc4);
// The fields to rank the documents by. If not provided, the default is "text"
List<String> rankFields = Arrays.asList("text");
// The number of results to return sorted by relevance. Defaults to the number of inputs
int topN = 4;
// Whether to return the documents in the response
boolean returnDocuments = true;
// Additional model-specific parameters for the reranker
Map<String, Object> parameters = new HashMap<>();
parameters.put("truncate", "END");
// Send ranking request
RerankResult result = inference.rerank(model, query, documents, rankFields, topN, returnDocuments, parameters);
// Get ranked data
System.out.println(result.getData());
}
}
package main
import (
"context"
"fmt"
"log"
"github.com/pinecone-io/go-pinecone/v4/pinecone"
)
func main() {
ctx := context.Background()
pc, err := pinecone.NewClient(pinecone.NewClientParams{
ApiKey: "YOUR_API_KEY",
})
if err != nil {
log.Fatalf("Failed to create Client: %v", err)
}
rerankModel := "bge-reranker-v2-m3"
topN := 4
returnDocuments := true
documents := []pinecone.Document{
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."},
}
ranking, err := pc.Inference.Rerank(ctx, &pinecone.RerankRequest{
Model: rerankModel,
Query: "The tech company Apple is known for its innovative products like the iPhone.",
ReturnDocuments: &returnDocuments,
TopN: &topN,
RankFields: &[]string{"text"},
Documents: documents,
})
if err != nil {
log.Fatalf("Failed to rerank: %v", err)
}
fmt.Printf("Rerank result: %+v\n", ranking)
}
using Pinecone;
var pinecone = new PineconeClient("YOUR_API_KEY");
// The model to use for reranking
var model = "bge-reranker-v2-m3";
// The query to rerank documents against
var query = "The tech company Apple is known for its innovative products like the iPhone.";
// Add the documents to rerank
var documents = new List<Dictionary<string, object>>
{
new()
{
["id"] = "vec1",
["my_field"] = "Apple is a popular fruit known for its sweetness and crisp texture."
},
new()
{
["id"] = "vec2",
["my_field"] = "Many people enjoy eating apples as a healthy snack."
},
new()
{
["id"] = "vec3",
["my_field"] =
"Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
new()
{
["id"] = "vec4",
["my_field"] = "An apple a day keeps the doctor away, as the saying goes."
}
};
// The fields to rank the documents by. If not provided, the default is "text"
var rankFields = new List<string> { "my_field" };
// The number of results to return sorted by relevance. Defaults to the number of inputs
int topN = 4;
// Whether to return the documents in the response
bool returnDocuments = true;
// Additional model-specific parameters for the reranker
var parameters = new Dictionary<string, object>
{
["truncate"] = "END"
};
// Send ranking request
var result = await pinecone.Inference.RerankAsync(
new RerankRequest
{
Model = model,
Query = query,
Documents = documents,
RankFields = rankFields,
TopN = topN,
ReturnDocuments = true,
Parameters = parameters
});
Console.WriteLine(result);
PINECONE_API_KEY="YOUR_API_KEY"
curl https://api.pinecone.io/rerank \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "X-Pinecone-Api-Version: 2025-04" \
-H "Api-Key: $PINECONE_API_KEY" \
-d '{
"model": "bge-reranker-v2-m3",
"query": "The tech company Apple is known for its innovative products like the iPhone.",
"return_documents": true,
"top_n": 4,
"documents": [
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."}
],
"parameters": {
"truncate": "END"
}
}'
RerankResult(
model='bge-reranker-v2-m3',
data=[
{ "index": 2, "score": 0.48357219,
"document": {"id": "vec3", "text": "Apple Inc. has re..."} },
{ "index": 0, "score": 0.048405956,
"document": {"id": "vec1", "text": "Apple is a popula..."} },
{ "index": 3, "score": 0.007846239,
"document": {"id": "vec4", "text": "An apple a day ke..."} },
{"index": 1, "score": 0.0006563728,
"document": {"id": "vec2", "text": "Many people enjoy..."}}
],
usage={'rerank_units': 1}
)
{
"model": "bge-reranker-v2-m3",
"data": [
{ "index": 2, "score": 0.48357219, "document": {} },
{ "index": 0, "score": 0.048405956, "document": {} },
{ "index": 3, "score": 0.007846239, "document": {} },
{ "index": 1, "score": 0.0006563728, "document": {} }
],
"usage": { "rerankUnits": 1 }
}
[class RankedDocument {
index: 2
score: 0.48357219
document: {id=vec3, text=Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.}
additionalProperties: null
}, class RankedDocument {
index: 0
score: 0.048405956
document: {id=vec1, text=Apple is a popular fruit known for its sweetness and crisp texture.}
additionalProperties: null
}, class RankedDocument {
index: 3
score: 0.007846239
document: {id=vec4, text=An apple a day keeps the doctor away, as the saying goes.}
additionalProperties: null
}, class RankedDocument {
index: 1
score: 0.0006563728
document: {id=vec2, text=Many people enjoy eating apples as a healthy snack.}
additionalProperties: null
}]
Rerank result: {
"data": [
{
"document": {
"id": "vec3",
"text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
"index": 2,
"score": 0.48357219
},
{
"document": {
"id": "vec1",
"text": "Apple is a popular fruit known for its sweetness and crisp texture."
},
"index": 0,
"score": 0.048405956
},
{
"document": {
"id": "vec4",
"text": "An apple a day keeps the doctor away, as the saying goes."
},
"index": 3,
"score": 0.007846239
},
{
"document": {
"id": "vec2",
"text": "Many people enjoy eating apples as a healthy snack."
},
"index": 1,
"score": 0.0006563728
}
],
"model": "bge-reranker-v2-m3",
"usage": {
"rerank_units": 1
}
}
{
"model": "bge-reranker-v2-m3",
"data": [
{
"index": 2,
"score": 0.48357219,
"document": {
"id": "vec3",
"my_field": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
}
},
{
"index": 0,
"score": 0.048405956,
"document": {
"id": "vec1",
"my_field": "Apple is a popular fruit known for its sweetness and crisp texture."
}
},
{
"index": 3,
"score": 0.007846239,
"document": {
"id": "vec4",
"my_field": "An apple a day keeps the doctor away, as the saying goes."
}
},
{
"index": 1,
"score": 0.0006563728,
"document": {
"id": "vec2",
"my_field": "Many people enjoy eating apples as a healthy snack."
}
}
],
"usage": {
"rerank_units": 1
}
}
{
"data":[
{
"index":2,
"document":{
"id":"vec3",
"text":"Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
"score":0.47654688
},
{
"index":0,
"document":{
"id":"vec1",
"text":"Apple is a popular fruit known for its sweetness and crisp texture."
},
"score":0.047963805
},
{
"index":3,
"document":{
"id":"vec4",
"text":"An apple a day keeps the doctor away, as the saying goes."
},
"score":0.007587992
},
{
"index":1,
"document":{
"id":"vec2",
"text":"Many people enjoy eating apples as a healthy snack."
},
"score":0.0006491712
}
],
"usage":{
"rerank_units":1
}
}
from pinecone.grpc import PineconeGRPC as Pinecone
pc = Pinecone(api_key="YOUR_API_KEY")
result = pc.inference.rerank(
model="bge-reranker-v2-m3",
query="The tech company Apple is known for its innovative products like the iPhone.",
documents=[
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."},
],
top_n=4,
return_documents=True,
parameters={
"truncate": "END"
}
)
print(result)
import { Pinecone } from '@pinecone-database/pinecone';
const pc = new Pinecone({ apiKey: 'YOUR_API_KEY' });
const rerankingModel = 'bge-reranker-v2-m3';
const query = 'The tech company Apple is known for its innovative products like the iPhone.';
const documents = [
{ id: 'vec1', text: 'Apple is a popular fruit known for its sweetness and crisp texture.' },
{ id: 'vec2', text: 'Many people enjoy eating apples as a healthy snack.' },
{ id: 'vec3', text: 'Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.' },
{ id: 'vec4', text: 'An apple a day keeps the doctor away, as the saying goes.' },
];
const rerankOptions = {
topN: 4,
returnDocuments: true,
parameters: {
truncate: 'END'
},
};
const response = await pc.inference.rerank(
rerankingModel,
query,
documents,
rerankOptions
);
console.log(response);
import io.pinecone.clients.Inference;
import io.pinecone.clients.Pinecone;
import org.openapitools.inference.client.model.RerankResult;
import org.openapitools.inference.client.ApiException;
import java.util.*;
public class RerankExample {
public static void main(String[] args) throws ApiException {
Pinecone pc = new Pinecone.Builder("YOUR_API_KEY").build();
Inference inference = pc.getInferenceClient();
// The model to use for reranking
String model = "bge-reranker-v2-m3";
// The query to rerank documents against
String query = "The tech company Apple is known for its innovative products like the iPhone.";
// Add the documents to rerank
List<Map<String, Object>> documents = new ArrayList<>();
Map<String, Object> doc1 = new HashMap<>();
doc1.put("id", "vec1");
doc1.put("text", "Apple is a popular fruit known for its sweetness and crisp texture.");
documents.add(doc1);
Map<String, Object> doc2 = new HashMap<>();
doc2.put("id", "vec2");
doc2.put("text", "Many people enjoy eating apples as a healthy snack.");
documents.add(doc2);
Map<String, Object> doc3 = new HashMap<>();
doc3.put("id", "vec3");
doc3.put("text", "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.");
documents.add(doc3);
Map<String, Object> doc4 = new HashMap<>();
doc4.put("id", "vec4");
doc4.put("text", "An apple a day keeps the doctor away, as the saying goes.");
documents.add(doc4);
// The fields to rank the documents by. If not provided, the default is "text"
List<String> rankFields = Arrays.asList("text");
// The number of results to return sorted by relevance. Defaults to the number of inputs
int topN = 4;
// Whether to return the documents in the response
boolean returnDocuments = true;
// Additional model-specific parameters for the reranker
Map<String, Object> parameters = new HashMap<>();
parameters.put("truncate", "END");
// Send ranking request
RerankResult result = inference.rerank(model, query, documents, rankFields, topN, returnDocuments, parameters);
// Get ranked data
System.out.println(result.getData());
}
}
package main
import (
"context"
"fmt"
"log"
"github.com/pinecone-io/go-pinecone/v4/pinecone"
)
func main() {
ctx := context.Background()
pc, err := pinecone.NewClient(pinecone.NewClientParams{
ApiKey: "YOUR_API_KEY",
})
if err != nil {
log.Fatalf("Failed to create Client: %v", err)
}
rerankModel := "bge-reranker-v2-m3"
topN := 4
returnDocuments := true
documents := []pinecone.Document{
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."},
}
ranking, err := pc.Inference.Rerank(ctx, &pinecone.RerankRequest{
Model: rerankModel,
Query: "The tech company Apple is known for its innovative products like the iPhone.",
ReturnDocuments: &returnDocuments,
TopN: &topN,
RankFields: &[]string{"text"},
Documents: documents,
})
if err != nil {
log.Fatalf("Failed to rerank: %v", err)
}
fmt.Printf("Rerank result: %+v\n", ranking)
}
using Pinecone;
var pinecone = new PineconeClient("YOUR_API_KEY");
// The model to use for reranking
var model = "bge-reranker-v2-m3";
// The query to rerank documents against
var query = "The tech company Apple is known for its innovative products like the iPhone.";
// Add the documents to rerank
var documents = new List<Dictionary<string, object>>
{
new()
{
["id"] = "vec1",
["my_field"] = "Apple is a popular fruit known for its sweetness and crisp texture."
},
new()
{
["id"] = "vec2",
["my_field"] = "Many people enjoy eating apples as a healthy snack."
},
new()
{
["id"] = "vec3",
["my_field"] =
"Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
new()
{
["id"] = "vec4",
["my_field"] = "An apple a day keeps the doctor away, as the saying goes."
}
};
// The fields to rank the documents by. If not provided, the default is "text"
var rankFields = new List<string> { "my_field" };
// The number of results to return sorted by relevance. Defaults to the number of inputs
int topN = 4;
// Whether to return the documents in the response
bool returnDocuments = true;
// Additional model-specific parameters for the reranker
var parameters = new Dictionary<string, object>
{
["truncate"] = "END"
};
// Send ranking request
var result = await pinecone.Inference.RerankAsync(
new RerankRequest
{
Model = model,
Query = query,
Documents = documents,
RankFields = rankFields,
TopN = topN,
ReturnDocuments = true,
Parameters = parameters
});
Console.WriteLine(result);
PINECONE_API_KEY="YOUR_API_KEY"
curl https://api.pinecone.io/rerank \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "X-Pinecone-Api-Version: 2025-04" \
-H "Api-Key: $PINECONE_API_KEY" \
-d '{
"model": "bge-reranker-v2-m3",
"query": "The tech company Apple is known for its innovative products like the iPhone.",
"return_documents": true,
"top_n": 4,
"documents": [
{"id": "vec1", "text": "Apple is a popular fruit known for its sweetness and crisp texture."},
{"id": "vec2", "text": "Many people enjoy eating apples as a healthy snack."},
{"id": "vec3", "text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."},
{"id": "vec4", "text": "An apple a day keeps the doctor away, as the saying goes."}
],
"parameters": {
"truncate": "END"
}
}'
RerankResult(
model='bge-reranker-v2-m3',
data=[
{ "index": 2, "score": 0.48357219,
"document": {"id": "vec3", "text": "Apple Inc. has re..."} },
{ "index": 0, "score": 0.048405956,
"document": {"id": "vec1", "text": "Apple is a popula..."} },
{ "index": 3, "score": 0.007846239,
"document": {"id": "vec4", "text": "An apple a day ke..."} },
{"index": 1, "score": 0.0006563728,
"document": {"id": "vec2", "text": "Many people enjoy..."}}
],
usage={'rerank_units': 1}
)
{
"model": "bge-reranker-v2-m3",
"data": [
{ "index": 2, "score": 0.48357219, "document": {} },
{ "index": 0, "score": 0.048405956, "document": {} },
{ "index": 3, "score": 0.007846239, "document": {} },
{ "index": 1, "score": 0.0006563728, "document": {} }
],
"usage": { "rerankUnits": 1 }
}
[class RankedDocument {
index: 2
score: 0.48357219
document: {id=vec3, text=Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces.}
additionalProperties: null
}, class RankedDocument {
index: 0
score: 0.048405956
document: {id=vec1, text=Apple is a popular fruit known for its sweetness and crisp texture.}
additionalProperties: null
}, class RankedDocument {
index: 3
score: 0.007846239
document: {id=vec4, text=An apple a day keeps the doctor away, as the saying goes.}
additionalProperties: null
}, class RankedDocument {
index: 1
score: 0.0006563728
document: {id=vec2, text=Many people enjoy eating apples as a healthy snack.}
additionalProperties: null
}]
Rerank result: {
"data": [
{
"document": {
"id": "vec3",
"text": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
"index": 2,
"score": 0.48357219
},
{
"document": {
"id": "vec1",
"text": "Apple is a popular fruit known for its sweetness and crisp texture."
},
"index": 0,
"score": 0.048405956
},
{
"document": {
"id": "vec4",
"text": "An apple a day keeps the doctor away, as the saying goes."
},
"index": 3,
"score": 0.007846239
},
{
"document": {
"id": "vec2",
"text": "Many people enjoy eating apples as a healthy snack."
},
"index": 1,
"score": 0.0006563728
}
],
"model": "bge-reranker-v2-m3",
"usage": {
"rerank_units": 1
}
}
{
"model": "bge-reranker-v2-m3",
"data": [
{
"index": 2,
"score": 0.48357219,
"document": {
"id": "vec3",
"my_field": "Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
}
},
{
"index": 0,
"score": 0.048405956,
"document": {
"id": "vec1",
"my_field": "Apple is a popular fruit known for its sweetness and crisp texture."
}
},
{
"index": 3,
"score": 0.007846239,
"document": {
"id": "vec4",
"my_field": "An apple a day keeps the doctor away, as the saying goes."
}
},
{
"index": 1,
"score": 0.0006563728,
"document": {
"id": "vec2",
"my_field": "Many people enjoy eating apples as a healthy snack."
}
}
],
"usage": {
"rerank_units": 1
}
}
{
"data":[
{
"index":2,
"document":{
"id":"vec3",
"text":"Apple Inc. has revolutionized the tech industry with its sleek designs and user-friendly interfaces."
},
"score":0.47654688
},
{
"index":0,
"document":{
"id":"vec1",
"text":"Apple is a popular fruit known for its sweetness and crisp texture."
},
"score":0.047963805
},
{
"index":3,
"document":{
"id":"vec4",
"text":"An apple a day keeps the doctor away, as the saying goes."
},
"score":0.007587992
},
{
"index":1,
"document":{
"id":"vec2",
"text":"Many people enjoy eating apples as a healthy snack."
},
"score":0.0006491712
}
],
"usage":{
"rerank_units":1
}
}
Authorizations
Body
application/json
Rerank documents for the given query
The query to rerank documents against.
Example:
"What is the capital of France?"
The documents to rerank.
The number of results to return sorted by relevance. Defaults to the number of inputs.
Example:
5
Whether to return the documents in the response.
Example:
true
The field(s) to consider for reranking. If not provided, the default is ["text"].
The number of fields supported is model-specific.
Additional model-specific parameters. Refer to the model guide for available model parameters.
Example:
{ "truncate": "END" }
Was this page helpful?
⌘I