
    =[g                     P    d Z ddlZddlmZmZmZ ddlZddlZddl	Z
dededdfdZy)z Tests for training continuation.    N)AnyDictTypeVardevicetree_methodreturnc                    t        j                  d      }d}d}|j                  ||d      \  }}t        j                  ||      }|ddd| d	}t        j
                  ||d
      }	|	j                  d      }
t        j
                  ||d
      }t        j
                  ||d|      }|j                  d      }t        dt        t        t        f   t        t        t        t              }d|d|ddffdt        |
      t        |      k(  sJ t        |
      D ];  \  }}t!        j"                  |      }t!        j"                  ||         } ||       = y)zRun training continuation test.zsklearn.datasets@          )random_state2z0.1z0.01)r   	max_depthgammaalphar   )num_boost_roundjson)dump_format)r   	xgb_modelTobj_0obj_1r   Nc                    t        | t              rt        j                  | |d      sJ y t        | t              r| |k(  sJ y t        | t
              r| |k(  sJ y t        | t              rt        t        | j                                     D ]  }t        | j                               |   t        |j                               |   k(  sJ t        | j                               |   dk7  s^ t        | j                               t        |j                                       y t        |       D ]  \  }}||   } ||        y )Ngư>)atolmissing)
isinstancefloatnpisclosestrintdictrangelenitemslistkeysvalues	enumerate)r   r   ilhsrhsrecursive_compares        W/var/www/html/bid-api/venv/lib/python3.12/site-packages/xgboost/testing/continuation.pyr-   zArun_training_continuation_model_output.<locals>.recursive_compare%   s   eU#::eU666s#E>!>s#E>!>t$3u{{}-.EJJL)!,UZZ\0B10EEEE

%a(I5%d5<<>&:D<PQ /
 $E*3Ah!#s+ +    )pytestimportorskipmake_regressionxgbDMatrixtrainget_dumpr   r   r    r   r   r!   r&   r$   r)   r   loads)r   r   datasets	n_samples
n_featuresXydtrainparamsbst_0dump_0bst_1dump_1r   r*   r+   r   r   r-   s                     @r.   &run_training_continuation_model_outputrC      sC   ""#56HIJ##Iz#JDAq[[AF"F IIffb9E^^^/FIIffb9EIIffbEJE^^^/FT#s(^UCd;A, ,1 , ," v;#f+%%%F#3

3

6!9%%' $r/   )__doc__r   typingr   r   r   numpyr   r0   xgboostr3   r    rC    r/   r.   <module>rI      s4    &  % %   .(3 .(S .(T .(r/   