VectorUpsert.fromIChunk constructor
VectorUpsert.fromIChunk({})
Implementation
factory VectorUpsert.fromIChunk({
required Object chunk,
String idPrefix = "",
Map<String, dynamic> metadata = const {},
}) {
dynamic candidate = chunk;
try {
int index = (candidate.index as num).toInt();
int charStart = (candidate.charStart as num).toInt();
int charEnd = (candidate.charEnd as num).toInt();
List<int> from =
((candidate.from as Iterable?) ?? const <int>[])
.map((value) => (value as num).toInt())
.toList();
return VectorUpsert(
id: "$idPrefix$index",
content: candidate.fullContent as String,
metadata: <String, dynamic>{
"index": index,
"start": charStart,
"length": charEnd > charStart ? charEnd - charStart : 0,
"lod": (candidate.lod as num).toInt(),
if (from.isNotEmpty) "from": from,
...metadata,
},
);
} catch (_) {
throw ArgumentError.value(
chunk,
'chunk',
'Expected an object compatible with agentic.IChunk.',
);
}
}