catboost 1.25.1 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DEPLOYMENT.md +22 -15
- package/README.md +43 -27
- package/binding.gyp +5 -7
- package/build_scripts/bootstrap.js +2 -1
- package/build_scripts/out/build.js +46 -68
- package/build_scripts/out/build_model.js +1 -1
- package/build_scripts/out/{build_ya.js → build_native.js} +1 -1
- package/build_scripts/out/ci.js +5 -5
- package/build_scripts/out/common.js +1 -1
- package/build_scripts/out/config.js +32 -18
- package/build_scripts/out/install.js +5 -3
- package/build_scripts/out/package_prepublish.js +1 -1
- package/build_scripts/out/packaging.js +1 -19
- package/build_scripts/out/run_tests.js +1 -1
- package/build_scripts/out/test.js +8 -3
- package/config.json +18 -11
- package/inc/catboost/libs/model_interface/c_api.h +367 -5
- package/lib/catboost.d.ts +65 -21
- package/package.json +4 -4
- package/src/api_helpers.cpp +100 -24
- package/src/api_helpers.h +8 -7
- package/src/api_module.cpp +1 -2
- package/src/model.cpp +483 -83
- package/src/model.h +24 -9
- package/inc/contrib/libs/cxxsupp/system_stl/include/stlfwd +0 -14
- package/inc/util/charset/recode_result.h +0 -9
- package/inc/util/charset/unicode_table.h +0 -123
- package/inc/util/charset/unidata.h +0 -421
- package/inc/util/charset/utf8.h +0 -384
- package/inc/util/charset/wide.h +0 -843
- package/inc/util/charset/wide_specific.h +0 -22
- package/inc/util/datetime/base.h +0 -669
- package/inc/util/datetime/constants.h +0 -7
- package/inc/util/datetime/cputimer.h +0 -124
- package/inc/util/datetime/parser.h +0 -292
- package/inc/util/datetime/systime.h +0 -47
- package/inc/util/datetime/uptime.h +0 -8
- package/inc/util/digest/city.h +0 -88
- package/inc/util/digest/fnv.h +0 -73
- package/inc/util/digest/multi.h +0 -14
- package/inc/util/digest/murmur.h +0 -57
- package/inc/util/digest/numeric.h +0 -86
- package/inc/util/digest/sequence.h +0 -48
- package/inc/util/draft/date.h +0 -129
- package/inc/util/draft/datetime.h +0 -184
- package/inc/util/draft/enum.h +0 -136
- package/inc/util/draft/holder_vector.h +0 -102
- package/inc/util/draft/ip.h +0 -131
- package/inc/util/draft/matrix.h +0 -108
- package/inc/util/draft/memory.h +0 -40
- package/inc/util/folder/dirent_win.h +0 -46
- package/inc/util/folder/dirut.h +0 -121
- package/inc/util/folder/filelist.h +0 -81
- package/inc/util/folder/fts.h +0 -108
- package/inc/util/folder/iterator.h +0 -109
- package/inc/util/folder/lstat_win.h +0 -20
- package/inc/util/folder/path.h +0 -225
- package/inc/util/folder/pathsplit.h +0 -113
- package/inc/util/folder/tempdir.h +0 -42
- package/inc/util/generic/adaptor.h +0 -134
- package/inc/util/generic/algorithm.h +0 -765
- package/inc/util/generic/array_ref.h +0 -282
- package/inc/util/generic/array_size.h +0 -24
- package/inc/util/generic/benchmark/vector_count_ctor/f.h +0 -9
- package/inc/util/generic/bitmap.h +0 -1115
- package/inc/util/generic/bitops.h +0 -459
- package/inc/util/generic/bt_exception.h +0 -24
- package/inc/util/generic/buffer.h +0 -232
- package/inc/util/generic/cast.h +0 -176
- package/inc/util/generic/deque.h +0 -24
- package/inc/util/generic/explicit_type.h +0 -42
- package/inc/util/generic/fastqueue.h +0 -55
- package/inc/util/generic/flags.h +0 -244
- package/inc/util/generic/function.h +0 -103
- package/inc/util/generic/fwd.h +0 -171
- package/inc/util/generic/guid.h +0 -61
- package/inc/util/generic/hash.h +0 -2032
- package/inc/util/generic/hash_primes.h +0 -140
- package/inc/util/generic/hash_set.h +0 -490
- package/inc/util/generic/hide_ptr.h +0 -3
- package/inc/util/generic/intrlist.h +0 -876
- package/inc/util/generic/is_in.h +0 -53
- package/inc/util/generic/iterator.h +0 -137
- package/inc/util/generic/iterator_range.h +0 -105
- package/inc/util/generic/lazy_value.h +0 -66
- package/inc/util/generic/list.h +0 -22
- package/inc/util/generic/map.h +0 -44
- package/inc/util/generic/mapfindptr.h +0 -60
- package/inc/util/generic/maybe.h +0 -713
- package/inc/util/generic/maybe_traits.h +0 -164
- package/inc/util/generic/mem_copy.h +0 -55
- package/inc/util/generic/noncopyable.h +0 -38
- package/inc/util/generic/object_counter.h +0 -53
- package/inc/util/generic/ptr.h +0 -1113
- package/inc/util/generic/queue.h +0 -57
- package/inc/util/generic/refcount.h +0 -162
- package/inc/util/generic/reserve.h +0 -11
- package/inc/util/generic/scope.h +0 -65
- package/inc/util/generic/serialized_enum.h +0 -406
- package/inc/util/generic/set.h +0 -42
- package/inc/util/generic/singleton.h +0 -136
- package/inc/util/generic/size_literals.h +0 -65
- package/inc/util/generic/stack.h +0 -18
- package/inc/util/generic/store_policy.h +0 -120
- package/inc/util/generic/strbase.h +0 -612
- package/inc/util/generic/strbuf.h +0 -552
- package/inc/util/generic/strfcpy.h +0 -17
- package/inc/util/generic/string.h +0 -1572
- package/inc/util/generic/string_hash.h +0 -21
- package/inc/util/generic/string_ut.h +0 -1175
- package/inc/util/generic/type_name.h +0 -34
- package/inc/util/generic/typelist.h +0 -114
- package/inc/util/generic/typetraits.h +0 -325
- package/inc/util/generic/utility.h +0 -132
- package/inc/util/generic/va_args.h +0 -400
- package/inc/util/generic/variant.h +0 -631
- package/inc/util/generic/variant_traits.h +0 -171
- package/inc/util/generic/vector.h +0 -119
- package/inc/util/generic/xrange.h +0 -258
- package/inc/util/generic/yexception.h +0 -212
- package/inc/util/generic/yexception_ut.h +0 -14
- package/inc/util/generic/ylimits.h +0 -92
- package/inc/util/generic/ymath.h +0 -206
- package/inc/util/memory/addstorage.h +0 -93
- package/inc/util/memory/alloc.h +0 -27
- package/inc/util/memory/blob.h +0 -296
- package/inc/util/memory/mmapalloc.h +0 -8
- package/inc/util/memory/pool.h +0 -432
- package/inc/util/memory/segmented_string_pool.h +0 -194
- package/inc/util/memory/segpool_alloc.h +0 -118
- package/inc/util/memory/smallobj.h +0 -141
- package/inc/util/memory/tempbuf.h +0 -111
- package/inc/util/network/address.h +0 -136
- package/inc/util/network/endpoint.h +0 -61
- package/inc/util/network/hostip.h +0 -16
- package/inc/util/network/init.h +0 -60
- package/inc/util/network/interface.h +0 -17
- package/inc/util/network/iovec.h +0 -65
- package/inc/util/network/ip.h +0 -116
- package/inc/util/network/nonblock.h +0 -8
- package/inc/util/network/pair.h +0 -9
- package/inc/util/network/poller.h +0 -58
- package/inc/util/network/pollerimpl.h +0 -707
- package/inc/util/network/sock.h +0 -608
- package/inc/util/network/socket.h +0 -421
- package/inc/util/random/common_ops.h +0 -130
- package/inc/util/random/easy.h +0 -47
- package/inc/util/random/entropy.h +0 -21
- package/inc/util/random/fast.h +0 -101
- package/inc/util/random/init_atfork.h +0 -3
- package/inc/util/random/lcg_engine.h +0 -66
- package/inc/util/random/mersenne.h +0 -46
- package/inc/util/random/mersenne32.h +0 -50
- package/inc/util/random/mersenne64.h +0 -50
- package/inc/util/random/normal.h +0 -38
- package/inc/util/random/random.h +0 -30
- package/inc/util/random/shuffle.h +0 -39
- package/inc/util/str_stl.h +0 -266
- package/inc/util/stream/aligned.h +0 -99
- package/inc/util/stream/buffer.h +0 -119
- package/inc/util/stream/buffered.h +0 -225
- package/inc/util/stream/debug.h +0 -53
- package/inc/util/stream/direct_io.h +0 -43
- package/inc/util/stream/file.h +0 -108
- package/inc/util/stream/format.h +0 -444
- package/inc/util/stream/fwd.h +0 -100
- package/inc/util/stream/hex.h +0 -8
- package/inc/util/stream/holder.h +0 -44
- package/inc/util/stream/input.h +0 -273
- package/inc/util/stream/labeled.h +0 -19
- package/inc/util/stream/length.h +0 -100
- package/inc/util/stream/mem.h +0 -255
- package/inc/util/stream/multi.h +0 -32
- package/inc/util/stream/null.h +0 -61
- package/inc/util/stream/output.h +0 -304
- package/inc/util/stream/pipe.h +0 -112
- package/inc/util/stream/printf.h +0 -25
- package/inc/util/stream/str.h +0 -207
- package/inc/util/stream/tee.h +0 -28
- package/inc/util/stream/tempbuf.h +0 -21
- package/inc/util/stream/tokenizer.h +0 -214
- package/inc/util/stream/trace.h +0 -60
- package/inc/util/stream/walk.h +0 -35
- package/inc/util/stream/zerocopy.h +0 -91
- package/inc/util/stream/zerocopy_output.h +0 -57
- package/inc/util/stream/zlib.h +0 -173
- package/inc/util/string/ascii.h +0 -236
- package/inc/util/string/builder.h +0 -39
- package/inc/util/string/cast.h +0 -347
- package/inc/util/string/cstriter.h +0 -14
- package/inc/util/string/escape.h +0 -70
- package/inc/util/string/hex.h +0 -59
- package/inc/util/string/join.h +0 -194
- package/inc/util/string/printf.h +0 -13
- package/inc/util/string/reverse.h +0 -16
- package/inc/util/string/split.h +0 -1080
- package/inc/util/string/strip.h +0 -257
- package/inc/util/string/strspn.h +0 -65
- package/inc/util/string/subst.h +0 -56
- package/inc/util/string/type.h +0 -50
- package/inc/util/string/util.h +0 -195
- package/inc/util/string/vector.h +0 -132
- package/inc/util/system/align.h +0 -50
- package/inc/util/system/atexit.h +0 -22
- package/inc/util/system/atomic.h +0 -51
- package/inc/util/system/atomic_gcc.h +0 -90
- package/inc/util/system/atomic_ops.h +0 -189
- package/inc/util/system/atomic_win.h +0 -114
- package/inc/util/system/backtrace.h +0 -39
- package/inc/util/system/byteorder.h +0 -186
- package/inc/util/system/compat.h +0 -84
- package/inc/util/system/compiler.h +0 -620
- package/inc/util/system/condvar.h +0 -71
- package/inc/util/system/context.h +0 -181
- package/inc/util/system/context_aarch64.h +0 -8
- package/inc/util/system/context_i686.h +0 -9
- package/inc/util/system/context_x86.h +0 -12
- package/inc/util/system/context_x86_64.h +0 -7
- package/inc/util/system/cpu_id.h +0 -159
- package/inc/util/system/daemon.h +0 -28
- package/inc/util/system/datetime.h +0 -98
- package/inc/util/system/defaults.h +0 -149
- package/inc/util/system/demangle.h +0 -5
- package/inc/util/system/demangle_impl.h +0 -23
- package/inc/util/system/direct_io.h +0 -71
- package/inc/util/system/dynlib.h +0 -119
- package/inc/util/system/env.h +0 -32
- package/inc/util/system/error.h +0 -95
- package/inc/util/system/event.h +0 -122
- package/inc/util/system/execpath.h +0 -17
- package/inc/util/system/fasttime.h +0 -6
- package/inc/util/system/fhandle.h +0 -27
- package/inc/util/system/file.h +0 -210
- package/inc/util/system/file_lock.h +0 -34
- package/inc/util/system/filemap.h +0 -383
- package/inc/util/system/flock.h +0 -35
- package/inc/util/system/fs.h +0 -156
- package/inc/util/system/fs_win.h +0 -29
- package/inc/util/system/fstat.h +0 -46
- package/inc/util/system/getpid.h +0 -12
- package/inc/util/system/guard.h +0 -179
- package/inc/util/system/hi_lo.h +0 -139
- package/inc/util/system/hostname.h +0 -10
- package/inc/util/system/hp_timer.h +0 -36
- package/inc/util/system/info.h +0 -12
- package/inc/util/system/interrupt_signals.h +0 -22
- package/inc/util/system/madvise.h +0 -30
- package/inc/util/system/maxlen.h +0 -32
- package/inc/util/system/mem_info.h +0 -18
- package/inc/util/system/mincore.h +0 -38
- package/inc/util/system/mktemp.h +0 -11
- package/inc/util/system/mlock.h +0 -43
- package/inc/util/system/mutex.h +0 -67
- package/inc/util/system/nice.h +0 -3
- package/inc/util/system/pipe.h +0 -90
- package/inc/util/system/platform.h +0 -246
- package/inc/util/system/progname.h +0 -13
- package/inc/util/system/protect.h +0 -25
- package/inc/util/system/rusage.h +0 -26
- package/inc/util/system/rwlock.h +0 -78
- package/inc/util/system/sanitizers.h +0 -122
- package/inc/util/system/sem.h +0 -41
- package/inc/util/system/shellcommand.h +0 -472
- package/inc/util/system/shmat.h +0 -32
- package/inc/util/system/sigset.h +0 -78
- package/inc/util/system/spin_wait.h +0 -10
- package/inc/util/system/spinlock.h +0 -121
- package/inc/util/system/src_location.h +0 -25
- package/inc/util/system/src_root.h +0 -68
- package/inc/util/system/sys_alloc.h +0 -43
- package/inc/util/system/sysstat.h +0 -52
- package/inc/util/system/tempfile.h +0 -34
- package/inc/util/system/thread.h +0 -167
- package/inc/util/system/tls.h +0 -307
- package/inc/util/system/types.h +0 -119
- package/inc/util/system/unaligned_mem.h +0 -67
- package/inc/util/system/user.h +0 -5
- package/inc/util/system/utime.h +0 -6
- package/inc/util/system/valgrind.h +0 -48
- package/inc/util/system/winint.h +0 -43
- package/inc/util/system/yassert.h +0 -121
- package/inc/util/system/yield.h +0 -4
- package/inc/util/thread/factory.h +0 -65
- package/inc/util/thread/fwd.h +0 -30
- package/inc/util/thread/lfqueue.h +0 -406
- package/inc/util/thread/lfstack.h +0 -188
- package/inc/util/thread/pool.h +0 -388
- package/inc/util/thread/singleton.h +0 -42
- package/inc/util/ysafeptr.h +0 -427
- package/inc/util/ysaveload.h +0 -700
|
@@ -41,20 +41,6 @@ var fs_1 = require("fs");
|
|
|
41
41
|
var download_1 = require("./download");
|
|
42
42
|
var path_1 = require("path");
|
|
43
43
|
var config_1 = require("./config");
|
|
44
|
-
function copyHeadersRecursively(srcPath, targetPath) {
|
|
45
|
-
for (var _i = 0, _a = fs_1.readdirSync(srcPath); _i < _a.length; _i++) {
|
|
46
|
-
var part = _a[_i];
|
|
47
|
-
var path = path_1.join(srcPath, part);
|
|
48
|
-
var target = path_1.join(targetPath, part);
|
|
49
|
-
if (fs_1.lstatSync(path).isDirectory()) {
|
|
50
|
-
copyHeadersRecursively(path, target);
|
|
51
|
-
continue;
|
|
52
|
-
}
|
|
53
|
-
if (path_1.extname(path) === '.h') {
|
|
54
|
-
download_1.copyFile(path, target);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
44
|
function prepareHeaders() {
|
|
59
45
|
var incDir = './inc';
|
|
60
46
|
if (!fs_1.existsSync(incDir)) {
|
|
@@ -63,10 +49,6 @@ function prepareHeaders() {
|
|
|
63
49
|
var rootPath = '../..';
|
|
64
50
|
var cApiPath = 'catboost/libs/model_interface/c_api.h';
|
|
65
51
|
download_1.copyFile(path_1.join(rootPath, cApiPath), path_1.join(incDir, cApiPath));
|
|
66
|
-
var stlfwdPath = 'contrib/libs/cxxsupp/system_stl/include/stlfwd';
|
|
67
|
-
download_1.copyFile(path_1.join(rootPath, stlfwdPath), path_1.join(incDir, stlfwdPath));
|
|
68
|
-
var utilPath = 'util';
|
|
69
|
-
copyHeadersRecursively(path_1.join(rootPath, utilPath), path_1.join(incDir, utilPath));
|
|
70
52
|
}
|
|
71
53
|
exports.prepareHeaders = prepareHeaders;
|
|
72
54
|
function generateConfigForVersion(version) {
|
|
@@ -75,7 +57,7 @@ function generateConfigForVersion(version) {
|
|
|
75
57
|
return __generator(this, function (_b) {
|
|
76
58
|
switch (_b.label) {
|
|
77
59
|
case 0:
|
|
78
|
-
console.log("Preparing config for
|
|
60
|
+
console.log("Preparing config for version " + version);
|
|
79
61
|
return [4 /*yield*/, config_1.createConfigForVersion(version)];
|
|
80
62
|
case 1:
|
|
81
63
|
_a = _b.sent(), config = _a[0], error = _a[1];
|
|
@@ -45,7 +45,7 @@ function allTests() {
|
|
|
45
45
|
case 0: return [4 /*yield*/, build_1.compileBindings()];
|
|
46
46
|
case 1:
|
|
47
47
|
_a.sent();
|
|
48
|
-
return [4 /*yield*/, test_1.test()];
|
|
48
|
+
return [4 /*yield*/, test_1.test(process.argv.indexOf('--have-cuda') > -1)];
|
|
49
49
|
case 2:
|
|
50
50
|
_a.sent();
|
|
51
51
|
return [2 /*return*/];
|
|
@@ -38,13 +38,18 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.test = void 0;
|
|
40
40
|
var common_1 = require("./common");
|
|
41
|
-
function test() {
|
|
41
|
+
function test(haveCuda) {
|
|
42
42
|
var _a;
|
|
43
43
|
return __awaiter(this, void 0, void 0, function () {
|
|
44
|
-
var result;
|
|
44
|
+
var cmd, result;
|
|
45
45
|
return __generator(this, function (_b) {
|
|
46
46
|
switch (_b.label) {
|
|
47
|
-
case 0:
|
|
47
|
+
case 0:
|
|
48
|
+
cmd = 'node ./lib/tests/model.js';
|
|
49
|
+
if (haveCuda) {
|
|
50
|
+
cmd += ' --have-cuda';
|
|
51
|
+
}
|
|
52
|
+
return [4 /*yield*/, common_1.execProcess(cmd)];
|
|
48
53
|
case 1:
|
|
49
54
|
result = _b.sent();
|
|
50
55
|
if (result.code !== 0) {
|
package/config.json
CHANGED
|
@@ -1,27 +1,34 @@
|
|
|
1
1
|
{
|
|
2
|
-
"linux": [
|
|
2
|
+
"linux-x64": [
|
|
3
3
|
{
|
|
4
|
-
"url": "https:/github.com/catboost/catboost/releases/download/
|
|
5
|
-
"sha256": "
|
|
4
|
+
"url": "https:/github.com/catboost/catboost/releases/download/v1.2.10/libcatboostmodel-linux-x86_64-1.2.10.so",
|
|
5
|
+
"sha256": "de32f8e147ee8f969599a00b7145e8561b943e916b0132b811037f8f71952a0e",
|
|
6
6
|
"targetFile": "libcatboostmodel.so"
|
|
7
7
|
}
|
|
8
8
|
],
|
|
9
|
-
"
|
|
9
|
+
"linux-arm64": [
|
|
10
10
|
{
|
|
11
|
-
"url": "https:/github.com/catboost/catboost/releases/download/
|
|
12
|
-
"sha256": "
|
|
11
|
+
"url": "https:/github.com/catboost/catboost/releases/download/v1.2.10/libcatboostmodel-linux-aarch64-1.2.10.so",
|
|
12
|
+
"sha256": "d1b5d12f57ef72fd43505d9fbc1ea30d93d54ef0f305484c6bbfde8642e99a5b",
|
|
13
|
+
"targetFile": "libcatboostmodel.so"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"darwin-universal2": [
|
|
17
|
+
{
|
|
18
|
+
"url": "https:/github.com/catboost/catboost/releases/download/v1.2.10/libcatboostmodel-darwin-universal2-1.2.10.dylib",
|
|
19
|
+
"sha256": "c31067d8df69e0be3dd353a06853d64f2e74bab1097512fc2d0db76add75514e",
|
|
13
20
|
"targetFile": "libcatboostmodel.dylib"
|
|
14
21
|
}
|
|
15
22
|
],
|
|
16
|
-
"
|
|
23
|
+
"win32-x64": [
|
|
17
24
|
{
|
|
18
|
-
"url": "https:/github.com/catboost/catboost/releases/download/
|
|
19
|
-
"sha256": "
|
|
25
|
+
"url": "https:/github.com/catboost/catboost/releases/download/v1.2.10/catboostmodel-windows-x86_64-1.2.10.dll",
|
|
26
|
+
"sha256": "668d8867940a0832accaad6004e249f11ecc48eb63eb1d65551cfdd37c1939ad",
|
|
20
27
|
"targetFile": "catboostmodel.dll"
|
|
21
28
|
},
|
|
22
29
|
{
|
|
23
|
-
"url": "https:/github.com/catboost/catboost/releases/download/
|
|
24
|
-
"sha256": "
|
|
30
|
+
"url": "https:/github.com/catboost/catboost/releases/download/v1.2.10/catboostmodel-windows-x86_64-1.2.10.lib",
|
|
31
|
+
"sha256": "59b77bef6058548991d5eb942958999e0c3c21145f86bf0338d8f765d9975e9f",
|
|
25
32
|
"targetFile": "catboostmodel.lib"
|
|
26
33
|
}
|
|
27
34
|
]
|
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
#include <stdbool.h>
|
|
4
4
|
#include <stddef.h>
|
|
5
5
|
|
|
6
|
+
|
|
7
|
+
#define CATBOOST_APPLIER_MAJOR 1
|
|
8
|
+
#define CATBOOST_APPLIER_MINOR 2
|
|
9
|
+
#define CATBOOST_APPLIER_FIX 10
|
|
10
|
+
|
|
6
11
|
#if defined(__cplusplus)
|
|
7
12
|
extern "C" {
|
|
8
13
|
#endif
|
|
@@ -36,6 +41,8 @@ CATBOOST_API void AddCatFeatures(DataWrapperHandle* dataWrapperHandle, const cha
|
|
|
36
41
|
|
|
37
42
|
CATBOOST_API void AddTextFeatures(DataWrapperHandle* dataWrapperHandle, const char*** textFeatures, size_t textFeaturesSize);
|
|
38
43
|
|
|
44
|
+
CATBOOST_API void AddEmbeddingFeatures(DataWrapperHandle* dataWrapperHandle, const float*** embeddingFeatures, size_t* embeddingDimensions, size_t embeddingFeaturesSize);
|
|
45
|
+
|
|
39
46
|
CATBOOST_API DataProviderHandle* BuildDataProvider(DataWrapperHandle* dataWrapperHandle);
|
|
40
47
|
|
|
41
48
|
typedef void ModelCalcerHandle;
|
|
@@ -46,6 +53,12 @@ enum EApiPredictionType {
|
|
|
46
53
|
APT_RMSE_WITH_UNCERTAINTY = 2,
|
|
47
54
|
APT_PROBABILITY = 3,
|
|
48
55
|
APT_CLASS = 4,
|
|
56
|
+
APT_MULTI_PROBABILITY = 5,
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
enum ECatBoostApiFormulaEvaluatorType {
|
|
60
|
+
CBA_FET_CPU = 0,
|
|
61
|
+
CBA_FET_GPU = 1,
|
|
49
62
|
};
|
|
50
63
|
|
|
51
64
|
/**
|
|
@@ -63,14 +76,17 @@ CATBOOST_API void ModelCalcerDelete(ModelCalcerHandle* modelHandle);
|
|
|
63
76
|
/**
|
|
64
77
|
* If error occured will return stored exception message.
|
|
65
78
|
* If no error occured, will return invalid pointer
|
|
66
|
-
*
|
|
79
|
+
* The underlying variable is thread-local so:
|
|
80
|
+
* - it is thread-safe to get it
|
|
81
|
+
* - indicates only errors that happened in the current thread
|
|
82
|
+
* @return Error message string. Uses UTF-8 encoding
|
|
67
83
|
*/
|
|
68
84
|
CATBOOST_API const char* GetErrorString();
|
|
69
85
|
|
|
70
86
|
/**
|
|
71
87
|
* Load model from file into given model handle
|
|
72
88
|
* @param calcer
|
|
73
|
-
* @param filename
|
|
89
|
+
* @param filename path to the file. Uses UTF-8 encoding
|
|
74
90
|
* @return false if error occured
|
|
75
91
|
*/
|
|
76
92
|
CATBOOST_API bool LoadFullModelFromFile(
|
|
@@ -89,15 +105,49 @@ CATBOOST_API bool LoadFullModelFromBuffer(
|
|
|
89
105
|
const void* binaryBuffer,
|
|
90
106
|
size_t binaryBufferSize);
|
|
91
107
|
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Use model directly from given memory region with zero-copy method
|
|
111
|
+
* @param calcer
|
|
112
|
+
* @param binaryBuffer pointer to a memory buffer where model file is mapped
|
|
113
|
+
* @param binaryBufferSize size of the buffer in bytes
|
|
114
|
+
* @return false if error occured
|
|
115
|
+
*/
|
|
116
|
+
CATBOOST_API bool LoadFullModelZeroCopy(
|
|
117
|
+
ModelCalcerHandle* modelHandle,
|
|
118
|
+
const void* binaryBuffer,
|
|
119
|
+
size_t binaryBufferSize);
|
|
120
|
+
|
|
92
121
|
/**
|
|
93
|
-
* Use CUDA
|
|
122
|
+
* Use CUDA GPU device for model evaluation
|
|
94
123
|
*/
|
|
95
124
|
CATBOOST_API bool EnableGPUEvaluation(ModelCalcerHandle* modelHandle, int deviceId);
|
|
96
125
|
|
|
126
|
+
/**
|
|
127
|
+
* Get supported formula evaluator types
|
|
128
|
+
* formulaEvaluatorTypes array must be deallocated using free() after use.
|
|
129
|
+
*
|
|
130
|
+
* @param modelHandle model handle
|
|
131
|
+
* @param formulaEvaluatorTypes address of the pointer to an array that will be initialized with formula evaluator types
|
|
132
|
+
* @param formulaEvaluatorTypesCount address of the variable where the size of formulaEvaluatorTypes array will be stored
|
|
133
|
+
* @return true on success, false on error
|
|
134
|
+
*/
|
|
135
|
+
CATBOOST_API bool GetSupportedEvaluatorTypes(
|
|
136
|
+
ModelCalcerHandle* modelHandle,
|
|
137
|
+
enum ECatBoostApiFormulaEvaluatorType** formulaEvaluatorTypes,
|
|
138
|
+
size_t* formulaEvaluatorTypesCount);
|
|
139
|
+
|
|
140
|
+
|
|
97
141
|
/**
|
|
98
142
|
* Set prediction type for model evaluation
|
|
99
143
|
*/
|
|
100
|
-
CATBOOST_API bool SetPredictionType(ModelCalcerHandle* modelHandle, EApiPredictionType predictionType);
|
|
144
|
+
CATBOOST_API bool SetPredictionType(ModelCalcerHandle* modelHandle, enum EApiPredictionType predictionType);
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Set prediction type for model evaluation with string constant
|
|
148
|
+
*/
|
|
149
|
+
CATBOOST_API bool SetPredictionTypeString(ModelCalcerHandle* modelHandle, const char* predictionTypeStr);
|
|
150
|
+
|
|
101
151
|
|
|
102
152
|
/**
|
|
103
153
|
* **Use this method only if you really understand what you want.**
|
|
@@ -105,7 +155,7 @@ CATBOOST_API bool SetPredictionType(ModelCalcerHandle* modelHandle, EApiPredicti
|
|
|
105
155
|
* Flat here means that float features and categorical feature are in the same float array.
|
|
106
156
|
* @param calcer model handle
|
|
107
157
|
* @param docCount number of objects
|
|
108
|
-
* @param floatFeatures array of array of float (first dimension is object index, second
|
|
158
|
+
* @param floatFeatures array of array of float (first dimension is object index, second is feature index)
|
|
109
159
|
* @param floatFeaturesSize float values array size
|
|
110
160
|
* @param result pointer to user allocated results vector
|
|
111
161
|
* @param resultSize Result size should be equal to modelApproxDimension * docCount
|
|
@@ -118,6 +168,73 @@ CATBOOST_API bool CalcModelPredictionFlat(
|
|
|
118
168
|
const float** floatFeatures, size_t floatFeaturesSize,
|
|
119
169
|
double* result, size_t resultSize);
|
|
120
170
|
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* **Use this method only if you really understand what you want.**
|
|
174
|
+
* Calculate raw model predictions on flat feature vectors
|
|
175
|
+
* taking into consideration only the trees in the range [treeStart; treeEnd)
|
|
176
|
+
* Flat here means that float features and categorical feature are in the same float array.
|
|
177
|
+
* @param calcer model handle
|
|
178
|
+
* @param docCount number of objects
|
|
179
|
+
* @param treeStart the index of the first tree to be used when applying the model (zero-based)
|
|
180
|
+
* @param treeEnd the index of the last tree to be used when applying the model (non-inclusive, zero-based)
|
|
181
|
+
* @param floatFeatures array of array of float (first dimension is object index, second is feature index)
|
|
182
|
+
* @param floatFeaturesSize float values array size
|
|
183
|
+
* @param result pointer to user allocated results vector
|
|
184
|
+
* @param resultSize Result size should be equal to modelApproxDimension * docCount
|
|
185
|
+
* (e.g. for non multiclass models should be equal to docCount)
|
|
186
|
+
* @return false if error occured
|
|
187
|
+
*/
|
|
188
|
+
CATBOOST_API bool CalcModelPredictionFlatStaged(
|
|
189
|
+
ModelCalcerHandle* modelHandle,
|
|
190
|
+
size_t docCount,
|
|
191
|
+
size_t treeStart, size_t treeEnd,
|
|
192
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
193
|
+
double* result, size_t resultSize);
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* **Use this method only if you really understand what you want.**
|
|
198
|
+
* Calculate raw model predictions on transposed dataset layout
|
|
199
|
+
* @param calcer model handle
|
|
200
|
+
* @param docCount number of objects
|
|
201
|
+
* @param floatFeatures array of array of float (first dimension is feature index, second is object index)
|
|
202
|
+
* @param floatFeaturesSize float values array size
|
|
203
|
+
* @param result pointer to user allocated results vector
|
|
204
|
+
* @param resultSize Result size should be equal to modelApproxDimension * docCount
|
|
205
|
+
* (e.g. for non multiclass models should be equal to docCount)
|
|
206
|
+
* @return false if error occured
|
|
207
|
+
*/
|
|
208
|
+
CATBOOST_API bool CalcModelPredictionFlatTransposed(
|
|
209
|
+
ModelCalcerHandle* modelHandle,
|
|
210
|
+
size_t docCount,
|
|
211
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
212
|
+
double* result, size_t resultSize);
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* **Use this method only if you really understand what you want.**
|
|
217
|
+
* Calculate raw model predictions on transposed dataset layout
|
|
218
|
+
* taking into consideration only the trees in the range [treeStart; treeEnd)
|
|
219
|
+
* @param calcer model handle
|
|
220
|
+
* @param docCount number of objects
|
|
221
|
+
* @param treeStart the index of the first tree to be used when applying the model (zero-based)
|
|
222
|
+
* @param treeEnd the index of the last tree to be used when applying the model (non-inclusive, zero-based)
|
|
223
|
+
* @param floatFeatures array of array of float (first dimension is feature index, second is object index)
|
|
224
|
+
* @param floatFeaturesSize float values array size
|
|
225
|
+
* @param result pointer to user allocated results vector
|
|
226
|
+
* @param resultSize Result size should be equal to modelApproxDimension * docCount
|
|
227
|
+
* (e.g. for non multiclass models should be equal to docCount)
|
|
228
|
+
* @return false if error occured
|
|
229
|
+
*/
|
|
230
|
+
CATBOOST_API bool CalcModelPredictionFlatTransposedStaged(
|
|
231
|
+
ModelCalcerHandle* modelHandle,
|
|
232
|
+
size_t docCount,
|
|
233
|
+
size_t treeStart, size_t treeEnd,
|
|
234
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
235
|
+
double* result, size_t resultSize);
|
|
236
|
+
|
|
237
|
+
|
|
121
238
|
/**
|
|
122
239
|
* Calculate raw model predictions on float features and string categorical feature values
|
|
123
240
|
* @param calcer model handle
|
|
@@ -139,6 +256,32 @@ CATBOOST_API bool CalcModelPrediction(
|
|
|
139
256
|
const char*** catFeatures, size_t catFeaturesSize,
|
|
140
257
|
double* result, size_t resultSize);
|
|
141
258
|
|
|
259
|
+
/**
|
|
260
|
+
* Calculate raw model predictions on float features and string categorical feature values
|
|
261
|
+
* taking into consideration only the trees in the range [treeStart; treeEnd)
|
|
262
|
+
* @param calcer model handle
|
|
263
|
+
* @param docCount object count
|
|
264
|
+
* @param treeStart the index of the first tree to be used when applying the model (zero-based)
|
|
265
|
+
* @param treeEnd the index of the last tree to be used when applying the model (non-inclusive, zero-based)
|
|
266
|
+
* @param floatFeatures array of array of float (first dimension is object index, second is feature index)
|
|
267
|
+
* @param floatFeaturesSize float feature count
|
|
268
|
+
* @param catFeatures array of array of char* categorical value pointers.
|
|
269
|
+
* String pointer should point to zero terminated string.
|
|
270
|
+
* @param catFeaturesSize categorical feature count
|
|
271
|
+
* @param result pointer to user allocated results vector
|
|
272
|
+
* @param resultSize result size should be equal to modelApproxDimension * docCount
|
|
273
|
+
* (e.g. for non multiclass models should be equal to docCount)
|
|
274
|
+
* @return false if error occured
|
|
275
|
+
*/
|
|
276
|
+
CATBOOST_API bool CalcModelPredictionStaged(
|
|
277
|
+
ModelCalcerHandle* modelHandle,
|
|
278
|
+
size_t docCount,
|
|
279
|
+
size_t treeStart, size_t treeEnd,
|
|
280
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
281
|
+
const char*** catFeatures, size_t catFeaturesSize,
|
|
282
|
+
double* result, size_t resultSize);
|
|
283
|
+
|
|
284
|
+
|
|
142
285
|
/**
|
|
143
286
|
* Calculate raw model predictions on float features and string categorical feature values
|
|
144
287
|
* @param calcer model handle
|
|
@@ -164,6 +307,101 @@ CATBOOST_API bool CalcModelPredictionText(
|
|
|
164
307
|
const char*** textFeatures, size_t textFeaturesSize,
|
|
165
308
|
double* result, size_t resultSize);
|
|
166
309
|
|
|
310
|
+
|
|
311
|
+
/**
|
|
312
|
+
* Calculate raw model predictions on float features and string categorical feature values
|
|
313
|
+
* taking into consideration only the trees in the range [treeStart; treeEnd)
|
|
314
|
+
* @param calcer model handle
|
|
315
|
+
* @param docCount object count
|
|
316
|
+
* @param treeStart the index of the first tree to be used when applying the model (zero-based)
|
|
317
|
+
* @param treeEnd the index of the last tree to be used when applying the model (non-inclusive, zero-based)
|
|
318
|
+
* @param floatFeatures array of array of float (first dimension is object index, second is feature index)
|
|
319
|
+
* @param floatFeaturesSize float feature count
|
|
320
|
+
* @param catFeatures array of array of char* categorical value pointers.
|
|
321
|
+
* String pointer should point to zero terminated string.
|
|
322
|
+
* @param catFeaturesSize categorical feature count
|
|
323
|
+
* @param textFeatures array of array of char* text value pointers.
|
|
324
|
+
* String pointer should point to zero terminated string.
|
|
325
|
+
* @param textFeaturesSize text feature count
|
|
326
|
+
* @param result pointer to user allocated results vector
|
|
327
|
+
* @param resultSize result size should be equal to modelApproxDimension * docCount
|
|
328
|
+
* (e.g. for non multiclass models should be equal to docCount)
|
|
329
|
+
* @return false if error occured
|
|
330
|
+
*/
|
|
331
|
+
CATBOOST_API bool CalcModelPredictionTextStaged(
|
|
332
|
+
ModelCalcerHandle* modelHandle,
|
|
333
|
+
size_t docCount,
|
|
334
|
+
size_t treeStart, size_t treeEnd,
|
|
335
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
336
|
+
const char*** catFeatures, size_t catFeaturesSize,
|
|
337
|
+
const char*** textFeatures, size_t textFeaturesSize,
|
|
338
|
+
double* result, size_t resultSize);
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
/**
|
|
342
|
+
* Calculate raw model predictions on float features and string categorical feature values
|
|
343
|
+
* @param calcer model handle
|
|
344
|
+
* @param docCount object count
|
|
345
|
+
* @param floatFeatures array of array of float (first dimension is object index, second is feature index)
|
|
346
|
+
* @param floatFeaturesSize float feature count
|
|
347
|
+
* @param catFeatures array of array of char* categorical value pointers.
|
|
348
|
+
* String pointer should point to zero terminated string.
|
|
349
|
+
* @param catFeaturesSize categorical feature count
|
|
350
|
+
* @param textFeatures array of array of char* text value pointers.
|
|
351
|
+
* String pointer should point to zero terminated string.
|
|
352
|
+
* @param textFeaturesSize text feature count
|
|
353
|
+
* @param embeddingFeatures array of array of array of float (first dimension is object index, second is feature index, third is index in embedding array).
|
|
354
|
+
* String pointer should point to zero terminated string.
|
|
355
|
+
* @param embeddingFeaturesSize embedding feature count
|
|
356
|
+
* @param result pointer to user allocated results vector
|
|
357
|
+
* @param resultSize result size should be equal to modelApproxDimension * docCount
|
|
358
|
+
* (e.g. for non multiclass models should be equal to docCount)
|
|
359
|
+
* @return false if error occured
|
|
360
|
+
*/
|
|
361
|
+
CATBOOST_API bool CalcModelPredictionTextAndEmbeddings(
|
|
362
|
+
ModelCalcerHandle* modelHandle,
|
|
363
|
+
size_t docCount,
|
|
364
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
365
|
+
const char*** catFeatures, size_t catFeaturesSize,
|
|
366
|
+
const char*** textFeatures, size_t textFeaturesSize,
|
|
367
|
+
const float*** embeddingFeatures, size_t* embeddingDimensions, size_t embeddingFeaturesSize,
|
|
368
|
+
double* result, size_t resultSize);
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
/**
|
|
372
|
+
* Calculate raw model predictions on float features and string categorical feature values
|
|
373
|
+
* taking into consideration only the trees in the range [treeStart; treeEnd)
|
|
374
|
+
* @param calcer model handle
|
|
375
|
+
* @param docCount object count
|
|
376
|
+
* @param treeStart the index of the first tree to be used when applying the model (zero-based)
|
|
377
|
+
* @param treeEnd the index of the last tree to be used when applying the model (non-inclusive, zero-based)
|
|
378
|
+
* @param floatFeatures array of array of float (first dimension is object index, second is feature index)
|
|
379
|
+
* @param floatFeaturesSize float feature count
|
|
380
|
+
* @param catFeatures array of array of char* categorical value pointers.
|
|
381
|
+
* String pointer should point to zero terminated string.
|
|
382
|
+
* @param catFeaturesSize categorical feature count
|
|
383
|
+
* @param textFeatures array of array of char* text value pointers.
|
|
384
|
+
* String pointer should point to zero terminated string.
|
|
385
|
+
* @param textFeaturesSize text feature count
|
|
386
|
+
* @param embeddingFeatures array of array of array of float (first dimension is object index, second is feature index, third is index in embedding array).
|
|
387
|
+
* String pointer should point to zero terminated string.
|
|
388
|
+
* @param embeddingFeaturesSize embedding feature count
|
|
389
|
+
* @param result pointer to user allocated results vector
|
|
390
|
+
* @param resultSize result size should be equal to modelApproxDimension * docCount
|
|
391
|
+
* (e.g. for non multiclass models should be equal to docCount)
|
|
392
|
+
* @return false if error occured
|
|
393
|
+
*/
|
|
394
|
+
CATBOOST_API bool CalcModelPredictionTextAndEmbeddingsStaged(
|
|
395
|
+
ModelCalcerHandle* modelHandle,
|
|
396
|
+
size_t docCount,
|
|
397
|
+
size_t treeStart, size_t treeEnd,
|
|
398
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
399
|
+
const char*** catFeatures, size_t catFeaturesSize,
|
|
400
|
+
const char*** textFeatures, size_t textFeaturesSize,
|
|
401
|
+
const float*** embeddingFeatures, size_t* embeddingDimensions, size_t embeddingFeaturesSize,
|
|
402
|
+
double* result, size_t resultSize);
|
|
403
|
+
|
|
404
|
+
|
|
167
405
|
/**
|
|
168
406
|
* Calculate raw model prediction on float features and string categorical feature values for single object
|
|
169
407
|
* @param calcer model handle
|
|
@@ -184,6 +422,30 @@ CATBOOST_API bool CalcModelPredictionSingle(
|
|
|
184
422
|
double* result, size_t resultSize);
|
|
185
423
|
|
|
186
424
|
|
|
425
|
+
/**
|
|
426
|
+
* Calculate raw model prediction on float features and string categorical feature values for single object
|
|
427
|
+
* taking into consideration only the trees in the range [treeStart; treeEnd)
|
|
428
|
+
* @param calcer model handle
|
|
429
|
+
* @param treeStart the index of the first tree to be used when applying the model (zero-based)
|
|
430
|
+
* @param treeEnd the index of the last tree to be used when applying the model (non-inclusive, zero-based)
|
|
431
|
+
* @param floatFeatures array of float features
|
|
432
|
+
* @param floatFeaturesSize float feature count
|
|
433
|
+
* @param catFeatures array of char* categorical feature value pointers.
|
|
434
|
+
* Each string pointer should point to zero terminated string.
|
|
435
|
+
* @param catFeaturesSize categorical feature count
|
|
436
|
+
* @param result pointer to user allocated results vector (or single double)
|
|
437
|
+
* @param resultSize result size should be equal to modelApproxDimension
|
|
438
|
+
* (e.g. for non multiclass models should be equal to 1)
|
|
439
|
+
* @return false if error occured
|
|
440
|
+
*/
|
|
441
|
+
CATBOOST_API bool CalcModelPredictionSingleStaged(
|
|
442
|
+
ModelCalcerHandle* modelHandle,
|
|
443
|
+
size_t treeStart, size_t treeEnd,
|
|
444
|
+
const float* floatFeatures, size_t floatFeaturesSize,
|
|
445
|
+
const char** catFeatures, size_t catFeaturesSize,
|
|
446
|
+
double* result, size_t resultSize);
|
|
447
|
+
|
|
448
|
+
|
|
187
449
|
/**
|
|
188
450
|
* Calculate raw model predictions on float features and hashed categorical feature values
|
|
189
451
|
* @param calcer model handle
|
|
@@ -212,6 +474,15 @@ CATBOOST_API bool CalcModelPredictionWithHashedCatFeaturesAndTextFeatures(
|
|
|
212
474
|
const char*** textFeatures, size_t textFeaturesSize,
|
|
213
475
|
double* result, size_t resultSize);
|
|
214
476
|
|
|
477
|
+
CATBOOST_API bool CalcModelPredictionWithHashedCatFeaturesAndTextAndEmbeddingFeatures(
|
|
478
|
+
ModelCalcerHandle* modelHandle,
|
|
479
|
+
size_t docCount,
|
|
480
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
481
|
+
const int** catFeatures, size_t catFeaturesSize,
|
|
482
|
+
const char*** textFeatures, size_t textFeaturesSize,
|
|
483
|
+
const float*** embeddingFeatures, size_t* embeddingDimensions, size_t embeddingFeaturesSize,
|
|
484
|
+
double* result, size_t resultSize);
|
|
485
|
+
|
|
215
486
|
/**
|
|
216
487
|
* Methods equivalent to the methods above
|
|
217
488
|
* only returning a prediction for the specific class
|
|
@@ -242,6 +513,16 @@ CATBOOST_API bool PredictSpecificClassText(
|
|
|
242
513
|
int classId,
|
|
243
514
|
double* result, size_t resultSize);
|
|
244
515
|
|
|
516
|
+
CATBOOST_API bool PredictSpecificClassTextAndEmbeddings(
|
|
517
|
+
ModelCalcerHandle* modelHandle,
|
|
518
|
+
size_t docCount,
|
|
519
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
520
|
+
const char*** catFeatures, size_t catFeaturesSize,
|
|
521
|
+
const char*** textFeatures, size_t textFeaturesSize,
|
|
522
|
+
const float*** embeddingFeatures, size_t* embeddingDimensions, size_t embeddingFeaturesSize,
|
|
523
|
+
int classId,
|
|
524
|
+
double* result, size_t resultSize);
|
|
525
|
+
|
|
245
526
|
CATBOOST_API bool PredictSpecificClassSingle(
|
|
246
527
|
ModelCalcerHandle* modelHandle,
|
|
247
528
|
const float* floatFeatures, size_t floatFeaturesSize,
|
|
@@ -266,6 +547,16 @@ CATBOOST_API bool PredictSpecificClassWithHashedCatFeaturesAndTextFeatures(
|
|
|
266
547
|
int classId,
|
|
267
548
|
double* result, size_t resultSize);
|
|
268
549
|
|
|
550
|
+
CATBOOST_API bool PredictSpecificClassWithHashedCatFeaturesAndTextAndEmbeddingFeatures(
|
|
551
|
+
ModelCalcerHandle* modelHandle,
|
|
552
|
+
size_t docCount,
|
|
553
|
+
const float** floatFeatures, size_t floatFeaturesSize,
|
|
554
|
+
const int** catFeatures, size_t catFeaturesSize,
|
|
555
|
+
const char*** textFeatures, size_t textFeaturesSize,
|
|
556
|
+
const float*** embeddingFeatures, size_t* embeddingDimensions, size_t embeddingFeaturesSize,
|
|
557
|
+
int classId,
|
|
558
|
+
double* result, size_t resultSize);
|
|
559
|
+
|
|
269
560
|
/**
|
|
270
561
|
* Get hash for given string value
|
|
271
562
|
* @param data we don't expect data to be zero terminated, so pass correct size
|
|
@@ -289,12 +580,64 @@ CATBOOST_API int GetIntegerCatFeatureHash(long long val);
|
|
|
289
580
|
*/
|
|
290
581
|
CATBOOST_API size_t GetFloatFeaturesCount(ModelCalcerHandle* modelHandle);
|
|
291
582
|
|
|
583
|
+
/**
|
|
584
|
+
* Get expected indices of float features used in the model.
|
|
585
|
+
* indices array must be deallocated using free() after use.
|
|
586
|
+
* @param modelHandle model handle
|
|
587
|
+
* @param indices indices of the features
|
|
588
|
+
* @param count indices size
|
|
589
|
+
* @return true on success, false on error
|
|
590
|
+
*/
|
|
591
|
+
CATBOOST_API bool GetFloatFeatureIndices(ModelCalcerHandle* modelHandle, size_t** indices, size_t* count);
|
|
592
|
+
|
|
292
593
|
/**
|
|
293
594
|
* Get expected categorical feature count for model
|
|
294
595
|
* @param calcer model handle
|
|
295
596
|
*/
|
|
296
597
|
CATBOOST_API size_t GetCatFeaturesCount(ModelCalcerHandle* modelHandle);
|
|
297
598
|
|
|
599
|
+
/**
|
|
600
|
+
* Get expected indices of category features used in the model.
|
|
601
|
+
* indices array must be deallocated using free() after use.
|
|
602
|
+
* @param modelHandle model handle
|
|
603
|
+
* @param indices indices of the features
|
|
604
|
+
* @param count indices size
|
|
605
|
+
* @return true on success, false on error
|
|
606
|
+
*/
|
|
607
|
+
CATBOOST_API bool GetCatFeatureIndices(ModelCalcerHandle* modelHandle, size_t** indices, size_t* count);
|
|
608
|
+
|
|
609
|
+
/**
|
|
610
|
+
* Get expected text feature count for model
|
|
611
|
+
* @param calcer model handle
|
|
612
|
+
*/
|
|
613
|
+
CATBOOST_API size_t GetTextFeaturesCount(ModelCalcerHandle* modelHandle);
|
|
614
|
+
|
|
615
|
+
/**
|
|
616
|
+
* Get expected indices of text features used in the model.
|
|
617
|
+
* indices array must be deallocated using free() after use.
|
|
618
|
+
* @param modelHandle model handle
|
|
619
|
+
* @param indices indices of the features
|
|
620
|
+
* @param count indices size
|
|
621
|
+
* @return true on success, false on error
|
|
622
|
+
*/
|
|
623
|
+
CATBOOST_API bool GetTextFeatureIndices(ModelCalcerHandle* modelHandle, size_t** indices, size_t* count);
|
|
624
|
+
|
|
625
|
+
/**
|
|
626
|
+
* Get expected embedding feature count for model
|
|
627
|
+
* @param calcer model handle
|
|
628
|
+
*/
|
|
629
|
+
CATBOOST_API size_t GetEmbeddingFeaturesCount(ModelCalcerHandle* modelHandle);
|
|
630
|
+
|
|
631
|
+
/**
|
|
632
|
+
* Get expected indices of embedding features used in the model.
|
|
633
|
+
* indices array must be deallocated using free() after use.
|
|
634
|
+
* @param modelHandle model handle
|
|
635
|
+
* @param indices indices of the features
|
|
636
|
+
* @param count indices size
|
|
637
|
+
* @return true on success, false on error
|
|
638
|
+
*/
|
|
639
|
+
CATBOOST_API bool GetEmbeddingFeatureIndices(ModelCalcerHandle* modelHandle, size_t** indices, size_t* count);
|
|
640
|
+
|
|
298
641
|
/**
|
|
299
642
|
* Get number of trees in model
|
|
300
643
|
* @param calcer model handle
|
|
@@ -307,6 +650,15 @@ CATBOOST_API size_t GetTreeCount(ModelCalcerHandle* modelHandle);
|
|
|
307
650
|
*/
|
|
308
651
|
CATBOOST_API size_t GetDimensionsCount(ModelCalcerHandle* modelHandle);
|
|
309
652
|
|
|
653
|
+
/**
|
|
654
|
+
* Get number of dimensions for current prediction
|
|
655
|
+
* For default `APT_RAW_FORMULA_VAL`, `APT_EXPONENT`, `APT_PROBABILITY`, `APT_CLASS` prediction type GetPredictionDimensionsCount == GetDimensionsCount
|
|
656
|
+
* For `APT_RMSE_WITH_UNCERTAINTY` - returns 2 (value prediction and predicted uncertainty)
|
|
657
|
+
* @param calcer model handle
|
|
658
|
+
*/
|
|
659
|
+
CATBOOST_API size_t GetPredictionDimensionsCount(ModelCalcerHandle* modelHandle);
|
|
660
|
+
|
|
661
|
+
|
|
310
662
|
/**
|
|
311
663
|
* Check if model metadata holds some value for provided key
|
|
312
664
|
* @param calcer model handle
|
|
@@ -325,6 +677,16 @@ CATBOOST_API size_t GetModelInfoValueSize(ModelCalcerHandle* modelHandle, const
|
|
|
325
677
|
*/
|
|
326
678
|
CATBOOST_API const char* GetModelInfoValue(ModelCalcerHandle* modelHandle, const char* keyPtr, size_t keySize);
|
|
327
679
|
|
|
680
|
+
|
|
681
|
+
/**
|
|
682
|
+
* Get names of features used in the model.
|
|
683
|
+
* individual strings in featureNames array and featureNames array itself must be deallocated using free() after use.
|
|
684
|
+
*
|
|
685
|
+
* @return true on success, false on error
|
|
686
|
+
*/
|
|
687
|
+
CATBOOST_API bool GetModelUsedFeaturesNames(ModelCalcerHandle* modelHandle, char*** featureNames, size_t* featureCount);
|
|
688
|
+
|
|
689
|
+
|
|
328
690
|
#if defined(__cplusplus)
|
|
329
691
|
}
|
|
330
692
|
#endif
|