dart_vector_embedding 0.1.1 copy "dart_vector_embedding: ^0.1.1" to clipboard
dart_vector_embedding: ^0.1.1 copied to clipboard

Cross-platform Dart Native GGUF embeddings via llama.cpp with shared per-model concurrency and native async callbacks.

example/example.dart

import 'dart:typed_data';

import 'package:dart_vector_embedding/dart_vector_embedding.dart';

Future<void> main() async {
  final embedder = await Embedder.open(
    modelPath: 'models/embeddinggemma-300M-qat-Q4_0.gguf',
    outDim: 256,
  );

  try {
    final query = await embedder.embed(
      'Which planet is known as the Red Planet?',
    );

    final docs = await embedder.embedBatch([
      "Venus is often called Earth's twin.",
      'Mars, the reddish planet, is the Red Planet.',
    ]);

    for (final (i, d) in docs.indexed) {
      print('doc $i cosine=${cosine(query, d).toStringAsFixed(4)}');
    }
  } finally {
    await embedder.close();
  }
}

double cosine(Float32List a, Float32List b) {
  var dot = 0.0;
  for (var i = 0; i < a.length; i++) {
    dot += a[i] * b[i];
  }
  return dot;
}
0
likes
160
points
29
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Cross-platform Dart Native GGUF embeddings via llama.cpp with shared per-model concurrency and native async callbacks.

Repository (GitHub)
View/report issues

Topics

#ffi #embeddings #gguf #llama-cpp

License

MIT (license)

Dependencies

code_assets, ffi, hooks, native_toolchain_c

More

Packages that depend on dart_vector_embedding