跳转至

API 参考#

NLQL 的 public API 按 9 个分组组织,均可从 import nlql 顶层获取。下面列出各组的核心入口,完整签名见各模块页。

引擎与构造#

Engine 是应用主入口,QueryBuilder 是链式构造器。

  • Engine, QueryBuilder, select, F, Meta, content, field, similarity, contains, length
  • 模块:nlql.sdk

数据模型#

Document / Payload / Unit / Modality

  • Document, Payload, Unit, Modality, UnitKind, Span, Vector
  • 模块:nlql.model

语言与 IR#

parse 把 NLQL 语句编译到 Query IR;query_json_schema 导出 JSON Schema。

  • parse, NLQLParser · 模块:nlql.lang
  • Query, Select, Binding, Literal, Path, Ref, Call, Compare 等 · 模块:nlql.ir

Embedder#

Embedder 协议与后端实现、MultimodalEmbedder(文本与图像同空间)、EmbeddingCache

  • Embedder, FakeEmbedder, OpenAIEmbedder, CachedEmbedder, EmbeddingCache, MultimodalEmbedder, FakeMultimodalEmbedder, DoubaoVisionEmbedder
  • 模块:nlql.embed

Reranker#

Reranker 协议,第二段精排。

  • Reranker, FakeReranker, CrossEncoderReranker
  • 模块:nlql.rerank

Store#

Store 接口与 StoreCaps 能力描述,内置 LocalStore。后端适配器见 Store 页底部

  • Store, StoreCaps, LocalStore, matches_filter
  • 模块:nlql.store

Registry#

Registry 统一注册算子、分词器、embedder、模态。

  • Registry, GLOBAL_REGISTRY, Capability, register_function, register_splitter
  • 模块:nlql.registry

Ingestion#

IngestionPipeline 写入流水线与分词器。

  • IngestionPipeline, Normalizer, DefaultNormalizer, split_sentences, split_chunks, make_pysbd_splitter
  • 模块:nlql.ingest

Planner / Executor / Loaders / Types / Errors#