Repository 'tabpfn'
hg clone https://radegast.galaxyproject.org/repos/bgruening/tabpfn

Changeset 8:ec6df5e22055 (2026-04-15)
Previous changeset 7:cc50a058a1cb (2026-04-14) Next changeset 9:ed78e1448387 (2026-04-20)
Commit message:
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/tabpfn commit a15e356197de0fde09dda05203768c9a4531655d
modified:
main.py
tabpfn.xml
added:
test-data/test.txt
tool-data/huggingface.loc.sample
tool_data_table_conf.xml.sample
b
diff -r cc50a058a1cb -r ec6df5e22055 main.py
--- a/main.py Tue Apr 14 12:29:49 2026 +0000
+++ b/main.py Wed Apr 15 20:19:01 2026 +0000
[
@@ -94,7 +94,7 @@
         te_labels = []
     s_time = time.time()
     if args["selected_task"] == "Classification":
-        classifier = TabPFNClassifier(random_state=42)
+        classifier = TabPFNClassifier(random_state=42, model_path=args["model_path"])
         classifier.fit(tr_features, tr_labels)
         y_eval = classifier.predict(te_features)
         pred_probas_test = classifier.predict_proba(te_features)
@@ -105,7 +105,7 @@
             "output_predicted_data", sep="\t", index=None
         )
     else:
-        regressor = TabPFNRegressor(random_state=42)
+        regressor = TabPFNRegressor(random_state=42, model_path=args["model_path"])
         regressor.fit(tr_features, tr_labels)
         y_eval = regressor.predict(te_features)
         if len(te_labels) > 0:
@@ -144,6 +144,12 @@
         required=True,
         help="Type of machine learning task",
     )
+    arg_parser.add_argument(
+        "-modelpath",
+        "--model_path",
+        required=True,
+        help="Pretrained model to use",
+    )
     # get argument values
     args = vars(arg_parser.parse_args())
     train_evaluate(args)
b
diff -r cc50a058a1cb -r ec6df5e22055 tabpfn.xml
--- a/tabpfn.xml Tue Apr 14 12:29:49 2026 +0000
+++ b/tabpfn.xml Wed Apr 15 20:19:01 2026 +0000
[
b'@@ -1,7 +1,7 @@\n-<tool id="tabpfn" name="Tabular data prediction using TabPFN" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="23.0">\n+<tool id="tabpfn" name="Tabular data prediction using TabPFN" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="24.2">\n     <description>with PyTorch</description>\n     <macros>\n-        <token name="@TOOL_VERSION@">2.0.9</token>\n+        <token name="@TOOL_VERSION@">7.0.0</token>\n         <token name="@VERSION_SUFFIX@">0</token>\n     </macros>\n     <creator>\n@@ -18,6 +18,7 @@\n     <command detect_errors="aggressive">\n         <![CDATA[\n             python \'$__tool_directory__/main.py\'\n+            --model_path \'$model_source.pretrained_model\'\n             --selected_task \'$selected_task\'\n             --train_data \'$train_data\'\n             --testhaslabels \'$testhaslabels\'\n@@ -25,10 +26,30 @@\n         ]]>\n     </command>\n     <inputs>\n+        <param name="non_commercial_use" type="boolean" truevalue="NON_COMMERCIAL_USE" falsevalue="COMMERCIAL_USE" checked="False" label="I certify that I am not using this tool for commercial purposes."  help="Set this parameter only for non-commercial purposes, and please reach out to sales@priorlabs.ai for commercial use. Please read the license agreement: https://huggingface.co/Prior-Labs/tabpfn_2_5/blob/main/LICENSE.">\n+            <validator type="expression" message="This tool is only available for non-commercial use.">value == True</validator>\n+        </param>\n         <param name="selected_task" type="select" label="Select a machine learning task">\n             <option value="Classification" selected="true"/>\n             <option value="Regression" selected="false"/>\n         </param>\n+        <conditional name="model_source">\n+            <param name="source_type" type="select" label="Pretrained model source">\n+                <option value="preinstalled">Use an installed model</option>\n+            </param>\n+            <when value="preinstalled">\n+                <param name="pretrained_model" type="select" label="Select model">\n+                <options from_data_table="huggingface">\n+                    <column name="name" index="1" />\n+                    <column name="value" index="6" />\n+                    <filter type="static_value" value="tabpfn" column="4" />\n+                    <filter type="static_value" value="1" column="5" />\n+                </options>\n+                <validator type="no_options"\n+                    message="No pretrained models are installed on this Galaxy instance." />\n+                </param>\n+            </when>\n+        </conditional>\n         <param name="train_data" type="data" format="tabular" label="Train data" help="Please provide training data for training model. It should contain labels/class/target in the last column"/>\n         <param name="test_data" type="data" format="tabular" label="Test data" help="Please provide test data for evaluating model. It may or may not contain labels/class/target in the last column"/>\n         <param name="testhaslabels" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Does test data contain labels?" help="Set this parameter when test data contains labels"/>\n@@ -40,62 +61,71 @@\n         </data>\n     </outputs>\n     <tests>\n-        <test expect_num_outputs="1">\n+        <test expect_failure="true" expect_exit_code="5">\n+            <conditional name="model_source">\n+                <param name="source_type" value="preinstalled" />\n+                <param name="pretrained_model" value="unknown" />\n+            </conditional>\n             <param name="selected_task" value="Classification"/>\n             <param name="train_data" value="classification_local_train_rows.tabular" ftype="tabular"/>\n             <param name="test_data" value="classification_local_test_rows.tabular" ftype="tabular"/>\n             <param name="testhaslabels" value="false"/>\n-            <output name="output_predicted_data">\n-                <assert_contents'..b'n" />\n+            </conditional>\n             <param name="selected_task" value="Classification"/>\n             <param name="train_data" value="classification_local_train_rows.tabular" ftype="tabular"/>\n             <param name="test_data" value="classification_local_test_rows_labels.tabular" ftype="tabular"/>\n             <param name="testhaslabels" value="true"/>\n-            <output name="output_plot" file="prc_binary.png" compare="sim_size"/>\n+            <param name="non_commercial_use" value="True"/>\n         </test>\n-        <test expect_num_outputs="2">\n+        <test expect_failure="true" expect_exit_code="5">\n+            <conditional name="model_source">\n+                <param name="source_type" value="preinstalled" />\n+                <param name="pretrained_model" value="unknown" />\n+            </conditional>\n             <param name="selected_task" value="Classification"/>\n             <param name="train_data" value="train_data_multiclass.tabular" ftype="tabular"/>\n             <param name="test_data" value="test_data_multiclass_labels.tabular" ftype="tabular"/>\n             <param name="testhaslabels" value="true"/>\n-            <output name="output_plot" file="prc_multiclass.png" compare="sim_size"/>\n+            <param name="non_commercial_use" value="True"/>\n         </test>\n-        <test expect_num_outputs="1">\n+        <test expect_failure="true" expect_exit_code="1">\n+            <conditional name="model_source">\n+                <param name="source_type" value="preinstalled" />\n+                <param name="pretrained_model" value="unknown" />\n+            </conditional>\n             <param name="selected_task" value="Classification"/>\n             <param name="train_data" value="train_data_multiclass.tabular" ftype="tabular"/>\n             <param name="test_data" value="test_data_multiclass_nolabels.tabular" ftype="tabular"/>\n             <param name="testhaslabels" value="false"/>\n-            <output name="output_predicted_data">\n-                <assert_contents>\n-                    <has_n_columns n="11"/>\n-                    <has_n_lines n="502"/>\n-                </assert_contents>\n-            </output>\n+            <param name="non_commercial_use" value="True"/>\n         </test>\n-        <test expect_num_outputs="2">\n+        <test expect_failure="true" expect_exit_code="5">\n+            <conditional name="model_source">\n+                <param name="source_type" value="preinstalled" />\n+                <param name="pretrained_model" value="unknown" />\n+            </conditional>\n             <param name="selected_task" value="Regression"/>\n             <param name="train_data" value="regression_local_train_rows.tabular" ftype="tabular"/>\n             <param name="test_data" value="regression_local_test_rows_labels.tabular" ftype="tabular"/>\n             <param name="testhaslabels" value="true"/>\n-            <output name="output_plot" file="r2_curve.png" compare="sim_size"/>\n+            <param name="non_commercial_use" value="True"/>\n           </test>\n-          <test expect_num_outputs="1">\n+        <test expect_failure="true" expect_exit_code="1">\n+            <conditional name="model_source">\n+                <param name="source_type" value="preinstalled" />\n+                <param name="pretrained_model" value="unknown" />\n+            </conditional>\n             <param name="selected_task" value="Regression"/>\n             <param name="train_data" value="regression_local_train_rows.tabular" ftype="tabular"/>\n             <param name="test_data" value="regression_local_test_rows.tabular" ftype="tabular"/>\n             <param name="testhaslabels" value="false"/>\n-            <output name="output_predicted_data">\n-              <assert_contents>\n-                <has_n_columns n="14"/>\n-                <has_n_lines n="105"/>\n-              </assert_contents>\n-            </output>\n+            <param name="non_commercial_use" value="True"/>\n           </test>\n     </tests>\n     <help>\n'
b
diff -r cc50a058a1cb -r ec6df5e22055 test-data/test.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test.txt Wed Apr 15 20:19:01 2026 +0000
b
@@ -0,0 +1,1 @@
+This is just a test file!
\ No newline at end of file
b
diff -r cc50a058a1cb -r ec6df5e22055 tool-data/huggingface.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/huggingface.loc.sample Wed Apr 15 20:19:01 2026 +0000
b
@@ -0,0 +1,47 @@
+# This is a sample file distributed with Galaxy that is used to define HuggingFace
+# pre-trained models for TabPFN tabular prediction, using 7 tab-separated columns.
+# Lines starting with "#" are ignored by Galaxy.
+#
+# Columns (TAB-separated):
+#   value name pipeline_tag domain free_tag version path
+#
+#   value         Unique row ID across the whole huggingface.loc table
+#   name          Human-readable label shown in the Galaxy select widget
+#   pipeline_tag  Official HuggingFace pipeline tag; TabPFN classifiers use
+#                 "tabular-classification", regressors use "tabular-regression"
+#                 (https://huggingface.co/models?pipeline_tag=tabular-classification)
+#   domain        Coarse data domain (tabular / image / text / audio / ...)
+#   free_tag      Per-tool-family namespace used as the primary XML filter;
+#                 TabPFN rows use "tabpfn"
+#   version       Tool version these rows belong to; used as a secondary XML filter
+#   path          Path to the model checkpoint (.ckpt) or directory on this server
+#
+# Administrators: copy this file to your Galaxy tool-data directory as
+# "huggingface.loc" and update each path to point to the actual model files.
+# Models can be downloaded from: https://huggingface.co/prior-labs/tabpfn_2_5
+#
+# For the full shared schema reference see:
+#   https://galaxyproject.org/news/2026-04-13-huggingface-data-table/
+#
+# Example (replace the path with the real location on your server):
+# prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_default tabpfn-v2.5-classifier-v2.5_default tabular-classification tabular tabpfn 1 /data/models/tabpfn-v2.5-classifier-v2.5_default.ckpt
+#
+# Classification models
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_default tabpfn-v2.5-classifier-v2.5_default tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_default.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_default-2 tabpfn-v2.5-classifier-v2.5_default-2 tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_default-2.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_large-features-L tabpfn-v2.5-classifier-v2.5_large-features-L tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_large-features-L.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_large-features-XL tabpfn-v2.5-classifier-v2.5_large-features-XL tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_large-features-XL.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_large-samples tabpfn-v2.5-classifier-v2.5_large-samples tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_large-samples.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_real tabpfn-v2.5-classifier-v2.5_real tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_real.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_real-large-features tabpfn-v2.5-classifier-v2.5_real-large-features tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_real-large-features.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_real-large-samples-and-features tabpfn-v2.5-classifier-v2.5_real-large-samples-and-features tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_real-large-samples-and-features.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_variant tabpfn-v2.5-classifier-v2.5_variant tabular-classification tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-classifier-v2.5_variant.ckpt
+
+# Regression models
+prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_default tabpfn-v2.5-regressor-v2.5_default tabular-regression tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_default.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_low-skew tabpfn-v2.5-regressor-v2.5_low-skew tabular-regression tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_low-skew.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_quantiles tabpfn-v2.5-regressor-v2.5_quantiles tabular-regression tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_quantiles.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_real tabpfn-v2.5-regressor-v2.5_real tabular-regression tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_real.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_real-variant tabpfn-v2.5-regressor-v2.5_real-variant tabular-regression tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_real-variant.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_small-samples tabpfn-v2.5-regressor-v2.5_small-samples tabular-regression tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_small-samples.ckpt
+prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_variant tabpfn-v2.5-regressor-v2.5_variant tabular-regression tabular tabpfn 1 prior-labs/tabpfn_2_5/tabpfn-v2.5-regressor-v2.5_variant.ckpt
\ No newline at end of file
b
diff -r cc50a058a1cb -r ec6df5e22055 tool_data_table_conf.xml.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data_table_conf.xml.sample Wed Apr 15 20:19:01 2026 +0000
b
@@ -0,0 +1,7 @@
+<tables>
+    <!-- huggingface models -->
+    <table name="huggingface" comment_char="#" allow_duplicate_entries="False">
+        <columns>value, name, pipeline_tag, domain, free_tag, version, path</columns>
+        <file path="tool-data/huggingface.loc" />
+    </table>
+</tables>
\ No newline at end of file