flutter_edge_ai_embeddings library

The embedding tokenizers for flutter_edge_ai.

Gemma SentencePiece and BERT-family WordPiece, task-type prefixing, and the routing that picks between them — registered as a GemmaEmbeddingTokenizers provider. The embedding pass SPI, the hosts that run passes and the pooling live in flutter_edge_ai itself (package:flutter_edge_ai/engine.dart), so no engine depends on this package.

To actually run embeddings, add an engine package that provides an EmbeddingBackendProvider — e.g. flutter_edge_ai_litertlm's LiteRtEmbeddingBackend — and register it:

import 'package:flutter_edge_ai/flutter_edge_ai.dart';
import 'package:flutter_edge_ai_litertlm/flutter_edge_ai_litertlm.dart';

await FlutterEdgeAi.initialize(
  embeddingBackends: [LiteRtEmbeddingBackend()],
  embeddingTokenizers: [GemmaEmbeddingTokenizers()],
);

A .litertlm embedder (EmbeddingGemma 2) carries its own tokenizer and needs nothing from this package.

Classes

GemmaEmbeddingTokenizers
The tokenizer families this package implements: Gemma SentencePiece, BERT-family WordPiece, and a loud refusal for a SigLIP 2 tokenizer.json that would otherwise be silently mis-tokenized with Gemma's convention.