use similarity rather than matrixsimilarity to allow for sharding and document addition