bosk 0.1.0

Pure-Rust LightGBM inference: parses the text model format directly — no FFI, zero deps. Optional ONNX Runtime and CatBoost backends behind the same small Model trait.
Documentation
CBM1P$

,����$|�FlabuffersModel_v1d���pb{"detailed_profile":false,"boosting_options":{"model_shrink_mode":"Constant","approx_on_full_history":false,"fold_len_multiplier":2,"fold_permutation_block":0,"posterior_sampling":false,"boosting_type":"Plain","iterations":8,"model_shrink_rate":0,"od_config":{"wait_iterations":20,"type":"None","stop_pvalue":0},"boost_from_average":false,"permutation_count":4,"learning_rate":0.30000001192092896},"pool_metainfo_options":{"tags":{}},"metrics":{"objective_metric":{"type":"MultiClass","params":{}},"eval_metric":{"type":"MultiClass","params":{}},"custom_metrics":[]},"metadata":{},"cat_feature_params":{"store_all_simple_ctr":false,"ctr_leaf_count_limit":18446744073709551615,"simple_ctrs":[{"ctr_binarization":{"border_count":15,"border_type":"Uniform"},"target_binarization":{"border_count":2,"border_type":"MinEntropy"},"prior_estimation":"No","priors":[[0,1],[0.5,1],[1,1]],"ctr_type":"Borders"},{"ctr_binarization":{"border_count":15,"border_type":"Uniform"},"prior_estimation":"No","priors":[[0,1]],"ctr_type":"Counter"}],"counter_calc_method":"SkipTest","one_hot_max_size":2,"max_ctr_complexity":1,"combinations_ctrs":[{"ctr_binarization":{"border_count":15,"border_type":"Uniform"},"target_binarization":{"border_count":2,"border_type":"MinEntropy"},"prior_estimation":"No","priors":[[0,1],[0.5,1],[1,1]],"ctr_type":"Borders"},{"ctr_binarization":{"border_count":15,"border_type":"Uniform"},"prior_estimation":"No","priors":[[0,1]],"ctr_type":"Counter"}],"target_binarization":{"border_count":1,"border_type":"MinEntropy"},"per_feature_ctrs":{}},"logging_level":"Silent","data_processing_options":{"ignored_features":[],"float_features_binarization":{"border_count":254,"dev_max_subset_size_for_build_borders":200000,"nan_mode":"Min","border_type":"GreedyLogSum"},"has_time":false,"dev_sparse_array_indexing":"Indices","allow_const_label":false,"dev_default_value_fraction_for_sparse":0.8299999833106995,"class_names":[0,1,2],"embedding_processing_options":{"embedding_processing":{"default":["LDA","KNN"]}},"dev_group_features":false,"eval_fraction":0,"classes_count":0,"dev_leafwise_scoring":false,"auto_class_weights":"None","target_border":null,"force_unit_auto_pair_weights":false,"text_processing_options":{"feature_processing":{"default":[{"dictionaries_names":["BiGram","Word"],"feature_calcers":["BoW"],"tokenizers_names":["Space"]},{"dictionaries_names":["Word"],"feature_calcers":["NaiveBayes"],"tokenizers_names":["Space"]}]},"dictionaries":[{"start_token_id":"0","occurrence_lower_bound":"5","skip_step":"0","end_of_word_token_policy":"Insert","token_level_type":"Word","end_of_sentence_token_policy":"Skip","gram_order":"2","max_dictionary_size":"50000","dictionary_id":"BiGram"},{"start_token_id":"0","occurrence_lower_bound":"5","skip_step":"0","end_of_word_token_policy":"Insert","token_level_type":"Word","end_of_sentence_token_policy":"Skip","gram_order":"1","max_dictionary_size":"50000","dictionary_id":"Word"}],"tokenizers":[{"number_token":"🔢","skip_empty":"1","number_process_policy":"LeaveAsIs","tokenizer_id":"Space","token_types":["Number","Unknown","Word"],"delimiter":" ","languages":[],"lemmatizing":"0","split_by_set":"0","lowercasing":"0","subtokens_policy":"SingleToken","separator_type":"ByDelimiter"}]},"class_weights":[],"per_float_feature_quantization":{}},"loss_function":{"type":"MultiClass","params":{}},"tree_learner_options":{"model_size_reg":0.5,"sampling_frequency":"PerTree","bayesian_matrix_reg":0.10000000149011612,"score_function":"Cosine","monotone_constraints":{},"leaf_estimation_method":"Newton","dev_score_calc_obj_block_size":5000000,"grow_policy":"SymmetricTree","min_data_in_leaf":1,"random_strength":1,"dev_efb_max_buckets":1024,"l2_leaf_reg":3,"bootstrap":{"bagging_temperature":1,"type":"Bayesian"},"depth":3,"max_leaves":8,"leaf_estimation_backtracking":"AnyImprovement","rsm":1,"dev_leafwise_approxes":false,"penalties":{"per_object_feature_penalties":{},"first_feature_use_penalties":{},"feature_weights":{},"penalties_coefficient":1},"random_score_type":"NormalWithModelSizeDecrease","leaf_estimation_iterations":1,"sparse_features_conflict_fraction":0},"task_type":"CPU","flat_params":{"allow_writing_files":false,"verbose":0,"iterations":8,"thread_count":1,"loss_function":"MultiClass","depth":3,"learning_rate":0.3,"random_seed":0},"random_seed":0,"system_options":{"thread_count":1,"file_with_hosts":"hosts.txt","node_type":"SingleHost","node_port":0,"used_ram_limit":""}}params����0"110fc82a-fe3fb871-df38579c-2cb23d3
model_guid(�����{"metrics":{"learn_best_error":{"MultiClass":0.5150835140491017},"test_metrics_history":[],"learn_metrics_history":[{"MultiClass":0.9159794228329136},{"MultiClass":0.7821247883920429},{"MultiClass":0.7134556074543646},{"MultiClass":0.6398362228858265},{"MultiClass":0.5958682901672449},{"MultiClass":0.5761032332978906},{"MultiClass":0.5390982316690393},{"MultiClass":0.5150835140491017}],"test_best_error":[]}}training����@1{"name":"experiment","verbose":0,"test_error_log":"test_error.tsv","json_log":"catboost_training.json","result_model_file":"model","roc_file":"","eval_file_name":"","use_best_model":false,"allow_writing_files":false,"prediction_type":["RawFormulaVal"],"fstr_internal_file":"","output_columns":["SampleId","RawFormulaVal","Label"],"snapshot_interval":600,"time_left_log":"time_left.tsv","fstr_type":"FeatureImportance","profile_log":"catboost_profile.log","train_dir":"catboost_info","learn_error_log":"learn_error.tsv","training_options_file":"","snapshot_file":"experiment.cbsnapshot","save_snapshot":false,"model_format":["CatboostBinary"],"final_feature_calcer_computation_mode":"Default","metric_period":1,"output_borders":"","final_ctr_computation_mode":"Default","best_model_min_trees":1,"fstr_regular_file":""}output_options<���l_{"classes_count":0,"class_names":[0,1,2],"class_to_label":[0,1,2],"class_label_type":"Integer"}class_params����$2026-07-14T13:00:30Ztrain_finish_time�tGit info:
    Commit: b1bd2a6d77219e82a1acfcedfccb8e6f6c1ee084
    Branch: tags/v1.2.10
    Author: akhropov <akhropov@yandex-team.com>
    Summary: CatBoost release 1.2.10. commit_hash:f8e0038b19555d36a9ba7b81b6730254b352960d
    git-svn info:
    Last Changed Rev: 9293085

Other info:
    Build by: runner
    Top src dir: /Users/runner/work/catboost/catboost/catboost
catboost_version_info*H $(,048<@D*��dl
�	p	h	L@X	4d	X	�P	@@u@�@�s@`}@ c@�i@�d@��@�~@�V@ s@�f@�w@_@H�@@r@@p@Y@`f@@r@`z@��@�^@@t@@u@v@�@Ё@@P@Y@@G@�C@�q@8@�f@�h@�@ p@ o@�t@`|@�s@`x@P�@�W@��@��@�W@@Y@�C
��{��?�6.�z��?�v�p҆ɿ�8��ҿ�ع�w��T��`���?(�v
��?�jW�ga¿��J4`ҿ����Ͽ�|lk�
�?9�f���?�q�?���
п��8.""ҿ�8�cUU�?��q����?�q���¿1�V����?e'p#�#ĿI�=E�	Ͽ��J��ټ�k��R+8�?�h��m����x����Ϳۦ=u�¿�f���?L�yO~��?�.25�#ǿ��iy�ƿ����U$�?rn�+����-�=Ͽ��@;��ʿ/�W���?jV�ӡ?)�/�=Ŀ
�kK��?��xn��?��}��Lÿ.���¿��M6���?I�����?�^�џ��?}�k�;�ǿµ��ɿfM\���7�~�?o=1���?���\�����J�ʿي�Ө^ƿ�[FT�8�?Rt����?��mL,��?���[��?3|	�
�Ŀ�L� �̿�!5������߳�?�S5rkV�?�r�)�d��Jo��X�ǿJ�>ub��A�a��*�?G-����~웑���̀2��tr�|��?�.~=r�ǿ�_�� ���6E���?mĠ�j_?��#�U�?@W:�[ӹ��N�Ybƿ�0����Q��_��?8��K^�?A�q#�*|�@�l��|ɿx��+��-����C�?mM�\�ށ�1��	�̻�ǂ۷����#��`ɸ�?~.�]�Ŀ�YƛZU���Ոo�?�]'Xw�?�,ks�H��;mhG�?��$=�Z��5�_,C����<�Tk�?/]��_��?�O�]N���{j;Iq�����
��{?�(��h����o��Ha���?F�RU�T�?Ӳ�g�ÿ�"W�@z˿���ٕRm����G���?���X��?�1��N���{9�¿�菙������J#�?�@�M�x�_�LE��?0�^��?�-��)ƿ��!P<��?�q\w�0���s��f���2X�*�Ŀw+^
���?�w��G׏?���
'ƿ;��9i��WpUjA�?j
`|�?%���΄�?��œɿ��!�`��ɒ�� �?�wb>�ߧ?�Fgs!�?��Z�V�?6�\�{����k�VR�?�6�Iԥ�����6����,�����h�B���?E��PB����O�ȿ��Ʀ�?�r�k�?ˆ�;w�?<��Gq��S��Եÿ�Mg9j�?f��gIx?�S��?���		



		�P4��������������b�����	h����5�.�
�)��:<���m=��?��o?~��?
"{��ƭ����&��d����~Y��?���O>P?�>��>X�$?��A?�.�?