addDocument method

  1. @override
Future<void> addDocument({
  1. required String id,
  2. required String content,
  3. String? metadata,
})
override

Add document to vector store (will compute embedding automatically).

Implementation

@override
Future<void> addDocument({
  required String id,
  required String content,
  String? metadata,
}) async {
  if (_vectorStoreRepository == null) {
    throw StateError('VectorStore not initialized. Call initializeVectorStore() first.');
  }

  if (_initializedEmbeddingModel == null) {
    throw StateError('Embedding model not created. Call createEmbeddingModel() first.');
  }

  // Generate embedding and add document
  final embedding = await _initializedEmbeddingModel!.generateEmbedding(content);
  await _vectorStoreRepository!.addDocument(
    id: id,
    content: content,
    embedding: embedding,
    metadata: metadata,
  );
}