From edef2d3c459a6f94bf16680d46a14cc02c09ef60 Mon Sep 17 00:00:00 2001 From: Maximilian Schambach <28300359+MaxSchambach@users.noreply.github.com> Date: Fri, 13 Jun 2025 09:14:09 +0200 Subject: [PATCH 1/7] Add ConTextTab model --- .../tasks/src/model-libraries-snippets.ts | 54 +++++++++++++++++++ packages/tasks/src/model-libraries.ts | 7 +++ 2 files changed, 61 insertions(+) diff --git a/packages/tasks/src/model-libraries-snippets.ts b/packages/tasks/src/model-libraries-snippets.ts index d180658810..b8bab54f77 100644 --- a/packages/tasks/src/model-libraries-snippets.ts +++ b/packages/tasks/src/model-libraries-snippets.ts @@ -132,6 +132,60 @@ wav = model.generate(text, audio_prompt_path=AUDIO_PROMPT_PATH) ta.save("test-2.wav", wav, model.sr)`, ]; +export const contexttab = (): string[] => [ + `# pip install git+https://github.com/SAP-samples/contexttab + +# Run a classification task +from sklearn.datasets import load_breast_cancer +from sklearn.metrics import accuracy_score +from sklearn.model_selection import train_test_split + +from contexttab import ConTextTabClassifier + +# Load sample data +X, y = load_breast_cancer(return_X_y=True) +X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=42) + +# Initialize a classifier +clf = ConTextTabClassifier(bagging=1, max_context_size=2048) + +clf.fit(X_train, y_train) + +# Predict probabilities +prediction_probabilities = clf.predict_proba(X_test) +# Predict labels +predictions = clf.predict(X_test) +print("Accuracy", accuracy_score(y_test, predictions)) + +# Run a regression task +from sklearn.datasets import fetch_openml +from sklearn.metrics import r2_score +from sklearn.model_selection import train_test_split + +from contexttab import ConTextTabRegressor + + +# Load sample data +df = fetch_openml(data_id=531, as_frame=True) +X = df.data +y = df.target.astype(float) + +# Train-test split +X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=42) + +# Initialize the regressor +regressor = ConTextTabRegressor(bagging=1, max_context_size=2048) + +regressor.fit(X_train, y_train) + +# Predict on the test set +predictions = regressor.predict(X_test) + +r2 = r2_score(y_test, predictions) +print("R² Score:", r2)`, +]; + + export const cxr_foundation = (): string[] => [ `# pip install git+https://github.com/Google-Health/cxr-foundation.git#subdirectory=python diff --git a/packages/tasks/src/model-libraries.ts b/packages/tasks/src/model-libraries.ts index 867b0a0f8f..ff4aa46d9d 100644 --- a/packages/tasks/src/model-libraries.ts +++ b/packages/tasks/src/model-libraries.ts @@ -208,6 +208,13 @@ export const MODEL_LIBRARIES_UI_ELEMENTS = { repoUrl: "https://github.com/Unbabel/COMET/", countDownloads: `path:"hparams.yaml"`, }, + contexttab: { + prettyLabel: "ConTextTab", + repoName: "contexttab", + repoUrl: "https://github.com/SAP-samples/contexttab", + countDownloads: `path_extension:"pt"`, + snippets: snippets.contexttab, + }, cosmos: { prettyLabel: "Cosmos", repoName: "Cosmos", From 478e81fb25b9f5f40e9b635342c7b50acf2347c4 Mon Sep 17 00:00:00 2001 From: Maximilian Schambach <28300359+MaxSchambach@users.noreply.github.com> Date: Mon, 16 Jun 2025 08:54:26 +0200 Subject: [PATCH 2/7] Update countDownloads --- packages/tasks/src/model-libraries.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/tasks/src/model-libraries.ts b/packages/tasks/src/model-libraries.ts index ff4aa46d9d..f9113d223d 100644 --- a/packages/tasks/src/model-libraries.ts +++ b/packages/tasks/src/model-libraries.ts @@ -212,7 +212,7 @@ export const MODEL_LIBRARIES_UI_ELEMENTS = { prettyLabel: "ConTextTab", repoName: "contexttab", repoUrl: "https://github.com/SAP-samples/contexttab", - countDownloads: `path_extension:"pt"`, + countDownloads: `path:"l2/base.pt"`, snippets: snippets.contexttab, }, cosmos: { From 8049ecec92aac33411174ada1b53b801875944f2 Mon Sep 17 00:00:00 2001 From: Maximilian Schambach <28300359+MaxSchambach@users.noreply.github.com> Date: Mon, 16 Jun 2025 08:59:25 +0200 Subject: [PATCH 3/7] Update contexttab snippets --- packages/tasks/src/model-libraries-snippets.ts | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/tasks/src/model-libraries-snippets.ts b/packages/tasks/src/model-libraries-snippets.ts index b8bab54f77..044a151977 100644 --- a/packages/tasks/src/model-libraries-snippets.ts +++ b/packages/tasks/src/model-libraries-snippets.ts @@ -132,10 +132,10 @@ wav = model.generate(text, audio_prompt_path=AUDIO_PROMPT_PATH) ta.save("test-2.wav", wav, model.sr)`, ]; -export const contexttab = (): string[] => [ - `# pip install git+https://github.com/SAP-samples/contexttab +export const contexttab = (): string[] => { + const installSnippet = `pip install git+https://github.com/SAP-samples/contexttab`; -# Run a classification task + const classificationSnippet = `# Run a classification task from sklearn.datasets import load_breast_cancer from sklearn.metrics import accuracy_score from sklearn.model_selection import train_test_split @@ -155,9 +155,9 @@ clf.fit(X_train, y_train) prediction_probabilities = clf.predict_proba(X_test) # Predict labels predictions = clf.predict(X_test) -print("Accuracy", accuracy_score(y_test, predictions)) +print("Accuracy", accuracy_score(y_test, predictions))`; -# Run a regression task + const regressionsSnippet = `# Run a regression task from sklearn.datasets import fetch_openml from sklearn.metrics import r2_score from sklearn.model_selection import train_test_split @@ -182,8 +182,9 @@ regressor.fit(X_train, y_train) predictions = regressor.predict(X_test) r2 = r2_score(y_test, predictions) -print("R² Score:", r2)`, -]; +print("R² Score:", r2)`; + return [installSnippet, classificationSnippet, regressionsSnippet]; +}; export const cxr_foundation = (): string[] => [ From 18ea01bcba7ed07d979ea85a81f1c17de8145c4f Mon Sep 17 00:00:00 2001 From: Maximilian Schambach <28300359+MaxSchambach@users.noreply.github.com> Date: Wed, 18 Jun 2025 16:57:18 +0200 Subject: [PATCH 4/7] Revert back to path_extension for download count --- packages/tasks/src/model-libraries.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/tasks/src/model-libraries.ts b/packages/tasks/src/model-libraries.ts index fac0716af9..346b9c47ee 100644 --- a/packages/tasks/src/model-libraries.ts +++ b/packages/tasks/src/model-libraries.ts @@ -212,7 +212,7 @@ export const MODEL_LIBRARIES_UI_ELEMENTS = { prettyLabel: "ConTextTab", repoName: "contexttab", repoUrl: "https://github.com/SAP-samples/contexttab", - countDownloads: `path:"l2/base.pt"`, + countDownloads: `path_extension:"pt"`, snippets: snippets.contexttab, }, cosmos: { From 17a6b109462c4666e7a1464c5aaa36edd8d5975e Mon Sep 17 00:00:00 2001 From: Maximilian Schambach <28300359+MaxSchambach@users.noreply.github.com> Date: Wed, 18 Jun 2025 17:00:17 +0200 Subject: [PATCH 5/7] Update contexttab snippet --- packages/tasks/src/model-libraries-snippets.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/tasks/src/model-libraries-snippets.ts b/packages/tasks/src/model-libraries-snippets.ts index 5a84eb3018..1830aaaa11 100644 --- a/packages/tasks/src/model-libraries-snippets.ts +++ b/packages/tasks/src/model-libraries-snippets.ts @@ -147,7 +147,8 @@ X, y = load_breast_cancer(return_X_y=True) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=42) # Initialize a classifier -clf = ConTextTabClassifier(bagging=1, max_context_size=2048) +# You can omit checkpoint and checkpoint_revision to use the default model +clf = ConTextTabClassifier(checkpoint="l2/base.pt", checkpoint_revision="v1.0.0", bagging=1, max_context_size=2048) clf.fit(X_train, y_train) @@ -174,7 +175,8 @@ y = df.target.astype(float) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=42) # Initialize the regressor -regressor = ConTextTabRegressor(bagging=1, max_context_size=2048) +# You can omit checkpoint and checkpoint_revision to use the default model +regressor = ConTextTabRegressor(checkpoint="l2/base.pt", checkpoint_revision="v1.0.0", bagging=1, max_context_size=2048) regressor.fit(X_train, y_train) From 43696e862f0b6be214f417cc0a4f74c08c968f68 Mon Sep 17 00:00:00 2001 From: Lucain Date: Wed, 18 Jun 2025 17:46:56 +0200 Subject: [PATCH 6/7] Update packages/tasks/src/model-libraries.ts --- packages/tasks/src/model-libraries.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/tasks/src/model-libraries.ts b/packages/tasks/src/model-libraries.ts index 346b9c47ee..9a961b8955 100644 --- a/packages/tasks/src/model-libraries.ts +++ b/packages/tasks/src/model-libraries.ts @@ -210,7 +210,7 @@ export const MODEL_LIBRARIES_UI_ELEMENTS = { }, contexttab: { prettyLabel: "ConTextTab", - repoName: "contexttab", + repoName: "ConTextTab", repoUrl: "https://github.com/SAP-samples/contexttab", countDownloads: `path_extension:"pt"`, snippets: snippets.contexttab, From e0c04c26898dff88e39a319b6081d16821bd0192 Mon Sep 17 00:00:00 2001 From: Lucain Date: Wed, 18 Jun 2025 17:49:10 +0200 Subject: [PATCH 7/7] Update packages/tasks/src/model-libraries-snippets.ts --- packages/tasks/src/model-libraries-snippets.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/tasks/src/model-libraries-snippets.ts b/packages/tasks/src/model-libraries-snippets.ts index 72a8a3a8ae..212686160e 100644 --- a/packages/tasks/src/model-libraries-snippets.ts +++ b/packages/tasks/src/model-libraries-snippets.ts @@ -188,7 +188,6 @@ print("R² Score:", r2)`; return [installSnippet, classificationSnippet, regressionsSnippet]; }; - export const cxr_foundation = (): string[] => [ `# pip install git+https://github.com/Google-Health/cxr-foundation.git#subdirectory=python