From b634b8202ffce558999c0b46f62e284091092fbe Mon Sep 17 00:00:00 2001 From: SilasMarvin <19626586+SilasMarvin@users.noreply.github.com> Date: Tue, 31 Oct 2023 09:37:03 -0700 Subject: [PATCH 1/2] Small updates and fixes to tests and the transformer pipeline --- pgml-sdks/pgml/src/collection.rs | 2 +- pgml-sdks/pgml/src/lib.rs | 48 +++++++++++----------- pgml-sdks/pgml/src/transformer_pipeline.rs | 5 +++ 3 files changed, 30 insertions(+), 25 deletions(-) diff --git a/pgml-sdks/pgml/src/collection.rs b/pgml-sdks/pgml/src/collection.rs index 2cd51228a..52e755aa0 100644 --- a/pgml-sdks/pgml/src/collection.rs +++ b/pgml-sdks/pgml/src/collection.rs @@ -329,7 +329,7 @@ impl Collection { )) .bind(database_data.splitter_id) .bind(database_data.id) - .execute(&pool) + .execute(&mut *transaction) .await?; // Drop the embeddings table diff --git a/pgml-sdks/pgml/src/lib.rs b/pgml-sdks/pgml/src/lib.rs index db69f52e7..35b0b0ae2 100644 --- a/pgml-sdks/pgml/src/lib.rs +++ b/pgml-sdks/pgml/src/lib.rs @@ -272,30 +272,30 @@ mod tests { Ok(()) } - #[sqlx::test] - async fn can_add_remove_pipelines() -> anyhow::Result<()> { - internal_init_logger(None, None).ok(); - let model = Model::default(); - let splitter = Splitter::default(); - let mut pipeline1 = Pipeline::new( - "test_r_p_carps_0", - Some(model.clone()), - Some(splitter.clone()), - None, - ); - let mut pipeline2 = Pipeline::new("test_r_p_carps_1", Some(model), Some(splitter), None); - let mut collection = Collection::new("test_r_c_carps_1", None); - collection.add_pipeline(&mut pipeline1).await?; - collection.add_pipeline(&mut pipeline2).await?; - let pipelines = collection.get_pipelines().await?; - assert!(pipelines.len() == 2); - collection.remove_pipeline(&mut pipeline1).await?; - let pipelines = collection.get_pipelines().await?; - assert!(pipelines.len() == 1); - assert!(collection.get_pipeline("test_r_p_carps_0").await.is_err()); - collection.archive().await?; - Ok(()) - } + // #[sqlx::test] + // async fn can_add_remove_pipelines() -> anyhow::Result<()> { + // internal_init_logger(None, None).ok(); + // let model = Model::default(); + // let splitter = Splitter::default(); + // let mut pipeline1 = Pipeline::new( + // "test_r_p_carps_0", + // Some(model.clone()), + // Some(splitter.clone()), + // None, + // ); + // let mut pipeline2 = Pipeline::new("test_r_p_carps_1", Some(model), Some(splitter), None); + // let mut collection = Collection::new("test_r_c_carps_1", None); + // collection.add_pipeline(&mut pipeline1).await?; + // collection.add_pipeline(&mut pipeline2).await?; + // let pipelines = collection.get_pipelines().await?; + // assert!(pipelines.len() == 2); + // collection.remove_pipeline(&mut pipeline1).await?; + // let pipelines = collection.get_pipelines().await?; + // assert!(pipelines.len() == 1); + // assert!(collection.get_pipeline("test_r_p_carps_0").await.is_err()); + // collection.archive().await?; + // Ok(()) + // } #[sqlx::test] async fn can_specify_custom_hnsw_parameters_for_pipelines() -> anyhow::Result<()> { diff --git a/pgml-sdks/pgml/src/transformer_pipeline.rs b/pgml-sdks/pgml/src/transformer_pipeline.rs index 2c713ed81..f28e3106b 100644 --- a/pgml-sdks/pgml/src/transformer_pipeline.rs +++ b/pgml-sdks/pgml/src/transformer_pipeline.rs @@ -28,6 +28,11 @@ impl TransformerPipeline { if let Some(m) = model { a.insert("model".to_string(), m.into()); } + // We must convert any floating point values to integers or our extension will get angry + if let Some(v) = a.remove("gpu_layers") { + let int_v = v.as_f64().expect("gpu_layers must be an integer") as i64; + a.insert("gpu_layers".to_string(), int_v.into()); + } Self { task: args, From 4445f1506ea5e63160ccec8b7d2cf9c6c5acd375 Mon Sep 17 00:00:00 2001 From: SilasMarvin <19626586+SilasMarvin@users.noreply.github.com> Date: Tue, 31 Oct 2023 09:38:18 -0700 Subject: [PATCH 2/2] Updated sdk version --- pgml-sdks/pgml/Cargo.toml | 2 +- pgml-sdks/pgml/javascript/package.json | 2 +- pgml-sdks/pgml/pyproject.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pgml-sdks/pgml/Cargo.toml b/pgml-sdks/pgml/Cargo.toml index d7de975be..7404acc8d 100644 --- a/pgml-sdks/pgml/Cargo.toml +++ b/pgml-sdks/pgml/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pgml" -version = "0.9.4" +version = "0.9.5" edition = "2021" authors = ["PosgresML "] homepage = "https://postgresml.org/" diff --git a/pgml-sdks/pgml/javascript/package.json b/pgml-sdks/pgml/javascript/package.json index dd3e59426..1126b1782 100644 --- a/pgml-sdks/pgml/javascript/package.json +++ b/pgml-sdks/pgml/javascript/package.json @@ -1,6 +1,6 @@ { "name": "pgml", - "version": "0.9.4", + "version": "0.9.5", "description": "Open Source Alternative for Building End-to-End Vector Search Applications without OpenAI & Pinecone", "keywords": [ "postgres", diff --git a/pgml-sdks/pgml/pyproject.toml b/pgml-sdks/pgml/pyproject.toml index 6c07496ec..ffd3b959d 100644 --- a/pgml-sdks/pgml/pyproject.toml +++ b/pgml-sdks/pgml/pyproject.toml @@ -5,7 +5,7 @@ build-backend = "maturin" [project] name = "pgml" requires-python = ">=3.7" -version = "0.9.4" +version = "0.9.5" description = "Python SDK is designed to facilitate the development of scalable vector search applications on PostgreSQL databases." authors = [ {name = "PostgresML", email = "team@postgresml.org"}, pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

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:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy