@@ -153,32 +153,50 @@ $$ LANGUAGE plpython3u;
153
153
-- -
154
154
-- - Predict
155
155
-- -
156
- CREATE OR REPLACE FUNCTION pgml .predict(
157
- project_name TEXT , -- Human-friendly project name
158
- features DOUBLE PRECISION [] -- Must match the training data column order
156
+ CREATE OR REPLACE FUNCTION pgml .predict_versioned(
157
+ project_name TEXT , -- Human-friendly project name
158
+ features DOUBLE PRECISION [], -- Must match the training data column order
159
+ version INTEGER DEFAULT 0
159
160
)
160
161
RETURNS DOUBLE PRECISION
161
162
AS $$
162
163
from pgml_extension .model import Project
163
164
164
- return float(Project .find_by_name (project_name, 0 ).deployed_model .predict (features))
165
+ return float(Project .find_by_name (project_name, version ).deployed_model .predict (features))
165
166
$$ LANGUAGE plpython3u;
166
167
168
+ CREATE OR REPLACE FUNCTION pgml .predict(
169
+ project_name TEXT , -- Human-friendly project name
170
+ features DOUBLE PRECISION [] -- Must match the training data column order
171
+ )
172
+ RETURNS DOUBLE PRECISION
173
+ AS $$
174
+ SELECT pgml .predict_versioned (project_name, features, 0 );
175
+ $$ LANGUAGE SQL;
167
176
168
177
-- -
169
178
-- - Predict w/ multiple outputs
170
179
-- -
171
- CREATE OR REPLACE FUNCTION pgml .predict_joint(
172
- project_name TEXT , -- Human-friendly project name
173
- features DOUBLE PRECISION [] -- Must match the training data column order
180
+ CREATE OR REPLACE FUNCTION pgml .predict_joint_versioned(
181
+ project_name TEXT , -- Human-friendly project name
182
+ features DOUBLE PRECISION [], -- Must match the training data column order
183
+ version INTEGER DEFAULT 0
174
184
)
175
185
RETURNS DOUBLE PRECISION []
176
186
AS $$
177
187
from pgml_extension .model import Project
178
188
179
- return Project .find_by_name (project_name, 0 ).deployed_model .predict (features)
189
+ return Project .find_by_name (project_name, version ).deployed_model .predict (features)
180
190
$$ LANGUAGE plpython3u;
181
191
192
+ CREATE OR REPLACE FUNCTION pgml .predict_joint(
193
+ project_name TEXT , -- Human-friendly project name
194
+ features DOUBLE PRECISION [] -- Must match the training data column order
195
+ )
196
+ RETURNS DOUBLE PRECISION []
197
+ AS $$
198
+ SELECT pgml .predict_joint_versioned (project_name, features, 0 );
199
+ $$ LANGUAGE SQL;
182
200
183
201
-- -
184
202
-- - Predict using a specific model. Useful for debugging.
0 commit comments