Documentation
¶
Overview ¶
Package rerank adapts dedicated rerank models to the rag Refiner contract. It validates model indices and resolves them against the original candidate order, preserving document identity and result ownership.
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNilModel = errors.New("rag: rerank model must not be nil")
ErrNilModel rejects a dedicated reranker without its sole dependency.
Functions ¶
This section is empty.
Types ¶
type Refiner ¶
type Refiner struct {
// contains filtered or unexported fields
}
Refiner adapts a dedicated reranking model to the Refiner lifecycle. It formats candidates once and resolves returned indices against the immutable input snapshot.
Example ¶
package main
import (
"context"
"fmt"
"github.com/Tangerg/scope/core/document"
"github.com/Tangerg/scope/core/rerank"
"github.com/Tangerg/scope/rag"
ragrerank "github.com/Tangerg/scope/rag/rerank"
)
func main() {
model := rerank.ModelFunc(func(context.Context, *rerank.Request) (*rerank.Response, error) {
return &rerank.Response{Results: []*rerank.Result{{Index: 0, Score: 0.9}}}, nil
})
refiner, err := ragrerank.NewRefiner(ragrerank.RefinerConfig{Model: model, TopK: 1})
if err != nil {
panic(err)
}
query, err := rag.NewQuery("Go design")
if err != nil {
panic(err)
}
doc, err := document.NewDocument("Go favors explicit composition.", nil)
if err != nil {
panic(err)
}
result, err := refiner.Refine(context.Background(), query, rag.Candidates{{Document: doc}})
if err != nil {
panic(err)
}
fmt.Println(result[0].Score)
}
Output: 0.9
func NewRefiner ¶
func NewRefiner(config RefinerConfig) (*Refiner, error)
NewRefiner freezes defaults while leaving query-specific limits on Refine.
type RefinerConfig ¶
type RefinerConfig struct {
Model corererank.Model
// Formatter defaults to [rag.TextFormatter], which rejects media with
// [rag.ErrUnsupportedMedia].
Formatter rag.DocumentFormatter
TopK int
}
RefinerConfig binds a dedicated rerank model to portable request defaults.
func (RefinerConfig) Validate ¶
func (r RefinerConfig) Validate() error
Click to show internal directories.
Click to hide internal directories.