runtime

package
v1.4.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 3, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

Package runtime 提供 RAG 运行时的唯一构建入口。

所有 RAG 实例必须通过 Builder 构建,不允许并行工厂路径。

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Builder

type Builder struct {
	// contains filtered or unexported fields
}

Builder 是 RAG 运行时的唯一构建器。 所有 RAG 实例必须通过此入口构建。

func NewBuilder

func NewBuilder(cfg *config.Config, logger *zap.Logger) *Builder

NewBuilder 创建构建器。cfg 可以为 nil(使用 WithAPIKey 或直接注入 provider)。

func (*Builder) BuildEnhancedRetriever

func (b *Builder) BuildEnhancedRetriever() (*rag.EnhancedRetriever, error)

BuildEnhancedRetriever 构建增强检索器。 这是 RAG 层的主要入口,统一了 vector store、embedding、rerank 的组装。

func (*Builder) BuildHybridRetriever

func (b *Builder) BuildHybridRetriever() (*rag.HybridRetriever, error)

BuildHybridRetriever 构建混合检索器(不依赖外部 provider)。

func (*Builder) BuildHybridRetrieverWithVectorStore

func (b *Builder) BuildHybridRetrieverWithVectorStore() (*rag.HybridRetriever, error)

BuildHybridRetrieverWithVectorStore 构建带向量存储的混合检索器。

func (*Builder) BuildProviders

func (b *Builder) BuildProviders() (*Providers, error)

BuildProviders 构建 RAG 运行时所需 provider 依赖。

func (*Builder) BuildVectorStore

func (b *Builder) BuildVectorStore() (core.VectorStore, error)

BuildVectorStore 构建向量存储实例。

func (*Builder) WithAPIKey

func (b *Builder) WithAPIKey(apiKey string) *Builder

WithAPIKey 覆盖配置中的 API Key。

func (*Builder) WithEmbeddingProvider

func (b *Builder) WithEmbeddingProvider(p core.EmbeddingProvider) *Builder

WithEmbeddingProvider 直接注入 embedding provider。

func (*Builder) WithEmbeddingType

func (b *Builder) WithEmbeddingType(t core.EmbeddingProviderType) *Builder

WithEmbeddingType 指定 embedding provider 类型。

func (*Builder) WithHybridConfig

func (b *Builder) WithHybridConfig(cfg rag.HybridRetrievalConfig) *Builder

WithHybridConfig 覆盖混合检索配置。

func (*Builder) WithLogger

func (b *Builder) WithLogger(logger *zap.Logger) *Builder

WithLogger 设置日志记录器。

func (*Builder) WithRerankProvider

func (b *Builder) WithRerankProvider(p core.RerankProvider) *Builder

WithRerankProvider 直接注入 rerank provider。

func (*Builder) WithRerankType

func (b *Builder) WithRerankType(t core.RerankProviderType) *Builder

WithRerankType 指定 rerank provider 类型。

func (*Builder) WithVectorStore

func (b *Builder) WithVectorStore(store core.VectorStore) *Builder

WithVectorStore 直接注入向量存储实例。

func (*Builder) WithVectorStoreType

func (b *Builder) WithVectorStoreType(t core.VectorStoreType) *Builder

WithVectorStoreType 指定向量存储后端类型。

type Providers

type Providers struct {
	Embedding core.EmbeddingProvider
	Rerank    core.RerankProvider
}

Providers 是 runtime 构建得到的 provider 依赖集合。

type SemanticCache

type SemanticCache struct {
	// contains filtered or unexported fields
}

SemanticCache 提供基于向量相似度的查询缓存。

func NewSemanticCache

func NewSemanticCache(store core.VectorStore, cfg SemanticCacheConfig, logger *zap.Logger) (*SemanticCache, error)

NewSemanticCache 创建 runtime 语义缓存实例。

func (*SemanticCache) Clear

func (c *SemanticCache) Clear(ctx context.Context) error

Clear 清理缓存数据。

func (*SemanticCache) Get

func (c *SemanticCache) Get(ctx context.Context, queryEmbedding []float64) (*core.Document, bool)

Get 根据查询向量读取缓存。

func (*SemanticCache) Set

func (c *SemanticCache) Set(ctx context.Context, doc core.Document) error

Set 写入缓存文档。

type SemanticCacheConfig

type SemanticCacheConfig struct {
	SimilarityThreshold float64
}

SemanticCacheConfig 定义 runtime 语义缓存配置。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL