diff --git a/src/knnmisc.cpp b/src/knnmisc.cpp index ba4a4bd374..a4ddd7c5a9 100644 --- a/src/knnmisc.cpp +++ b/src/knnmisc.cpp @@ -10,6 +10,8 @@ #include #include "knnmisc.h" +#include "sortsetup.h" +#include "sortcomp.h" #include "knnlib.h" #include "exprtraits.h" #include "sphinxint.h" @@ -841,24 +843,48 @@ RowIteratorsWithEstimates_t CreateKNNIterators ( knn::KNN_i * pKNN, const CSphQu /////////////////////////////////////////////////////////////////////////////// -struct MatchSortRescore_fn : CSphMatchComparatorState +struct MatchSortRescore_fn { - const CSphAttrLocator & m_tLocator; + const ISphMatchComparator * m_pComp = nullptr; + const CSphMatchComparatorState & m_tState; - MatchSortRescore_fn ( const CSphAttrLocator & tLoc ) : m_tLocator(tLoc) {} + MatchSortRescore_fn ( const ISphMatchComparator * pComp, const CSphMatchComparatorState & tState ) + : m_pComp ( pComp ) + , m_tState ( tState ) + { + assert ( m_pComp ); + } bool IsLess ( const CSphMatch * a, const CSphMatch * b ) const { assert ( a && b ); - return a->GetAttrFloat(m_tLocator) < b->GetAttrFloat(m_tLocator); + // CSphMatchComparatorState comparators report whether a match is worse. + // sphSort() needs the opposite: whether a match must be emitted earlier. + return m_pComp->VirtualIsLess ( *b, *a, m_tState ); } }; +static ISphMatchComparator * CreateMatchComparator ( ESphSortFunc eFunc ) +{ + switch ( eFunc ) + { + case FUNC_REL_DESC: return new MatchRelevanceLt_fn(); + case FUNC_TIMESEGS: return new MatchTimeSegments_fn(); + case FUNC_GENERIC1: return new MatchGeneric1_fn(); + case FUNC_GENERIC2: return new MatchGeneric2_fn(); + case FUNC_GENERIC3: return new MatchGeneric3_fn(); + case FUNC_GENERIC4: return new MatchGeneric4_fn(); + case FUNC_GENERIC5: return new MatchGeneric5_fn(); + case FUNC_EXPR: return new MatchExpr_fn(); + default: return nullptr; + } +} + class RescoreSorter_c : public ISphMatchSorter { public: - RescoreSorter_c ( ISphMatchSorter * pSorter ) : m_pSorter ( pSorter ) {} + RescoreSorter_c ( ISphMatchSorter * pSorter, CSphRefcountedPtr pComp ) : m_pSorter ( pSorter ), m_pComp ( std::move ( pComp ) ) {} bool Push ( const CSphMatch & tEntry ) final { return m_pSorter->Push(tEntry); } void Push ( const VecTraits_T & dMatches ) override { for ( auto & i : dMatches ) m_pSorter->Push(i); } @@ -897,6 +923,7 @@ class RescoreSorter_c : public ISphMatchSorter private: std::unique_ptr m_pSorter; + CSphRefcountedPtr m_pComp; }; @@ -921,14 +948,18 @@ int RescoreSorter_c::Flatten ( CSphMatch * pTo ) auto * pKNNDistRescore = m_pSorter->GetSchema()->GetAttr ( GetKnnDistRescoreAttrName() ); assert(pKNNDistRescore); - MatchSortRescore_fn tRescore ( pKNNDistRescore->m_tLocator ); - sphSort ( dMatches.Begin(), dMatches.GetLength(), tRescore, MatchSortAccessor_t() ); - - // copy rescored dist to old dist + // Copy rescored dist to old dist first, then re-apply the original sorter. + // The original sorter state starts with knn_dist() (unless the user explicitly + // sorted by knn_dist()) and then contains user ORDER BY tie-breakers. + // Sorting by rescored distance only, even stably, can keep stale approximate + // distance order ahead of explicit tie-breakers for exact-distance ties. for ( auto & tMatch : dMatches ) for ( const auto & tLocator : dOldKnnDistLoc ) tMatch.SetAttrFloat ( tLocator, tMatch.GetAttrFloat ( pKNNDistRescore->m_tLocator ) ); + MatchSortRescore_fn tRescore ( m_pComp, m_pSorter->GetState() ); + sphSort ( dMatches.Begin(), dMatches.GetLength(), tRescore, MatchSortAccessor_t() ); + for ( auto & i : dMatches ) Swap ( i, *pTo++ ); @@ -938,7 +969,7 @@ int RescoreSorter_c::Flatten ( CSphMatch * pTo ) ISphMatchSorter * RescoreSorter_c::Clone() const { - auto pClone = new RescoreSorter_c ( m_pSorter->Clone() ); + auto pClone = new RescoreSorter_c ( m_pSorter->Clone(), m_pComp ); CloneTo(pClone); return pClone; } @@ -952,12 +983,16 @@ void RescoreSorter_c::CloneTo ( ISphMatchSorter * pTrg ) const } -ISphMatchSorter * CreateKNNRescoreSorter ( ISphMatchSorter * pSorter, const KnnSearchSettings_t & tSettings ) +ISphMatchSorter * CreateKNNRescoreSorter ( ISphMatchSorter * pSorter, const KnnSearchSettings_t & tSettings, ESphSortFunc eMatchFunc ) { if ( tSettings.m_sAttr.IsEmpty() || !tSettings.m_bRescore ) return pSorter; - return new RescoreSorter_c(pSorter); + CSphRefcountedPtr pComp ( CreateMatchComparator ( eMatchFunc ) ); + if ( !pComp ) + return nullptr; + + return new RescoreSorter_c ( pSorter, std::move ( pComp ) ); } bool ValidateEmbeddingsAPITimeout ( const CSphString & sValue, int & iTimeout, CSphString & sError ) diff --git a/src/knnmisc.h b/src/knnmisc.h index f687aaf3c4..6c26ec50cb 100644 --- a/src/knnmisc.h +++ b/src/knnmisc.h @@ -77,7 +77,7 @@ std::pair CreateKNNIterator ( knn::KNN_i * pKNN, const RowIteratorsWithEstimates_t CreateKNNIterators ( knn::KNN_i * pKNN, const CSphQuery & tQuery, const ISphSchema & tIndexSchema, const ISphSchema & tSorterSchema, knn::KNNFilter_i * pFilter, knn::HNSWTerminationPolicy_e ePolicy, QueryProfile_c * pProfile, bool & bError, CSphString & sError ); std::unique_ptr CreateKNNPrefilter ( const CSphQueryContext & tCtx, const CSphRowitem * pAttrPool, int iStride, int iDynamicSize, int64_t iFilterCount ); -ISphMatchSorter * CreateKNNRescoreSorter ( ISphMatchSorter * pSorter, const KnnSearchSettings_t & tSettings ); +ISphMatchSorter * CreateKNNRescoreSorter ( ISphMatchSorter * pSorter, const KnnSearchSettings_t & tSettings, ESphSortFunc eMatchFunc ); const char * GetAPITimeoutErrorMsg(); bool ValidateEmbeddingsAPITimeout ( const CSphString & sValue, int & iTimeout, CSphString & sError ); diff --git a/src/queuecreator.cpp b/src/queuecreator.cpp index 1b92e39573..b7e2016433 100755 --- a/src/queuecreator.cpp +++ b/src/queuecreator.cpp @@ -2638,7 +2638,7 @@ ISphMatchSorter * QueueCreator_c::SpawnQueue() if ( !m_tQuery.m_bHybridSearch ) { - pSorter = CreateKNNRescoreSorter ( pSorter, m_tQuery.HasKnn() ? m_tQuery.SingleKnnSettings() : KnnSearchSettings_t() ); + pSorter = CreateKNNRescoreSorter ( pSorter, m_tQuery.HasKnn() ? m_tQuery.SingleKnnSettings() : KnnSearchSettings_t(), m_eMatchFunc ); if ( !pSorter ) return nullptr; } diff --git a/test/clt-tests/core/test-alter-rebuild-knn.rec b/test/clt-tests/core/test-alter-rebuild-knn.rec index 896afe1b3e..79d1b54f0d 100644 --- a/test/clt-tests/core/test-alter-rebuild-knn.rec +++ b/test/clt-tests/core/test-alter-rebuild-knn.rec @@ -105,10 +105,10 @@ alter table t rebuild knn select *, knn_dist() dist from t where knn(v2, 10, (0.5,0.5,0.5)) order by dist asc, id asc -------------- *************************** 1. row *************************** - id: 3 - f: - v1: - v2: 1.000000,1.000000,1.000000 + id: 1 + f: abc + v1: 0.000000,0.000000,0.000000 + v2: 0.000000,0.000000,0.000000 @knn_dist: 0.750000 dist: 0.750000 *************************** 2. row *************************** @@ -119,9 +119,9 @@ select *, knn_dist() dist from t where knn(v2, 10, (0.5,0.5,0.5)) order by dist @knn_dist: 0.750000 dist: 0.750000 *************************** 3. row *************************** - id: 1 - f: abc - v1: 0.000000,0.000000,0.000000 - v2: 0.000000,0.000000,0.000000 + id: 3 + f: + v1: + v2: 1.000000,1.000000,1.000000 @knn_dist: 0.750000 dist: 0.750000 \ No newline at end of file diff --git a/test/test_298/model.bin b/test/test_298/model.bin index 6a3aa98885..18bfe7685b 100644 --- a/test/test_298/model.bin +++ b/test/test_298/model.bin @@ -1,40 +1,40 @@ -a:1:{i:0;a:190:{i:0;a:2:{s:8:"sphinxql";s:108:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2')";s:14:"total_affected";i:0;}i:1;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:121:"CREATE TABLE t ( +a:1:{i:0;a:204:{i:0;a:2:{s:8:"sphinxql";s:108:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2')";s:14:"total_affected";i:0;}i:1;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:121:"CREATE TABLE t ( id bigint, title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='L2' -)";}}}i:2;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:3;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:4;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:5;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:6;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:7;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:8;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:9;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:10;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:11;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:12;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.44148445";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.63964266";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.73040032";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.92614752";}i:4;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.95262027";}i:5;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.03401518";}i:6;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"1.08804023";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.151821";}i:8;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"1.54590726";}i:9;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.71850991";}}}i:13;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:14;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.44148445";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.63964266";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.73040032";}}}i:15;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:16;a:2:{s:8:"sphinxql";s:128:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='8bit')";s:14:"total_affected";i:0;}i:17;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:141:"CREATE TABLE t ( +)";}}}i:2;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:3;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:4;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:5;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:6;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:7;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:8;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:9;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:10;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:11;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:12;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.44148";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.63964";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.7304";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.92615";}i:4;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.95262";}i:5;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.03402";}i:6;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"1.08804";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.15182";}i:8;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.54591";}i:9;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.71851";}}}i:13;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:14;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.44148";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.63964";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.7304";}}}i:15;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:16;a:2:{s:8:"sphinxql";s:128:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='8bit')";s:14:"total_affected";i:0;}i:17;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:141:"CREATE TABLE t ( id bigint, title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='L2' quantization='8BIT' -)";}}}i:18;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:19;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:20;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:21;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:22;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:23;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:24;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:25;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:26;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:27;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:28;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.44148445";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.63964266";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.73040032";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.92614752";}i:4;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.95262027";}i:5;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.03401518";}i:6;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"1.08804023";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.151821";}i:8;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"1.54590726";}i:9;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.71850991";}}}i:29;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:30;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.54867065";}i:1;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"0.75901866";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.80476832";}}}i:31;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:32;a:3:{s:8:"sphinxql";s:128:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='4bit')";s:5:"errno";i:1064;s:5:"error";s:65:"error adding table 't': 4-bit quantization is no longer supported";}i:33;a:2:{s:8:"sphinxql";s:128:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:34;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:141:"CREATE TABLE t ( +)";}}}i:18;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:19;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:20;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:21;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:22;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:23;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:24;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:25;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:26;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:27;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:28;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.44148";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.63964";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.7304";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.92615";}i:4;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.95262";}i:5;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.03402";}i:6;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"1.08804";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.15182";}i:8;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.54591";}i:9;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.71851";}}}i:29;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:30;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.54867";}i:1;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"0.75902";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.80477";}}}i:31;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:32;a:3:{s:8:"sphinxql";s:128:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='4bit')";s:5:"errno";i:1064;s:5:"error";s:65:"error adding table 't': 4-bit quantization is no longer supported";}i:33;a:2:{s:8:"sphinxql";s:128:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:34;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:141:"CREATE TABLE t ( id bigint, title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='L2' quantization='1BIT' -)";}}}i:35;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:36;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:37;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:38;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:39;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:40;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:41;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:42;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:43;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:44;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:45;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.44148445";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.63964266";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.73040032";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.92614752";}i:4;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.95262027";}i:5;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.03401518";}i:6;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"1.08804023";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.151821";}i:8;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"1.54590726";}i:9;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.71850991";}}}i:46;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:47;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.59524405";}i:1;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.66948092";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.81128979";}}}i:48;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:49;a:2:{s:8:"sphinxql";s:112:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE')";s:14:"total_affected";i:0;}i:50;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:125:"CREATE TABLE t ( +)";}}}i:35;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:36;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:37;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:38;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:39;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:40;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:41;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:42;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:43;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:44;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:45;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.44148";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.63964";}i:2;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.7304";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.92615";}i:4;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.95262";}i:5;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.03402";}i:6;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"1.08804";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.15182";}i:8;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.54591";}i:9;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.71851";}}}i:46;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:47;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.59524";}i:1;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.66948";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.81129";}}}i:48;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:49;a:2:{s:8:"sphinxql";s:112:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE')";s:14:"total_affected";i:0;}i:50;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:125:"CREATE TABLE t ( id bigint, title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' -)";}}}i:51;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:52;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:53;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:54;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:55;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:56;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:57;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:58;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:59;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:60;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:61;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.84341449";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.88176149";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.501166";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.59564042";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:8:"1.677551";}}}i:62;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:63;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034334";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}}}i:64;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:65;a:2:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='8bit')";s:14:"total_affected";i:0;}i:66;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:145:"CREATE TABLE t ( +)";}}}i:51;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:52;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:53;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:54;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:55;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:56;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:57;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:58;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:59;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:60;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:61;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.84341";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.88176";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.50117";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.59564";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.67755";}}}i:62;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:63;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}}}i:64;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:65;a:2:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='8bit')";s:14:"total_affected";i:0;}i:66;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:145:"CREATE TABLE t ( id bigint, title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='8BIT' -)";}}}i:67;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:68;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:69;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:70;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:71;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:72;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:73;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:74;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:75;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:76;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:77;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.84341449";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.88176149";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.501166";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.59564042";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:8:"1.677551";}}}i:78;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:79;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36266613";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.44116259";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60007954";}}}i:80;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:81;a:3:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='4bit')";s:5:"errno";i:1064;s:5:"error";s:65:"error adding table 't': 4-bit quantization is no longer supported";}i:82;a:2:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:83;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:145:"CREATE TABLE t ( +)";}}}i:67;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:68;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:69;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:70;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:71;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:72;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:73;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:74;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:75;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:76;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:77;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.84341";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.88176";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.50117";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.59564";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.67755";}}}i:78;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:79;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36267";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.44116";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60008";}}}i:80;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:81;a:3:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='4bit')";s:5:"errno";i:1064;s:5:"error";s:65:"error adding table 't': 4-bit quantization is no longer supported";}i:82;a:2:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:83;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:145:"CREATE TABLE t ( id bigint, title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1BIT' -)";}}}i:84;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:85;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:86;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:87;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:88;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:89;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:90;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:91;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:92;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:93;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:94;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.84341449";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.88176149";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.501166";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.59564042";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:8:"1.677551";}}}i:95;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:96;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:9;s:4:"rows";a:9:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.84341449";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.88176149";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.501166";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.59564042";}}}i:97;a:3:{s:8:"sphinxql";s:247:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303),{ef=128,oversampling=3.0,rescore=1})";s:10:"total_rows";i:9;s:4:"rows";a:9:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.84341449";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.88176149";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.501166";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.59564042";}}}i:98;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:99;a:2:{s:8:"sphinxql";s:226:"create table t (title text, tag integer, emp1 float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit', emp2 float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:100;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:239:"CREATE TABLE t ( +)";}}}i:84;a:2:{s:8:"sphinxql";s:203:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:85;a:2:{s:8:"sphinxql";s:202:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:86;a:2:{s:8:"sphinxql";s:206:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:87;a:2:{s:8:"sphinxql";s:204:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:88;a:2:{s:8:"sphinxql";s:202:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:89;a:2:{s:8:"sphinxql";s:199:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:90;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:91;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:92;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:93;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:94;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.84341";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.88176";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.50117";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.59564";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.67755";}}}i:95;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:96;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:9;s:4:"rows";a:9:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.84341";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.88176";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.50117";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.59564";}}}i:97;a:3:{s:8:"sphinxql";s:247:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303),{ef=128,oversampling=3.0,rescore=1})";s:10:"total_rows";i:9;s:4:"rows";a:9:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.84341";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.88176";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.50117";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.59564";}}}i:98;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:99;a:2:{s:8:"sphinxql";s:226:"create table t (title text, tag integer, emp1 float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit', emp2 float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:100;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:239:"CREATE TABLE t ( id bigint, title text, tag integer, emp1 float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1BIT', emp2 float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1BIT' -)";}}}i:101;a:2:{s:8:"sphinxql";s:369:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375), (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:102;a:2:{s:8:"sphinxql";s:367:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877), (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:103;a:2:{s:8:"sphinxql";s:375:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784), (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:104;a:2:{s:8:"sphinxql";s:371:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665), (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:105;a:2:{s:8:"sphinxql";s:367:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026), (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:106;a:2:{s:8:"sphinxql";s:361:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326), (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:107;a:2:{s:8:"sphinxql";s:369:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812), (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:108;a:2:{s:8:"sphinxql";s:363:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852), (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:109;a:2:{s:8:"sphinxql";s:361:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634), (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:110;a:2:{s:8:"sphinxql";s:361:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875), (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:111;a:3:{s:8:"sphinxql";s:212:"select id, knn_dist() from t where knn(emp1,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.84341449";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.88176149";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.501166";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.59564042";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:8:"1.677551";}}}i:112;a:3:{s:8:"sphinxql";s:212:"select id, knn_dist() from t where knn(emp2,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.436140";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.84341449";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.88176149";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:8:"1.501166";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"1.59564042";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:8:"1.677551";}}}i:113;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:114;a:3:{s:8:"sphinxql";s:226:"select id, knn_dist() from t where knn(emp1,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.23244220";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.264679";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.26972675";}}}i:115;a:3:{s:8:"sphinxql";s:226:"select id, knn_dist() from t where knn(emp2,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.23244220";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:8:"0.264679";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.26972675";}}}i:116;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:117;a:2:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:118;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:145:"CREATE TABLE t ( +)";}}}i:101;a:2:{s:8:"sphinxql";s:369:"insert into t values (1, 'title1', 1, (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375), (0.2865696847438812,-0.03181683272123337,0.06668472290039062,0.03292645886540413,-0.008292825892567635,0.16873490810394287,-0.0008463106933049858,-0.36077880859375))";s:14:"total_affected";i:1;}i:102;a:2:{s:8:"sphinxql";s:367:"insert into t values (2, 'title2', 1, (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877), (0.33916592597961426,0.3886975646018982,-0.41489771008491516,0.20758016407489777,-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877))";s:14:"total_affected";i:1;}i:103;a:2:{s:8:"sphinxql";s:375:"insert into t values (3, 'title3', 2, (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784), (0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303,-0.029800616204738617,0.5721306800842285,-0.051111623644828796,-0.09547730535268784))";s:14:"total_affected";i:1;}i:104;a:2:{s:8:"sphinxql";s:371:"insert into t values (4, 'title4', 2, (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665), (0.1097082868218422,-0.059516504406929016,-0.053682904690504074,0.23981636762619019,-0.33325839042663574,0.3685816824436188,0.18456950783729553,-0.05209290236234665))";s:14:"total_affected";i:1;}i:105;a:2:{s:8:"sphinxql";s:367:"insert into t values (5, 'title5', 3, (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026), (-0.006129484623670578,0.5033777952194214,-0.5287379026412964,0.5231741070747375,0.022464150562882423,-0.04248378053307533,0.3180341124534607,-0.11792317032814026))";s:14:"total_affected";i:1;}i:106;a:2:{s:8:"sphinxql";s:361:"insert into t values (6, 'title6', 3, (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326), (0.07446788251399994,0.24792802333831787,0.20263631641864777,-0.017194697633385658,0.3679729402065277,0.3847752511501312,0.1616753190755844,0.04726771265268326))";s:14:"total_affected";i:1;}i:107;a:2:{s:8:"sphinxql";s:369:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812), (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:108;a:2:{s:8:"sphinxql";s:363:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852), (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:109;a:2:{s:8:"sphinxql";s:361:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634), (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:110;a:2:{s:8:"sphinxql";s:361:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875), (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:111;a:3:{s:8:"sphinxql";s:212:"select id, knn_dist() from t where knn(emp1,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.84341";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.88176";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.50117";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.59564";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.67755";}}}i:112;a:3:{s:8:"sphinxql";s:212:"select id, knn_dist() from t where knn(emp2,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.43614";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:3;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:7:"0.84341";}i:4;a:2:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:7:"0.88176";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:6;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}i:7;a:2:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:7:"1.50117";}i:8;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:7:"1.59564";}i:9;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:7:"1.67755";}}}i:113;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:114;a:3:{s:8:"sphinxql";s:226:"select id, knn_dist() from t where knn(emp1,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.23244";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.26468";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.26973";}}}i:115;a:3:{s:8:"sphinxql";s:226:"select id, knn_dist() from t where knn(emp2,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.23244";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:7:"0.26468";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.26973";}}}i:116;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:117;a:2:{s:8:"sphinxql";s:132:"create table t (title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:118;a:3:{s:8:"sphinxql";s:19:"show create table t";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:5:"Table";s:1:"t";s:12:"Create Table";s:145:"CREATE TABLE t ( id bigint, title text, tag integer, @@ -54,4 +54,4 @@ id bigint, title text, tag integer, emp float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='COSINE' quantization='1BIT' -)";}}}i:149;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (1, 'title1', 1)";s:14:"total_affected";i:1;}i:150;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (2, 'title2', 1)";s:14:"total_affected";i:1;}i:151;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (3, 'title3', 2)";s:14:"total_affected";i:1;}i:152;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (4, 'title4', 2)";s:14:"total_affected";i:1;}i:153;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (5, 'title5', 3)";s:14:"total_affected";i:1;}i:154;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (6, 'title6', 3)";s:14:"total_affected";i:1;}i:155;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:156;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:157;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:158;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:159;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:4;s:4:"rows";a:4:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.36034352";}i:1;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.60289323";}i:2;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.93447119";}i:3;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"1.22444618";}}}i:160;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:161;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"0.30891573";}i:1;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:10:"0.39149725";}i:2;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"0.49754488";}}}i:162;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:163;a:2:{s:8:"sphinxql";s:103:"create table t ( v float_vector knn_type='hnsw' knn_dims='63' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:164;a:2:{s:8:"sphinxql";s:281:"insert into t values ( 1, (0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5) )";s:14:"total_affected";i:1;}i:165;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:166;a:3:{s:8:"sphinxql";s:302:"select id, knn_dist() from t where knn ( v, 5, (0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5) )";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";}}}i:167;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:168;a:2:{s:8:"sphinxql";s:103:"create table t (vec float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:169;a:2:{s:8:"sphinxql";s:27:"insert into t values(1, ())";s:14:"total_affected";i:1;}i:170;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:171;a:2:{s:8:"sphinxql";s:54:"select * from t where knn(vec, 5, (1,2), {rescore=0} )";s:10:"total_rows";i:0;}i:172;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:173;a:2:{s:8:"sphinxql";s:103:"create table t (vec float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:174;a:2:{s:8:"sphinxql";s:35:"insert into t values(1, (1.0, 2.0))";s:14:"total_affected";i:1;}i:175;a:2:{s:8:"sphinxql";s:27:"insert into t values(2, ())";s:14:"total_affected";i:1;}i:176;a:2:{s:8:"sphinxql";s:35:"insert into t values(3, (3.0, 4.0))";s:14:"total_affected";i:1;}i:177;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:178;a:3:{s:8:"sphinxql";s:67:"select id, knn_dist() from t where knn(vec, 5, (1,2), {rescore=0} )";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:10:"0.00000024";}i:1;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:8:"8.000000";}}}i:179;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:180;a:2:{s:8:"sphinxql";s:107:"create table t (vec float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:181;a:2:{s:8:"sphinxql";s:27:"insert into t values(1, ())";s:14:"total_affected";i:1;}i:182;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:183;a:2:{s:8:"sphinxql";s:40:"select * from t where knn(vec, 5, (1,2))";s:10:"total_rows";i:0;}i:184;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:185;a:2:{s:8:"sphinxql";s:103:"create table t (vec float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:186;a:2:{s:8:"sphinxql";s:27:"insert into t values(1, ())";s:14:"total_affected";i:1;}i:187;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:188;a:2:{s:8:"sphinxql";s:89:"select * from t where knn(vec, 5, (0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), {rescore=0} )";s:10:"total_rows";i:0;}i:189;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}}} \ No newline at end of file +)";}}}i:149;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (1, 'title1', 1)";s:14:"total_affected";i:1;}i:150;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (2, 'title2', 1)";s:14:"total_affected";i:1;}i:151;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (3, 'title3', 2)";s:14:"total_affected";i:1;}i:152;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (4, 'title4', 2)";s:14:"total_affected";i:1;}i:153;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (5, 'title5', 3)";s:14:"total_affected";i:1;}i:154;a:2:{s:8:"sphinxql";s:54:"insert into t (id, title, tag) values (6, 'title6', 3)";s:14:"total_affected";i:1;}i:155;a:2:{s:8:"sphinxql";s:203:"insert into t values (7, 'title7', 4, (-0.03529544919729233,0.44717246294021606,-0.3653179109096527,-0.16520369052886963,-0.28060752153396606,0.024058140814304352,-0.6397897601127625,0.4281712472438812))";s:14:"total_affected";i:1;}i:156;a:2:{s:8:"sphinxql";s:200:"insert into t values (8, 'title8', 4, (-0.1488940566778183,0.7482781410217285,0.09189224243164062,-0.09540678560733795,0.1863720566034317,-0.20858603715896606,-0.226043701171875,-0.06464707106351852))";s:14:"total_affected";i:1;}i:157;a:2:{s:8:"sphinxql";s:199:"insert into t values (9, 'title9', 5, (0.6534488201141357,0.19247837364673615,0.017971690744161606,0.3398212492465973,0.26752832531929016,0.24325883388519287,-0.10399176180362701,0.1764550507068634))";s:14:"total_affected";i:1;}i:158;a:2:{s:8:"sphinxql";s:200:"insert into t values (10, 'title10', 5, (0.4089451730251312,0.0306655615568161,-0.15218715369701385,-0.6105571389198303,-0.29428744316101074,-0.07567915320396423,0.3454975187778473,-0.49481201171875))";s:14:"total_affected";i:1;}i:159;a:3:{s:8:"sphinxql";s:211:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303))";s:10:"total_rows";i:4;s:4:"rows";a:4:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.36034";}i:1;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:7:"0.60289";}i:2;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.93447";}i:3;a:2:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:7:"1.22445";}}}i:160;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:161;a:3:{s:8:"sphinxql";s:225:"select id, knn_dist() from t where knn(emp,3,(-0.11468425393104553,0.3873162567615509,-0.26252424716949463,0.007096240296959877,0.24166066944599152,-0.24653761088848114,0.060873936861753464,0.23045268654823303), {rescore=0} )";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:7:"0.30892";}i:1;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:6:"0.3915";}i:2;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:7:"0.49754";}}}i:162;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:163;a:2:{s:8:"sphinxql";s:103:"create table t ( v float_vector knn_type='hnsw' knn_dims='63' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:164;a:2:{s:8:"sphinxql";s:281:"insert into t values ( 1, (0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5) )";s:14:"total_affected";i:1;}i:165;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:166;a:3:{s:8:"sphinxql";s:302:"select id, knn_dist() from t where knn ( v, 5, (0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5) )";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";}}}i:167;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:168;a:2:{s:8:"sphinxql";s:103:"create table t (vec float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:169;a:2:{s:8:"sphinxql";s:27:"insert into t values(1, ())";s:14:"total_affected";i:1;}i:170;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:171;a:2:{s:8:"sphinxql";s:54:"select * from t where knn(vec, 5, (1,2), {rescore=0} )";s:10:"total_rows";i:0;}i:172;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:173;a:2:{s:8:"sphinxql";s:103:"create table t (vec float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:174;a:2:{s:8:"sphinxql";s:35:"insert into t values(1, (1.0, 2.0))";s:14:"total_affected";i:1;}i:175;a:2:{s:8:"sphinxql";s:27:"insert into t values(2, ())";s:14:"total_affected";i:1;}i:176;a:2:{s:8:"sphinxql";s:35:"insert into t values(3, (3.0, 4.0))";s:14:"total_affected";i:1;}i:177;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:178;a:3:{s:8:"sphinxql";s:67:"select id, knn_dist() from t where knn(vec, 5, (1,2), {rescore=0} )";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";}i:1;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:1:"8";}}}i:179;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:180;a:2:{s:8:"sphinxql";s:107:"create table t (vec float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='COSINE' quantization='1bit')";s:14:"total_affected";i:0;}i:181;a:2:{s:8:"sphinxql";s:27:"insert into t values(1, ())";s:14:"total_affected";i:1;}i:182;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:183;a:2:{s:8:"sphinxql";s:40:"select * from t where knn(vec, 5, (1,2))";s:10:"total_rows";i:0;}i:184;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:185;a:2:{s:8:"sphinxql";s:103:"create table t (vec float_vector knn_type='hnsw' knn_dims='8' hnsw_similarity='l2' quantization='1bit')";s:14:"total_affected";i:0;}i:186;a:2:{s:8:"sphinxql";s:27:"insert into t values(1, ())";s:14:"total_affected";i:1;}i:187;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:188;a:2:{s:8:"sphinxql";s:89:"select * from t where knn(vec, 5, (0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), {rescore=0} )";s:10:"total_rows";i:0;}i:189;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:190;a:2:{s:8:"sphinxql";s:100:"create table t_order (tag integer, f float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='l2')";s:14:"total_affected";i:0;}i:191;a:2:{s:8:"sphinxql";s:85:"insert into t_order values (1, 30, (0.2,0.3)), (2, 10, (0.2,0.7)), (3, 20, (0.7,0.2))";s:14:"total_affected";i:3;}i:192;a:3:{s:8:"sphinxql";s:58:"select id, knn_dist() from t_order where knn(f, (0.5,0.5))";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:4:"0.13";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:4:"0.13";}i:2;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:4:"0.13";}}}i:193;a:3:{s:8:"sphinxql";s:74:"select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id asc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:4:"0.13";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:4:"0.13";}i:2;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:4:"0.13";}}}i:194;a:3:{s:8:"sphinxql";s:75:"select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id desc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:4:"0.13";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:4:"0.13";}i:2;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:4:"0.13";}}}i:195;a:3:{s:8:"sphinxql";s:89:"select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag asc, id desc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:3:{s:2:"id";s:1:"2";s:3:"tag";s:2:"10";s:10:"knn_dist()";s:4:"0.13";}i:1;a:3:{s:2:"id";s:1:"3";s:3:"tag";s:2:"20";s:10:"knn_dist()";s:4:"0.13";}i:2;a:3:{s:2:"id";s:1:"1";s:3:"tag";s:2:"30";s:10:"knn_dist()";s:4:"0.13";}}}i:196;a:3:{s:8:"sphinxql";s:89:"select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag desc, id asc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:3:{s:2:"id";s:1:"1";s:3:"tag";s:2:"30";s:10:"knn_dist()";s:4:"0.13";}i:1;a:3:{s:2:"id";s:1:"3";s:3:"tag";s:2:"20";s:10:"knn_dist()";s:4:"0.13";}i:2;a:3:{s:2:"id";s:1:"2";s:3:"tag";s:2:"10";s:10:"knn_dist()";s:4:"0.13";}}}i:197;a:2:{s:8:"sphinxql";s:22:"flush ramchunk t_order";s:14:"total_affected";i:0;}i:198;a:3:{s:8:"sphinxql";s:58:"select id, knn_dist() from t_order where knn(f, (0.5,0.5))";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:4:"0.13";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:4:"0.13";}i:2;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:4:"0.13";}}}i:199;a:3:{s:8:"sphinxql";s:74:"select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id asc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:4:"0.13";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:4:"0.13";}i:2;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:4:"0.13";}}}i:200;a:3:{s:8:"sphinxql";s:75:"select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id desc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:4:"0.13";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:4:"0.13";}i:2;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:4:"0.13";}}}i:201;a:3:{s:8:"sphinxql";s:89:"select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag asc, id desc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:3:{s:2:"id";s:1:"2";s:3:"tag";s:2:"10";s:10:"knn_dist()";s:4:"0.13";}i:1;a:3:{s:2:"id";s:1:"3";s:3:"tag";s:2:"20";s:10:"knn_dist()";s:4:"0.13";}i:2;a:3:{s:2:"id";s:1:"1";s:3:"tag";s:2:"30";s:10:"knn_dist()";s:4:"0.13";}}}i:202;a:3:{s:8:"sphinxql";s:89:"select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag desc, id asc";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:3:{s:2:"id";s:1:"1";s:3:"tag";s:2:"30";s:10:"knn_dist()";s:4:"0.13";}i:1;a:3:{s:2:"id";s:1:"3";s:3:"tag";s:2:"20";s:10:"knn_dist()";s:4:"0.13";}i:2;a:3:{s:2:"id";s:1:"2";s:3:"tag";s:2:"10";s:10:"knn_dist()";s:4:"0.13";}}}i:203;a:2:{s:8:"sphinxql";s:18:"drop table t_order";s:14:"total_affected";i:0;}}} \ No newline at end of file diff --git a/test/test_298/test.xml b/test/test_298/test.xml index 5f7a5242d8..778e89049b 100644 --- a/test/test_298/test.xml +++ b/test/test_298/test.xml @@ -234,6 +234,22 @@ searchd select * from t where knn(vec, 5, (0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8), {rescore=0} ); drop table t; + + create table t_order (tag integer, f float_vector knn_type='hnsw' knn_dims='2' hnsw_similarity='l2'); + insert into t_order values (1, 30, (0.2,0.3)), (2, 10, (0.2,0.7)), (3, 20, (0.7,0.2)); + select id, knn_dist() from t_order where knn(f, (0.5,0.5)); + select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id asc; + select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id desc; + select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag asc, id desc; + select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag desc, id asc; + flush ramchunk t_order; + select id, knn_dist() from t_order where knn(f, (0.5,0.5)); + select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id asc; + select id, knn_dist() from t_order where knn(f, (0.5,0.5)) order by id desc; + select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag asc, id desc; + select id, tag, knn_dist() from t_order where knn(f, (0.5,0.5)) order by tag desc, id asc; + drop table t_order; + diff --git a/test/test_489/model.bin b/test/test_489/model.bin index 78545adc2c..fd5d521e94 100644 --- a/test/test_489/model.bin +++ b/test/test_489/model.bin @@ -1,4 +1,4 @@ -a:1:{i:0;a:136:{i:0;a:2:{s:8:"sphinxql";s:95:"create table t (title text, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:1;a:2:{s:8:"sphinxql";s:90:"insert into t (id, title, vec) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1))";s:14:"total_affected";i:1;}i:2;a:2:{s:8:"sphinxql";s:103:"insert into t (id, title, vec) values (2, 'deep learning for machine vision', (0.15, 0.12, 0.08, 0.11))";s:14:"total_affected";i:1;}i:3;a:2:{s:8:"sphinxql";s:97:"insert into t (id, title, vec) values (3, 'machine learning algorithms', (0.2, 0.15, 0.12, 0.09))";s:14:"total_affected";i:1;}i:4;a:2:{s:8:"sphinxql";s:93:"insert into t (id, title, vec) values (4, 'cooking recipes italian', (0.11, 0.09, 0.13, 0.1))";s:14:"total_affected";i:1;}i:5;a:2:{s:8:"sphinxql";s:89:"insert into t (id, title, vec) values (5, 'travel guide europe', (0.18, 0.11, 0.1, 0.12))";s:14:"total_affected";i:1;}i:6;a:2:{s:8:"sphinxql";s:91:"insert into t (id, title, vec) values (6, 'sports news football', (0.22, 0.14, 0.09, 0.08))";s:14:"total_affected";i:1;}i:7;a:2:{s:8:"sphinxql";s:97:"insert into t (id, title, vec) values (7, 'machine learning in production', (5.0, 5.0, 5.0, 5.0))";s:14:"total_affected";i:1;}i:8;a:2:{s:8:"sphinxql";s:92:"insert into t (id, title, vec) values (8, 'advanced machine learning', (6.0, 6.0, 6.0, 6.0))";s:14:"total_affected";i:1;}i:9;a:2:{s:8:"sphinxql";s:92:"insert into t (id, title, vec) values (9, 'machine learning overview', (7.0, 7.0, 7.0, 7.0))";s:14:"total_affected";i:1;}i:10;a:2:{s:8:"sphinxql";s:97:"insert into t (id, title, vec) values (10, 'random unrelated document', (10.0, 10.0, 10.0, 10.0))";s:14:"total_affected";i:1;}i:11;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:12;a:3:{s:8:"sphinxql";s:135:"select id, knn_dist(), weight() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:3:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:8:"weight()";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"0.01300000";s:8:"weight()";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.00340000";s:8:"weight()";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:9:"96.040001";s:8:"weight()";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"139.240005";s:8:"weight()";s:1:"1";}i:5;a:3:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"190.440002";s:8:"weight()";s:1:"1";}i:6;a:3:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:10:"0.00110000";s:8:"weight()";s:1:"1";}i:7;a:3:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.00690000";s:8:"weight()";s:1:"1";}i:8;a:3:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.01650000";s:8:"weight()";s:1:"1";}i:9;a:3:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"392.039978";s:8:"weight()";s:1:"1";}}}i:13;a:3:{s:8:"sphinxql";s:166:"select id, knn_dist(), weight() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) order by weight() desc, id asc option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:3:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:8:"weight()";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"0.01300000";s:8:"weight()";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:9:"96.040001";s:8:"weight()";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"139.240005";s:8:"weight()";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"190.440002";s:8:"weight()";s:1:"1";}i:5;a:3:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.00340000";s:8:"weight()";s:1:"1";}i:6;a:3:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:10:"0.00110000";s:8:"weight()";s:1:"1";}i:7;a:3:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.00690000";s:8:"weight()";s:1:"1";}i:8;a:3:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.01650000";s:8:"weight()";s:1:"1";}i:9;a:3:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"392.039978";s:8:"weight()";s:1:"1";}}}i:14;a:3:{s:8:"sphinxql";s:160:"select id, knn_dist(), weight() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) order by knn_dist() desc option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:3:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"392.039978";s:8:"weight()";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"190.440002";s:8:"weight()";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"139.240005";s:8:"weight()";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:9:"96.040001";s:8:"weight()";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.01650000";s:8:"weight()";s:1:"1";}i:5;a:3:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"0.01300000";s:8:"weight()";s:1:"1";}i:6;a:3:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.00690000";s:8:"weight()";s:1:"1";}i:7;a:3:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.00340000";s:8:"weight()";s:1:"1";}i:8;a:3:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:10:"0.00110000";s:8:"weight()";s:1:"1";}i:9;a:3:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:8:"weight()";s:1:"1";}}}i:15;a:3:{s:8:"sphinxql";s:150:"select id, knn_dist(), weight(),hybrid_score() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03278688";}i:1;a:4:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"0.01300000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03151365";}i:2;a:4:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.00340000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03102453";}i:3;a:4:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:9:"96.040001";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03079839";}i:4;a:4:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"139.240005";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03033088";}i:5;a:4:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"190.440002";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.02987737";}i:6;a:4:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:10:"0.00110000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.01612903";}i:7;a:4:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.00690000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:8:"0.015625";}i:8;a:4:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.01650000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.01515152";}i:9;a:4:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"392.039978";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.01428571";}}}i:16;a:3:{s:8:"sphinxql";s:178:"select id, knn_dist(), weight(),hybrid_score() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) order by hybrid_score() asc option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:10:"392.039978";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.01428571";}i:1;a:4:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:10:"0.01650000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.01515152";}i:2;a:4:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:10:"0.00690000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:8:"0.015625";}i:3;a:4:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:10:"0.00110000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.01612903";}i:4;a:4:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"190.440002";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.02987737";}i:5;a:4:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"139.240005";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03033088";}i:6;a:4:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:9:"96.040001";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03079839";}i:7;a:4:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.00340000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03102453";}i:8;a:4:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"0.01300000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03151365";}i:9;a:4:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:10:"0.03278688";}}}i:17;a:3:{s:8:"sphinxql";s:98:"select id, knn_dist() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1))";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:10:"0.00340000";}i:2;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:10:"0.01300000";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:9:"96.040001";}i:4;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:10:"139.240005";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:10:"190.440002";}}}i:18;a:3:{s:8:"sphinxql";s:169:"select id, weight(), knn_dist(), hybrid_score() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:14:"hybrid_score()";s:10:"0.18181819";}i:1;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.01300000";s:14:"hybrid_score()";s:8:"0.150000";}i:2;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00340000";s:14:"hybrid_score()";s:10:"0.13942307";}i:3;a:4:{s:2:"id";s:1:"7";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"96.040001";s:14:"hybrid_score()";s:10:"0.13574661";}i:4;a:4:{s:2:"id";s:1:"8";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"139.240005";s:14:"hybrid_score()";s:10:"0.12698413";}i:5;a:4:{s:2:"id";s:1:"9";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"190.440002";s:14:"hybrid_score()";s:10:"0.11929825";}i:6;a:4:{s:2:"id";s:1:"4";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00110000";s:14:"hybrid_score()";s:10:"0.08333334";}i:7;a:4:{s:2:"id";s:1:"5";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00690000";s:14:"hybrid_score()";s:10:"0.07142857";}i:8;a:4:{s:2:"id";s:1:"6";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.01650000";s:14:"hybrid_score()";s:8:"0.062500";}i:9;a:4:{s:2:"id";s:2:"10";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"392.039978";s:14:"hybrid_score()";s:8:"0.050000";}}}i:19;a:3:{s:8:"sphinxql";s:174:"select id, weight(), knn_dist(), hybrid_score() from t where match('machine learning') and knn(vec, (0.1, 0.1, 0.1, 0.1)) limit 3 option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:14:"hybrid_score()";s:10:"0.18181819";}i:1;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.01300000";s:14:"hybrid_score()";s:8:"0.150000";}i:2;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00340000";s:14:"hybrid_score()";s:10:"0.13942307";}}}i:20;a:3:{s:8:"sphinxql";s:149:"select id, weight(), knn_dist(), hybrid_score() from t where match('machine') and knn(vec, (0.1, 0.1, 0.1, 0.1)) limit 100 option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:14:"hybrid_score()";s:10:"0.03278688";}i:1;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00340000";s:14:"hybrid_score()";s:10:"0.03200205";}i:2;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.01300000";s:14:"hybrid_score()";s:10:"0.03125763";}i:3;a:4:{s:2:"id";s:1:"7";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"96.040001";s:14:"hybrid_score()";s:10:"0.03055037";}i:4;a:4:{s:2:"id";s:1:"8";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"139.240005";s:14:"hybrid_score()";s:10:"0.03009050";}i:5;a:4:{s:2:"id";s:1:"9";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"190.440002";s:14:"hybrid_score()";s:10:"0.02964427";}i:6;a:4:{s:2:"id";s:1:"4";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00110000";s:14:"hybrid_score()";s:10:"0.01612903";}i:7;a:4:{s:2:"id";s:1:"5";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00690000";s:14:"hybrid_score()";s:8:"0.015625";}i:8;a:4:{s:2:"id";s:1:"6";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.01650000";s:14:"hybrid_score()";s:10:"0.01515152";}i:9;a:4:{s:2:"id";s:2:"10";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"392.039978";s:14:"hybrid_score()";s:10:"0.01428571";}}}i:21;a:3:{s:8:"sphinxql";s:156:"select id, weight(), knn_dist(), hybrid_score() from t where match('xyznonexistent') and knn(vec, (0.1, 0.1, 0.1, 0.1)) limit 100 option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:8:"0.000000";s:14:"hybrid_score()";s:10:"0.01639344";}i:1;a:4:{s:2:"id";s:1:"4";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00110000";s:14:"hybrid_score()";s:10:"0.01612903";}i:2;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00340000";s:14:"hybrid_score()";s:10:"0.01587302";}i:3;a:4:{s:2:"id";s:1:"5";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.00690000";s:14:"hybrid_score()";s:8:"0.015625";}i:4;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.01300000";s:14:"hybrid_score()";s:10:"0.01538462";}i:5;a:4:{s:2:"id";s:1:"6";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"0.01650000";s:14:"hybrid_score()";s:10:"0.01515152";}i:6;a:4:{s:2:"id";s:1:"7";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"96.040001";s:14:"hybrid_score()";s:10:"0.01492537";}i:7;a:4:{s:2:"id";s:1:"8";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"139.240005";s:14:"hybrid_score()";s:10:"0.01470588";}i:8;a:4:{s:2:"id";s:1:"9";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"190.440002";s:14:"hybrid_score()";s:10:"0.01449275";}i:9;a:4:{s:2:"id";s:2:"10";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:10:"392.039978";s:14:"hybrid_score()";s:10:"0.01428571";}}}i:22;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:23;a:2:{s:8:"sphinxql";s:110:"create table t2 (title text, category int, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:24;a:2:{s:8:"sphinxql";s:104:"insert into t2 (id, title, category, vec) values (1, 'machine learning basics', 1, (0.1, 0.1, 0.1, 0.1))";s:14:"total_affected";i:1;}i:25;a:2:{s:8:"sphinxql";s:117:"insert into t2 (id, title, category, vec) values (2, 'deep learning for machine vision', 1, (0.15, 0.12, 0.08, 0.11))";s:14:"total_affected";i:1;}i:26;a:2:{s:8:"sphinxql";s:111:"insert into t2 (id, title, category, vec) values (3, 'machine learning algorithms', 2, (0.2, 0.15, 0.12, 0.09))";s:14:"total_affected";i:1;}i:27;a:2:{s:8:"sphinxql";s:107:"insert into t2 (id, title, category, vec) values (4, 'cooking recipes italian', 2, (0.11, 0.09, 0.13, 0.1))";s:14:"total_affected";i:1;}i:28;a:2:{s:8:"sphinxql";s:103:"insert into t2 (id, title, category, vec) values (5, 'travel guide europe', 1, (0.18, 0.11, 0.1, 0.12))";s:14:"total_affected";i:1;}i:29;a:2:{s:8:"sphinxql";s:105:"insert into t2 (id, title, category, vec) values (6, 'sports news football', 2, (0.22, 0.14, 0.09, 0.08))";s:14:"total_affected";i:1;}i:30;a:2:{s:8:"sphinxql";s:111:"insert into t2 (id, title, category, vec) values (7, 'machine learning in production', 1, (5.0, 5.0, 5.0, 5.0))";s:14:"total_affected";i:1;}i:31;a:2:{s:8:"sphinxql";s:106:"insert into t2 (id, title, category, vec) values (8, 'advanced machine learning', 2, (6.0, 6.0, 6.0, 6.0))";s:14:"total_affected";i:1;}i:32;a:2:{s:8:"sphinxql";s:106:"insert into t2 (id, title, category, vec) values (9, 'machine learning overview', 1, (7.0, 7.0, 7.0, 7.0))";s:14:"total_affected";i:1;}i:33;a:2:{s:8:"sphinxql";s:111:"insert into t2 (id, title, category, vec) values (10, 'random unrelated document', 2, (10.0, 10.0, 10.0, 10.0))";s:14:"total_affected";i:1;}i:34;a:2:{s:8:"sphinxql";s:17:"flush ramchunk t2";s:14:"total_affected";i:0;}i:35;a:3:{s:8:"sphinxql";s:152:"select id, category, hybrid_score() from t2 where match('machine learning') and knn(vec, (0.1, 0.1, 0.1, 0.1)) and category=1 option fusion_method='rrf'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"1";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:10:"0.03278688";}i:1;a:3:{s:2:"id";s:1:"7";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:10:"0.03175403";}i:2;a:3:{s:2:"id";s:1:"2";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:10:"0.03175403";}i:3;a:3:{s:2:"id";s:1:"9";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:10:"0.03125763";}i:4;a:3:{s:2:"id";s:1:"5";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:10:"0.01587302";}}}i:36;a:3:{s:8:"sphinxql";s:152:"select id, category, hybrid_score() from t2 where match('machine learning') and knn(vec, (0.1, 0.1, 0.1, 0.1)) and category=2 option fusion_method='rrf'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"3";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.03252247";}i:1;a:3:{s:2:"id";s:1:"8";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.03175403";}i:2;a:3:{s:2:"id";s:1:"4";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.01639344";}i:3;a:3:{s:2:"id";s:1:"6";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.01587302";}i:4;a:3:{s:2:"id";s:2:"10";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.01538462";}}}i:37;a:3:{s:8:"sphinxql";s:156:"select id, category, hybrid_score() from t2 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) and category>=2 option fusion_method='rrf'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"3";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.03252247";}i:1;a:3:{s:2:"id";s:1:"8";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.03175403";}i:2;a:3:{s:2:"id";s:1:"4";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.01639344";}i:3;a:3:{s:2:"id";s:1:"6";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.01587302";}i:4;a:3:{s:2:"id";s:2:"10";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:10:"0.01538462";}}}i:38;a:3:{s:8:"sphinxql";s:71:"select id, category from t2 where hybrid_match('machine learning', vec)";s:5:"errno";i:1064;s:5:"error";s:99:"table t2: hybrid KNN-1 phase: Embeddings generation string specified, but embeddings are not loaded";}i:39;a:3:{s:8:"sphinxql";s:87:"select id, category, hybrid_score() from t2 where hybrid_match('machine learning', vec)";s:5:"errno";i:1064;s:5:"error";s:99:"table t2: hybrid KNN-1 phase: Embeddings generation string specified, but embeddings are not loaded";}i:40;a:3:{s:8:"sphinxql";s:66:"select id, category from t2 where hybrid_match('machine learning')";s:5:"errno";i:1064;s:5:"error";s:108:"table t2: hybrid search requires a float_vector attribute with auto-embeddings, but none found in the schema";}i:41;a:3:{s:8:"sphinxql";s:96:"select id, category from t2 where hybrid_match('machine learning',{k=5}) option rank_constant=10";s:5:"errno";i:1064;s:5:"error";s:108:"table t2: hybrid search requires a float_vector attribute with auto-embeddings, but none found in the schema";}i:42;a:2:{s:8:"sphinxql";s:13:"drop table t2";s:14:"total_affected";i:0;}i:43;a:2:{s:8:"sphinxql";s:96:"create table t3 (title text, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:44;a:2:{s:8:"sphinxql";s:91:"insert into t3 (id, title, vec) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1))";s:14:"total_affected";i:1;}i:45;a:2:{s:8:"sphinxql";s:104:"insert into t3 (id, title, vec) values (2, 'deep learning for machine vision', (0.15, 0.12, 0.08, 0.11))";s:14:"total_affected";i:1;}i:46;a:2:{s:8:"sphinxql";s:98:"insert into t3 (id, title, vec) values (3, 'machine learning algorithms', (0.2, 0.15, 0.12, 0.09))";s:14:"total_affected";i:1;}i:47;a:2:{s:8:"sphinxql";s:94:"insert into t3 (id, title, vec) values (4, 'cooking recipes italian', (0.11, 0.09, 0.13, 0.1))";s:14:"total_affected";i:1;}i:48;a:2:{s:8:"sphinxql";s:90:"insert into t3 (id, title, vec) values (5, 'travel guide europe', (0.18, 0.11, 0.1, 0.12))";s:14:"total_affected";i:1;}i:49;a:2:{s:8:"sphinxql";s:98:"insert into t3 (id, title, vec) values (6, 'machine learning in production', (5.0, 5.0, 5.0, 5.0))";s:14:"total_affected";i:1;}i:50;a:2:{s:8:"sphinxql";s:93:"insert into t3 (id, title, vec) values (7, 'advanced machine learning', (6.0, 6.0, 6.0, 6.0))";s:14:"total_affected";i:1;}i:51;a:2:{s:8:"sphinxql";s:17:"flush ramchunk t3";s:14:"total_affected";i:0;}i:52;a:3:{s:8:"sphinxql";s:130:"select id, hybrid_score() from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf'";s:10:"total_rows";i:7;s:4:"rows";a:7:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.03278688";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:10:"0.03151365";}i:2;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.03125763";}i:3;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.03102453";}i:4;a:2:{s:2:"id";s:1:"7";s:14:"hybrid_score()";s:10:"0.03055037";}i:5;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.01612903";}i:6;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:8:"0.015625";}}}i:53;a:3:{s:8:"sphinxql";s:148:"select id, hybrid_score() from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:7;s:4:"rows";a:7:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.18181819";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:8:"0.150000";}i:2;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.14358975";}i:3;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.13942307";}i:4;a:2:{s:2:"id";s:1:"7";s:14:"hybrid_score()";s:10:"0.13025211";}i:5;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.08333334";}i:6;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:10:"0.07142857";}}}i:54;a:3:{s:8:"sphinxql";s:146:"select id, hybrid_score() from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', window_size=20";s:10:"total_rows";i:7;s:4:"rows";a:7:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.03278688";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:10:"0.03151365";}i:2;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.03125763";}i:3;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.03102453";}i:4;a:2:{s:2:"id";s:1:"7";s:14:"hybrid_score()";s:10:"0.03055037";}i:5;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.01612903";}i:6;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:8:"0.015625";}}}i:55;a:3:{s:8:"sphinxql";s:118:"select id from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='invalid'";s:5:"errno";i:1064;s:5:"error";s:47:"unknown fusion_method 'invalid', supported: rrf";}i:56;a:2:{s:8:"sphinxql";s:13:"drop table t3";s:14:"total_affected";i:0;}i:57;a:2:{s:8:"sphinxql";s:166:"create table t4 (title text, vec1 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2', vec2 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:58;a:2:{s:8:"sphinxql";s:120:"insert into t4 (id, title, vec1, vec2) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1), (1.0, 0.0, 0.0, 0.0))";s:14:"total_affected";i:1;}i:59;a:2:{s:8:"sphinxql";s:133:"insert into t4 (id, title, vec1, vec2) values (2, 'deep learning for machine vision', (0.15, 0.12, 0.08, 0.11), (0.0, 1.0, 0.0, 0.0))";s:14:"total_affected";i:1;}i:60;a:2:{s:8:"sphinxql";s:127:"insert into t4 (id, title, vec1, vec2) values (3, 'machine learning algorithms', (0.2, 0.15, 0.12, 0.09), (0.0, 0.0, 1.0, 0.0))";s:14:"total_affected";i:1;}i:61;a:2:{s:8:"sphinxql";s:123:"insert into t4 (id, title, vec1, vec2) values (4, 'cooking recipes italian', (0.11, 0.09, 0.13, 0.1), (0.0, 0.0, 0.0, 1.0))";s:14:"total_affected";i:1;}i:62;a:2:{s:8:"sphinxql";s:116:"insert into t4 (id, title, vec1, vec2) values (5, 'travel guide europe', (5.0, 5.0, 5.0, 5.0), (0.5, 0.5, 0.5, 0.5))";s:14:"total_affected";i:1;}i:63;a:2:{s:8:"sphinxql";s:124:"insert into t4 (id, title, vec1, vec2) values (6, 'machine learning production', (6.0, 6.0, 6.0, 6.0), (0.9, 0.1, 0.0, 0.0))";s:14:"total_affected";i:1;}i:64;a:2:{s:8:"sphinxql";s:17:"flush ramchunk t4";s:14:"total_affected";i:0;}i:65;a:3:{s:8:"sphinxql";s:170:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf'";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.04918033";}i:1;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.04715356";}i:2;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:10:"0.04713865";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.04664953";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.03175403";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:10:"0.03125763";}}}i:66;a:3:{s:8:"sphinxql";s:188:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.27272728";}i:1;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.22275642";}i:2;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:10:"0.22142857";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.21085165";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.15476191";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:10:"0.14358975";}}}i:67;a:3:{s:8:"sphinxql";s:140:"select id, hybrid_score() from t4 where knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf'";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.03278688";}i:1;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.03175403";}i:2;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.03128055";}i:3;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:10:"0.03125763";}i:4;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.03102453";}i:5;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:10:"0.03100961";}}}i:68;a:3:{s:8:"sphinxql";s:249:"select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(text=0.7, dense1=0.2, dense2=0.1)";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.01639344";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:10:"0.01595378";}i:2;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.01575432";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.01562725";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.00478831";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:10:"0.00466422";}}}i:69;a:3:{s:8:"sphinxql";s:242:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1)";s:5:"errno";i:1064;s:5:"error";s:94:"table t4: fusion_weights: unknown alias 'query'; use explicit aliases to reference sub-queries";}i:70;a:3:{s:8:"sphinxql";s:250:"select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1)";s:5:"errno";i:1064;s:5:"error";s:94:"table t4: fusion_weights: unknown alias 'query'; use explicit aliases to reference sub-queries";}i:71;a:3:{s:8:"sphinxql";s:207:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf', fusion_weights=(vec1=0.2, vec2=0.1)";s:5:"errno";i:1064;s:5:"error";s:93:"table t4: fusion_weights: unknown alias 'vec1'; use explicit aliases to reference sub-queries";}i:72;a:3:{s:8:"sphinxql";s:225:"select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(text=2.0)";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:10:"0.06557377";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:10:"0.06326768";}i:2;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:10:"0.06302658";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:10:"0.06227453";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:10:"0.03175403";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:10:"0.03125763";}}}i:73;a:3:{s:8:"sphinxql";s:165:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', fusion_weights=(nonexistent=0.5)";s:5:"errno";i:1064;s:5:"error";s:100:"table t4: fusion_weights: unknown alias 'nonexistent'; use explicit aliases to reference sub-queries";}i:74;a:2:{s:8:"sphinxql";s:13:"drop table t4";s:14:"total_affected";i:0;}i:75;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:95:"CREATE TABLE t (title text, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:76;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:86:"{"index":"t","id":1,"doc":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}}";s:4:"rows";s:67:"{"table":"t","id":1,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:77;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:99:"{"index":"t","id":2,"doc":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}}";s:4:"rows";s:67:"{"table":"t","id":2,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:78;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:93:"{"index":"t","id":3,"doc":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}}";s:4:"rows";s:67:"{"table":"t","id":3,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:79;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:89:"{"index":"t","id":4,"doc":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}}";s:4:"rows";s:67:"{"table":"t","id":4,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:80;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:85:"{"index":"t","id":5,"doc":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}}";s:4:"rows";s:67:"{"table":"t","id":5,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:81;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:87:"{"index":"t","id":6,"doc":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}}";s:4:"rows";s:67:"{"table":"t","id":6,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:82;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:93:"{"index":"t","id":7,"doc":{"title":"machine learning in production","vec":[5.0,5.0,5.0,5.0]}}";s:4:"rows";s:67:"{"table":"t","id":7,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:83;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:88:"{"index":"t","id":8,"doc":{"title":"advanced machine learning","vec":[6.0,6.0,6.0,6.0]}}";s:4:"rows";s:67:"{"table":"t","id":8,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:84;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:88:"{"index":"t","id":9,"doc":{"title":"machine learning overview","vec":[7.0,7.0,7.0,7.0]}}";s:4:"rows";s:67:"{"table":"t","id":9,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:85;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:93:"{"index":"t","id":10,"doc":{"title":"random unrelated document","vec":[10.0,10.0,10.0,10.0]}}";s:4:"rows";s:68:"{"table":"t","id":10,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:86;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:16:"FLUSH RAMCHUNK t";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:87;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:194:"{ +a:1:{i:0;a:136:{i:0;a:2:{s:8:"sphinxql";s:95:"create table t (title text, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:1;a:2:{s:8:"sphinxql";s:90:"insert into t (id, title, vec) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1))";s:14:"total_affected";i:1;}i:2;a:2:{s:8:"sphinxql";s:103:"insert into t (id, title, vec) values (2, 'deep learning for machine vision', (0.15, 0.12, 0.08, 0.11))";s:14:"total_affected";i:1;}i:3;a:2:{s:8:"sphinxql";s:97:"insert into t (id, title, vec) values (3, 'machine learning algorithms', (0.2, 0.15, 0.12, 0.09))";s:14:"total_affected";i:1;}i:4;a:2:{s:8:"sphinxql";s:93:"insert into t (id, title, vec) values (4, 'cooking recipes italian', (0.11, 0.09, 0.13, 0.1))";s:14:"total_affected";i:1;}i:5;a:2:{s:8:"sphinxql";s:89:"insert into t (id, title, vec) values (5, 'travel guide europe', (0.18, 0.11, 0.1, 0.12))";s:14:"total_affected";i:1;}i:6;a:2:{s:8:"sphinxql";s:91:"insert into t (id, title, vec) values (6, 'sports news football', (0.22, 0.14, 0.09, 0.08))";s:14:"total_affected";i:1;}i:7;a:2:{s:8:"sphinxql";s:97:"insert into t (id, title, vec) values (7, 'machine learning in production', (5.0, 5.0, 5.0, 5.0))";s:14:"total_affected";i:1;}i:8;a:2:{s:8:"sphinxql";s:92:"insert into t (id, title, vec) values (8, 'advanced machine learning', (6.0, 6.0, 6.0, 6.0))";s:14:"total_affected";i:1;}i:9;a:2:{s:8:"sphinxql";s:92:"insert into t (id, title, vec) values (9, 'machine learning overview', (7.0, 7.0, 7.0, 7.0))";s:14:"total_affected";i:1;}i:10;a:2:{s:8:"sphinxql";s:97:"insert into t (id, title, vec) values (10, 'random unrelated document', (10.0, 10.0, 10.0, 10.0))";s:14:"total_affected";i:1;}i:11;a:2:{s:8:"sphinxql";s:16:"flush ramchunk t";s:14:"total_affected";i:0;}i:12;a:3:{s:8:"sphinxql";s:135:"select id, knn_dist(), weight() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:3:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";s:8:"weight()";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:5:"0.013";s:8:"weight()";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:6:"0.0034";s:8:"weight()";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:5:"96.04";s:8:"weight()";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:9:"139.24001";s:8:"weight()";s:1:"1";}i:5;a:3:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:6:"190.44";s:8:"weight()";s:1:"1";}i:6;a:3:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:6:"0.0011";s:8:"weight()";s:1:"1";}i:7;a:3:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:6:"0.0069";s:8:"weight()";s:1:"1";}i:8;a:3:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.0165";s:8:"weight()";s:1:"1";}i:9;a:3:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:9:"392.03995";s:8:"weight()";s:1:"1";}}}i:13;a:3:{s:8:"sphinxql";s:166:"select id, knn_dist(), weight() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) order by weight() desc, id asc option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:3:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";s:8:"weight()";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:5:"0.013";s:8:"weight()";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:5:"96.04";s:8:"weight()";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:9:"139.24001";s:8:"weight()";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:6:"190.44";s:8:"weight()";s:1:"1";}i:5;a:3:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:6:"0.0034";s:8:"weight()";s:1:"1";}i:6;a:3:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:6:"0.0011";s:8:"weight()";s:1:"1";}i:7;a:3:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:6:"0.0069";s:8:"weight()";s:1:"1";}i:8;a:3:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.0165";s:8:"weight()";s:1:"1";}i:9;a:3:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:9:"392.03995";s:8:"weight()";s:1:"1";}}}i:14;a:3:{s:8:"sphinxql";s:160:"select id, knn_dist(), weight() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) order by knn_dist() desc option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:3:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:9:"392.03995";s:8:"weight()";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:6:"190.44";s:8:"weight()";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:9:"139.24001";s:8:"weight()";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:5:"96.04";s:8:"weight()";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.0165";s:8:"weight()";s:1:"1";}i:5;a:3:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:5:"0.013";s:8:"weight()";s:1:"1";}i:6;a:3:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:6:"0.0069";s:8:"weight()";s:1:"1";}i:7;a:3:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:6:"0.0034";s:8:"weight()";s:1:"1";}i:8;a:3:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:6:"0.0011";s:8:"weight()";s:1:"1";}i:9;a:3:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";s:8:"weight()";s:1:"1";}}}i:15;a:3:{s:8:"sphinxql";s:150:"select id, knn_dist(), weight(),hybrid_score() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03279";}i:1;a:4:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:5:"0.013";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03151";}i:2;a:4:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:6:"0.0034";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03102";}i:3;a:4:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:5:"96.04";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:6:"0.0308";}i:4;a:4:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:9:"139.24001";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03033";}i:5;a:4:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:6:"190.44";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.02988";}i:6;a:4:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:6:"0.0011";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01613";}i:7;a:4:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:6:"0.0069";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01563";}i:8;a:4:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.0165";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01515";}i:9;a:4:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:9:"392.03995";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01429";}}}i:16;a:3:{s:8:"sphinxql";s:178:"select id, knn_dist(), weight(),hybrid_score() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) order by hybrid_score() asc option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:2:"10";s:10:"knn_dist()";s:9:"392.03995";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01429";}i:1;a:4:{s:2:"id";s:1:"6";s:10:"knn_dist()";s:6:"0.0165";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01515";}i:2;a:4:{s:2:"id";s:1:"5";s:10:"knn_dist()";s:6:"0.0069";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01563";}i:3;a:4:{s:2:"id";s:1:"4";s:10:"knn_dist()";s:6:"0.0011";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.01613";}i:4;a:4:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:6:"190.44";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.02988";}i:5;a:4:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:9:"139.24001";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03033";}i:6;a:4:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:5:"96.04";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:6:"0.0308";}i:7;a:4:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:6:"0.0034";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03102";}i:8;a:4:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:5:"0.013";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03151";}i:9;a:4:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";s:8:"weight()";s:1:"1";s:14:"hybrid_score()";s:7:"0.03279";}}}i:17;a:3:{s:8:"sphinxql";s:98:"select id, knn_dist() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1))";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"knn_dist()";s:1:"0";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"knn_dist()";s:6:"0.0034";}i:2;a:2:{s:2:"id";s:1:"3";s:10:"knn_dist()";s:5:"0.013";}i:3;a:2:{s:2:"id";s:1:"7";s:10:"knn_dist()";s:5:"96.04";}i:4;a:2:{s:2:"id";s:1:"8";s:10:"knn_dist()";s:9:"139.24001";}i:5;a:2:{s:2:"id";s:1:"9";s:10:"knn_dist()";s:6:"190.44";}}}i:18;a:3:{s:8:"sphinxql";s:169:"select id, weight(), knn_dist(), hybrid_score() from t where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:1:"0";s:14:"hybrid_score()";s:7:"0.18182";}i:1;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:5:"0.013";s:14:"hybrid_score()";s:4:"0.15";}i:2;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0034";s:14:"hybrid_score()";s:7:"0.13942";}i:3;a:4:{s:2:"id";s:1:"7";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:5:"96.04";s:14:"hybrid_score()";s:7:"0.13575";}i:4;a:4:{s:2:"id";s:1:"8";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"139.24001";s:14:"hybrid_score()";s:7:"0.12698";}i:5;a:4:{s:2:"id";s:1:"9";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"190.44";s:14:"hybrid_score()";s:6:"0.1193";}i:6;a:4:{s:2:"id";s:1:"4";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0011";s:14:"hybrid_score()";s:7:"0.08333";}i:7;a:4:{s:2:"id";s:1:"5";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0069";s:14:"hybrid_score()";s:7:"0.07143";}i:8;a:4:{s:2:"id";s:1:"6";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0165";s:14:"hybrid_score()";s:6:"0.0625";}i:9;a:4:{s:2:"id";s:2:"10";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"392.03995";s:14:"hybrid_score()";s:4:"0.05";}}}i:19;a:3:{s:8:"sphinxql";s:174:"select id, weight(), knn_dist(), hybrid_score() from t where match('machine learning') and knn(vec, (0.1, 0.1, 0.1, 0.1)) limit 3 option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:1:"0";s:14:"hybrid_score()";s:7:"0.18182";}i:1;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:5:"0.013";s:14:"hybrid_score()";s:4:"0.15";}i:2;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0034";s:14:"hybrid_score()";s:7:"0.13942";}}}i:20;a:3:{s:8:"sphinxql";s:149:"select id, weight(), knn_dist(), hybrid_score() from t where match('machine') and knn(vec, (0.1, 0.1, 0.1, 0.1)) limit 100 option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:1:"0";s:14:"hybrid_score()";s:7:"0.03279";}i:1;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0034";s:14:"hybrid_score()";s:5:"0.032";}i:2;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:5:"0.013";s:14:"hybrid_score()";s:7:"0.03126";}i:3;a:4:{s:2:"id";s:1:"7";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:5:"96.04";s:14:"hybrid_score()";s:7:"0.03055";}i:4;a:4:{s:2:"id";s:1:"8";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"139.24001";s:14:"hybrid_score()";s:7:"0.03009";}i:5;a:4:{s:2:"id";s:1:"9";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"190.44";s:14:"hybrid_score()";s:7:"0.02964";}i:6;a:4:{s:2:"id";s:1:"4";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0011";s:14:"hybrid_score()";s:7:"0.01613";}i:7;a:4:{s:2:"id";s:1:"5";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0069";s:14:"hybrid_score()";s:7:"0.01563";}i:8;a:4:{s:2:"id";s:1:"6";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0165";s:14:"hybrid_score()";s:7:"0.01515";}i:9;a:4:{s:2:"id";s:2:"10";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"392.03995";s:14:"hybrid_score()";s:7:"0.01429";}}}i:21;a:3:{s:8:"sphinxql";s:156:"select id, weight(), knn_dist(), hybrid_score() from t where match('xyznonexistent') and knn(vec, (0.1, 0.1, 0.1, 0.1)) limit 100 option fusion_method='rrf'";s:10:"total_rows";i:10;s:4:"rows";a:10:{i:0;a:4:{s:2:"id";s:1:"1";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:1:"0";s:14:"hybrid_score()";s:7:"0.01639";}i:1;a:4:{s:2:"id";s:1:"4";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0011";s:14:"hybrid_score()";s:7:"0.01613";}i:2;a:4:{s:2:"id";s:1:"2";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0034";s:14:"hybrid_score()";s:7:"0.01587";}i:3;a:4:{s:2:"id";s:1:"5";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0069";s:14:"hybrid_score()";s:7:"0.01563";}i:4;a:4:{s:2:"id";s:1:"3";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:5:"0.013";s:14:"hybrid_score()";s:7:"0.01538";}i:5;a:4:{s:2:"id";s:1:"6";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"0.0165";s:14:"hybrid_score()";s:7:"0.01515";}i:6;a:4:{s:2:"id";s:1:"7";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:5:"96.04";s:14:"hybrid_score()";s:7:"0.01493";}i:7;a:4:{s:2:"id";s:1:"8";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"139.24001";s:14:"hybrid_score()";s:7:"0.01471";}i:8;a:4:{s:2:"id";s:1:"9";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:6:"190.44";s:14:"hybrid_score()";s:7:"0.01449";}i:9;a:4:{s:2:"id";s:2:"10";s:8:"weight()";s:1:"1";s:10:"knn_dist()";s:9:"392.03995";s:14:"hybrid_score()";s:7:"0.01429";}}}i:22;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:23;a:2:{s:8:"sphinxql";s:110:"create table t2 (title text, category int, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:24;a:2:{s:8:"sphinxql";s:104:"insert into t2 (id, title, category, vec) values (1, 'machine learning basics', 1, (0.1, 0.1, 0.1, 0.1))";s:14:"total_affected";i:1;}i:25;a:2:{s:8:"sphinxql";s:117:"insert into t2 (id, title, category, vec) values (2, 'deep learning for machine vision', 1, (0.15, 0.12, 0.08, 0.11))";s:14:"total_affected";i:1;}i:26;a:2:{s:8:"sphinxql";s:111:"insert into t2 (id, title, category, vec) values (3, 'machine learning algorithms', 2, (0.2, 0.15, 0.12, 0.09))";s:14:"total_affected";i:1;}i:27;a:2:{s:8:"sphinxql";s:107:"insert into t2 (id, title, category, vec) values (4, 'cooking recipes italian', 2, (0.11, 0.09, 0.13, 0.1))";s:14:"total_affected";i:1;}i:28;a:2:{s:8:"sphinxql";s:103:"insert into t2 (id, title, category, vec) values (5, 'travel guide europe', 1, (0.18, 0.11, 0.1, 0.12))";s:14:"total_affected";i:1;}i:29;a:2:{s:8:"sphinxql";s:105:"insert into t2 (id, title, category, vec) values (6, 'sports news football', 2, (0.22, 0.14, 0.09, 0.08))";s:14:"total_affected";i:1;}i:30;a:2:{s:8:"sphinxql";s:111:"insert into t2 (id, title, category, vec) values (7, 'machine learning in production', 1, (5.0, 5.0, 5.0, 5.0))";s:14:"total_affected";i:1;}i:31;a:2:{s:8:"sphinxql";s:106:"insert into t2 (id, title, category, vec) values (8, 'advanced machine learning', 2, (6.0, 6.0, 6.0, 6.0))";s:14:"total_affected";i:1;}i:32;a:2:{s:8:"sphinxql";s:106:"insert into t2 (id, title, category, vec) values (9, 'machine learning overview', 1, (7.0, 7.0, 7.0, 7.0))";s:14:"total_affected";i:1;}i:33;a:2:{s:8:"sphinxql";s:111:"insert into t2 (id, title, category, vec) values (10, 'random unrelated document', 2, (10.0, 10.0, 10.0, 10.0))";s:14:"total_affected";i:1;}i:34;a:2:{s:8:"sphinxql";s:17:"flush ramchunk t2";s:14:"total_affected";i:0;}i:35;a:3:{s:8:"sphinxql";s:152:"select id, category, hybrid_score() from t2 where match('machine learning') and knn(vec, (0.1, 0.1, 0.1, 0.1)) and category=1 option fusion_method='rrf'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"1";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:7:"0.03279";}i:1;a:3:{s:2:"id";s:1:"7";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:7:"0.03175";}i:2;a:3:{s:2:"id";s:1:"2";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:7:"0.03175";}i:3;a:3:{s:2:"id";s:1:"9";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:7:"0.03126";}i:4;a:3:{s:2:"id";s:1:"5";s:8:"category";s:1:"1";s:14:"hybrid_score()";s:7:"0.01587";}}}i:36;a:3:{s:8:"sphinxql";s:152:"select id, category, hybrid_score() from t2 where match('machine learning') and knn(vec, (0.1, 0.1, 0.1, 0.1)) and category=2 option fusion_method='rrf'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"3";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.03252";}i:1;a:3:{s:2:"id";s:1:"8";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.03175";}i:2;a:3:{s:2:"id";s:1:"4";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.01639";}i:3;a:3:{s:2:"id";s:1:"6";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.01587";}i:4;a:3:{s:2:"id";s:2:"10";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.01538";}}}i:37;a:3:{s:8:"sphinxql";s:156:"select id, category, hybrid_score() from t2 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) and category>=2 option fusion_method='rrf'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"3";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.03252";}i:1;a:3:{s:2:"id";s:1:"8";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.03175";}i:2;a:3:{s:2:"id";s:1:"4";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.01639";}i:3;a:3:{s:2:"id";s:1:"6";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.01587";}i:4;a:3:{s:2:"id";s:2:"10";s:8:"category";s:1:"2";s:14:"hybrid_score()";s:7:"0.01538";}}}i:38;a:3:{s:8:"sphinxql";s:71:"select id, category from t2 where hybrid_match('machine learning', vec)";s:5:"errno";i:1064;s:5:"error";s:99:"table t2: hybrid KNN-1 phase: Embeddings generation string specified, but embeddings are not loaded";}i:39;a:3:{s:8:"sphinxql";s:87:"select id, category, hybrid_score() from t2 where hybrid_match('machine learning', vec)";s:5:"errno";i:1064;s:5:"error";s:99:"table t2: hybrid KNN-1 phase: Embeddings generation string specified, but embeddings are not loaded";}i:40;a:3:{s:8:"sphinxql";s:66:"select id, category from t2 where hybrid_match('machine learning')";s:5:"errno";i:1064;s:5:"error";s:108:"table t2: hybrid search requires a float_vector attribute with auto-embeddings, but none found in the schema";}i:41;a:3:{s:8:"sphinxql";s:96:"select id, category from t2 where hybrid_match('machine learning',{k=5}) option rank_constant=10";s:5:"errno";i:1064;s:5:"error";s:108:"table t2: hybrid search requires a float_vector attribute with auto-embeddings, but none found in the schema";}i:42;a:2:{s:8:"sphinxql";s:13:"drop table t2";s:14:"total_affected";i:0;}i:43;a:2:{s:8:"sphinxql";s:96:"create table t3 (title text, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:44;a:2:{s:8:"sphinxql";s:91:"insert into t3 (id, title, vec) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1))";s:14:"total_affected";i:1;}i:45;a:2:{s:8:"sphinxql";s:104:"insert into t3 (id, title, vec) values (2, 'deep learning for machine vision', (0.15, 0.12, 0.08, 0.11))";s:14:"total_affected";i:1;}i:46;a:2:{s:8:"sphinxql";s:98:"insert into t3 (id, title, vec) values (3, 'machine learning algorithms', (0.2, 0.15, 0.12, 0.09))";s:14:"total_affected";i:1;}i:47;a:2:{s:8:"sphinxql";s:94:"insert into t3 (id, title, vec) values (4, 'cooking recipes italian', (0.11, 0.09, 0.13, 0.1))";s:14:"total_affected";i:1;}i:48;a:2:{s:8:"sphinxql";s:90:"insert into t3 (id, title, vec) values (5, 'travel guide europe', (0.18, 0.11, 0.1, 0.12))";s:14:"total_affected";i:1;}i:49;a:2:{s:8:"sphinxql";s:98:"insert into t3 (id, title, vec) values (6, 'machine learning in production', (5.0, 5.0, 5.0, 5.0))";s:14:"total_affected";i:1;}i:50;a:2:{s:8:"sphinxql";s:93:"insert into t3 (id, title, vec) values (7, 'advanced machine learning', (6.0, 6.0, 6.0, 6.0))";s:14:"total_affected";i:1;}i:51;a:2:{s:8:"sphinxql";s:17:"flush ramchunk t3";s:14:"total_affected";i:0;}i:52;a:3:{s:8:"sphinxql";s:130:"select id, hybrid_score() from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf'";s:10:"total_rows";i:7;s:4:"rows";a:7:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.03279";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:7:"0.03151";}i:2;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.03126";}i:3;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.03102";}i:4;a:2:{s:2:"id";s:1:"7";s:14:"hybrid_score()";s:7:"0.03055";}i:5;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.01613";}i:6;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.01563";}}}i:53;a:3:{s:8:"sphinxql";s:148:"select id, hybrid_score() from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:7;s:4:"rows";a:7:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.18182";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:4:"0.15";}i:2;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.14359";}i:3;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.13942";}i:4;a:2:{s:2:"id";s:1:"7";s:14:"hybrid_score()";s:7:"0.13025";}i:5;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.08333";}i:6;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.07143";}}}i:54;a:3:{s:8:"sphinxql";s:146:"select id, hybrid_score() from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', window_size=20";s:10:"total_rows";i:7;s:4:"rows";a:7:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.03279";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:7:"0.03151";}i:2;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.03126";}i:3;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.03102";}i:4;a:2:{s:2:"id";s:1:"7";s:14:"hybrid_score()";s:7:"0.03055";}i:5;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.01613";}i:6;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.01563";}}}i:55;a:3:{s:8:"sphinxql";s:118:"select id from t3 where match('machine learning') and knn(vec, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='invalid'";s:5:"errno";i:1064;s:5:"error";s:47:"unknown fusion_method 'invalid', supported: rrf";}i:56;a:2:{s:8:"sphinxql";s:13:"drop table t3";s:14:"total_affected";i:0;}i:57;a:2:{s:8:"sphinxql";s:166:"create table t4 (title text, vec1 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2', vec2 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:14:"total_affected";i:0;}i:58;a:2:{s:8:"sphinxql";s:123:"insert into t4 (id, title, vec1, vec2) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1), (1.0, 0.01, 0.02, 0.03))";s:14:"total_affected";i:1;}i:59;a:2:{s:8:"sphinxql";s:133:"insert into t4 (id, title, vec1, vec2) values (2, 'deep learning for machine vision', (0.15, 0.12, 0.08, 0.11), (0.0, 1.0, 0.0, 0.0))";s:14:"total_affected";i:1;}i:60;a:2:{s:8:"sphinxql";s:127:"insert into t4 (id, title, vec1, vec2) values (3, 'machine learning algorithms', (0.2, 0.15, 0.12, 0.09), (0.0, 0.0, 1.0, 0.0))";s:14:"total_affected";i:1;}i:61;a:2:{s:8:"sphinxql";s:123:"insert into t4 (id, title, vec1, vec2) values (4, 'cooking recipes italian', (0.11, 0.09, 0.13, 0.1), (0.0, 0.0, 0.0, 1.0))";s:14:"total_affected";i:1;}i:62;a:2:{s:8:"sphinxql";s:116:"insert into t4 (id, title, vec1, vec2) values (5, 'travel guide europe', (5.0, 5.0, 5.0, 5.0), (0.5, 0.5, 0.5, 0.5))";s:14:"total_affected";i:1;}i:63;a:2:{s:8:"sphinxql";s:124:"insert into t4 (id, title, vec1, vec2) values (6, 'machine learning production', (6.0, 6.0, 6.0, 6.0), (0.9, 0.1, 0.0, 0.0))";s:14:"total_affected";i:1;}i:64;a:2:{s:8:"sphinxql";s:17:"flush ramchunk t4";s:14:"total_affected";i:0;}i:65;a:3:{s:8:"sphinxql";s:173:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf'";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.04918";}i:1;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.04715";}i:2;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:7:"0.04714";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.04665";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.03175";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.03126";}}}i:66;a:3:{s:8:"sphinxql";s:191:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf', rank_constant=10";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.27273";}i:1;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.22276";}i:2;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:7:"0.22143";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.21085";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.15476";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.14359";}}}i:67;a:3:{s:8:"sphinxql";s:143:"select id, hybrid_score() from t4 where knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf'";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.03279";}i:1;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.03175";}i:2;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.03128";}i:3;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.03126";}i:4;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.03102";}i:5;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:7:"0.03101";}}}i:68;a:3:{s:8:"sphinxql";s:252:"select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(text=0.7, dense1=0.2, dense2=0.1)";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.01639";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:7:"0.01595";}i:2;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.01575";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.01563";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.00479";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.00466";}}}i:69;a:3:{s:8:"sphinxql";s:245:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1)";s:5:"errno";i:1064;s:5:"error";s:94:"table t4: fusion_weights: unknown alias 'query'; use explicit aliases to reference sub-queries";}i:70;a:3:{s:8:"sphinxql";s:253:"select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1)";s:5:"errno";i:1064;s:5:"error";s:94:"table t4: fusion_weights: unknown alias 'query'; use explicit aliases to reference sub-queries";}i:71;a:3:{s:8:"sphinxql";s:210:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf', fusion_weights=(vec1=0.2, vec2=0.1)";s:5:"errno";i:1064;s:5:"error";s:93:"table t4: fusion_weights: unknown alias 'vec1'; use explicit aliases to reference sub-queries";}i:72;a:3:{s:8:"sphinxql";s:228:"select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(text=2.0)";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"1";s:14:"hybrid_score()";s:7:"0.06557";}i:1;a:2:{s:2:"id";s:1:"3";s:14:"hybrid_score()";s:7:"0.06327";}i:2;a:2:{s:2:"id";s:1:"6";s:14:"hybrid_score()";s:7:"0.06303";}i:3;a:2:{s:2:"id";s:1:"2";s:14:"hybrid_score()";s:7:"0.06227";}i:4;a:2:{s:2:"id";s:1:"4";s:14:"hybrid_score()";s:7:"0.03175";}i:5;a:2:{s:2:"id";s:1:"5";s:14:"hybrid_score()";s:7:"0.03126";}}}i:73;a:3:{s:8:"sphinxql";s:165:"select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', fusion_weights=(nonexistent=0.5)";s:5:"errno";i:1064;s:5:"error";s:100:"table t4: fusion_weights: unknown alias 'nonexistent'; use explicit aliases to reference sub-queries";}i:74;a:2:{s:8:"sphinxql";s:13:"drop table t4";s:14:"total_affected";i:0;}i:75;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:95:"CREATE TABLE t (title text, vec float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:76;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:86:"{"index":"t","id":1,"doc":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}}";s:4:"rows";s:67:"{"table":"t","id":1,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:77;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:99:"{"index":"t","id":2,"doc":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}}";s:4:"rows";s:67:"{"table":"t","id":2,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:78;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:93:"{"index":"t","id":3,"doc":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}}";s:4:"rows";s:67:"{"table":"t","id":3,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:79;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:89:"{"index":"t","id":4,"doc":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}}";s:4:"rows";s:67:"{"table":"t","id":4,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:80;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:85:"{"index":"t","id":5,"doc":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}}";s:4:"rows";s:67:"{"table":"t","id":5,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:81;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:87:"{"index":"t","id":6,"doc":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}}";s:4:"rows";s:67:"{"table":"t","id":6,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:82;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:93:"{"index":"t","id":7,"doc":{"title":"machine learning in production","vec":[5.0,5.0,5.0,5.0]}}";s:4:"rows";s:67:"{"table":"t","id":7,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:83;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:88:"{"index":"t","id":8,"doc":{"title":"advanced machine learning","vec":[6.0,6.0,6.0,6.0]}}";s:4:"rows";s:67:"{"table":"t","id":8,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:84;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:88:"{"index":"t","id":9,"doc":{"title":"machine learning overview","vec":[7.0,7.0,7.0,7.0]}}";s:4:"rows";s:67:"{"table":"t","id":9,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:85;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:93:"{"index":"t","id":10,"doc":{"title":"random unrelated document","vec":[10.0,10.0,10.0,10.0]}}";s:4:"rows";s:68:"{"table":"t","id":10,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:86;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:16:"FLUSH RAMCHUNK t";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:87;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:194:"{ "index": "t", "knn": { "field": "vec", @@ -7,7 +7,7 @@ a:1:{i:0;a:136:{i:0;a:2:{s:8:"sphinxql";s:95:"create table t (title text, vec fl }, "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf" } -}";s:4:"rows";s:1474:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":1,"_score":2482,"_knn_dist":0,"_hybrid_score":0.03278688,"_source":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}},{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.03151365,"_source":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}},{"_id":2,"_score":1482,"_knn_dist":0.0034,"_hybrid_score":0.03102453,"_source":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}},{"_id":7,"_score":2482,"_knn_dist":96.040001,"_hybrid_score":0.03079839,"_source":{"title":"machine learning in production","vec":[5,5,5,5]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.03033088,"_source":{"title":"advanced machine learning","vec":[6,6,6,6]}},{"_id":9,"_score":2482,"_knn_dist":190.440002,"_hybrid_score":0.02987737,"_source":{"title":"machine learning overview","vec":[7,7,7,7]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.01612903,"_source":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}},{"_id":5,"_score":1,"_knn_dist":0.0069,"_hybrid_score":0.015625,"_source":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.01515152,"_source":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039978,"_hybrid_score":0.01428571,"_source":{"title":"random unrelated document","vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:88;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:154:"{ +}";s:4:"rows";s:1474:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":1,"_score":2482,"_knn_dist":0,"_hybrid_score":0.03278688,"_source":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}},{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.03151365,"_source":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}},{"_id":2,"_score":1482,"_knn_dist":0.0034,"_hybrid_score":0.03102453,"_source":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}},{"_id":7,"_score":2482,"_knn_dist":96.040001,"_hybrid_score":0.03079839,"_source":{"title":"machine learning in production","vec":[5,5,5,5]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.03033088,"_source":{"title":"advanced machine learning","vec":[6,6,6,6]}},{"_id":9,"_score":2482,"_knn_dist":190.440002,"_hybrid_score":0.02987737,"_source":{"title":"machine learning overview","vec":[7,7,7,7]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.01612903,"_source":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}},{"_id":5,"_score":1,"_knn_dist":0.0069,"_hybrid_score":0.015625,"_source":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.01515152,"_source":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039948,"_hybrid_score":0.01428571,"_source":{"title":"random unrelated document","vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:88;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:154:"{ "index": "t", "knn": { "field": "vec", @@ -24,7 +24,7 @@ a:1:{i:0;a:136:{i:0;a:2:{s:8:"sphinxql";s:95:"create table t (title text, vec fl }, "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "rank_constant": 10 } -}";s:4:"rows";s:1460:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":1,"_score":2482,"_knn_dist":0,"_hybrid_score":0.18181819,"_source":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}},{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.15,"_source":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}},{"_id":2,"_score":1482,"_knn_dist":0.0034,"_hybrid_score":0.13942307,"_source":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}},{"_id":7,"_score":2482,"_knn_dist":96.040001,"_hybrid_score":0.13574661,"_source":{"title":"machine learning in production","vec":[5,5,5,5]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.12698413,"_source":{"title":"advanced machine learning","vec":[6,6,6,6]}},{"_id":9,"_score":2482,"_knn_dist":190.440002,"_hybrid_score":0.11929825,"_source":{"title":"machine learning overview","vec":[7,7,7,7]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.08333334,"_source":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}},{"_id":5,"_score":1,"_knn_dist":0.0069,"_hybrid_score":0.07142857,"_source":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.0625,"_source":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039978,"_hybrid_score":0.05,"_source":{"title":"random unrelated document","vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:90;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:198:"{ +}";s:4:"rows";s:1460:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":1,"_score":2482,"_knn_dist":0,"_hybrid_score":0.18181819,"_source":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}},{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.15,"_source":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}},{"_id":2,"_score":1482,"_knn_dist":0.0034,"_hybrid_score":0.13942307,"_source":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}},{"_id":7,"_score":2482,"_knn_dist":96.040001,"_hybrid_score":0.13574661,"_source":{"title":"machine learning in production","vec":[5,5,5,5]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.12698413,"_source":{"title":"advanced machine learning","vec":[6,6,6,6]}},{"_id":9,"_score":2482,"_knn_dist":190.440002,"_hybrid_score":0.11929825,"_source":{"title":"machine learning overview","vec":[7,7,7,7]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.08333334,"_source":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}},{"_id":5,"_score":1,"_knn_dist":0.0069,"_hybrid_score":0.07142857,"_source":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.0625,"_source":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039948,"_hybrid_score":0.05,"_source":{"title":"random unrelated document","vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:90;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:198:"{ "index": "t", "knn": { "field": "vec", @@ -41,7 +41,7 @@ a:1:{i:0;a:136:{i:0;a:2:{s:8:"sphinxql";s:95:"create table t (title text, vec fl }, "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf" } -}";s:4:"rows";s:1474:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":1,"_score":2482,"_knn_dist":0,"_hybrid_score":0.03278688,"_source":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}},{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.03151365,"_source":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}},{"_id":2,"_score":1482,"_knn_dist":0.0034,"_hybrid_score":0.03102453,"_source":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}},{"_id":7,"_score":2482,"_knn_dist":96.040001,"_hybrid_score":0.03079839,"_source":{"title":"machine learning in production","vec":[5,5,5,5]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.03033088,"_source":{"title":"advanced machine learning","vec":[6,6,6,6]}},{"_id":9,"_score":2482,"_knn_dist":190.440002,"_hybrid_score":0.02987737,"_source":{"title":"machine learning overview","vec":[7,7,7,7]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.01612903,"_source":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}},{"_id":5,"_score":1,"_knn_dist":0.0069,"_hybrid_score":0.015625,"_source":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.01515152,"_source":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039978,"_hybrid_score":0.01428571,"_source":{"title":"random unrelated document","vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:92;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:166:"{ +}";s:4:"rows";s:1474:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":1,"_score":2482,"_knn_dist":0,"_hybrid_score":0.03278688,"_source":{"title":"machine learning basics","vec":[0.1,0.1,0.1,0.1]}},{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.03151365,"_source":{"title":"machine learning algorithms","vec":[0.2,0.15,0.12,0.09]}},{"_id":2,"_score":1482,"_knn_dist":0.0034,"_hybrid_score":0.03102453,"_source":{"title":"deep learning for machine vision","vec":[0.15,0.12,0.08,0.11]}},{"_id":7,"_score":2482,"_knn_dist":96.040001,"_hybrid_score":0.03079839,"_source":{"title":"machine learning in production","vec":[5,5,5,5]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.03033088,"_source":{"title":"advanced machine learning","vec":[6,6,6,6]}},{"_id":9,"_score":2482,"_knn_dist":190.440002,"_hybrid_score":0.02987737,"_source":{"title":"machine learning overview","vec":[7,7,7,7]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.01612903,"_source":{"title":"cooking recipes italian","vec":[0.11,0.09,0.13,0.1]}},{"_id":5,"_score":1,"_knn_dist":0.0069,"_hybrid_score":0.015625,"_source":{"title":"travel guide europe","vec":[0.18,0.11,0.1,0.12]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.01515152,"_source":{"title":"sports news football","vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039948,"_hybrid_score":0.01428571,"_source":{"title":"random unrelated document","vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:92;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:166:"{ "index": "t", "knn": { "query_vector": [0.1, 0.1, 0.1, 0.1] @@ -95,72 +95,72 @@ a:1:{i:0;a:136:{i:0;a:2:{s:8:"sphinxql";s:95:"create table t (title text, vec fl } }, "options": { "fusion_method": "rrf" } -}";s:4:"rows";s:836:"{"timed_out":false,"hits":{"total":5,"total_relation":"eq","hits":[{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.03252247,"_source":{"title":"machine learning algorithms","category":2,"vec":[0.2,0.15,0.12,0.09]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.03175403,"_source":{"title":"advanced machine learning","category":2,"vec":[6,6,6,6]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.01639344,"_source":{"title":"cooking recipes italian","category":2,"vec":[0.11,0.09,0.13,0.1]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.01587302,"_source":{"title":"sports news football","category":2,"vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039978,"_hybrid_score":0.01538462,"_source":{"title":"random unrelated document","category":2,"vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:110;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:13:"DROP TABLE t2";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:111;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:166:"CREATE TABLE t4 (title text, vec1 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2', vec2 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:112;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:113:"{"index":"t4","id":1,"doc":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1.0,0.0,0.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":1,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:113;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:126:"{"index":"t4","id":2,"doc":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0.0,1.0,0.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":2,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:114;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:120:"{"index":"t4","id":3,"doc":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0.0,0.0,1.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":3,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:115;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:116:"{"index":"t4","id":4,"doc":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0.0,0.0,0.0,1.0]}}";s:4:"rows";s:68:"{"table":"t4","id":4,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:116;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:109:"{"index":"t4","id":5,"doc":{"title":"travel guide europe","vec1":[5.0,5.0,5.0,5.0],"vec2":[0.5,0.5,0.5,0.5]}}";s:4:"rows";s:68:"{"table":"t4","id":5,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:117;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:117:"{"index":"t4","id":6,"doc":{"title":"machine learning production","vec1":[6.0,6.0,6.0,6.0],"vec2":[0.9,0.1,0.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":6,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:118;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:17:"FLUSH RAMCHUNK t4";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:119;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:265:"{ +}";s:4:"rows";s:836:"{"timed_out":false,"hits":{"total":5,"total_relation":"eq","hits":[{"_id":3,"_score":2482,"_knn_dist":0.013,"_hybrid_score":0.03252247,"_source":{"title":"machine learning algorithms","category":2,"vec":[0.2,0.15,0.12,0.09]}},{"_id":8,"_score":2482,"_knn_dist":139.240005,"_hybrid_score":0.03175403,"_source":{"title":"advanced machine learning","category":2,"vec":[6,6,6,6]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.01639344,"_source":{"title":"cooking recipes italian","category":2,"vec":[0.11,0.09,0.13,0.1]}},{"_id":6,"_score":1,"_knn_dist":0.0165,"_hybrid_score":0.01587302,"_source":{"title":"sports news football","category":2,"vec":[0.22,0.14,0.09,0.08]}},{"_id":10,"_score":1,"_knn_dist":392.039948,"_hybrid_score":0.01538462,"_source":{"title":"random unrelated document","category":2,"vec":[10,10,10,10]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:110;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:13:"DROP TABLE t2";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:111;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:166:"CREATE TABLE t4 (title text, vec1 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2', vec2 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2')";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:112;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:113:"{"index":"t4","id":1,"doc":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1.0,0.0,0.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":1,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:113;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:126:"{"index":"t4","id":2,"doc":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0.0,1.0,0.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":2,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:114;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:120:"{"index":"t4","id":3,"doc":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0.0,0.0,1.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":3,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:115;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:116:"{"index":"t4","id":4,"doc":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0.0,0.0,0.0,1.0]}}";s:4:"rows";s:68:"{"table":"t4","id":4,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:116;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:109:"{"index":"t4","id":5,"doc":{"title":"travel guide europe","vec1":[5.0,5.0,5.0,5.0],"vec2":[0.5,0.5,0.5,0.5]}}";s:4:"rows";s:68:"{"table":"t4","id":5,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:117;a:6:{s:13:"http_endpoint";s:11:"json/insert";s:11:"http_method";s:4:"POST";s:12:"http_request";s:117:"{"index":"t4","id":6,"doc":{"title":"machine learning production","vec1":[6.0,6.0,6.0,6.0],"vec2":[0.9,0.1,0.0,0.0]}}";s:4:"rows";s:68:"{"table":"t4","id":6,"created":true,"result":"created","status":201}";s:9:"http_code";i:200;s:4:"http";i:1;}i:118;a:6:{s:13:"http_endpoint";s:12:"sql?mode=raw";s:11:"http_method";s:4:"POST";s:12:"http_request";s:17:"FLUSH RAMCHUNK t4";s:4:"rows";s:37:"[{"total":0,"error":"","warning":""}]";s:9:"http_code";i:200;s:4:"http";i:1;}i:119;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:268:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf" } -}";s:4:"rows";s:1023:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.04918033,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":6,"_score":2466,"_knn_dist":0.02000001,"_hybrid_score":0.04715356,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.04713865,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.04664953,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.03175403,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":1,"_hybrid_score":0.03125763,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:120;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:286:"{ +}";s:4:"rows";s:1024:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.04918033,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":6,"_score":2466,"_knn_dist":0.0194,"_hybrid_score":0.04715356,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.04713865,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.04664953,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.03175403,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":0.9414,"_hybrid_score":0.03125763,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:120;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:289:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "rank_constant": 10 } -}";s:4:"rows";s:1023:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.27272728,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":6,"_score":2466,"_knn_dist":0.02000001,"_hybrid_score":0.22275642,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.22142857,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.21085165,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.15476191,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":1,"_hybrid_score":0.14358975,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:121;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:209:"{ +}";s:4:"rows";s:1024:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.27272728,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":6,"_score":2466,"_knn_dist":0.0194,"_hybrid_score":0.22275642,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.22142857,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.21085165,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.15476191,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":0.9414,"_hybrid_score":0.14358975,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:121;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:212:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "options": { "fusion_method": "rrf" } -}";s:4:"rows";s:1011:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":1,"_knn_dist":0,"_hybrid_score":0.03278688,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.03175403,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":6,"_score":1,"_knn_dist":0.02000001,"_hybrid_score":0.03128055,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":5,"_score":1,"_knn_dist":1,"_hybrid_score":0.03125763,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}},{"_id":2,"_score":1,"_knn_dist":0.0034,"_hybrid_score":0.03102453,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":3,"_score":1,"_knn_dist":0.013,"_hybrid_score":0.03100961,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:122;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:169:"{ +}";s:4:"rows";s:1012:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":1,"_knn_dist":0,"_hybrid_score":0.03278688,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.03175403,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":6,"_score":1,"_knn_dist":0.0194,"_hybrid_score":0.03128055,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":5,"_score":1,"_knn_dist":0.9414,"_hybrid_score":0.03125763,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}},{"_id":2,"_score":1,"_knn_dist":0.0034,"_hybrid_score":0.03102453,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":3,"_score":1,"_knn_dist":0.013,"_hybrid_score":0.03100961,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:122;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:172:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ] -}";s:4:"rows";s:80:"{"error":"multiple KNN clauses require hybrid fusion (set fusion_method='rrf')"}";s:9:"http_code";i:400;s:4:"http";i:1;}i:123;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:353:"{ +}";s:4:"rows";s:80:"{"error":"multiple KNN clauses require hybrid fusion (set fusion_method='rrf')"}";s:9:"http_code";i:400;s:4:"http";i:1;}i:123;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:356:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5, "name": "dense1" }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5, "name": "dense2" } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5, "name": "dense2" } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "dense1": 0.2, "dense2": 0.1 } } -}";s:4:"rows";s:1023:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.02131147,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.02079249,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":6,"_score":2466,"_knn_dist":0.02000001,"_hybrid_score":0.02051622,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.02031475,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.00478831,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":1,"_hybrid_score":0.00466422,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:124;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:367:"{ +}";s:4:"rows";s:1024:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.02131147,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.02079249,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":6,"_score":2466,"_knn_dist":0.0194,"_hybrid_score":0.02051622,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.02031475,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.00478831,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":0.9414,"_hybrid_score":0.00466422,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:124;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:370:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5, "name": "dense1" }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5, "name": "dense2" } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5, "name": "dense2" } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "query": 0.7, "dense1": 0.2, "dense2": 0.1 } } -}";s:4:"rows";s:1023:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.01639344,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.01595378,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":6,"_score":2466,"_knn_dist":0.02000001,"_hybrid_score":0.01575432,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.01562725,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.00478831,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":1,"_hybrid_score":0.00466422,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:125;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:351:"{ +}";s:4:"rows";s:1024:"{"timed_out":false,"hits":{"total":6,"total_relation":"eq","hits":[{"_id":1,"_score":2466,"_knn_dist":0,"_hybrid_score":0.01639344,"_source":{"title":"machine learning basics","vec1":[0.1,0.1,0.1,0.1],"vec2":[1,0,0,0]}},{"_id":3,"_score":2466,"_knn_dist":0.013,"_hybrid_score":0.01595378,"_source":{"title":"machine learning algorithms","vec1":[0.2,0.15,0.12,0.09],"vec2":[0,0,1,0]}},{"_id":6,"_score":2466,"_knn_dist":0.0194,"_hybrid_score":0.01575432,"_source":{"title":"machine learning production","vec1":[6,6,6,6],"vec2":[0.9,0.1,0,0]}},{"_id":2,"_score":1466,"_knn_dist":0.0034,"_hybrid_score":0.01562725,"_source":{"title":"deep learning for machine vision","vec1":[0.15,0.12,0.08,0.11],"vec2":[0,1,0,0]}},{"_id":4,"_score":1,"_knn_dist":0.0011,"_hybrid_score":0.00478831,"_source":{"title":"cooking recipes italian","vec1":[0.11,0.09,0.13,0.1],"vec2":[0,0,0,1]}},{"_id":5,"_score":1,"_knn_dist":0.9414,"_hybrid_score":0.00466422,"_source":{"title":"travel guide europe","vec1":[5,5,5,5],"vec2":[0.5,0.5,0.5,0.5]}}]}}";s:9:"http_code";i:200;s:4:"http";i:1;}i:125;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:354:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5, "name": "query" }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5, "name": "dense2" } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5, "name": "dense2" } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "query": 0.7, "dense2": 0.1 } } -}";s:4:"rows";s:109:"{"error":"table t4: fusion_weights: KNN alias 'query' conflicts with the fixed fulltext query alias in JSON"}";s:9:"http_code";i:500;s:4:"http";i:1;}i:126;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:313:"{ +}";s:4:"rows";s:109:"{"error":"table t4: fusion_weights: KNN alias 'query' conflicts with the fixed fulltext query alias in JSON"}";s:9:"http_code";i:500;s:4:"http";i:1;}i:126;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:316:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "vec1": 0.2, "vec2": 0.1 } } -}";s:4:"rows";s:105:"{"error":"table t4: fusion_weights: unknown alias 'vec1'; use explicit aliases to reference sub-queries"}";s:9:"http_code";i:500;s:4:"http";i:1;}i:127;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:307:"{ +}";s:4:"rows";s:105:"{"error":"table t4: fusion_weights: unknown alias 'vec1'; use explicit aliases to reference sub-queries"}";s:9:"http_code";i:500;s:4:"http";i:1;}i:127;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:310:"{ "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "nonexistent": 0.5 } } diff --git a/test/test_489/test.xml b/test/test_489/test.xml index 2156252467..707fac8b49 100644 --- a/test/test_489/test.xml +++ b/test/test_489/test.xml @@ -105,8 +105,9 @@ searchd drop table t3; + create table t4 (title text, vec1 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2', vec2 float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='L2'); - insert into t4 (id, title, vec1, vec2) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1), (1.0, 0.0, 0.0, 0.0)); + insert into t4 (id, title, vec1, vec2) values (1, 'machine learning basics', (0.1, 0.1, 0.1, 0.1), (1.0, 0.01, 0.02, 0.03)); insert into t4 (id, title, vec1, vec2) values (2, 'deep learning for machine vision', (0.15, 0.12, 0.08, 0.11), (0.0, 1.0, 0.0, 0.0)); insert into t4 (id, title, vec1, vec2) values (3, 'machine learning algorithms', (0.2, 0.15, 0.12, 0.09), (0.0, 0.0, 1.0, 0.0)); insert into t4 (id, title, vec1, vec2) values (4, 'cooking recipes italian', (0.11, 0.09, 0.13, 0.1), (0.0, 0.0, 0.0, 1.0)); @@ -114,24 +115,24 @@ searchd insert into t4 (id, title, vec1, vec2) values (6, 'machine learning production', (6.0, 6.0, 6.0, 6.0), (0.9, 0.1, 0.0, 0.0)); flush ramchunk t4; - select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf'; - select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf', rank_constant=10; - select id, hybrid_score() from t4 where knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf'; + select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf'; + select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf', rank_constant=10; + select id, hybrid_score() from t4 where knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf'; - select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(text=0.7, dense1=0.2, dense2=0.1); + select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(text=0.7, dense1=0.2, dense2=0.1); - select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1); + select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1); - select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1); + select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(query=0.7, dense1=0.2, dense2=0.1); - select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) option fusion_method='rrf', fusion_weights=(vec1=0.2, vec2=0.1); + select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) option fusion_method='rrf', fusion_weights=(vec1=0.2, vec2=0.1); - select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.0, 0.0, 0.0)) as dense2 option fusion_method='rrf', fusion_weights=(text=2.0); + select id, hybrid_score() from t4 where match('machine learning') as text and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) as dense1 and knn(vec2, 5, (1.0, 0.01, 0.02, 0.03)) as dense2 option fusion_method='rrf', fusion_weights=(text=2.0); select id, hybrid_score() from t4 where match('machine learning') and knn(vec1, 5, (0.1, 0.1, 0.1, 0.1)) option fusion_method='rrf', fusion_weights=(nonexistent=0.5); @@ -340,7 +341,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf" } @@ -353,7 +354,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "rank_constant": 10 } @@ -366,7 +367,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "options": { "fusion_method": "rrf" } } @@ -378,7 +379,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ] } @@ -389,7 +390,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5, "name": "dense1" }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5, "name": "dense2" } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5, "name": "dense2" } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "dense1": 0.2, "dense2": 0.1 } } @@ -402,7 +403,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5, "name": "dense1" }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5, "name": "dense2" } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5, "name": "dense2" } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "query": 0.7, "dense1": 0.2, "dense2": 0.1 } } @@ -415,7 +416,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5, "name": "query" }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5, "name": "dense2" } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5, "name": "dense2" } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "query": 0.7, "dense2": 0.1 } } @@ -428,7 +429,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "vec1": 0.2, "vec2": 0.1 } } @@ -441,7 +442,7 @@ searchd "index": "t4", "knn": [ { "field": "vec1", "query_vector": [0.1, 0.1, 0.1, 0.1], "k": 5 }, - { "field": "vec2", "query_vector": [1.0, 0.0, 0.0, 0.0], "k": 5 } + { "field": "vec2", "query_vector": [1.0, 0.01, 0.02, 0.03], "k": 5 } ], "query": { "match": { "title": "machine learning" } }, "options": { "fusion_method": "rrf", "fusion_weights": { "nonexistent": 0.5 } }