Skip to content

Reranking

Use the Go SDK to rank candidate documents by relevance to a query.

Provider/model examples:

  • Cohere: Provider: schemas.Cohere, Model: "rerank-v3.5"
  • vLLM: Provider: schemas.VLLM, Model: "BAAI/bge-reranker-v2-m3"
package main
import (
"context"
"fmt"
deepintshield "github.com/maximhq/deepintshield/core"
"github.com/maximhq/deepintshield/core/schemas"
)
func main() {
client, err := deepintshield.Init(context.Background(), schemas.DeepIntShieldConfig{
Account: &MyAccount{},
})
if err != nil {
panic(err)
}
defer client.Shutdown()
request := &schemas.DeepIntShieldRerankRequest{
Provider: schemas.Cohere,
Model: "rerank-v3.5",
Query: "What is DeepIntShield?",
Documents: []schemas.RerankDocument{
{Text: "DeepIntShield is an AI gateway that unifies many LLM providers."},
{Text: "Paris is the capital of France."},
{Text: "DeepIntShield exposes an OpenAI-compatible API."},
},
Params: &schemas.RerankParameters{
TopN: deepintshield.Ptr(2),
ReturnDocuments: deepintshield.Ptr(true),
},
}
resp, bfErr := client.RerankRequest(schemas.NewDeepIntShieldContext(context.Background(), schemas.NoDeadline), request)
if bfErr != nil {
panic(bfErr.Error.Message)
}
for _, result := range resp.Results {
fmt.Printf("index=%d score=%.4f\n", result.Index, result.RelevanceScore)
}
}
  • Provider, Model: provider/model to use for rerank
  • Query: query text
  • Documents: documents to score (text, optional id, meta)
  • Params.TopN: max result count
  • Params.MaxTokensPerDoc: provider-dependent token cap
  • Params.Priority: provider-dependent priority hint
  • Params.ReturnDocuments: include source document in each result
  • Fallbacks: fallback provider/model choices

For vLLM, set Provider to schemas.VLLM and use the upstream model ID as Model (without the vllm/ prefix that is used in Gateway HTTP requests).

DeepIntShieldRerankResponse includes:

  • Results []RerankResult (index, relevance_score, optional document)
  • Model
  • optional Usage
  • ExtraFields metadata (provider, latency, request_type, etc.)