.Net: [MEVD] Review our attribute design #11318
Labels
Build
Features planned for next Build conference
msft.ext.vectordata
Related to Microsoft.Extensions.VectorData
.NET
Issue or Pull requests regarding .NET code
VectorStoreRecordDataAttribute and VectorStoreRecordKeyAttribute have no constructors, and only have properties (note that some have
set;
, othersinit;
.In contrast, VectorStoreRecordVectorAttribute has 4 constructors, with all but StoragePropertyName being private. The Dimensions property is a nullable int, but the parameter in the various constructors is non-nullable (though a parameterless constructor exists, allowing dimensions to not be set).
If we want to force the user to set the dimensions, we probably need to remove the parameterless constructor; otherwise, if it really should be optional, we could just make the property settable (or initable). The other properties - DistanceFunction and IndexKind which are already optional - can also simply be directly settable.
Note: a version of this was raised before by @dluc in #11265.
Note: when we decide here, make sure to take that into account in the new model (see #11264 (comment)).
The text was updated successfully, but these errors were encountered: