code: def test_ebm_sample_weight():
      X, y, names, types = make_synthetic(classes=2, objects=False)
  
      ebm = ExplainableBoostingClassifier(names, types)
      ebm.fit(X, y)
  
      weights = np.full(len(y), 128.0)
      weighted = ExplainableBoostingClassifier(names, types)
      weighted.fit(X, y, sample_weight=weights)
  
      # if all the weights are identical the models should be identical
      assert np.array_equal(
          ebm.predict_proba(X), weighted.predict_proba(X)
      )
  
      # change a single weight
      weights[0] = 1.1
      changed = ExplainableBoostingClassifier(names, types)
      changed.fit(X, y, sample_weight=weights)
  
      assert not np.array_equal(
          ebm.predict_proba(X), changed.predict_proba(X)
      )
  
imports: import math
  from sklearn.metrics import log_loss
  from interpret.utils import make_synthetic
  from ...tutils import synthetic_multiclass, synthetic_classification, iris_classification, smoke_test_explanations
  from ...tutils import synthetic_regression
  from interpret.glassbox import ExplainableBoostingRegressor, ExplainableBoostingClassifier
  from interpret.privacy import DPExplainableBoostingClassifier, DPExplainableBoostingRegressor
  from interpret.utils import inv_link
  from io import StringIO
  import json
  import numpy
  import pandas
  from sklearn.model_selection import train_test_split
  from sklearn.metrics import accuracy_score
  from sklearn.utils.estimator_checks import check_estimator
  import pytest
  import warnings
label_desc: Use image node_id 28 for calling a global function with example usage: test_ebm_sample_weight() without return types