summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2023-01-16 16:19:26 +0100
committerTor Egge <Tor.Egge@online.no>2023-01-16 16:19:26 +0100
commit1eb1d6e0a40f6e254ff8e339d224cbf21382150e (patch)
tree81455a7c3c266e9d209f796fad7b804a56c1d54f /searchlib
parentbb09fd3a3d969a65d4c87378e75773b97e8cf61c (diff)
Relax validation of nearest neighbor searcher (java).
Relax validation of nearest neighbor iterator (C++).
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_iterator.cpp13
-rw-r--r--searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.cpp19
-rw-r--r--searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.h1
-rw-r--r--searchlib/src/vespa/searchlib/tensor/tensor_attribute.cpp5
4 files changed, 5 insertions, 33 deletions
diff --git a/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_iterator.cpp b/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_iterator.cpp
index b3f8195676d..92c9a21db83 100644
--- a/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_iterator.cpp
+++ b/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_iterator.cpp
@@ -13,17 +13,6 @@ using vespalib::eval::CellType;
namespace search::queryeval {
-namespace {
-
-bool
-is_compatible(const vespalib::eval::ValueType& lhs,
- const vespalib::eval::ValueType& rhs)
-{
- return (lhs.dimensions() == rhs.dimensions());
-}
-
-}
-
/**
* Search iterator for K nearest neighbor matching.
* Uses unpack() as feedback mechanism to track which matches actually became hits.
@@ -39,8 +28,6 @@ public:
: NearestNeighborIterator(params_in),
_lastScore(0.0)
{
- assert(is_compatible(params().distance_calc.attribute_tensor().getTensorType(),
- params().distance_calc.query_tensor().type()));
}
~NearestNeighborImpl();
diff --git a/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.cpp b/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.cpp
index ca09c0e58d9..157cbd41a95 100644
--- a/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.cpp
+++ b/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.cpp
@@ -1,15 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include "dense_tensor_attribute.h"
-#include "nearest_neighbor_index.h"
-#include "tensor_attribute_loader.h"
-#include "tensor_attribute_saver.h"
-#include <vespa/eval/eval/value.h>
#include <vespa/searchcommon/attribute/config.h>
-#include <vespa/vespalib/data/slime/inserter.h>
-
-using vespalib::eval::Value;
-using vespalib::slime::ObjectInserter;
namespace search::tensor {
@@ -37,17 +29,6 @@ DenseTensorAttribute::extract_cells_ref(DocId docId) const
return _denseTensorStore.get_typed_cells(ref);
}
-void
-DenseTensorAttribute::get_state(const vespalib::slime::Inserter& inserter) const
-{
- auto& object = inserter.insertObject();
- populate_state(object);
- if (_index) {
- ObjectInserter index_inserter(object, "nearest_neighbor_index");
- _index->get_state(index_inserter);
- }
-}
-
vespalib::eval::TypedCells
DenseTensorAttribute::get_vector(uint32_t docid, uint32_t subspace) const
{
diff --git a/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.h b/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.h
index 89f0fd1bd06..8bda4bdacd7 100644
--- a/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.h
+++ b/searchlib/src/vespa/searchlib/tensor/dense_tensor_attribute.h
@@ -24,7 +24,6 @@ public:
// Implements AttributeVector and ITensorAttribute
vespalib::eval::TypedCells extract_cells_ref(DocId docId) const override;
bool supports_extract_cells_ref() const override { return true; }
- void get_state(const vespalib::slime::Inserter& inserter) const override;
// Implements DocVectorAccess
vespalib::eval::TypedCells get_vector(uint32_t docid, uint32_t subspace) const override;
diff --git a/searchlib/src/vespa/searchlib/tensor/tensor_attribute.cpp b/searchlib/src/vespa/searchlib/tensor/tensor_attribute.cpp
index 5c50b2d83a2..b63034acfc4 100644
--- a/searchlib/src/vespa/searchlib/tensor/tensor_attribute.cpp
+++ b/searchlib/src/vespa/searchlib/tensor/tensor_attribute.cpp
@@ -30,6 +30,7 @@ using vespalib::eval::FastValueBuilderFactory;
using vespalib::eval::TensorSpec;
using vespalib::eval::Value;
using vespalib::eval::ValueType;
+using vespalib::slime::ObjectInserter;
namespace search::tensor {
@@ -224,6 +225,10 @@ TensorAttribute::populate_state(vespalib::slime::Cursor& object) const
object.setObject("ref_vector").setObject("memory_usage"));
StateExplorerUtils::memory_usage_to_slime(_tensorStore.getMemoryUsage(),
object.setObject("tensor_store").setObject("memory_usage"));
+ if (_index) {
+ ObjectInserter index_inserter(object, "nearest_neighbor_index");
+ _index->get_state(index_inserter);
+ }
}
void