From e14c2c53568597b1b5517c30118f1da42b1aa722 Mon Sep 17 00:00:00 2001 From: SilasMarvin <19626586+SilasMarvin@users.noreply.github.com> Date: Thu, 13 Jun 2024 09:46:01 -0700 Subject: [PATCH 1/2] Patch non-rerank query to include a NULL fourth column --- pgml-sdks/pgml/src/vector_search_query_builder.rs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pgml-sdks/pgml/src/vector_search_query_builder.rs b/pgml-sdks/pgml/src/vector_search_query_builder.rs index c7fd402de..d03c28591 100644 --- a/pgml-sdks/pgml/src/vector_search_query_builder.rs +++ b/pgml-sdks/pgml/src/vector_search_query_builder.rs @@ -364,6 +364,20 @@ pub async fn build_sqlx_query( query } else { + // Wrap our query to return a fourth null column + let mut vector_search_cte = CommonTableExpression::from_select(query); + vector_search_cte.table_name(Alias::new(format!("{prefix}_vector_search"))); + ctes.push(vector_search_cte); + + let mut query = Query::select(); + query + .columns([ + SIden::Str("document"), + SIden::Str("chunk"), + SIden::Str("score"), + ]) + .expr(Expr::cust("NULL")) + .from(SIden::String(format!("{prefix}_vector_search"))); query }; From ddd50730b19639ac6da92fc29bfd8f0e88d15af3 Mon Sep 17 00:00:00 2001 From: SilasMarvin <19626586+SilasMarvin@users.noreply.github.com> Date: Thu, 13 Jun 2024 11:25:21 -0700 Subject: [PATCH 2/2] Change rank_score to rerank_score --- pgml-sdks/pgml/src/vector_search_query_builder.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pgml-sdks/pgml/src/vector_search_query_builder.rs b/pgml-sdks/pgml/src/vector_search_query_builder.rs index d03c28591..24de38a2f 100644 --- a/pgml-sdks/pgml/src/vector_search_query_builder.rs +++ b/pgml-sdks/pgml/src/vector_search_query_builder.rs @@ -326,7 +326,7 @@ pub async fn build_sqlx_query( SIden::Str("chunk"), SIden::Str("score"), ]); - query.expr_as(Expr::cust("(rank).score"), Alias::new("rank_score")); + query.expr_as(Expr::cust("(rank).score"), Alias::new("rerank_score")); // Build the actual select statement sub query let mut sub_query_rank_call = Query::select(); @@ -376,7 +376,7 @@ pub async fn build_sqlx_query( SIden::Str("chunk"), SIden::Str("score"), ]) - .expr(Expr::cust("NULL")) + .expr_as(Expr::cust("NULL"), Alias::new("rerank_score")) .from(SIden::String(format!("{prefix}_vector_search"))); query };
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: