models icon indicating copy to clipboard operation
models copied to clipboard

Update In Batch Negative Sampling Augmentation Layer for primary use with dataloader

Open oliverholworthy opened this issue 3 years ago • 6 comments

Related to #596 and #626

Goals :soccer:

  • Improve speed of in-batch negative sampling when used as part of the dataloader
  • Simplify use of in-batch negative sampling when used as part of the dataloader

Implementation Details :construction:

  • Adding the tf.function decorator to the call method of the in-batch negative sampling data augmentation layer.
  • Change default value of return_tuple so that this isn't required when used with BatchedDataset.map

Testing Details :mag:

slightly faster when wrapped with a tf.function. though not much practical difference unless used with very with large datasets.

import pyarrow as pa
from merlin.models.tf.data_augmentation.negative_sampling import UniformNegativeSampling
from merlin.models.tf.dataset import BatchedDataset
from merlin.datasets.synthetic import generate_data
from toolz import last
from merlin.io import Dataset
import tensorflow as tf

train, valid = generate_data("movielens-100k", num_rows=int(5e5), set_sizes=(0.8, 0.2))

schema = train.schema
schema = schema.without(["rating"])

# keep only positives
train_df = train.to_ddf().compute()
train = Dataset(train_df[train_df["rating_binary"] == 1])
train.schema = schema

sampling = UniformNegativeSampling(schema, 5, seed=42, return_tuple=True)
tf_sampling = tf.function(sampling)

%timeit -n 20 last(BatchedDataset(train, batch_size=100).map(sampling))
# => 71.5 ms ┬ 1.69 ms per loop (mean ┬ std. dev. of 7 runs, 20 loops each)
%timeit -n 20 last(BatchedDataset(train, batch_size=100).map(tf_sampling))
# => 41.3 ms ┬ 1.09 ms per loop (mean ┬ std. dev. of 7 runs, 20 loops each)

oliverholworthy avatar Aug 26 '22 15:08 oliverholworthy

Click to view CI Results
GitHub pull request #685 of commit 40125d059f90dba753675bbaaeb3507c4f46199e, no merge conflicts.
Running as SYSTEM
Setting status of 40125d059f90dba753675bbaaeb3507c4f46199e to PENDING with url https://10.20.13.93:8080/job/merlin_models/1054/console and message: 'Pending'
Using context: Jenkins
Building on master in workspace /var/jenkins_home/workspace/merlin_models
using credential nvidia-merlin-bot
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/NVIDIA-Merlin/models/ # timeout=10
Fetching upstream changes from https://github.com/NVIDIA-Merlin/models/
 > git --version # timeout=10
using GIT_ASKPASS to set credentials This is the bot credentials for our CI/CD
 > git fetch --tags --force --progress -- https://github.com/NVIDIA-Merlin/models/ +refs/pull/685/*:refs/remotes/origin/pr/685/* # timeout=10
 > git rev-parse 40125d059f90dba753675bbaaeb3507c4f46199e^{commit} # timeout=10
Checking out Revision 40125d059f90dba753675bbaaeb3507c4f46199e (detached)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 40125d059f90dba753675bbaaeb3507c4f46199e # timeout=10
Commit message: "Set return_tuple default value to True in in batch negative sampling"
 > git rev-list --no-walk 7ddffc41ef74a9710588e26c259affc199cf66fd # timeout=10
[merlin_models] $ /bin/bash /tmp/jenkins6157573873184936909.sh
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Requirement already satisfied: testbook in /usr/local/lib/python3.8/dist-packages (0.4.2)
Requirement already satisfied: nbformat>=5.0.4 in /usr/local/lib/python3.8/dist-packages (from testbook) (5.4.0)
Requirement already satisfied: nbclient>=0.4.0 in /usr/local/lib/python3.8/dist-packages (from testbook) (0.6.6)
Requirement already satisfied: traitlets>=5.1 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (5.3.0)
Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.9.1)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.11.1)
Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (2.16.1)
Requirement already satisfied: jupyter-client>=6.1.5 in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (7.3.4)
Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (1.5.5)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (22.1.0)
Requirement already satisfied: importlib-resources>=1.4.0; python_version =2.6->nbformat>=5.0.4->testbook) (5.9.0)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10; python_version =2.6->nbformat>=5.0.4->testbook) (1.3.10)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (0.18.1)
Requirement already satisfied: entrypoints in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (0.4)
Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (2.8.2)
Requirement already satisfied: pyzmq>=23.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (23.2.1)
Requirement already satisfied: tornado>=6.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (6.2)
Requirement already satisfied: zipp>=3.1.0; python_version =1.4.0; python_version jsonschema>=2.6->nbformat>=5.0.4->testbook) (3.8.1)
Requirement already satisfied: six>=1.5 in /var/jenkins_home/.local/lib/python3.8/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (1.15.0)
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.2, pluggy-1.0.0
rootdir: /var/jenkins_home/workspace/merlin_models/models, configfile: pyproject.toml
plugins: anyio-3.6.1, xdist-2.5.0, forked-1.4.0, cov-3.0.0
collected 671 items

tests/unit/config/test_schema.py .... [ 0%] tests/unit/datasets/test_advertising.py .s [ 0%] tests/unit/datasets/test_ecommerce.py ..sss [ 1%] tests/unit/datasets/test_entertainment.py ....sss. [ 2%] tests/unit/datasets/test_social.py . [ 2%] tests/unit/datasets/test_synthetic.py ..... [ 3%] tests/unit/implicit/test_implicit.py . [ 3%] tests/unit/lightfm/test_lightfm.py . [ 4%] tests/unit/tf/test_core.py ...... [ 4%] tests/unit/tf/test_dataset.py ................ [ 7%] tests/unit/tf/test_public_api.py . [ 7%] tests/unit/tf/blocks/test_cross.py ........... [ 9%] tests/unit/tf/blocks/test_dlrm.py .......... [ 10%] tests/unit/tf/blocks/test_interactions.py . [ 10%] tests/unit/tf/blocks/test_mlp.py ................................. [ 15%] tests/unit/tf/blocks/test_optimizer.py s................................ [ 20%] ..................... [ 23%] tests/unit/tf/blocks/retrieval/test_base.py . [ 23%] tests/unit/tf/blocks/retrieval/test_matrix_factorization.py .. [ 24%] tests/unit/tf/blocks/retrieval/test_two_tower.py ........... [ 25%] tests/unit/tf/blocks/sampling/test_cross_batch.py . [ 25%] tests/unit/tf/blocks/sampling/test_in_batch.py . [ 26%] tests/unit/tf/core/test_aggregation.py ......... [ 27%] tests/unit/tf/core/test_base.py .. [ 27%] tests/unit/tf/core/test_combinators.py s................... [ 30%] tests/unit/tf/core/test_index.py ... [ 31%] tests/unit/tf/core/test_prediction.py .. [ 31%] tests/unit/tf/core/test_tabular.py .... [ 32%] tests/unit/tf/core/test_transformations.py s............................ [ 36%] .................. [ 39%] tests/unit/tf/data_augmentation/test_misc.py . [ 39%] tests/unit/tf/data_augmentation/test_negative_sampling.py F..FF..FF. [ 40%] tests/unit/tf/data_augmentation/test_noise.py ..... [ 41%] tests/unit/tf/examples/test_01_getting_started.py . [ 41%] tests/unit/tf/examples/test_02_dataschema.py . [ 41%] tests/unit/tf/examples/test_03_exploring_different_models.py . [ 41%] tests/unit/tf/examples/test_04_export_ranking_models.py . [ 42%] tests/unit/tf/examples/test_05_export_retrieval_model.py . [ 42%] tests/unit/tf/examples/test_06_advanced_own_architecture.py . [ 42%] tests/unit/tf/examples/test_07_train_traditional_models.py . [ 42%] tests/unit/tf/examples/test_usecase_pretrained_embeddings.py . [ 42%] tests/unit/tf/inputs/test_continuous.py ..... [ 43%] tests/unit/tf/inputs/test_embedding.py ................................. [ 48%] .. [ 48%] tests/unit/tf/inputs/test_tabular.py .................. [ 51%] tests/unit/tf/layers/test_queue.py .............. [ 53%] tests/unit/tf/losses/test_losses.py ....................... [ 56%] tests/unit/tf/metrics/test_metrics_popularity.py ..... [ 57%] tests/unit/tf/metrics/test_metrics_topk.py ....................... [ 60%] tests/unit/tf/models/test_base.py s................. [ 63%] tests/unit/tf/models/test_benchmark.py .. [ 63%] tests/unit/tf/models/test_ranking.py ........................ [ 67%] tests/unit/tf/models/test_retrieval.py ................................ [ 72%] tests/unit/tf/prediction_tasks/test_classification.py .. [ 72%] tests/unit/tf/prediction_tasks/test_multi_task.py ................ [ 74%] tests/unit/tf/prediction_tasks/test_next_item.py ..... [ 75%] tests/unit/tf/prediction_tasks/test_regression.py .. [ 76%] tests/unit/tf/prediction_tasks/test_retrieval.py . [ 76%] tests/unit/tf/prediction_tasks/test_sampling.py ...... [ 77%] tests/unit/tf/predictions/test_base.py ..... [ 77%] tests/unit/tf/predictions/test_classification.py ....... [ 78%] tests/unit/tf/predictions/test_dot_product.py ........ [ 80%] tests/unit/tf/predictions/test_regression.py .. [ 80%] tests/unit/tf/predictions/test_sampling.py .... [ 80%] tests/unit/tf/utils/test_batch.py .... [ 81%] tests/unit/tf/utils/test_tf_utils.py ..... [ 82%] tests/unit/torch/test_dataset.py ......... [ 83%] tests/unit/torch/test_public_api.py . [ 83%] tests/unit/torch/block/test_base.py .... [ 84%] tests/unit/torch/block/test_mlp.py . [ 84%] tests/unit/torch/features/test_continuous.py .. [ 84%] tests/unit/torch/features/test_embedding.py .............. [ 86%] tests/unit/torch/features/test_tabular.py .... [ 87%] tests/unit/torch/model/test_head.py ............ [ 89%] tests/unit/torch/model/test_model.py .. [ 89%] tests/unit/torch/tabular/test_aggregation.py ........ [ 90%] tests/unit/torch/tabular/test_tabular.py ... [ 91%] tests/unit/torch/tabular/test_transformations.py ....... [ 92%] tests/unit/utils/test_schema_utils.py ................................ [ 97%] tests/unit/xgb/test_xgboost.py .................... [100%]

=================================== FAILURES =================================== ________________ TestAddRandomNegativesToBatch.test_dataloader _________________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7ff3c02420d0>

def test_dataloader(self):
    schema = Schema(
        [
            ColumnSchema(
                "item_id", tags=[Tags.ITEM, Tags.ITEM_ID, Tags.CATEGORICAL], dtype="int64"
            ),
            ColumnSchema("item_feature", tags=[Tags.ITEM, Tags.CATEGORICAL]),
            ColumnSchema(
                "user_id", tags=[Tags.USER, Tags.USER_ID, Tags.CATEGORICAL], dtype="int64"
            ),
            ColumnSchema("user_feature", tags=[Tags.USER, Tags.CATEGORICAL]),
            ColumnSchema("label", tags=[Tags.TARGET]),
        ]
    )
    n_per_positive = 5
    sampler = UniformNegativeSampling(schema, n_per_positive)

    input_df = pd.DataFrame(
        [
            {"user_id": 1, "item_id": 1, "item_feature": 2, "user_feature": 10, "label": 1},
            {"user_id": 2, "item_id": 3, "item_feature": 6, "user_feature": 5, "label": 1},
        ]
    )
    input_df = input_df[sorted(input_df.columns)]
    dataset = Dataset(input_df, schema=schema)
    batched_dataset = BatchedDataset(dataset, batch_size=10)
    batched_dataset = batched_dataset.map(sampler)
    first_batch_outputs = next(iter(batched_dataset))
  outputs = first_batch_outputs.outputs

E AttributeError: 'tuple' object has no attribute 'outputs'

tests/unit/tf/data_augmentation/test_negative_sampling.py:75: AttributeError _______________ TestAddRandomNegativesToBatch.test_calling[True] _______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7ff3c02426d0> music_streaming_data = <merlin.io.dataset.Dataset object at 0x7ff33c609dc0> to_dense = True, tf_random_seed = 1

@pytest.mark.parametrize("to_dense", [True, False])
def test_calling(self, music_streaming_data: Dataset, to_dense: bool, tf_random_seed: int):
    schema = music_streaming_data.schema
    batch_size, n_per_positive = 10, 5
    inputs, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, include_targets=True, to_dense=to_dense
    )

    sampler = UniformNegativeSampling(schema, 5, seed=tf_random_seed)

    with_negatives = sampler(inputs, targets=targets)
  outputs = with_negatives.outputs

E AttributeError: 'tuple' object has no attribute 'outputs'

tests/unit/tf/data_augmentation/test_negative_sampling.py:137: AttributeError ______________ TestAddRandomNegativesToBatch.test_calling[False] _______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7ff3c0242760> music_streaming_data = <merlin.io.dataset.Dataset object at 0x7ff3356d5c40> to_dense = False, tf_random_seed = 1

@pytest.mark.parametrize("to_dense", [True, False])
def test_calling(self, music_streaming_data: Dataset, to_dense: bool, tf_random_seed: int):
    schema = music_streaming_data.schema
    batch_size, n_per_positive = 10, 5
    inputs, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, include_targets=True, to_dense=to_dense
    )

    sampler = UniformNegativeSampling(schema, 5, seed=tf_random_seed)

    with_negatives = sampler(inputs, targets=targets)
  outputs = with_negatives.outputs

E AttributeError: 'tuple' object has no attribute 'outputs'

tests/unit/tf/data_augmentation/test_negative_sampling.py:137: AttributeError ----------------------------- Captured stderr call ----------------------------- WARNING:tensorflow:5 out of the last 5 calls to <function UniformNegativeSampling.call at 0x7ff33f010160> triggered tf.function retracing. Tracing is expensive and the excessive number of tracings could be due to (1) creating @tf.function repeatedly in a loop, (2) passing tensors with different shapes, (3) passing Python objects instead of tensors. For (1), please define your @tf.function outside of the loop. For (2), @tf.function has reduce_retracing=True option that can avoid unnecessary retracing. For (3), please refer to https://www.tensorflow.org/guide/function#controlling_retracing and https://www.tensorflow.org/api_docs/python/tf/function for more details. ------------------------------ Captured log call ------------------------------- WARNING tensorflow:def_function.py:148 5 out of the last 5 calls to <function UniformNegativeSampling.call at 0x7ff33f010160> triggered tf.function retracing. Tracing is expensive and the excessive number of tracings could be due to (1) creating @tf.function repeatedly in a loop, (2) passing tensors with different shapes, (3) passing Python objects instead of tensors. For (1), please define your @tf.function outside of the loop. For (2), @tf.function has reduce_retracing=True option that can avoid unnecessary retracing. For (3), please refer to https://www.tensorflow.org/guide/function#controlling_retracing and https://www.tensorflow.org/api_docs/python/tf/function for more details. ______________ TestAddRandomNegativesToBatch.test_in_model[True] _______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7ff3c0242970> run_eagerly = True music_streaming_data = <merlin.io.dataset.Dataset object at 0x7ff33f850d00> tf_random_seed = 1

@pytest.mark.parametrize("run_eagerly", [True, False])
def test_in_model(self, run_eagerly, music_streaming_data: Dataset, tf_random_seed: int):
    dataset = music_streaming_data
    schema = dataset.schema

    sampling = mm.Cond(
        ExampleIsTraining(),
        UniformNegativeSampling(schema, 5, seed=tf_random_seed),
        ExamplePredictionIdentity(),
    )
    model = mm.Model(
        mm.InputBlock(schema),
        sampling,
        mm.MLPBlock([64]),
        mm.BinaryClassificationTask("click"),
    )

    batch_size = 10
    features, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, to_dense=True
    )
  with_negatives = model(features, targets=targets, training=True)

tests/unit/tf/data_augmentation/test_negative_sampling.py:200:


/usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/training.py:490: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/models/base.py:920: in call outputs, context = self._call_child(block, outputs, context) merlin/models/tf/models/base.py:949: in _call_child outputs = call_layer(child, inputs, **call_kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) merlin/models/config/schema.py:58: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/core/combinators.py:283: in call outputs = call_layer(layer, outputs, training=training, **kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:146: in error_handler raise new_e.with_traceback(e.traceback) from None /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/blocks/mlp.py:225: in call return self.dense(inputs, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:988: in call input_spec.assert_input_compatibility(self.input_spec, inputs, self.name)


input_spec = [InputSpec(min_ndim=2)] inputs = [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, ... [76.], [76.], [77.], [77.], [77.], [77.], [77.]], dtype=float32)>, ...] layer_name = 'dense'

def assert_input_compatibility(input_spec, inputs, layer_name):
  """Checks compatibility between the layer and provided inputs.

  This checks that the tensor(s) `inputs` verify the input assumptions
  of a layer (if any). If not, a clear and actional exception gets raised.

  Args:
      input_spec: An InputSpec instance, list of InputSpec instances, a nested
          structure of InputSpec instances, or None.
      inputs: Input tensor, list of input tensors, or a nested structure of
          input tensors.
      layer_name: String, name of the layer (for error message formatting).

  Raises:
      ValueError: in case of mismatch between
          the provided inputs and the expectations of the layer.
  """
  if not input_spec:
    return

  input_spec = tf.nest.flatten(input_spec)
  if isinstance(inputs, dict):
    # Flatten `inputs` by reference order if input spec names are provided
    names = [spec.name for spec in input_spec]
    if all(names):
      list_inputs = []
      for name in names:
        if name not in inputs:
          raise ValueError(f'Missing data for input "{name}". '
                           'You passed a data dictionary with keys '
                           f'{list(inputs.keys())}. '
                           f'Expected the following keys: {names}')
        list_inputs.append(inputs[name])
      inputs = list_inputs

  inputs = tf.nest.flatten(inputs)
  for x in inputs:
    # Having a shape/dtype is the only commonality of the various tensor-like
    # objects that may be passed. The most common kind of invalid type we are
    # guarding for is a Layer instance (Functional API), which does not
    # have a `shape` attribute.
    if not hasattr(x, 'shape'):
      raise TypeError(f'Inputs to a layer should be tensors. Got: {x}')

  if len(inputs) != len(input_spec):
  raise ValueError(f'Layer "{layer_name}" expects {len(input_spec)} input(s),'
                     f' but it received {len(inputs)} input tensors. '
                     f'Inputs received: {inputs}')

E ValueError: Exception encountered when calling layer "private__dense" (type _Dense). E
E Layer "dense" expects 1 input(s), but it received 13 input tensors. Inputs received: [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, E 0.03482969, 0.07279999], E [-0.08623078, 0.09075823, 0.09004455, ..., 0.04702003, E -0.0338754 , 0.01674279], E [-0.05367033, -0.03708271, 0.09750845, ..., 0.01826058, E -0.01067774, 0.00353228], E ..., E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E [-0.05982495, 0.00941494, -0.0170866 , ..., 0.04046999, E -0.03917206, 0.02214545], E [-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E ..., E [-0.09613073, 0.00574432, -0.06272529, ..., -0.07596413, E -0.05235805, -0.07114938], E [ 0.03497816, 0.00258678, -0.02060063, ..., 0.01023176, E 0.05178693, 0.03078843], E [ 0.05752415, 0.015951 , 0.03335749, ..., 0.01102087, E 0.06480642, -0.01859571]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00077411, -0.04272131, 0.01362878, ..., -0.03421735, E -0.05499429, 0.07281819], E [-0.04494919, 0.00994679, -0.01409337, ..., 0.03038313, E -0.04779383, 0.02539765], E [-0.03843401, -0.04797446, -0.04346054, ..., -0.02784302, E 0.07427114, -0.06158229], E ..., E [ 0.08430401, -0.01791586, -0.01037587, ..., -0.01420283, E -0.06870842, 0.00973347], E [ 0.04738706, 0.00152453, -0.05083135, ..., -0.00338309, E 0.00188581, -0.05811936], E [-0.0038055 , -0.01493907, 0.02549406, ..., 0.02831712, E -0.02204459, -0.07184417]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00144552, 0.08053493, -0.05433185, ..., -0.04803555, E 0.00784254, 0.00134 ], E [-0.00780611, -0.02837084, -0.02829281, ..., 0.04710324, E -0.00875665, 0.00205226], E [ 0.07223409, -0.05060465, 0.0073901 , ..., 0.04512937, E -0.04797626, -0.01801917], E ..., E [ 0.03935708, 0.02653011, 0.00449451, ..., -0.04035959, E -0.06153113, 0.06843522], E [-0.04556208, -0.03516526, -0.01127513, ..., 0.06403926, E -0.03676584, -0.0140518 ], E [ 0.03712238, 0.01801471, -0.06914667, ..., -0.0608288 , E -0.01426386, -0.01721318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.8301565 ], E [0.24009515], E [0.63162076], E [0.71073955], E [0.7423834 ], E [0.3902647 ], E [0.7598254 ], E [0.9029359 ], E [0.58742005], E [0.09040972], E [0.58742005], E [0.9029359 ], E [0.63162076], E [0.24009515], E [0.63162076], E [0.7598254 ], E [0.3902647 ], E [0.9029359 ], E [0.63162076], E [0.9029359 ], E [0.09040972], E [0.7598254 ], E [0.3902647 ], E [0.09040972], E [0.58742005], E [0.58742005], E [0.3902647 ], E [0.7423834 ], E [0.3902647 ], E [0.71073955], E [0.63162076], E [0.8301565 ], E [0.7598254 ], E [0.58742005], E [0.09040972], E [0.8301565 ], E [0.24009515], E [0.8301565 ], E [0.8301565 ], E [0.3902647 ], E [0.3902647 ], E [0.8301565 ], E [0.7423834 ], E [0.09040972], E [0.8301565 ], E [0.3902647 ], E [0.58742005], E [0.9029359 ], E [0.3902647 ], E [0.7423834 ], E [0.24009515], E [0.58742005], E [0.58742005], E [0.58742005], E [0.7598254 ], E [0.3902647 ]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[98.], E [ 1.], E [66.], E [49.], E [70.], E [32.], E [66.], E [ 1.], E [76.], E [77.], E [98.], E [98.], E [98.], E [98.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [66.], E [66.], E [66.], E [66.], E [66.], E [49.], E [49.], E [49.], E [49.], E [70.], E [70.], E [70.], E [70.], E [70.], E [32.], E [32.], E [32.], E [32.], E [32.], E [66.], E [66.], E [66.], E [66.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [76.], E [76.], E [76.], E [76.], E [77.], E [77.], E [77.], E [77.], E [77.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.03531459, 0.01980046, 0.01169731, ..., 0.04916441, E -0.01930056, 0.01097006], E [ 0.06857657, 0.08909895, -0.01473977, ..., -0.07292735, E -0.0733112 , 0.05403838], E [-0.0452647 , -0.0059931 , 0.07863013, ..., 0.00763688, E -0.03596961, 0.02165018], E ..., E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[ 3.], E [14.], E [ 6.], E [ 7.], E [ 1.], E [ 5.], E [ 9.], E [ 2.], E [ 3.], E [ 4.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [14.], E [14.], E [14.], E [14.], E [14.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 7.], E [ 7.], E [ 7.], E [ 7.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 9.], E [ 9.], E [ 9.], E [ 9.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [ 4.], E [ 4.], E [ 4.], E [ 4.], E [ 4.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.07212272, -0.01157783, 0.07209906, ..., 0.03590322, E -0.011289 , -0.0756909 ], E [-0.04057395, 0.05453134, 0.03549607, ..., 0.03770151, E -0.03485281, -0.03873537], E [ 0.03554836, 0.01588674, -0.07569668, ..., 0.07916976, E -0.02698494, -0.07710274], E ..., E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.00450242, 0.03289668, -0.07712229, ..., -0.07252846, E 0.00708481, -0.05114901], E [ 0.06754325, 0.00106715, -0.02400186, ..., 0.06388736, E -0.0527336 , -0.05356371], E [ 0.01282731, -0.05452716, -0.0341559 , ..., -0.0573374 , E -0.02303316, -0.03417253], E ..., E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.], E [1.], E [1.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[1.], E [0.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.5582866 ], E [0.39492014], E [0.5065822 ], E [0.19596702], E [0.1567516 ], E [0.754517 ], E [0.32997322], E [0.6441957 ], E [0.5654556 ], E [0.8995309 ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ]], dtype=float32)>] E
E Call arguments received by layer "private__dense" (type _Dense): E • inputs=({'item_recency': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'user_age': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'position': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'item_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'session_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_category': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'country': 'tf.Tensor(shape=(56, 64), dtype=float32)'}, {'click': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'like': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'play_percentage': 'tf.Tensor(shape=(56, 1), dtype=float32)'}) E • kwargs={'training': 'True', 'features': {'item_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'user_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'session_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_category': 'tf.Tensor(shape=(10,), dtype=int64)', 'user_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'country': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_recency': 'tf.Tensor(shape=(10,), dtype=float32)', 'user_age': 'tf.Tensor(shape=(10,), dtype=float32)', 'position': 'tf.Tensor(shape=(10,), dtype=float32)'}, 'testing': 'False', 'mask': ('None',), 'targets': {'click': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'like': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'play_percentage': 'tf.Tensor(shape=(10, 1), dtype=float64)'}}

/usr/local/lib/python3.8/dist-packages/keras/engine/input_spec.py:200: ValueError ______________ TestAddRandomNegativesToBatch.test_in_model[False] ______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7ff3c0242a00> run_eagerly = False music_streaming_data = <merlin.io.dataset.Dataset object at 0x7ff335783ca0> tf_random_seed = 1

@pytest.mark.parametrize("run_eagerly", [True, False])
def test_in_model(self, run_eagerly, music_streaming_data: Dataset, tf_random_seed: int):
    dataset = music_streaming_data
    schema = dataset.schema

    sampling = mm.Cond(
        ExampleIsTraining(),
        UniformNegativeSampling(schema, 5, seed=tf_random_seed),
        ExamplePredictionIdentity(),
    )
    model = mm.Model(
        mm.InputBlock(schema),
        sampling,
        mm.MLPBlock([64]),
        mm.BinaryClassificationTask("click"),
    )

    batch_size = 10
    features, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, to_dense=True
    )
  with_negatives = model(features, targets=targets, training=True)

tests/unit/tf/data_augmentation/test_negative_sampling.py:200:


/usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/training.py:490: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/models/base.py:920: in call outputs, context = self._call_child(block, outputs, context) merlin/models/tf/models/base.py:949: in _call_child outputs = call_layer(child, inputs, **call_kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) merlin/models/config/schema.py:58: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/core/combinators.py:283: in call outputs = call_layer(layer, outputs, training=training, **kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:146: in error_handler raise new_e.with_traceback(e.traceback) from None /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/blocks/mlp.py:225: in call return self.dense(inputs, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:988: in call input_spec.assert_input_compatibility(self.input_spec, inputs, self.name)


input_spec = [InputSpec(min_ndim=2)] inputs = [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, ... [76.], [76.], [77.], [77.], [77.], [77.], [77.]], dtype=float32)>, ...] layer_name = 'dense'

def assert_input_compatibility(input_spec, inputs, layer_name):
  """Checks compatibility between the layer and provided inputs.

  This checks that the tensor(s) `inputs` verify the input assumptions
  of a layer (if any). If not, a clear and actional exception gets raised.

  Args:
      input_spec: An InputSpec instance, list of InputSpec instances, a nested
          structure of InputSpec instances, or None.
      inputs: Input tensor, list of input tensors, or a nested structure of
          input tensors.
      layer_name: String, name of the layer (for error message formatting).

  Raises:
      ValueError: in case of mismatch between
          the provided inputs and the expectations of the layer.
  """
  if not input_spec:
    return

  input_spec = tf.nest.flatten(input_spec)
  if isinstance(inputs, dict):
    # Flatten `inputs` by reference order if input spec names are provided
    names = [spec.name for spec in input_spec]
    if all(names):
      list_inputs = []
      for name in names:
        if name not in inputs:
          raise ValueError(f'Missing data for input "{name}". '
                           'You passed a data dictionary with keys '
                           f'{list(inputs.keys())}. '
                           f'Expected the following keys: {names}')
        list_inputs.append(inputs[name])
      inputs = list_inputs

  inputs = tf.nest.flatten(inputs)
  for x in inputs:
    # Having a shape/dtype is the only commonality of the various tensor-like
    # objects that may be passed. The most common kind of invalid type we are
    # guarding for is a Layer instance (Functional API), which does not
    # have a `shape` attribute.
    if not hasattr(x, 'shape'):
      raise TypeError(f'Inputs to a layer should be tensors. Got: {x}')

  if len(inputs) != len(input_spec):
  raise ValueError(f'Layer "{layer_name}" expects {len(input_spec)} input(s),'
                     f' but it received {len(inputs)} input tensors. '
                     f'Inputs received: {inputs}')

E ValueError: Exception encountered when calling layer "private__dense" (type _Dense). E
E Layer "dense" expects 1 input(s), but it received 13 input tensors. Inputs received: [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, E 0.03482969, 0.07279999], E [-0.08623078, 0.09075823, 0.09004455, ..., 0.04702003, E -0.0338754 , 0.01674279], E [-0.05367033, -0.03708271, 0.09750845, ..., 0.01826058, E -0.01067774, 0.00353228], E ..., E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E [-0.05982495, 0.00941494, -0.0170866 , ..., 0.04046999, E -0.03917206, 0.02214545], E [-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E ..., E [-0.09613073, 0.00574432, -0.06272529, ..., -0.07596413, E -0.05235805, -0.07114938], E [ 0.03497816, 0.00258678, -0.02060063, ..., 0.01023176, E 0.05178693, 0.03078843], E [ 0.05752415, 0.015951 , 0.03335749, ..., 0.01102087, E 0.06480642, -0.01859571]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00077411, -0.04272131, 0.01362878, ..., -0.03421735, E -0.05499429, 0.07281819], E [-0.04494919, 0.00994679, -0.01409337, ..., 0.03038313, E -0.04779383, 0.02539765], E [-0.03843401, -0.04797446, -0.04346054, ..., -0.02784302, E 0.07427114, -0.06158229], E ..., E [ 0.08430401, -0.01791586, -0.01037587, ..., -0.01420283, E -0.06870842, 0.00973347], E [ 0.04738706, 0.00152453, -0.05083135, ..., -0.00338309, E 0.00188581, -0.05811936], E [-0.0038055 , -0.01493907, 0.02549406, ..., 0.02831712, E -0.02204459, -0.07184417]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00144552, 0.08053493, -0.05433185, ..., -0.04803555, E 0.00784254, 0.00134 ], E [-0.00780611, -0.02837084, -0.02829281, ..., 0.04710324, E -0.00875665, 0.00205226], E [ 0.07223409, -0.05060465, 0.0073901 , ..., 0.04512937, E -0.04797626, -0.01801917], E ..., E [ 0.03935708, 0.02653011, 0.00449451, ..., -0.04035959, E -0.06153113, 0.06843522], E [-0.04556208, -0.03516526, -0.01127513, ..., 0.06403926, E -0.03676584, -0.0140518 ], E [ 0.03712238, 0.01801471, -0.06914667, ..., -0.0608288 , E -0.01426386, -0.01721318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.8301565 ], E [0.24009515], E [0.63162076], E [0.71073955], E [0.7423834 ], E [0.3902647 ], E [0.7598254 ], E [0.9029359 ], E [0.58742005], E [0.09040972], E [0.58742005], E [0.9029359 ], E [0.63162076], E [0.24009515], E [0.63162076], E [0.7598254 ], E [0.3902647 ], E [0.9029359 ], E [0.63162076], E [0.9029359 ], E [0.09040972], E [0.7598254 ], E [0.3902647 ], E [0.09040972], E [0.58742005], E [0.58742005], E [0.3902647 ], E [0.7423834 ], E [0.3902647 ], E [0.71073955], E [0.63162076], E [0.8301565 ], E [0.7598254 ], E [0.58742005], E [0.09040972], E [0.8301565 ], E [0.24009515], E [0.8301565 ], E [0.8301565 ], E [0.3902647 ], E [0.3902647 ], E [0.8301565 ], E [0.7423834 ], E [0.09040972], E [0.8301565 ], E [0.3902647 ], E [0.58742005], E [0.9029359 ], E [0.3902647 ], E [0.7423834 ], E [0.24009515], E [0.58742005], E [0.58742005], E [0.58742005], E [0.7598254 ], E [0.3902647 ]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[98.], E [ 1.], E [66.], E [49.], E [70.], E [32.], E [66.], E [ 1.], E [76.], E [77.], E [98.], E [98.], E [98.], E [98.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [66.], E [66.], E [66.], E [66.], E [66.], E [49.], E [49.], E [49.], E [49.], E [70.], E [70.], E [70.], E [70.], E [70.], E [32.], E [32.], E [32.], E [32.], E [32.], E [66.], E [66.], E [66.], E [66.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [76.], E [76.], E [76.], E [76.], E [77.], E [77.], E [77.], E [77.], E [77.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.03531459, 0.01980046, 0.01169731, ..., 0.04916441, E -0.01930056, 0.01097006], E [ 0.06857657, 0.08909895, -0.01473977, ..., -0.07292735, E -0.0733112 , 0.05403838], E [-0.0452647 , -0.0059931 , 0.07863013, ..., 0.00763688, E -0.03596961, 0.02165018], E ..., E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[ 3.], E [14.], E [ 6.], E [ 7.], E [ 1.], E [ 5.], E [ 9.], E [ 2.], E [ 3.], E [ 4.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [14.], E [14.], E [14.], E [14.], E [14.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 7.], E [ 7.], E [ 7.], E [ 7.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 9.], E [ 9.], E [ 9.], E [ 9.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [ 4.], E [ 4.], E [ 4.], E [ 4.], E [ 4.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.07212272, -0.01157783, 0.07209906, ..., 0.03590322, E -0.011289 , -0.0756909 ], E [-0.04057395, 0.05453134, 0.03549607, ..., 0.03770151, E -0.03485281, -0.03873537], E [ 0.03554836, 0.01588674, -0.07569668, ..., 0.07916976, E -0.02698494, -0.07710274], E ..., E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.00450242, 0.03289668, -0.07712229, ..., -0.07252846, E 0.00708481, -0.05114901], E [ 0.06754325, 0.00106715, -0.02400186, ..., 0.06388736, E -0.0527336 , -0.05356371], E [ 0.01282731, -0.05452716, -0.0341559 , ..., -0.0573374 , E -0.02303316, -0.03417253], E ..., E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.], E [1.], E [1.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[1.], E [0.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.5582866 ], E [0.39492014], E [0.5065822 ], E [0.19596702], E [0.1567516 ], E [0.754517 ], E [0.32997322], E [0.6441957 ], E [0.5654556 ], E [0.8995309 ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ]], dtype=float32)>] E
E Call arguments received by layer "private__dense" (type _Dense): E • inputs=({'item_recency': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'user_age': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'position': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'item_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'session_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_category': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'country': 'tf.Tensor(shape=(56, 64), dtype=float32)'}, {'click': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'like': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'play_percentage': 'tf.Tensor(shape=(56, 1), dtype=float32)'}) E • kwargs={'training': 'True', 'features': {'item_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'user_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'session_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_category': 'tf.Tensor(shape=(10,), dtype=int64)', 'user_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'country': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_recency': 'tf.Tensor(shape=(10,), dtype=float32)', 'user_age': 'tf.Tensor(shape=(10,), dtype=float32)', 'position': 'tf.Tensor(shape=(10,), dtype=float32)'}, 'testing': 'False', 'mask': ('None',), 'targets': {'click': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'like': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'play_percentage': 'tf.Tensor(shape=(10, 1), dtype=float64)'}}

/usr/local/lib/python3.8/dist-packages/keras/engine/input_spec.py:200: ValueError =============================== warnings summary =============================== ../../../../../usr/lib/python3/dist-packages/requests/init.py:89 /usr/lib/python3/dist-packages/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.11) or chardet (3.0.4) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36: DeprecationWarning: NEAREST is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.NEAREST or Dither.NONE instead. 'nearest': pil_image.NEAREST,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37: DeprecationWarning: BILINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead. 'bilinear': pil_image.BILINEAR,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38: DeprecationWarning: BICUBIC is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BICUBIC instead. 'bicubic': pil_image.BICUBIC,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39: DeprecationWarning: HAMMING is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.HAMMING instead. 'hamming': pil_image.HAMMING,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40: DeprecationWarning: BOX is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BOX instead. 'box': pil_image.BOX,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41: DeprecationWarning: LANCZOS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead. 'lanczos': pil_image.LANCZOS,

tests/unit/datasets/test_ecommerce.py::test_synthetic_aliccp_raw_data tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-8] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-8] tests/unit/tf/test_dataset.py::test_tf_catname_ordering tests/unit/tf/test_dataset.py::test_tf_map /usr/local/lib/python3.8/dist-packages/cudf/core/frame.py:384: UserWarning: The deep parameter is ignored and is only included for pandas compatibility. warnings.warn(

tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/inputs/test_embedding.py::test_embedding_features_exporting_and_loading_pretrained_initializer /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/inputs/embedding.py:807: DeprecationWarning: This function is deprecated in favor of cupy.from_dlpack embeddings_cupy = cupy.fromDlpack(to_dlpack(tf.convert_to_tensor(embeddings)))

tests/unit/tf/core/test_index.py: 4 warnings tests/unit/tf/models/test_retrieval.py: 54 warnings tests/unit/tf/prediction_tasks/test_next_item.py: 3 warnings tests/unit/tf/predictions/test_classification.py: 12 warnings tests/unit/tf/predictions/test_dot_product.py: 2 warnings tests/unit/tf/utils/test_batch.py: 2 warnings /tmp/autograph_generated_file_uz96vt2.py:8: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead ag.converted_call(ag__.ld(warnings).warn, ("The 'warn' method is deprecated, use 'warning' instead", ag__.ld(DeprecationWarning), 2), None, fscope)

tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.1] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.3] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.5] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.7] tests/unit/tf/models/test_base.py::test_model_pre_post[True] tests/unit/tf/models/test_base.py::test_model_pre_post[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/util/dispatch.py:1082: UserWarning: tf.keras.backend.random_binomial is deprecated, and will be removed in a future version.Please use tf.keras.backend.random_bernoulli instead. return dispatch_target(*args, **kwargs)

tests/unit/tf/models/test_base.py::test_freeze_parallel_block[True] tests/unit/tf/models/test_base.py::test_freeze_sequential_block tests/unit/tf/models/test_base.py::test_freeze_unfreeze tests/unit/tf/models/test_base.py::test_unfreeze_all_blocks /usr/local/lib/python3.8/dist-packages/keras/optimizers/optimizer_v2/gradient_descent.py:108: UserWarning: The lr argument is deprecated, use learning_rate instead. super(SGD, self).init(name, **kwargs)

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[True] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/core/transformations.py:939: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py:371: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag return py_builtins.overload_of(f)(*args)

tests/unit/torch/block/test_mlp.py::test_mlp_block /var/jenkins_home/workspace/merlin_models/models/tests/unit/torch/_conftest.py:151: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at ../torch/csrc/utils/tensor_new.cpp:201.) return {key: torch.tensor(value) for key, value in data.items()}

tests/unit/xgb/test_xgboost.py::test_without_dask_client tests/unit/xgb/test_xgboost.py::TestXGBoost::test_music_regression tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs0-DaskDeviceQuantileDMatrix] tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs1-DaskDMatrix] tests/unit/xgb/test_xgboost.py::TestEvals::test_multiple tests/unit/xgb/test_xgboost.py::TestEvals::test_default tests/unit/xgb/test_xgboost.py::TestEvals::test_train_and_valid tests/unit/xgb/test_xgboost.py::TestEvals::test_invalid_data /var/jenkins_home/workspace/merlin_models/models/merlin/models/xgb/init.py:335: UserWarning: Ignoring list columns as inputs to XGBoost model: ['item_genres', 'user_genres']. warnings.warn(f"Ignoring list columns as inputs to XGBoost model: {list_column_names}.")

tests/unit/xgb/test_xgboost.py::TestXGBoost::test_unsupported_objective /usr/local/lib/python3.8/dist-packages/tornado/ioloop.py:350: DeprecationWarning: make_current is deprecated; start the event loop first self.make_current()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] tests/unit/datasets/test_advertising.py:20: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [1] tests/unit/datasets/test_ecommerce.py:62: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:78: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:92: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [3] tests/unit/datasets/test_entertainment.py:44: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [4] ../../../../../usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/test_util.py:2746: Not a test. ===== 5 failed, 655 passed, 11 skipped, 121 warnings in 911.14s (0:15:11) ====== Build step 'Execute shell' marked build as failure Performing Post build task... Match found for : : True Logical operation result is TRUE Running script : #!/bin/bash cd /var/jenkins_home/ CUDA_VISIBLE_DEVICES=1 python test_res_push.py "https://api.GitHub.com/repos/NVIDIA-Merlin/models/issues/$ghprbPullId/comments" "/var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log" [merlin_models] $ /bin/bash /tmp/jenkins4690607371384520546.sh

nvidia-merlin-bot avatar Aug 26 '22 15:08 nvidia-merlin-bot

Click to view CI Results
GitHub pull request #685 of commit e121262c80cad4ff202d411df7b74012d6ab931e, no merge conflicts.
Running as SYSTEM
Setting status of e121262c80cad4ff202d411df7b74012d6ab931e to PENDING with url https://10.20.13.93:8080/job/merlin_models/1082/console and message: 'Pending'
Using context: Jenkins
Building on master in workspace /var/jenkins_home/workspace/merlin_models
using credential nvidia-merlin-bot
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/NVIDIA-Merlin/models/ # timeout=10
Fetching upstream changes from https://github.com/NVIDIA-Merlin/models/
 > git --version # timeout=10
using GIT_ASKPASS to set credentials This is the bot credentials for our CI/CD
 > git fetch --tags --force --progress -- https://github.com/NVIDIA-Merlin/models/ +refs/pull/685/*:refs/remotes/origin/pr/685/* # timeout=10
 > git rev-parse e121262c80cad4ff202d411df7b74012d6ab931e^{commit} # timeout=10
Checking out Revision e121262c80cad4ff202d411df7b74012d6ab931e (detached)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f e121262c80cad4ff202d411df7b74012d6ab931e # timeout=10
Commit message: "Merge branch 'main' into in-batch-negative-sampling-with-dataloader"
 > git rev-list --no-walk d1ed6c1189925c6d255b9d1d8d934b7163e6b313 # timeout=10
[merlin_models] $ /bin/bash /tmp/jenkins14927340414270799958.sh
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Requirement already satisfied: testbook in /usr/local/lib/python3.8/dist-packages (0.4.2)
Requirement already satisfied: nbformat>=5.0.4 in /usr/local/lib/python3.8/dist-packages (from testbook) (5.4.0)
Requirement already satisfied: nbclient>=0.4.0 in /usr/local/lib/python3.8/dist-packages (from testbook) (0.6.6)
Requirement already satisfied: traitlets>=5.1 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (5.3.0)
Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.9.1)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.11.1)
Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (2.16.1)
Requirement already satisfied: jupyter-client>=6.1.5 in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (7.3.4)
Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (1.5.5)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (22.1.0)
Requirement already satisfied: importlib-resources>=1.4.0; python_version =2.6->nbformat>=5.0.4->testbook) (5.9.0)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10; python_version =2.6->nbformat>=5.0.4->testbook) (1.3.10)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (0.18.1)
Requirement already satisfied: entrypoints in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (0.4)
Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (2.8.2)
Requirement already satisfied: pyzmq>=23.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (23.2.1)
Requirement already satisfied: tornado>=6.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (6.2)
Requirement already satisfied: zipp>=3.1.0; python_version =1.4.0; python_version jsonschema>=2.6->nbformat>=5.0.4->testbook) (3.8.1)
Requirement already satisfied: six>=1.5 in /var/jenkins_home/.local/lib/python3.8/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (1.15.0)
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.2, pluggy-1.0.0
rootdir: /var/jenkins_home/workspace/merlin_models/models, configfile: pyproject.toml
plugins: anyio-3.6.1, xdist-2.5.0, forked-1.4.0, cov-3.0.0
collected 673 items

tests/unit/config/test_schema.py .... [ 0%] tests/unit/datasets/test_advertising.py .s [ 0%] tests/unit/datasets/test_ecommerce.py ..sss [ 1%] tests/unit/datasets/test_entertainment.py ....sss. [ 2%] tests/unit/datasets/test_social.py . [ 2%] tests/unit/datasets/test_synthetic.py ...... [ 3%] tests/unit/implicit/test_implicit.py . [ 4%] tests/unit/lightfm/test_lightfm.py . [ 4%] tests/unit/tf/test_core.py ...... [ 5%] tests/unit/tf/test_dataset.py ................ [ 7%] tests/unit/tf/test_public_api.py . [ 7%] tests/unit/tf/blocks/test_cross.py ........... [ 9%] tests/unit/tf/blocks/test_dlrm.py .......... [ 10%] tests/unit/tf/blocks/test_interactions.py . [ 10%] tests/unit/tf/blocks/test_mlp.py ................................. [ 15%] tests/unit/tf/blocks/test_optimizer.py s................................ [ 20%] ..................... [ 23%] tests/unit/tf/blocks/retrieval/test_base.py . [ 23%] tests/unit/tf/blocks/retrieval/test_matrix_factorization.py .. [ 24%] tests/unit/tf/blocks/retrieval/test_two_tower.py ........... [ 25%] tests/unit/tf/blocks/sampling/test_cross_batch.py . [ 26%] tests/unit/tf/blocks/sampling/test_in_batch.py . [ 26%] tests/unit/tf/core/test_aggregation.py ......... [ 27%] tests/unit/tf/core/test_base.py .. [ 27%] tests/unit/tf/core/test_combinators.py s................... [ 30%] tests/unit/tf/core/test_index.py ... [ 31%] tests/unit/tf/core/test_prediction.py .. [ 31%] tests/unit/tf/core/test_tabular.py .... [ 32%] tests/unit/tf/core/test_transformations.py s............................ [ 36%] .................. [ 39%] tests/unit/tf/data_augmentation/test_misc.py . [ 39%] tests/unit/tf/data_augmentation/test_negative_sampling.py F..FF..FF. [ 40%] tests/unit/tf/data_augmentation/test_noise.py ..... [ 41%] tests/unit/tf/examples/test_01_getting_started.py . [ 41%] tests/unit/tf/examples/test_02_dataschema.py . [ 41%] tests/unit/tf/examples/test_03_exploring_different_models.py . [ 41%] tests/unit/tf/examples/test_04_export_ranking_models.py . [ 42%] tests/unit/tf/examples/test_05_export_retrieval_model.py . [ 42%] tests/unit/tf/examples/test_06_advanced_own_architecture.py . [ 42%] tests/unit/tf/examples/test_07_train_traditional_models.py . [ 42%] tests/unit/tf/examples/test_usecase_ecommerce_session_based.py . [ 42%] tests/unit/tf/examples/test_usecase_pretrained_embeddings.py . [ 42%] tests/unit/tf/inputs/test_continuous.py ..... [ 43%] tests/unit/tf/inputs/test_embedding.py ................................. [ 48%] .. [ 48%] tests/unit/tf/inputs/test_tabular.py .................. [ 51%] tests/unit/tf/layers/test_queue.py .............. [ 53%] tests/unit/tf/losses/test_losses.py ....................... [ 56%] tests/unit/tf/metrics/test_metrics_popularity.py ..... [ 57%] tests/unit/tf/metrics/test_metrics_topk.py ....................... [ 61%] tests/unit/tf/models/test_base.py s................. [ 63%] tests/unit/tf/models/test_benchmark.py .. [ 64%] tests/unit/tf/models/test_ranking.py ........................ [ 67%] tests/unit/tf/models/test_retrieval.py ................................ [ 72%] tests/unit/tf/prediction_tasks/test_classification.py .. [ 72%] tests/unit/tf/prediction_tasks/test_multi_task.py ................ [ 75%] tests/unit/tf/prediction_tasks/test_next_item.py ..... [ 75%] tests/unit/tf/prediction_tasks/test_regression.py .. [ 76%] tests/unit/tf/prediction_tasks/test_retrieval.py . [ 76%] tests/unit/tf/prediction_tasks/test_sampling.py ...... [ 77%] tests/unit/tf/predictions/test_base.py ..... [ 77%] tests/unit/tf/predictions/test_classification.py ....... [ 78%] tests/unit/tf/predictions/test_dot_product.py ........ [ 80%] tests/unit/tf/predictions/test_regression.py .. [ 80%] tests/unit/tf/predictions/test_sampling.py .... [ 80%] tests/unit/tf/utils/test_batch.py .... [ 81%] tests/unit/tf/utils/test_tf_utils.py ..... [ 82%] tests/unit/torch/test_dataset.py ......... [ 83%] tests/unit/torch/test_public_api.py . [ 83%] tests/unit/torch/block/test_base.py .... [ 84%] tests/unit/torch/block/test_mlp.py . [ 84%] tests/unit/torch/features/test_continuous.py .. [ 84%] tests/unit/torch/features/test_embedding.py .............. [ 86%] tests/unit/torch/features/test_tabular.py .... [ 87%] tests/unit/torch/model/test_head.py ............ [ 89%] tests/unit/torch/model/test_model.py .. [ 89%] tests/unit/torch/tabular/test_aggregation.py ........ [ 90%] tests/unit/torch/tabular/test_tabular.py ... [ 91%] tests/unit/torch/tabular/test_transformations.py ....... [ 92%] tests/unit/utils/test_schema_utils.py ................................ [ 97%] tests/unit/xgb/test_xgboost.py .................... [100%]

=================================== FAILURES =================================== ________________ TestAddRandomNegativesToBatch.test_dataloader _________________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7f3bec54f100>

def test_dataloader(self):
    schema = Schema(
        [
            ColumnSchema(
                "item_id", tags=[Tags.ITEM, Tags.ITEM_ID, Tags.CATEGORICAL], dtype="int64"
            ),
            ColumnSchema("item_feature", tags=[Tags.ITEM, Tags.CATEGORICAL]),
            ColumnSchema(
                "user_id", tags=[Tags.USER, Tags.USER_ID, Tags.CATEGORICAL], dtype="int64"
            ),
            ColumnSchema("user_feature", tags=[Tags.USER, Tags.CATEGORICAL]),
            ColumnSchema("label", tags=[Tags.TARGET]),
        ]
    )
    n_per_positive = 5
    sampler = UniformNegativeSampling(schema, n_per_positive)

    input_df = pd.DataFrame(
        [
            {"user_id": 1, "item_id": 1, "item_feature": 2, "user_feature": 10, "label": 1},
            {"user_id": 2, "item_id": 3, "item_feature": 6, "user_feature": 5, "label": 1},
        ]
    )
    input_df = input_df[sorted(input_df.columns)]
    dataset = Dataset(input_df, schema=schema)
    batched_dataset = BatchedDataset(dataset, batch_size=10)
    batched_dataset = batched_dataset.map(sampler)
    first_batch_outputs = next(iter(batched_dataset))
  outputs = first_batch_outputs.outputs

E AttributeError: 'tuple' object has no attribute 'outputs'

tests/unit/tf/data_augmentation/test_negative_sampling.py:75: AttributeError _______________ TestAddRandomNegativesToBatch.test_calling[True] _______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7f3bec4dffa0> music_streaming_data = <merlin.io.dataset.Dataset object at 0x7f3b5e8c0be0> to_dense = True, tf_random_seed = 1

@pytest.mark.parametrize("to_dense", [True, False])
def test_calling(self, music_streaming_data: Dataset, to_dense: bool, tf_random_seed: int):
    schema = music_streaming_data.schema
    batch_size, n_per_positive = 10, 5
    inputs, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, include_targets=True, to_dense=to_dense
    )

    sampler = UniformNegativeSampling(schema, 5, seed=tf_random_seed)

    with_negatives = sampler(inputs, targets=targets)
  outputs = with_negatives.outputs

E AttributeError: 'tuple' object has no attribute 'outputs'

tests/unit/tf/data_augmentation/test_negative_sampling.py:137: AttributeError ______________ TestAddRandomNegativesToBatch.test_calling[False] _______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7f3bec4e90a0> music_streaming_data = <merlin.io.dataset.Dataset object at 0x7f3b65107ac0> to_dense = False, tf_random_seed = 1

@pytest.mark.parametrize("to_dense", [True, False])
def test_calling(self, music_streaming_data: Dataset, to_dense: bool, tf_random_seed: int):
    schema = music_streaming_data.schema
    batch_size, n_per_positive = 10, 5
    inputs, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, include_targets=True, to_dense=to_dense
    )

    sampler = UniformNegativeSampling(schema, 5, seed=tf_random_seed)

    with_negatives = sampler(inputs, targets=targets)
  outputs = with_negatives.outputs

E AttributeError: 'tuple' object has no attribute 'outputs'

tests/unit/tf/data_augmentation/test_negative_sampling.py:137: AttributeError ----------------------------- Captured stderr call ----------------------------- WARNING:tensorflow:5 out of the last 5 calls to <function UniformNegativeSampling.call at 0x7f3b65a545e0> triggered tf.function retracing. Tracing is expensive and the excessive number of tracings could be due to (1) creating @tf.function repeatedly in a loop, (2) passing tensors with different shapes, (3) passing Python objects instead of tensors. For (1), please define your @tf.function outside of the loop. For (2), @tf.function has reduce_retracing=True option that can avoid unnecessary retracing. For (3), please refer to https://www.tensorflow.org/guide/function#controlling_retracing and https://www.tensorflow.org/api_docs/python/tf/function for more details. ------------------------------ Captured log call ------------------------------- WARNING tensorflow:def_function.py:148 5 out of the last 5 calls to <function UniformNegativeSampling.call at 0x7f3b65a545e0> triggered tf.function retracing. Tracing is expensive and the excessive number of tracings could be due to (1) creating @tf.function repeatedly in a loop, (2) passing tensors with different shapes, (3) passing Python objects instead of tensors. For (1), please define your @tf.function outside of the loop. For (2), @tf.function has reduce_retracing=True option that can avoid unnecessary retracing. For (3), please refer to https://www.tensorflow.org/guide/function#controlling_retracing and https://www.tensorflow.org/api_docs/python/tf/function for more details. ______________ TestAddRandomNegativesToBatch.test_in_model[True] _______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7f3bec4e94f0> run_eagerly = True music_streaming_data = <merlin.io.dataset.Dataset object at 0x7f3b5e01b070> tf_random_seed = 1

@pytest.mark.parametrize("run_eagerly", [True, False])
def test_in_model(self, run_eagerly, music_streaming_data: Dataset, tf_random_seed: int):
    dataset = music_streaming_data
    schema = dataset.schema

    sampling = mm.Cond(
        ExampleIsTraining(),
        UniformNegativeSampling(schema, 5, seed=tf_random_seed),
        ExamplePredictionIdentity(),
    )
    model = mm.Model(
        mm.InputBlock(schema),
        sampling,
        mm.MLPBlock([64]),
        mm.BinaryClassificationTask("click"),
    )

    batch_size = 10
    features, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, to_dense=True
    )
  with_negatives = model(features, targets=targets, training=True)

tests/unit/tf/data_augmentation/test_negative_sampling.py:200:


/usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/training.py:490: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/models/base.py:920: in call outputs, context = self._call_child(block, outputs, context) merlin/models/tf/models/base.py:949: in _call_child outputs = call_layer(child, inputs, **call_kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) merlin/models/config/schema.py:58: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/core/combinators.py:283: in call outputs = call_layer(layer, outputs, training=training, **kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:146: in error_handler raise new_e.with_traceback(e.traceback) from None /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/blocks/mlp.py:225: in call return self.dense(inputs, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:988: in call input_spec.assert_input_compatibility(self.input_spec, inputs, self.name)


input_spec = [InputSpec(min_ndim=2)] inputs = [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, ... [76.], [76.], [77.], [77.], [77.], [77.], [77.]], dtype=float32)>, ...] layer_name = 'dense'

def assert_input_compatibility(input_spec, inputs, layer_name):
  """Checks compatibility between the layer and provided inputs.

  This checks that the tensor(s) `inputs` verify the input assumptions
  of a layer (if any). If not, a clear and actional exception gets raised.

  Args:
      input_spec: An InputSpec instance, list of InputSpec instances, a nested
          structure of InputSpec instances, or None.
      inputs: Input tensor, list of input tensors, or a nested structure of
          input tensors.
      layer_name: String, name of the layer (for error message formatting).

  Raises:
      ValueError: in case of mismatch between
          the provided inputs and the expectations of the layer.
  """
  if not input_spec:
    return

  input_spec = tf.nest.flatten(input_spec)
  if isinstance(inputs, dict):
    # Flatten `inputs` by reference order if input spec names are provided
    names = [spec.name for spec in input_spec]
    if all(names):
      list_inputs = []
      for name in names:
        if name not in inputs:
          raise ValueError(f'Missing data for input "{name}". '
                           'You passed a data dictionary with keys '
                           f'{list(inputs.keys())}. '
                           f'Expected the following keys: {names}')
        list_inputs.append(inputs[name])
      inputs = list_inputs

  inputs = tf.nest.flatten(inputs)
  for x in inputs:
    # Having a shape/dtype is the only commonality of the various tensor-like
    # objects that may be passed. The most common kind of invalid type we are
    # guarding for is a Layer instance (Functional API), which does not
    # have a `shape` attribute.
    if not hasattr(x, 'shape'):
      raise TypeError(f'Inputs to a layer should be tensors. Got: {x}')

  if len(inputs) != len(input_spec):
  raise ValueError(f'Layer "{layer_name}" expects {len(input_spec)} input(s),'
                     f' but it received {len(inputs)} input tensors. '
                     f'Inputs received: {inputs}')

E ValueError: Exception encountered when calling layer "private__dense" (type _Dense). E
E Layer "dense" expects 1 input(s), but it received 13 input tensors. Inputs received: [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, E 0.03482969, 0.07279999], E [-0.08623078, 0.09075823, 0.09004455, ..., 0.04702003, E -0.0338754 , 0.01674279], E [-0.05367033, -0.03708271, 0.09750845, ..., 0.01826058, E -0.01067774, 0.00353228], E ..., E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E [-0.05982495, 0.00941494, -0.0170866 , ..., 0.04046999, E -0.03917206, 0.02214545], E [-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E ..., E [-0.09613073, 0.00574432, -0.06272529, ..., -0.07596413, E -0.05235805, -0.07114938], E [ 0.03497816, 0.00258678, -0.02060063, ..., 0.01023176, E 0.05178693, 0.03078843], E [ 0.05752415, 0.015951 , 0.03335749, ..., 0.01102087, E 0.06480642, -0.01859571]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00077411, -0.04272131, 0.01362878, ..., -0.03421735, E -0.05499429, 0.07281819], E [-0.04494919, 0.00994679, -0.01409337, ..., 0.03038313, E -0.04779383, 0.02539765], E [-0.03843401, -0.04797446, -0.04346054, ..., -0.02784302, E 0.07427114, -0.06158229], E ..., E [ 0.08430401, -0.01791586, -0.01037587, ..., -0.01420283, E -0.06870842, 0.00973347], E [ 0.04738706, 0.00152453, -0.05083135, ..., -0.00338309, E 0.00188581, -0.05811936], E [-0.0038055 , -0.01493907, 0.02549406, ..., 0.02831712, E -0.02204459, -0.07184417]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00144552, 0.08053493, -0.05433185, ..., -0.04803555, E 0.00784254, 0.00134 ], E [-0.00780611, -0.02837084, -0.02829281, ..., 0.04710324, E -0.00875665, 0.00205226], E [ 0.07223409, -0.05060465, 0.0073901 , ..., 0.04512937, E -0.04797626, -0.01801917], E ..., E [ 0.03935708, 0.02653011, 0.00449451, ..., -0.04035959, E -0.06153113, 0.06843522], E [-0.04556208, -0.03516526, -0.01127513, ..., 0.06403926, E -0.03676584, -0.0140518 ], E [ 0.03712238, 0.01801471, -0.06914667, ..., -0.0608288 , E -0.01426386, -0.01721318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.8301565 ], E [0.24009515], E [0.63162076], E [0.71073955], E [0.7423834 ], E [0.3902647 ], E [0.7598254 ], E [0.9029359 ], E [0.58742005], E [0.09040972], E [0.58742005], E [0.9029359 ], E [0.63162076], E [0.24009515], E [0.63162076], E [0.7598254 ], E [0.3902647 ], E [0.9029359 ], E [0.63162076], E [0.9029359 ], E [0.09040972], E [0.7598254 ], E [0.3902647 ], E [0.09040972], E [0.58742005], E [0.58742005], E [0.3902647 ], E [0.7423834 ], E [0.3902647 ], E [0.71073955], E [0.63162076], E [0.8301565 ], E [0.7598254 ], E [0.58742005], E [0.09040972], E [0.8301565 ], E [0.24009515], E [0.8301565 ], E [0.8301565 ], E [0.3902647 ], E [0.3902647 ], E [0.8301565 ], E [0.7423834 ], E [0.09040972], E [0.8301565 ], E [0.3902647 ], E [0.58742005], E [0.9029359 ], E [0.3902647 ], E [0.7423834 ], E [0.24009515], E [0.58742005], E [0.58742005], E [0.58742005], E [0.7598254 ], E [0.3902647 ]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[98.], E [ 1.], E [66.], E [49.], E [70.], E [32.], E [66.], E [ 1.], E [76.], E [77.], E [98.], E [98.], E [98.], E [98.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [66.], E [66.], E [66.], E [66.], E [66.], E [49.], E [49.], E [49.], E [49.], E [70.], E [70.], E [70.], E [70.], E [70.], E [32.], E [32.], E [32.], E [32.], E [32.], E [66.], E [66.], E [66.], E [66.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [76.], E [76.], E [76.], E [76.], E [77.], E [77.], E [77.], E [77.], E [77.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.03531459, 0.01980046, 0.01169731, ..., 0.04916441, E -0.01930056, 0.01097006], E [ 0.06857657, 0.08909895, -0.01473977, ..., -0.07292735, E -0.0733112 , 0.05403838], E [-0.0452647 , -0.0059931 , 0.07863013, ..., 0.00763688, E -0.03596961, 0.02165018], E ..., E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[ 3.], E [14.], E [ 6.], E [ 7.], E [ 1.], E [ 5.], E [ 9.], E [ 2.], E [ 3.], E [ 4.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [14.], E [14.], E [14.], E [14.], E [14.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 7.], E [ 7.], E [ 7.], E [ 7.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 9.], E [ 9.], E [ 9.], E [ 9.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [ 4.], E [ 4.], E [ 4.], E [ 4.], E [ 4.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.07212272, -0.01157783, 0.07209906, ..., 0.03590322, E -0.011289 , -0.0756909 ], E [-0.04057395, 0.05453134, 0.03549607, ..., 0.03770151, E -0.03485281, -0.03873537], E [ 0.03554836, 0.01588674, -0.07569668, ..., 0.07916976, E -0.02698494, -0.07710274], E ..., E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.00450242, 0.03289668, -0.07712229, ..., -0.07252846, E 0.00708481, -0.05114901], E [ 0.06754325, 0.00106715, -0.02400186, ..., 0.06388736, E -0.0527336 , -0.05356371], E [ 0.01282731, -0.05452716, -0.0341559 , ..., -0.0573374 , E -0.02303316, -0.03417253], E ..., E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.], E [1.], E [1.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[1.], E [0.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.5582866 ], E [0.39492014], E [0.5065822 ], E [0.19596702], E [0.1567516 ], E [0.754517 ], E [0.32997322], E [0.6441957 ], E [0.5654556 ], E [0.8995309 ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ]], dtype=float32)>] E
E Call arguments received by layer "private__dense" (type _Dense): E • inputs=({'item_recency': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'user_age': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'position': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'item_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'session_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_category': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'country': 'tf.Tensor(shape=(56, 64), dtype=float32)'}, {'click': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'like': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'play_percentage': 'tf.Tensor(shape=(56, 1), dtype=float32)'}) E • kwargs={'training': 'True', 'features': {'item_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'user_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'session_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_category': 'tf.Tensor(shape=(10,), dtype=int64)', 'user_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'country': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_recency': 'tf.Tensor(shape=(10,), dtype=float32)', 'user_age': 'tf.Tensor(shape=(10,), dtype=float32)', 'position': 'tf.Tensor(shape=(10,), dtype=float32)'}, 'testing': 'False', 'mask': ('None',), 'targets': {'click': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'like': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'play_percentage': 'tf.Tensor(shape=(10, 1), dtype=float64)'}}

/usr/local/lib/python3.8/dist-packages/keras/engine/input_spec.py:200: ValueError ______________ TestAddRandomNegativesToBatch.test_in_model[False] ______________

self = <tests.unit.tf.data_augmentation.test_negative_sampling.TestAddRandomNegativesToBatch object at 0x7f3bec4e9580> run_eagerly = False music_streaming_data = <merlin.io.dataset.Dataset object at 0x7f3b5e705eb0> tf_random_seed = 1

@pytest.mark.parametrize("run_eagerly", [True, False])
def test_in_model(self, run_eagerly, music_streaming_data: Dataset, tf_random_seed: int):
    dataset = music_streaming_data
    schema = dataset.schema

    sampling = mm.Cond(
        ExampleIsTraining(),
        UniformNegativeSampling(schema, 5, seed=tf_random_seed),
        ExamplePredictionIdentity(),
    )
    model = mm.Model(
        mm.InputBlock(schema),
        sampling,
        mm.MLPBlock([64]),
        mm.BinaryClassificationTask("click"),
    )

    batch_size = 10
    features, targets = mm.sample_batch(
        music_streaming_data, batch_size=batch_size, to_dense=True
    )
  with_negatives = model(features, targets=targets, training=True)

tests/unit/tf/data_augmentation/test_negative_sampling.py:200:


/usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/training.py:490: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/models/base.py:920: in call outputs, context = self._call_child(block, outputs, context) merlin/models/tf/models/base.py:949: in _call_child outputs = call_layer(child, inputs, **call_kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) merlin/models/config/schema.py:58: in call return super().call(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:96: in error_handler raise e /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/core/combinators.py:283: in call outputs = call_layer(layer, outputs, training=training, **kwargs) merlin/models/tf/utils/tf_utils.py:403: in call_layer return layer(inputs, *args, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:1014: in call outputs = call_fn(inputs, *args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:146: in error_handler raise new_e.with_traceback(e.traceback) from None /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:92: in error_handler return fn(*args, **kwargs) merlin/models/tf/blocks/mlp.py:225: in call return self.dense(inputs, **filtered_kwargs) /usr/local/lib/python3.8/dist-packages/keras/utils/traceback_utils.py:60: in error_handler return fn(*args, **kwargs) /usr/local/lib/python3.8/dist-packages/keras/engine/base_layer.py:988: in call input_spec.assert_input_compatibility(self.input_spec, inputs, self.name)


input_spec = [InputSpec(min_ndim=2)] inputs = [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, ... [76.], [76.], [77.], [77.], [77.], [77.], [77.]], dtype=float32)>, ...] layer_name = 'dense'

def assert_input_compatibility(input_spec, inputs, layer_name):
  """Checks compatibility between the layer and provided inputs.

  This checks that the tensor(s) `inputs` verify the input assumptions
  of a layer (if any). If not, a clear and actional exception gets raised.

  Args:
      input_spec: An InputSpec instance, list of InputSpec instances, a nested
          structure of InputSpec instances, or None.
      inputs: Input tensor, list of input tensors, or a nested structure of
          input tensors.
      layer_name: String, name of the layer (for error message formatting).

  Raises:
      ValueError: in case of mismatch between
          the provided inputs and the expectations of the layer.
  """
  if not input_spec:
    return

  input_spec = tf.nest.flatten(input_spec)
  if isinstance(inputs, dict):
    # Flatten `inputs` by reference order if input spec names are provided
    names = [spec.name for spec in input_spec]
    if all(names):
      list_inputs = []
      for name in names:
        if name not in inputs:
          raise ValueError(f'Missing data for input "{name}". '
                           'You passed a data dictionary with keys '
                           f'{list(inputs.keys())}. '
                           f'Expected the following keys: {names}')
        list_inputs.append(inputs[name])
      inputs = list_inputs

  inputs = tf.nest.flatten(inputs)
  for x in inputs:
    # Having a shape/dtype is the only commonality of the various tensor-like
    # objects that may be passed. The most common kind of invalid type we are
    # guarding for is a Layer instance (Functional API), which does not
    # have a `shape` attribute.
    if not hasattr(x, 'shape'):
      raise TypeError(f'Inputs to a layer should be tensors. Got: {x}')

  if len(inputs) != len(input_spec):
  raise ValueError(f'Layer "{layer_name}" expects {len(input_spec)} input(s),'
                     f' but it received {len(inputs)} input tensors. '
                     f'Inputs received: {inputs}')

E ValueError: Exception encountered when calling layer "private__dense" (type _Dense). E
E Layer "dense" expects 1 input(s), but it received 13 input tensors. Inputs received: [<tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.02465618, -0.0998245 , 0.04231644, ..., 0.01962418, E 0.03482969, 0.07279999], E [-0.08623078, 0.09075823, 0.09004455, ..., 0.04702003, E -0.0338754 , 0.01674279], E [-0.05367033, -0.03708271, 0.09750845, ..., 0.01826058, E -0.01067774, 0.00353228], E ..., E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061], E [-0.0001245 , -0.04336631, 0.03477531, ..., -0.00027354, E 0.02971409, 0.05157061]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E [-0.05982495, 0.00941494, -0.0170866 , ..., 0.04046999, E -0.03917206, 0.02214545], E [-0.08489111, -0.01055423, 0.06602425, ..., 0.01737308, E 0.0065893 , 0.02815151], E ..., E [-0.09613073, 0.00574432, -0.06272529, ..., -0.07596413, E -0.05235805, -0.07114938], E [ 0.03497816, 0.00258678, -0.02060063, ..., 0.01023176, E 0.05178693, 0.03078843], E [ 0.05752415, 0.015951 , 0.03335749, ..., 0.01102087, E 0.06480642, -0.01859571]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00077411, -0.04272131, 0.01362878, ..., -0.03421735, E -0.05499429, 0.07281819], E [-0.04494919, 0.00994679, -0.01409337, ..., 0.03038313, E -0.04779383, 0.02539765], E [-0.03843401, -0.04797446, -0.04346054, ..., -0.02784302, E 0.07427114, -0.06158229], E ..., E [ 0.08430401, -0.01791586, -0.01037587, ..., -0.01420283, E -0.06870842, 0.00973347], E [ 0.04738706, 0.00152453, -0.05083135, ..., -0.00338309, E 0.00188581, -0.05811936], E [-0.0038055 , -0.01493907, 0.02549406, ..., 0.02831712, E -0.02204459, -0.07184417]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.00144552, 0.08053493, -0.05433185, ..., -0.04803555, E 0.00784254, 0.00134 ], E [-0.00780611, -0.02837084, -0.02829281, ..., 0.04710324, E -0.00875665, 0.00205226], E [ 0.07223409, -0.05060465, 0.0073901 , ..., 0.04512937, E -0.04797626, -0.01801917], E ..., E [ 0.03935708, 0.02653011, 0.00449451, ..., -0.04035959, E -0.06153113, 0.06843522], E [-0.04556208, -0.03516526, -0.01127513, ..., 0.06403926, E -0.03676584, -0.0140518 ], E [ 0.03712238, 0.01801471, -0.06914667, ..., -0.0608288 , E -0.01426386, -0.01721318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.8301565 ], E [0.24009515], E [0.63162076], E [0.71073955], E [0.7423834 ], E [0.3902647 ], E [0.7598254 ], E [0.9029359 ], E [0.58742005], E [0.09040972], E [0.58742005], E [0.9029359 ], E [0.63162076], E [0.24009515], E [0.63162076], E [0.7598254 ], E [0.3902647 ], E [0.9029359 ], E [0.63162076], E [0.9029359 ], E [0.09040972], E [0.7598254 ], E [0.3902647 ], E [0.09040972], E [0.58742005], E [0.58742005], E [0.3902647 ], E [0.7423834 ], E [0.3902647 ], E [0.71073955], E [0.63162076], E [0.8301565 ], E [0.7598254 ], E [0.58742005], E [0.09040972], E [0.8301565 ], E [0.24009515], E [0.8301565 ], E [0.8301565 ], E [0.3902647 ], E [0.3902647 ], E [0.8301565 ], E [0.7423834 ], E [0.09040972], E [0.8301565 ], E [0.3902647 ], E [0.58742005], E [0.9029359 ], E [0.3902647 ], E [0.7423834 ], E [0.24009515], E [0.58742005], E [0.58742005], E [0.58742005], E [0.7598254 ], E [0.3902647 ]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[98.], E [ 1.], E [66.], E [49.], E [70.], E [32.], E [66.], E [ 1.], E [76.], E [77.], E [98.], E [98.], E [98.], E [98.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [66.], E [66.], E [66.], E [66.], E [66.], E [49.], E [49.], E [49.], E [49.], E [70.], E [70.], E [70.], E [70.], E [70.], E [32.], E [32.], E [32.], E [32.], E [32.], E [66.], E [66.], E [66.], E [66.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [76.], E [76.], E [76.], E [76.], E [77.], E [77.], E [77.], E [77.], E [77.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.03531459, 0.01980046, 0.01169731, ..., 0.04916441, E -0.01930056, 0.01097006], E [ 0.06857657, 0.08909895, -0.01473977, ..., -0.07292735, E -0.0733112 , 0.05403838], E [-0.0452647 , -0.0059931 , 0.07863013, ..., 0.00763688, E -0.03596961, 0.02165018], E ..., E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183], E [-0.02122943, -0.02048924, 0.06912957, ..., 0.01199122, E -0.03363163, 0.03147183]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[ 3.], E [14.], E [ 6.], E [ 7.], E [ 1.], E [ 5.], E [ 9.], E [ 2.], E [ 3.], E [ 4.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [14.], E [14.], E [14.], E [14.], E [14.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 6.], E [ 7.], E [ 7.], E [ 7.], E [ 7.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 1.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 5.], E [ 9.], E [ 9.], E [ 9.], E [ 9.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 2.], E [ 3.], E [ 3.], E [ 3.], E [ 3.], E [ 4.], E [ 4.], E [ 4.], E [ 4.], E [ 4.]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[-0.07212272, -0.01157783, 0.07209906, ..., 0.03590322, E -0.011289 , -0.0756909 ], E [-0.04057395, 0.05453134, 0.03549607, ..., 0.03770151, E -0.03485281, -0.03873537], E [ 0.03554836, 0.01588674, -0.07569668, ..., 0.07916976, E -0.02698494, -0.07710274], E ..., E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327], E [ 0.07998834, 0.02461085, 0.04948417, ..., 0.00334132, E -0.04412389, 0.00480327]], dtype=float32)>, <tf.Tensor: shape=(56, 64), dtype=float32, numpy= E array([[ 0.00450242, 0.03289668, -0.07712229, ..., -0.07252846, E 0.00708481, -0.05114901], E [ 0.06754325, 0.00106715, -0.02400186, ..., 0.06388736, E -0.0527336 , -0.05356371], E [ 0.01282731, -0.05452716, -0.0341559 , ..., -0.0573374 , E -0.02303316, -0.03417253], E ..., E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318], E [-0.08432718, 0.01945755, 0.01157264, ..., 0.02559996, E -0.04466904, -0.00236318]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.], E [1.], E [1.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[1.], E [0.], E [0.], E [1.], E [0.], E [0.], E [1.], E [1.], E [1.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.], E [0.]], dtype=float32)>, <tf.Tensor: shape=(56, 1), dtype=float32, numpy= E array([[0.5582866 ], E [0.39492014], E [0.5065822 ], E [0.19596702], E [0.1567516 ], E [0.754517 ], E [0.32997322], E [0.6441957 ], E [0.5654556 ], E [0.8995309 ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ], E [0. ]], dtype=float32)>] E
E Call arguments received by layer "private__dense" (type _Dense): E • inputs=({'item_recency': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'user_age': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'position': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'item_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_genres': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'session_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'item_category': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'user_id': 'tf.Tensor(shape=(56, 64), dtype=float32)', 'country': 'tf.Tensor(shape=(56, 64), dtype=float32)'}, {'click': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'like': 'tf.Tensor(shape=(56, 1), dtype=float32)', 'play_percentage': 'tf.Tensor(shape=(56, 1), dtype=float32)'}) E • kwargs={'training': 'True', 'features': {'item_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'user_genres': 'tf.Tensor(shape=(10, 20), dtype=int64)', 'session_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_category': 'tf.Tensor(shape=(10,), dtype=int64)', 'user_id': 'tf.Tensor(shape=(10,), dtype=int64)', 'country': 'tf.Tensor(shape=(10,), dtype=int64)', 'item_recency': 'tf.Tensor(shape=(10,), dtype=float32)', 'user_age': 'tf.Tensor(shape=(10,), dtype=float32)', 'position': 'tf.Tensor(shape=(10,), dtype=float32)'}, 'testing': 'False', 'mask': ('None',), 'targets': {'click': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'like': 'tf.Tensor(shape=(10, 1), dtype=float64)', 'play_percentage': 'tf.Tensor(shape=(10, 1), dtype=float64)'}}

/usr/local/lib/python3.8/dist-packages/keras/engine/input_spec.py:200: ValueError =============================== warnings summary =============================== ../../../../../usr/lib/python3/dist-packages/requests/init.py:89 /usr/lib/python3/dist-packages/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.11) or chardet (3.0.4) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36: DeprecationWarning: NEAREST is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.NEAREST or Dither.NONE instead. 'nearest': pil_image.NEAREST,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37: DeprecationWarning: BILINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead. 'bilinear': pil_image.BILINEAR,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38: DeprecationWarning: BICUBIC is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BICUBIC instead. 'bicubic': pil_image.BICUBIC,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39: DeprecationWarning: HAMMING is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.HAMMING instead. 'hamming': pil_image.HAMMING,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40: DeprecationWarning: BOX is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BOX instead. 'box': pil_image.BOX,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41: DeprecationWarning: LANCZOS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead. 'lanczos': pil_image.LANCZOS,

tests/unit/datasets/test_advertising.py: 1 warning tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 6 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 8 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 13 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/data_augmentation/test_noise.py: 1 warning tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 18 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 28 warnings tests/unit/tf/models/test_retrieval.py: 60 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/prediction_tasks/test_retrieval.py: 1 warning tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 9 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 3 warnings tests/unit/xgb/test_xgboost.py: 18 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.ITEM_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.ITEM: 'item'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 5 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 3 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 10 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 18 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 26 warnings tests/unit/tf/models/test_retrieval.py: 32 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 7 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 2 warnings tests/unit/xgb/test_xgboost.py: 17 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.USER_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.USER: 'user'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py::test_synthetic_aliccp_raw_data tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-8] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-8] tests/unit/tf/test_dataset.py::test_tf_catname_ordering tests/unit/tf/test_dataset.py::test_tf_map /usr/local/lib/python3.8/dist-packages/cudf/core/frame.py:384: UserWarning: The deep parameter is ignored and is only included for pandas compatibility. warnings.warn(

tests/unit/datasets/test_entertainment.py: 1 warning tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_prediction.py: 1 warning tests/unit/tf/data_augmentation/test_negative_sampling.py: 9 warnings tests/unit/tf/inputs/test_continuous.py: 2 warnings tests/unit/tf/inputs/test_embedding.py: 9 warnings tests/unit/tf/inputs/test_tabular.py: 8 warnings tests/unit/tf/models/test_ranking.py: 16 warnings tests/unit/tf/models/test_retrieval.py: 4 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/xgb/test_xgboost.py: 12 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.SESSION_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.SESSION: 'session'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/inputs/test_embedding.py::test_embedding_features_exporting_and_loading_pretrained_initializer /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/inputs/embedding.py:807: DeprecationWarning: This function is deprecated in favor of cupy.from_dlpack embeddings_cupy = cupy.fromDlpack(to_dlpack(tf.convert_to_tensor(embeddings)))

tests/unit/tf/core/test_index.py: 4 warnings tests/unit/tf/models/test_retrieval.py: 54 warnings tests/unit/tf/prediction_tasks/test_next_item.py: 3 warnings tests/unit/tf/predictions/test_classification.py: 12 warnings tests/unit/tf/predictions/test_dot_product.py: 2 warnings tests/unit/tf/utils/test_batch.py: 2 warnings /tmp/autograph_generated_fileyq7ein9a.py:8: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead ag.converted_call(ag__.ld(warnings).warn, ("The 'warn' method is deprecated, use 'warning' instead", ag__.ld(DeprecationWarning), 2), None, fscope)

tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.1] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.3] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.5] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.7] tests/unit/tf/models/test_base.py::test_model_pre_post[True] tests/unit/tf/models/test_base.py::test_model_pre_post[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/util/dispatch.py:1082: UserWarning: tf.keras.backend.random_binomial is deprecated, and will be removed in a future version.Please use tf.keras.backend.random_bernoulli instead. return dispatch_target(*args, **kwargs)

tests/unit/tf/models/test_base.py::test_freeze_parallel_block[True] tests/unit/tf/models/test_base.py::test_freeze_sequential_block tests/unit/tf/models/test_base.py::test_freeze_unfreeze tests/unit/tf/models/test_base.py::test_unfreeze_all_blocks /usr/local/lib/python3.8/dist-packages/keras/optimizers/optimizer_v2/gradient_descent.py:108: UserWarning: The lr argument is deprecated, use learning_rate instead. super(SGD, self).init(name, **kwargs)

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[True] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/core/transformations.py:939: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py:371: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag return py_builtins.overload_of(f)(*args)

tests/unit/torch/block/test_mlp.py::test_mlp_block /var/jenkins_home/workspace/merlin_models/models/tests/unit/torch/_conftest.py:151: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at ../torch/csrc/utils/tensor_new.cpp:201.) return {key: torch.tensor(value) for key, value in data.items()}

tests/unit/xgb/test_xgboost.py::test_without_dask_client tests/unit/xgb/test_xgboost.py::TestXGBoost::test_music_regression tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs0-DaskDeviceQuantileDMatrix] tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs1-DaskDMatrix] tests/unit/xgb/test_xgboost.py::TestEvals::test_multiple tests/unit/xgb/test_xgboost.py::TestEvals::test_default tests/unit/xgb/test_xgboost.py::TestEvals::test_train_and_valid tests/unit/xgb/test_xgboost.py::TestEvals::test_invalid_data /var/jenkins_home/workspace/merlin_models/models/merlin/models/xgb/init.py:335: UserWarning: Ignoring list columns as inputs to XGBoost model: ['item_genres', 'user_genres']. warnings.warn(f"Ignoring list columns as inputs to XGBoost model: {list_column_names}.")

tests/unit/xgb/test_xgboost.py::TestXGBoost::test_unsupported_objective /usr/local/lib/python3.8/dist-packages/tornado/ioloop.py:350: DeprecationWarning: make_current is deprecated; start the event loop first self.make_current()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] tests/unit/datasets/test_advertising.py:20: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [1] tests/unit/datasets/test_ecommerce.py:62: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:78: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:92: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [3] tests/unit/datasets/test_entertainment.py:44: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [4] ../../../../../usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/test_util.py:2746: Not a test. ===== 5 failed, 657 passed, 11 skipped, 996 warnings in 933.07s (0:15:33) ====== Build step 'Execute shell' marked build as failure Performing Post build task... Match found for : : True Logical operation result is TRUE Running script : #!/bin/bash cd /var/jenkins_home/ CUDA_VISIBLE_DEVICES=1 python test_res_push.py "https://api.GitHub.com/repos/NVIDIA-Merlin/models/issues/$ghprbPullId/comments" "/var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log" [merlin_models] $ /bin/bash /tmp/jenkins13979906975283914209.sh

nvidia-merlin-bot avatar Aug 30 '22 08:08 nvidia-merlin-bot

Click to view CI Results
GitHub pull request #685 of commit 43112b7ad0ae3348eee67cd0a6a1ec5557f037fd, no merge conflicts.
Running as SYSTEM
Setting status of 43112b7ad0ae3348eee67cd0a6a1ec5557f037fd to PENDING with url https://10.20.13.93:8080/job/merlin_models/1083/console and message: 'Pending'
Using context: Jenkins
Building on master in workspace /var/jenkins_home/workspace/merlin_models
using credential nvidia-merlin-bot
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/NVIDIA-Merlin/models/ # timeout=10
Fetching upstream changes from https://github.com/NVIDIA-Merlin/models/
 > git --version # timeout=10
using GIT_ASKPASS to set credentials This is the bot credentials for our CI/CD
 > git fetch --tags --force --progress -- https://github.com/NVIDIA-Merlin/models/ +refs/pull/685/*:refs/remotes/origin/pr/685/* # timeout=10
 > git rev-parse 43112b7ad0ae3348eee67cd0a6a1ec5557f037fd^{commit} # timeout=10
Checking out Revision 43112b7ad0ae3348eee67cd0a6a1ec5557f037fd (detached)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 43112b7ad0ae3348eee67cd0a6a1ec5557f037fd # timeout=10
Commit message: "Update tests for data augmentation negative sampling layer"
 > git rev-list --no-walk e121262c80cad4ff202d411df7b74012d6ab931e # timeout=10
[merlin_models] $ /bin/bash /tmp/jenkins283005950380825404.sh
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Requirement already satisfied: testbook in /usr/local/lib/python3.8/dist-packages (0.4.2)
Requirement already satisfied: nbformat>=5.0.4 in /usr/local/lib/python3.8/dist-packages (from testbook) (5.4.0)
Requirement already satisfied: nbclient>=0.4.0 in /usr/local/lib/python3.8/dist-packages (from testbook) (0.6.6)
Requirement already satisfied: traitlets>=5.1 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (5.3.0)
Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.9.1)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.11.1)
Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (2.16.1)
Requirement already satisfied: jupyter-client>=6.1.5 in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (7.3.4)
Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (1.5.5)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (22.1.0)
Requirement already satisfied: importlib-resources>=1.4.0; python_version =2.6->nbformat>=5.0.4->testbook) (5.9.0)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10; python_version =2.6->nbformat>=5.0.4->testbook) (1.3.10)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (0.18.1)
Requirement already satisfied: entrypoints in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (0.4)
Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (2.8.2)
Requirement already satisfied: pyzmq>=23.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (23.2.1)
Requirement already satisfied: tornado>=6.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (6.2)
Requirement already satisfied: zipp>=3.1.0; python_version =1.4.0; python_version jsonschema>=2.6->nbformat>=5.0.4->testbook) (3.8.1)
Requirement already satisfied: six>=1.5 in /var/jenkins_home/.local/lib/python3.8/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (1.15.0)
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.2, pluggy-1.0.0
rootdir: /var/jenkins_home/workspace/merlin_models/models, configfile: pyproject.toml
plugins: anyio-3.6.1, xdist-2.5.0, forked-1.4.0, cov-3.0.0
collected 673 items

tests/unit/config/test_schema.py .... [ 0%] tests/unit/datasets/test_advertising.py .s [ 0%] tests/unit/datasets/test_ecommerce.py ..sss [ 1%] tests/unit/datasets/test_entertainment.py ....sss. [ 2%] tests/unit/datasets/test_social.py . [ 2%] tests/unit/datasets/test_synthetic.py ...... [ 3%] tests/unit/implicit/test_implicit.py . [ 4%] tests/unit/lightfm/test_lightfm.py . [ 4%] tests/unit/tf/test_core.py ...... [ 5%] tests/unit/tf/test_dataset.py ................ [ 7%] tests/unit/tf/test_public_api.py . [ 7%] tests/unit/tf/blocks/test_cross.py ........... [ 9%] tests/unit/tf/blocks/test_dlrm.py .......... [ 10%] tests/unit/tf/blocks/test_interactions.py . [ 10%] tests/unit/tf/blocks/test_mlp.py ................................. [ 15%] tests/unit/tf/blocks/test_optimizer.py s................................ [ 20%] ..................... [ 23%] tests/unit/tf/blocks/retrieval/test_base.py . [ 23%] tests/unit/tf/blocks/retrieval/test_matrix_factorization.py .. [ 24%] tests/unit/tf/blocks/retrieval/test_two_tower.py ........... [ 25%] tests/unit/tf/blocks/sampling/test_cross_batch.py . [ 26%] tests/unit/tf/blocks/sampling/test_in_batch.py . [ 26%] tests/unit/tf/core/test_aggregation.py ......... [ 27%] tests/unit/tf/core/test_base.py .. [ 27%] tests/unit/tf/core/test_combinators.py s................... [ 30%] tests/unit/tf/core/test_index.py ... [ 31%] tests/unit/tf/core/test_prediction.py .. [ 31%] tests/unit/tf/core/test_tabular.py .... [ 32%] tests/unit/tf/core/test_transformations.py s............................ [ 36%] .................. [ 39%] tests/unit/tf/data_augmentation/test_misc.py . [ 39%] tests/unit/tf/data_augmentation/test_negative_sampling.py .......... [ 40%] tests/unit/tf/data_augmentation/test_noise.py ..... [ 41%] tests/unit/tf/examples/test_01_getting_started.py . [ 41%] tests/unit/tf/examples/test_02_dataschema.py . [ 41%] tests/unit/tf/examples/test_03_exploring_different_models.py . [ 41%] tests/unit/tf/examples/test_04_export_ranking_models.py . [ 42%] tests/unit/tf/examples/test_05_export_retrieval_model.py . [ 42%] tests/unit/tf/examples/test_06_advanced_own_architecture.py . [ 42%] tests/unit/tf/examples/test_07_train_traditional_models.py . [ 42%] tests/unit/tf/examples/test_usecase_ecommerce_session_based.py . [ 42%] tests/unit/tf/examples/test_usecase_pretrained_embeddings.py . [ 42%] tests/unit/tf/inputs/test_continuous.py ..... [ 43%] tests/unit/tf/inputs/test_embedding.py ................................. [ 48%] .. [ 48%] tests/unit/tf/inputs/test_tabular.py .................. [ 51%] tests/unit/tf/layers/test_queue.py .............. [ 53%] tests/unit/tf/losses/test_losses.py ....................... [ 56%] tests/unit/tf/metrics/test_metrics_popularity.py ..... [ 57%] tests/unit/tf/metrics/test_metrics_topk.py ....................... [ 61%] tests/unit/tf/models/test_base.py s................. [ 63%] tests/unit/tf/models/test_benchmark.py .. [ 64%] tests/unit/tf/models/test_ranking.py ........................ [ 67%] tests/unit/tf/models/test_retrieval.py ................................ [ 72%] tests/unit/tf/prediction_tasks/test_classification.py .. [ 72%] tests/unit/tf/prediction_tasks/test_multi_task.py ................ [ 75%] tests/unit/tf/prediction_tasks/test_next_item.py ..... [ 75%] tests/unit/tf/prediction_tasks/test_regression.py .. [ 76%] tests/unit/tf/prediction_tasks/test_retrieval.py . [ 76%] tests/unit/tf/prediction_tasks/test_sampling.py ...... [ 77%] tests/unit/tf/predictions/test_base.py ..... [ 77%] tests/unit/tf/predictions/test_classification.py ....... [ 78%] tests/unit/tf/predictions/test_dot_product.py ........ [ 80%] tests/unit/tf/predictions/test_regression.py .. [ 80%] tests/unit/tf/predictions/test_sampling.py .... [ 80%] tests/unit/tf/utils/test_batch.py .... [ 81%] tests/unit/tf/utils/test_tf_utils.py ..... [ 82%] tests/unit/torch/test_dataset.py ......... [ 83%] tests/unit/torch/test_public_api.py . [ 83%] tests/unit/torch/block/test_base.py .... [ 84%] tests/unit/torch/block/test_mlp.py . [ 84%] tests/unit/torch/features/test_continuous.py .. [ 84%] tests/unit/torch/features/test_embedding.py .............. [ 86%] tests/unit/torch/features/test_tabular.py .... [ 87%] tests/unit/torch/model/test_head.py ............ [ 89%] tests/unit/torch/model/test_model.py .. [ 89%] tests/unit/torch/tabular/test_aggregation.py ........ [ 90%] tests/unit/torch/tabular/test_tabular.py ... [ 91%] tests/unit/torch/tabular/test_transformations.py ....... [ 92%] tests/unit/utils/test_schema_utils.py ................................ [ 97%] tests/unit/xgb/test_xgboost.py .................... [100%]

=============================== warnings summary =============================== ../../../../../usr/lib/python3/dist-packages/requests/init.py:89 /usr/lib/python3/dist-packages/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.11) or chardet (3.0.4) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36: DeprecationWarning: NEAREST is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.NEAREST or Dither.NONE instead. 'nearest': pil_image.NEAREST,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37: DeprecationWarning: BILINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead. 'bilinear': pil_image.BILINEAR,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38: DeprecationWarning: BICUBIC is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BICUBIC instead. 'bicubic': pil_image.BICUBIC,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39: DeprecationWarning: HAMMING is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.HAMMING instead. 'hamming': pil_image.HAMMING,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40: DeprecationWarning: BOX is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BOX instead. 'box': pil_image.BOX,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41: DeprecationWarning: LANCZOS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead. 'lanczos': pil_image.LANCZOS,

tests/unit/datasets/test_advertising.py: 1 warning tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 6 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 8 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 13 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/data_augmentation/test_noise.py: 1 warning tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 18 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 28 warnings tests/unit/tf/models/test_retrieval.py: 60 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/prediction_tasks/test_retrieval.py: 1 warning tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 9 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 3 warnings tests/unit/xgb/test_xgboost.py: 18 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.ITEM_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.ITEM: 'item'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 5 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 3 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 10 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 18 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 26 warnings tests/unit/tf/models/test_retrieval.py: 32 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 7 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 2 warnings tests/unit/xgb/test_xgboost.py: 17 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.USER_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.USER: 'user'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py::test_synthetic_aliccp_raw_data tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-8] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-8] tests/unit/tf/test_dataset.py::test_tf_catname_ordering tests/unit/tf/test_dataset.py::test_tf_map /usr/local/lib/python3.8/dist-packages/cudf/core/frame.py:384: UserWarning: The deep parameter is ignored and is only included for pandas compatibility. warnings.warn(

tests/unit/datasets/test_entertainment.py: 1 warning tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_prediction.py: 1 warning tests/unit/tf/data_augmentation/test_negative_sampling.py: 9 warnings tests/unit/tf/inputs/test_continuous.py: 2 warnings tests/unit/tf/inputs/test_embedding.py: 9 warnings tests/unit/tf/inputs/test_tabular.py: 8 warnings tests/unit/tf/models/test_ranking.py: 16 warnings tests/unit/tf/models/test_retrieval.py: 4 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/xgb/test_xgboost.py: 12 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.SESSION_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.SESSION: 'session'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/inputs/test_embedding.py::test_embedding_features_exporting_and_loading_pretrained_initializer /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/inputs/embedding.py:807: DeprecationWarning: This function is deprecated in favor of cupy.from_dlpack embeddings_cupy = cupy.fromDlpack(to_dlpack(tf.convert_to_tensor(embeddings)))

tests/unit/tf/core/test_index.py: 4 warnings tests/unit/tf/models/test_retrieval.py: 54 warnings tests/unit/tf/prediction_tasks/test_next_item.py: 3 warnings tests/unit/tf/predictions/test_classification.py: 12 warnings tests/unit/tf/predictions/test_dot_product.py: 2 warnings tests/unit/tf/utils/test_batch.py: 2 warnings /tmp/autograph_generated_file1t23rgzv.py:8: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead ag.converted_call(ag__.ld(warnings).warn, ("The 'warn' method is deprecated, use 'warning' instead", ag__.ld(DeprecationWarning), 2), None, fscope)

tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.1] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.3] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.5] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.7] tests/unit/tf/models/test_base.py::test_model_pre_post[True] tests/unit/tf/models/test_base.py::test_model_pre_post[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/util/dispatch.py:1082: UserWarning: tf.keras.backend.random_binomial is deprecated, and will be removed in a future version.Please use tf.keras.backend.random_bernoulli instead. return dispatch_target(*args, **kwargs)

tests/unit/tf/models/test_base.py::test_freeze_parallel_block[True] tests/unit/tf/models/test_base.py::test_freeze_sequential_block tests/unit/tf/models/test_base.py::test_freeze_unfreeze tests/unit/tf/models/test_base.py::test_unfreeze_all_blocks /usr/local/lib/python3.8/dist-packages/keras/optimizers/optimizer_v2/gradient_descent.py:108: UserWarning: The lr argument is deprecated, use learning_rate instead. super(SGD, self).init(name, **kwargs)

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[True] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/core/transformations.py:939: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py:371: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag return py_builtins.overload_of(f)(*args)

tests/unit/torch/block/test_mlp.py::test_mlp_block /var/jenkins_home/workspace/merlin_models/models/tests/unit/torch/_conftest.py:151: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at ../torch/csrc/utils/tensor_new.cpp:201.) return {key: torch.tensor(value) for key, value in data.items()}

tests/unit/xgb/test_xgboost.py::test_without_dask_client tests/unit/xgb/test_xgboost.py::TestXGBoost::test_music_regression tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs0-DaskDeviceQuantileDMatrix] tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs1-DaskDMatrix] tests/unit/xgb/test_xgboost.py::TestEvals::test_multiple tests/unit/xgb/test_xgboost.py::TestEvals::test_default tests/unit/xgb/test_xgboost.py::TestEvals::test_train_and_valid tests/unit/xgb/test_xgboost.py::TestEvals::test_invalid_data /var/jenkins_home/workspace/merlin_models/models/merlin/models/xgb/init.py:335: UserWarning: Ignoring list columns as inputs to XGBoost model: ['item_genres', 'user_genres']. warnings.warn(f"Ignoring list columns as inputs to XGBoost model: {list_column_names}.")

tests/unit/xgb/test_xgboost.py::TestXGBoost::test_unsupported_objective /usr/local/lib/python3.8/dist-packages/tornado/ioloop.py:350: DeprecationWarning: make_current is deprecated; start the event loop first self.make_current()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] tests/unit/datasets/test_advertising.py:20: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [1] tests/unit/datasets/test_ecommerce.py:62: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:78: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:92: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [3] tests/unit/datasets/test_entertainment.py:44: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [4] ../../../../../usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/test_util.py:2746: Not a test. ========== 662 passed, 11 skipped, 996 warnings in 953.89s (0:15:53) =========== Performing Post build task... Match found for : : True Logical operation result is TRUE Running script : #!/bin/bash cd /var/jenkins_home/ CUDA_VISIBLE_DEVICES=1 python test_res_push.py "https://api.GitHub.com/repos/NVIDIA-Merlin/models/issues/$ghprbPullId/comments" "/var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log" [merlin_models] $ /bin/bash /tmp/jenkins12879782450577170459.sh

nvidia-merlin-bot avatar Aug 30 '22 09:08 nvidia-merlin-bot

Click to view CI Results
GitHub pull request #685 of commit fcfa5c06692cdeb05f462a77db4115b585cb4f2c, no merge conflicts.
Running as SYSTEM
Setting status of fcfa5c06692cdeb05f462a77db4115b585cb4f2c to PENDING with url https://10.20.13.93:8080/job/merlin_models/1086/console and message: 'Pending'
Using context: Jenkins
Building on master in workspace /var/jenkins_home/workspace/merlin_models
using credential nvidia-merlin-bot
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/NVIDIA-Merlin/models/ # timeout=10
Fetching upstream changes from https://github.com/NVIDIA-Merlin/models/
 > git --version # timeout=10
using GIT_ASKPASS to set credentials This is the bot credentials for our CI/CD
 > git fetch --tags --force --progress -- https://github.com/NVIDIA-Merlin/models/ +refs/pull/685/*:refs/remotes/origin/pr/685/* # timeout=10
 > git rev-parse fcfa5c06692cdeb05f462a77db4115b585cb4f2c^{commit} # timeout=10
Checking out Revision fcfa5c06692cdeb05f462a77db4115b585cb4f2c (detached)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f fcfa5c06692cdeb05f462a77db4115b585cb4f2c # timeout=10
Commit message: "Merge branch 'main' into in-batch-negative-sampling-with-dataloader"
 > git rev-list --no-walk 38657ee23a8c9354889a664908847e97b70a5ecf # timeout=10
[merlin_models] $ /bin/bash /tmp/jenkins6320410524662724615.sh
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Requirement already satisfied: testbook in /usr/local/lib/python3.8/dist-packages (0.4.2)
Requirement already satisfied: nbformat>=5.0.4 in /usr/local/lib/python3.8/dist-packages (from testbook) (5.4.0)
Requirement already satisfied: nbclient>=0.4.0 in /usr/local/lib/python3.8/dist-packages (from testbook) (0.6.6)
Requirement already satisfied: traitlets>=5.1 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (5.3.0)
Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.9.1)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.11.1)
Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (2.16.1)
Requirement already satisfied: jupyter-client>=6.1.5 in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (7.3.4)
Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (1.5.5)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (22.1.0)
Requirement already satisfied: importlib-resources>=1.4.0; python_version =2.6->nbformat>=5.0.4->testbook) (5.9.0)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10; python_version =2.6->nbformat>=5.0.4->testbook) (1.3.10)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (0.18.1)
Requirement already satisfied: entrypoints in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (0.4)
Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (2.8.2)
Requirement already satisfied: pyzmq>=23.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (23.2.1)
Requirement already satisfied: tornado>=6.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (6.2)
Requirement already satisfied: zipp>=3.1.0; python_version =1.4.0; python_version jsonschema>=2.6->nbformat>=5.0.4->testbook) (3.8.1)
Requirement already satisfied: six>=1.5 in /var/jenkins_home/.local/lib/python3.8/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (1.15.0)
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.2, pluggy-1.0.0
rootdir: /var/jenkins_home/workspace/merlin_models/models, configfile: pyproject.toml
plugins: anyio-3.6.1, xdist-2.5.0, forked-1.4.0, cov-3.0.0
collected 673 items

tests/unit/config/test_schema.py .... [ 0%] tests/unit/datasets/test_advertising.py .s [ 0%] tests/unit/datasets/test_ecommerce.py ..sss [ 1%] tests/unit/datasets/test_entertainment.py ....sss. [ 2%] tests/unit/datasets/test_social.py . [ 2%] tests/unit/datasets/test_synthetic.py ...... [ 3%] tests/unit/implicit/test_implicit.py . [ 4%] tests/unit/lightfm/test_lightfm.py . [ 4%] tests/unit/tf/test_core.py ...... [ 5%] tests/unit/tf/test_dataset.py ................ [ 7%] tests/unit/tf/test_public_api.py . [ 7%] tests/unit/tf/blocks/test_cross.py ........... [ 9%] tests/unit/tf/blocks/test_dlrm.py .......... [ 10%] tests/unit/tf/blocks/test_interactions.py . [ 10%] tests/unit/tf/blocks/test_mlp.py ................................. [ 15%] tests/unit/tf/blocks/test_optimizer.py s................................ [ 20%] ..................... [ 23%] tests/unit/tf/blocks/retrieval/test_base.py . [ 23%] tests/unit/tf/blocks/retrieval/test_matrix_factorization.py .. [ 24%] tests/unit/tf/blocks/retrieval/test_two_tower.py ........... [ 25%] tests/unit/tf/blocks/sampling/test_cross_batch.py . [ 26%] tests/unit/tf/blocks/sampling/test_in_batch.py . [ 26%] tests/unit/tf/core/test_aggregation.py ......... [ 27%] tests/unit/tf/core/test_base.py .. [ 27%] tests/unit/tf/core/test_combinators.py s................... [ 30%] tests/unit/tf/core/test_index.py ... [ 31%] tests/unit/tf/core/test_prediction.py .. [ 31%] tests/unit/tf/core/test_tabular.py .... [ 32%] tests/unit/tf/core/test_transformations.py s............................ [ 36%] .................. [ 39%] tests/unit/tf/data_augmentation/test_misc.py . [ 39%] tests/unit/tf/data_augmentation/test_negative_sampling.py .......... [ 40%] tests/unit/tf/data_augmentation/test_noise.py ..... [ 41%] tests/unit/tf/examples/test_01_getting_started.py . [ 41%] tests/unit/tf/examples/test_02_dataschema.py . [ 41%] tests/unit/tf/examples/test_03_exploring_different_models.py . [ 41%] tests/unit/tf/examples/test_04_export_ranking_models.py . [ 42%] tests/unit/tf/examples/test_05_export_retrieval_model.py . [ 42%] tests/unit/tf/examples/test_06_advanced_own_architecture.py . [ 42%] tests/unit/tf/examples/test_07_train_traditional_models.py . [ 42%] tests/unit/tf/examples/test_usecase_ecommerce_session_based.py . [ 42%] tests/unit/tf/examples/test_usecase_pretrained_embeddings.py . [ 42%] tests/unit/tf/inputs/test_continuous.py ..... [ 43%] tests/unit/tf/inputs/test_embedding.py ................................. [ 48%] .. [ 48%] tests/unit/tf/inputs/test_tabular.py .................. [ 51%] tests/unit/tf/layers/test_queue.py .............. [ 53%] tests/unit/tf/losses/test_losses.py ....................... [ 56%] tests/unit/tf/metrics/test_metrics_popularity.py ..... [ 57%] tests/unit/tf/metrics/test_metrics_topk.py ....................... [ 61%] tests/unit/tf/models/test_base.py s.....F........... [ 63%] tests/unit/tf/models/test_benchmark.py .. [ 64%] tests/unit/tf/models/test_ranking.py ........................ [ 67%] tests/unit/tf/models/test_retrieval.py ................................ [ 72%] tests/unit/tf/prediction_tasks/test_classification.py .. [ 72%] tests/unit/tf/prediction_tasks/test_multi_task.py ................ [ 75%] tests/unit/tf/prediction_tasks/test_next_item.py ..... [ 75%] tests/unit/tf/prediction_tasks/test_regression.py .. [ 76%] tests/unit/tf/prediction_tasks/test_retrieval.py . [ 76%] tests/unit/tf/prediction_tasks/test_sampling.py ...... [ 77%] tests/unit/tf/predictions/test_base.py ..... [ 77%] tests/unit/tf/predictions/test_classification.py ....... [ 78%] tests/unit/tf/predictions/test_dot_product.py ........ [ 80%] tests/unit/tf/predictions/test_regression.py .. [ 80%] tests/unit/tf/predictions/test_sampling.py .... [ 80%] tests/unit/tf/utils/test_batch.py .... [ 81%] tests/unit/tf/utils/test_tf_utils.py ..... [ 82%] tests/unit/torch/test_dataset.py ......... [ 83%] tests/unit/torch/test_public_api.py . [ 83%] tests/unit/torch/block/test_base.py .... [ 84%] tests/unit/torch/block/test_mlp.py . [ 84%] tests/unit/torch/features/test_continuous.py .. [ 84%] tests/unit/torch/features/test_embedding.py .............. [ 86%] tests/unit/torch/features/test_tabular.py .... [ 87%] tests/unit/torch/model/test_head.py ............ [ 89%] tests/unit/torch/model/test_model.py .. [ 89%] tests/unit/torch/tabular/test_aggregation.py ........ [ 90%] tests/unit/torch/tabular/test_tabular.py ... [ 91%] tests/unit/torch/tabular/test_transformations.py ....... [ 92%] tests/unit/utils/test_schema_utils.py ................................ [ 97%] tests/unit/xgb/test_xgboost.py .................... [100%]

=================================== FAILURES =================================== ____________________ test_train_metrics_steps[60-10-2-6-3] _____________________

num_rows = 60, batch_size = 10, train_metrics_steps = 2, expected_steps = 6 expected_metrics_steps = 3

@pytest.mark.parametrize(
    ["num_rows", "batch_size", "train_metrics_steps", "expected_steps", "expected_metrics_steps"],
    [
        (1, 1, 1, 1, 1),
        (60, 10, 2, 6, 3),
        (60, 10, 3, 6, 2),
        (120, 10, 4, 12, 3),
    ],
)
def test_train_metrics_steps(
    num_rows, batch_size, train_metrics_steps, expected_steps, expected_metrics_steps
):
    dataset = generate_data("e-commerce", num_rows=num_rows)
    model = ml.Model(
        ml.InputBlock(dataset.schema),
        ml.MLPBlock([64]),
        ml.BinaryClassificationTask("click"),
    )
    model.compile(
        run_eagerly=True,
        optimizer="adam",
        metrics=[tf.keras.metrics.AUC(from_logits=True, name="auc")],
    )
    metrics_callback = MetricsLogger()
    callbacks = [metrics_callback]
    _ = model.fit(
        dataset,
        callbacks=callbacks,
        epochs=1,
        batch_size=batch_size,
        train_metrics_steps=train_metrics_steps,
    )
    epoch0_logs = metrics_callback.epoch_logs[0]

    # number of times compute_metrics called (number of batches in epoch)
    assert len(epoch0_logs) == expected_steps

    # number of times metrics computed (every train_metrics_steps batches)
  assert len({metrics["auc"] for metrics in epoch0_logs}) == expected_metrics_steps

E assert 2 == 3 E + where 2 = len({0.3636363744735718, 0.5})

tests/unit/tf/models/test_base.py:139: AssertionError ----------------------------- Captured stdout call -----------------------------

1/6 [====>.........................] - ETA: 2s - loss: 0.6920 - auc: 0.5000 - regularization_loss: 0.0000e+00 2/6 [=========>....................] - ETA: 0s - loss: 0.6920 - auc: 0.5000 - regularization_loss: 0.0000e+00 3/6 [==============>...............] - ETA: 0s - loss: 0.6987 - auc: 0.3636 - regularization_loss: 0.0000e+00 4/6 [===================>..........] - ETA: 0s - loss: 0.6976 - auc: 0.3636 - regularization_loss: 0.0000e+00 5/6 [========================>.....] - ETA: 0s - loss: 0.6958 - auc: 0.5000 - regularization_loss: 0.0000e+00 6/6 [==============================] - ETA: 0s - loss: 0.6941 - auc: 0.5000 - regularization_loss: 0.0000e+00 6/6 [==============================] - 1s 133ms/step - loss: 0.6941 - auc: 0.5000 - regularization_loss: 0.0000e+00 =============================== warnings summary =============================== ../../../../../usr/lib/python3/dist-packages/requests/init.py:89 /usr/lib/python3/dist-packages/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.11) or chardet (3.0.4) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36: DeprecationWarning: NEAREST is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.NEAREST or Dither.NONE instead. 'nearest': pil_image.NEAREST,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37: DeprecationWarning: BILINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead. 'bilinear': pil_image.BILINEAR,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38: DeprecationWarning: BICUBIC is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BICUBIC instead. 'bicubic': pil_image.BICUBIC,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39: DeprecationWarning: HAMMING is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.HAMMING instead. 'hamming': pil_image.HAMMING,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40: DeprecationWarning: BOX is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BOX instead. 'box': pil_image.BOX,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41: DeprecationWarning: LANCZOS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead. 'lanczos': pil_image.LANCZOS,

tests/unit/datasets/test_advertising.py: 1 warning tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 6 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 8 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 13 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/data_augmentation/test_noise.py: 1 warning tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 18 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 28 warnings tests/unit/tf/models/test_retrieval.py: 60 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/prediction_tasks/test_retrieval.py: 1 warning tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 9 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 3 warnings tests/unit/xgb/test_xgboost.py: 18 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.ITEM_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.ITEM: 'item'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 5 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 3 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 10 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 18 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 26 warnings tests/unit/tf/models/test_retrieval.py: 32 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 7 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 2 warnings tests/unit/xgb/test_xgboost.py: 17 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.USER_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.USER: 'user'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py::test_synthetic_aliccp_raw_data tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-8] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-8] tests/unit/tf/test_dataset.py::test_tf_catname_ordering tests/unit/tf/test_dataset.py::test_tf_map /usr/local/lib/python3.8/dist-packages/cudf/core/frame.py:384: UserWarning: The deep parameter is ignored and is only included for pandas compatibility. warnings.warn(

tests/unit/datasets/test_entertainment.py: 1 warning tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_prediction.py: 1 warning tests/unit/tf/data_augmentation/test_negative_sampling.py: 9 warnings tests/unit/tf/inputs/test_continuous.py: 2 warnings tests/unit/tf/inputs/test_embedding.py: 9 warnings tests/unit/tf/inputs/test_tabular.py: 8 warnings tests/unit/tf/models/test_ranking.py: 16 warnings tests/unit/tf/models/test_retrieval.py: 4 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/xgb/test_xgboost.py: 12 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.SESSION_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.SESSION: 'session'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/inputs/test_embedding.py::test_embedding_features_exporting_and_loading_pretrained_initializer /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/inputs/embedding.py:807: DeprecationWarning: This function is deprecated in favor of cupy.from_dlpack embeddings_cupy = cupy.fromDlpack(to_dlpack(tf.convert_to_tensor(embeddings)))

tests/unit/tf/core/test_index.py: 4 warnings tests/unit/tf/models/test_retrieval.py: 54 warnings tests/unit/tf/prediction_tasks/test_next_item.py: 3 warnings tests/unit/tf/predictions/test_classification.py: 12 warnings tests/unit/tf/predictions/test_dot_product.py: 2 warnings tests/unit/tf/utils/test_batch.py: 2 warnings /tmp/autograph_generated_file588w3dq2.py:8: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead ag.converted_call(ag__.ld(warnings).warn, ("The 'warn' method is deprecated, use 'warning' instead", ag__.ld(DeprecationWarning), 2), None, fscope)

tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.1] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.3] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.5] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.7] tests/unit/tf/models/test_base.py::test_model_pre_post[True] tests/unit/tf/models/test_base.py::test_model_pre_post[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/util/dispatch.py:1082: UserWarning: tf.keras.backend.random_binomial is deprecated, and will be removed in a future version.Please use tf.keras.backend.random_bernoulli instead. return dispatch_target(*args, **kwargs)

tests/unit/tf/models/test_base.py::test_freeze_parallel_block[True] tests/unit/tf/models/test_base.py::test_freeze_sequential_block tests/unit/tf/models/test_base.py::test_freeze_unfreeze tests/unit/tf/models/test_base.py::test_unfreeze_all_blocks /usr/local/lib/python3.8/dist-packages/keras/optimizers/optimizer_v2/gradient_descent.py:108: UserWarning: The lr argument is deprecated, use learning_rate instead. super(SGD, self).init(name, **kwargs)

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[True] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/core/transformations.py:939: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py:371: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag return py_builtins.overload_of(f)(*args)

tests/unit/torch/block/test_mlp.py::test_mlp_block /var/jenkins_home/workspace/merlin_models/models/tests/unit/torch/_conftest.py:151: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at ../torch/csrc/utils/tensor_new.cpp:201.) return {key: torch.tensor(value) for key, value in data.items()}

tests/unit/xgb/test_xgboost.py::test_without_dask_client tests/unit/xgb/test_xgboost.py::TestXGBoost::test_music_regression tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs0-DaskDeviceQuantileDMatrix] tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs1-DaskDMatrix] tests/unit/xgb/test_xgboost.py::TestEvals::test_multiple tests/unit/xgb/test_xgboost.py::TestEvals::test_default tests/unit/xgb/test_xgboost.py::TestEvals::test_train_and_valid tests/unit/xgb/test_xgboost.py::TestEvals::test_invalid_data /var/jenkins_home/workspace/merlin_models/models/merlin/models/xgb/init.py:335: UserWarning: Ignoring list columns as inputs to XGBoost model: ['item_genres', 'user_genres']. warnings.warn(f"Ignoring list columns as inputs to XGBoost model: {list_column_names}.")

tests/unit/xgb/test_xgboost.py::TestXGBoost::test_unsupported_objective /usr/local/lib/python3.8/dist-packages/tornado/ioloop.py:350: DeprecationWarning: make_current is deprecated; start the event loop first self.make_current()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] tests/unit/datasets/test_advertising.py:20: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [1] tests/unit/datasets/test_ecommerce.py:62: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:78: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:92: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [3] tests/unit/datasets/test_entertainment.py:44: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [4] ../../../../../usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/test_util.py:2746: Not a test. ===== 1 failed, 661 passed, 11 skipped, 996 warnings in 930.78s (0:15:30) ====== Build step 'Execute shell' marked build as failure Performing Post build task... Match found for : : True Logical operation result is TRUE Running script : #!/bin/bash cd /var/jenkins_home/ CUDA_VISIBLE_DEVICES=1 python test_res_push.py "https://api.GitHub.com/repos/NVIDIA-Merlin/models/issues/$ghprbPullId/comments" "/var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log" [merlin_models] $ /bin/bash /tmp/jenkins5343980808238290652.sh

nvidia-merlin-bot avatar Aug 30 '22 11:08 nvidia-merlin-bot

Click to view CI Results
GitHub pull request #685 of commit 73f717b910be2f9033f78f9c78fca87e11171112, no merge conflicts.
Running as SYSTEM
Setting status of 73f717b910be2f9033f78f9c78fca87e11171112 to PENDING with url https://10.20.13.93:8080/job/merlin_models/1104/console and message: 'Pending'
Using context: Jenkins
Building on master in workspace /var/jenkins_home/workspace/merlin_models
using credential nvidia-merlin-bot
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/NVIDIA-Merlin/models/ # timeout=10
Fetching upstream changes from https://github.com/NVIDIA-Merlin/models/
 > git --version # timeout=10
using GIT_ASKPASS to set credentials This is the bot credentials for our CI/CD
 > git fetch --tags --force --progress -- https://github.com/NVIDIA-Merlin/models/ +refs/pull/685/*:refs/remotes/origin/pr/685/* # timeout=10
 > git rev-parse 73f717b910be2f9033f78f9c78fca87e11171112^{commit} # timeout=10
Checking out Revision 73f717b910be2f9033f78f9c78fca87e11171112 (detached)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 73f717b910be2f9033f78f9c78fca87e11171112 # timeout=10
Commit message: "Merge branch 'main' into in-batch-negative-sampling-with-dataloader"
 > git rev-list --no-walk f5d953757b0084ab5a1cc5646d8edd4008cfbb42 # timeout=10
[merlin_models] $ /bin/bash /tmp/jenkins1701922002844482139.sh
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Requirement already satisfied: testbook in /usr/local/lib/python3.8/dist-packages (0.4.2)
Requirement already satisfied: nbformat>=5.0.4 in /usr/local/lib/python3.8/dist-packages (from testbook) (5.4.0)
Requirement already satisfied: nbclient>=0.4.0 in /usr/local/lib/python3.8/dist-packages (from testbook) (0.6.6)
Requirement already satisfied: traitlets>=5.1 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (5.3.0)
Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.9.1)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.11.1)
Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (2.16.1)
Requirement already satisfied: jupyter-client>=6.1.5 in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (7.3.4)
Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (1.5.5)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (22.1.0)
Requirement already satisfied: importlib-resources>=1.4.0; python_version =2.6->nbformat>=5.0.4->testbook) (5.9.0)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10; python_version =2.6->nbformat>=5.0.4->testbook) (1.3.10)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (0.18.1)
Requirement already satisfied: entrypoints in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (0.4)
Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (2.8.2)
Requirement already satisfied: pyzmq>=23.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (23.2.1)
Requirement already satisfied: tornado>=6.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (6.2)
Requirement already satisfied: zipp>=3.1.0; python_version =1.4.0; python_version jsonschema>=2.6->nbformat>=5.0.4->testbook) (3.8.1)
Requirement already satisfied: six>=1.5 in /var/jenkins_home/.local/lib/python3.8/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (1.15.0)
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.2, pluggy-1.0.0
rootdir: /var/jenkins_home/workspace/merlin_models/models, configfile: pyproject.toml
plugins: anyio-3.6.1, xdist-2.5.0, forked-1.4.0, cov-3.0.0
collected 678 items

tests/unit/config/test_schema.py .... [ 0%] tests/unit/datasets/test_advertising.py .s [ 0%] tests/unit/datasets/test_ecommerce.py ..sss [ 1%] tests/unit/datasets/test_entertainment.py ....sss. [ 2%] tests/unit/datasets/test_social.py . [ 2%] tests/unit/datasets/test_synthetic.py ...... [ 3%] tests/unit/implicit/test_implicit.py . [ 3%] tests/unit/lightfm/test_lightfm.py . [ 4%] tests/unit/tf/test_core.py ...... [ 5%] tests/unit/tf/test_dataset.py ................ [ 7%] tests/unit/tf/test_public_api.py . [ 7%] tests/unit/tf/blocks/test_cross.py ........... [ 9%] tests/unit/tf/blocks/test_dlrm.py .......... [ 10%] tests/unit/tf/blocks/test_interactions.py . [ 10%] tests/unit/tf/blocks/test_mlp.py ................................. [ 15%] tests/unit/tf/blocks/test_optimizer.py s................................ [ 20%] ..................... [ 23%] tests/unit/tf/blocks/retrieval/test_base.py . [ 23%] tests/unit/tf/blocks/retrieval/test_matrix_factorization.py .. [ 24%] tests/unit/tf/blocks/retrieval/test_two_tower.py ........... [ 25%] tests/unit/tf/blocks/sampling/test_cross_batch.py . [ 25%] tests/unit/tf/blocks/sampling/test_in_batch.py . [ 25%] tests/unit/tf/core/test_aggregation.py ......... [ 27%] tests/unit/tf/core/test_base.py .. [ 27%] tests/unit/tf/core/test_combinators.py s................... [ 30%] tests/unit/tf/core/test_index.py ... [ 30%] tests/unit/tf/core/test_prediction.py .. [ 31%] tests/unit/tf/core/test_tabular.py .... [ 31%] tests/unit/tf/core/test_transformations.py s............................ [ 36%] .................. [ 38%] tests/unit/tf/data_augmentation/test_misc.py . [ 38%] tests/unit/tf/data_augmentation/test_negative_sampling.py .......... [ 40%] tests/unit/tf/data_augmentation/test_noise.py ..... [ 41%] tests/unit/tf/examples/test_01_getting_started.py . [ 41%] tests/unit/tf/examples/test_02_dataschema.py . [ 41%] tests/unit/tf/examples/test_03_exploring_different_models.py . [ 41%] tests/unit/tf/examples/test_04_export_ranking_models.py . [ 41%] tests/unit/tf/examples/test_05_export_retrieval_model.py . [ 41%] tests/unit/tf/examples/test_06_advanced_own_architecture.py . [ 42%] tests/unit/tf/examples/test_07_train_traditional_models.py . [ 42%] tests/unit/tf/examples/test_usecase_ecommerce_session_based.py . [ 42%] tests/unit/tf/examples/test_usecase_pretrained_embeddings.py . [ 42%] tests/unit/tf/inputs/test_continuous.py ..... [ 43%] tests/unit/tf/inputs/test_embedding.py ................................. [ 48%] .. [ 48%] tests/unit/tf/inputs/test_tabular.py .................. [ 51%] tests/unit/tf/layers/test_queue.py .............. [ 53%] tests/unit/tf/losses/test_losses.py ....................... [ 56%] tests/unit/tf/metrics/test_metrics_popularity.py ..... [ 57%] tests/unit/tf/metrics/test_metrics_topk.py ....................... [ 60%] tests/unit/tf/models/test_base.py s................ [ 63%] tests/unit/tf/models/test_benchmark.py .. [ 63%] tests/unit/tf/models/test_ranking.py .............................. [ 67%] tests/unit/tf/models/test_retrieval.py ................................ [ 72%] tests/unit/tf/prediction_tasks/test_classification.py .. [ 72%] tests/unit/tf/prediction_tasks/test_multi_task.py ................ [ 75%] tests/unit/tf/prediction_tasks/test_next_item.py ..... [ 75%] tests/unit/tf/prediction_tasks/test_regression.py .. [ 76%] tests/unit/tf/prediction_tasks/test_retrieval.py . [ 76%] tests/unit/tf/prediction_tasks/test_sampling.py ...... [ 77%] tests/unit/tf/predictions/test_base.py ..... [ 78%] tests/unit/tf/predictions/test_classification.py ....... [ 79%] tests/unit/tf/predictions/test_dot_product.py ........ [ 80%] tests/unit/tf/predictions/test_regression.py .. [ 80%] tests/unit/tf/predictions/test_sampling.py .... [ 81%] tests/unit/tf/utils/test_batch.py .... [ 81%] tests/unit/tf/utils/test_tf_utils.py ..... [ 82%] tests/unit/torch/test_dataset.py ......... [ 83%] tests/unit/torch/test_public_api.py . [ 83%] tests/unit/torch/block/test_base.py .... [ 84%] tests/unit/torch/block/test_mlp.py . [ 84%] tests/unit/torch/features/test_continuous.py .. [ 84%] tests/unit/torch/features/test_embedding.py .............. [ 87%] tests/unit/torch/features/test_tabular.py .... [ 87%] tests/unit/torch/model/test_head.py ............ [ 89%] tests/unit/torch/model/test_model.py .. [ 89%] tests/unit/torch/tabular/test_aggregation.py ........ [ 90%] tests/unit/torch/tabular/test_tabular.py ... [ 91%] tests/unit/torch/tabular/test_transformations.py ....... [ 92%] tests/unit/utils/test_schema_utils.py ................................ [ 97%] tests/unit/xgb/test_xgboost.py .................... [100%]

=============================== warnings summary =============================== ../../../../../usr/lib/python3/dist-packages/requests/init.py:89 /usr/lib/python3/dist-packages/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.11) or chardet (3.0.4) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36: DeprecationWarning: NEAREST is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.NEAREST or Dither.NONE instead. 'nearest': pil_image.NEAREST,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37: DeprecationWarning: BILINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead. 'bilinear': pil_image.BILINEAR,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38: DeprecationWarning: BICUBIC is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BICUBIC instead. 'bicubic': pil_image.BICUBIC,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39: DeprecationWarning: HAMMING is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.HAMMING instead. 'hamming': pil_image.HAMMING,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40: DeprecationWarning: BOX is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BOX instead. 'box': pil_image.BOX,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41: DeprecationWarning: LANCZOS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead. 'lanczos': pil_image.LANCZOS,

tests/unit/datasets/test_advertising.py: 1 warning tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 6 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 8 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 13 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/data_augmentation/test_noise.py: 1 warning tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 17 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 34 warnings tests/unit/tf/models/test_retrieval.py: 60 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/prediction_tasks/test_retrieval.py: 1 warning tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 9 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 3 warnings tests/unit/xgb/test_xgboost.py: 18 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.ITEM_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.ITEM: 'item'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 5 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_index.py: 3 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 10 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 17 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 32 warnings tests/unit/tf/models/test_retrieval.py: 32 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 7 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 2 warnings tests/unit/xgb/test_xgboost.py: 17 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.USER_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.USER: 'user'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py::test_synthetic_aliccp_raw_data tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-8] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-8] tests/unit/tf/test_dataset.py::test_tf_catname_ordering tests/unit/tf/test_dataset.py::test_tf_map /usr/local/lib/python3.8/dist-packages/cudf/core/frame.py:384: UserWarning: The deep parameter is ignored and is only included for pandas compatibility. warnings.warn(

tests/unit/datasets/test_entertainment.py: 1 warning tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_prediction.py: 1 warning tests/unit/tf/data_augmentation/test_negative_sampling.py: 9 warnings tests/unit/tf/inputs/test_continuous.py: 2 warnings tests/unit/tf/inputs/test_embedding.py: 9 warnings tests/unit/tf/inputs/test_tabular.py: 8 warnings tests/unit/tf/models/test_ranking.py: 16 warnings tests/unit/tf/models/test_retrieval.py: 4 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/xgb/test_xgboost.py: 12 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.SESSION_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.SESSION: 'session'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/inputs/test_embedding.py::test_embedding_features_exporting_and_loading_pretrained_initializer /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/inputs/embedding.py:807: DeprecationWarning: This function is deprecated in favor of cupy.from_dlpack embeddings_cupy = cupy.fromDlpack(to_dlpack(tf.convert_to_tensor(embeddings)))

tests/unit/tf/core/test_index.py: 4 warnings tests/unit/tf/models/test_retrieval.py: 54 warnings tests/unit/tf/prediction_tasks/test_next_item.py: 3 warnings tests/unit/tf/predictions/test_classification.py: 12 warnings tests/unit/tf/predictions/test_dot_product.py: 2 warnings tests/unit/tf/utils/test_batch.py: 2 warnings /tmp/autograph_generated_file1ihiwp3.py:8: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead ag_.converted_call(ag__.ld(warnings).warn, ("The 'warn' method is deprecated, use 'warning' instead", ag__.ld(DeprecationWarning), 2), None, fscope)

tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.1] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.3] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.5] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.7] tests/unit/tf/models/test_base.py::test_model_pre_post[True] tests/unit/tf/models/test_base.py::test_model_pre_post[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/util/dispatch.py:1082: UserWarning: tf.keras.backend.random_binomial is deprecated, and will be removed in a future version.Please use tf.keras.backend.random_bernoulli instead. return dispatch_target(*args, **kwargs)

tests/unit/tf/models/test_base.py::test_freeze_parallel_block[True] tests/unit/tf/models/test_base.py::test_freeze_sequential_block tests/unit/tf/models/test_base.py::test_freeze_unfreeze tests/unit/tf/models/test_base.py::test_unfreeze_all_blocks /usr/local/lib/python3.8/dist-packages/keras/optimizers/optimizer_v2/gradient_descent.py:108: UserWarning: The lr argument is deprecated, use learning_rate instead. super(SGD, self).init(name, **kwargs)

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_categorical_one_hot[False] tests/unit/tf/models/test_ranking.py::test_wide_deep_model_hashed_cross[False] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[True] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/core/transformations.py:980: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py:371: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag return py_builtins.overload_of(f)(*args)

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_onehot_multihot_feature_interaction[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_feature_interaction_multi_optimizer[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/torch/block/test_mlp.py::test_mlp_block /var/jenkins_home/workspace/merlin_models/models/tests/unit/torch/_conftest.py:151: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at ../torch/csrc/utils/tensor_new.cpp:201.) return {key: torch.tensor(value) for key, value in data.items()}

tests/unit/xgb/test_xgboost.py::test_without_dask_client tests/unit/xgb/test_xgboost.py::TestXGBoost::test_music_regression tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs0-DaskDeviceQuantileDMatrix] tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs1-DaskDMatrix] tests/unit/xgb/test_xgboost.py::TestEvals::test_multiple tests/unit/xgb/test_xgboost.py::TestEvals::test_default tests/unit/xgb/test_xgboost.py::TestEvals::test_train_and_valid tests/unit/xgb/test_xgboost.py::TestEvals::test_invalid_data /var/jenkins_home/workspace/merlin_models/models/merlin/models/xgb/init.py:335: UserWarning: Ignoring list columns as inputs to XGBoost model: ['item_genres', 'user_genres']. warnings.warn(f"Ignoring list columns as inputs to XGBoost model: {list_column_names}.")

tests/unit/xgb/test_xgboost.py::TestXGBoost::test_unsupported_objective /usr/local/lib/python3.8/dist-packages/tornado/ioloop.py:350: DeprecationWarning: make_current is deprecated; start the event loop first self.make_current()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] tests/unit/datasets/test_advertising.py:20: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [1] tests/unit/datasets/test_ecommerce.py:62: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:78: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:92: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [3] tests/unit/datasets/test_entertainment.py:44: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [4] ../../../../../usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/test_util.py:2746: Not a test. ========== 667 passed, 11 skipped, 1011 warnings in 947.45s (0:15:47) ========== Performing Post build task... Match found for : : True Logical operation result is TRUE Running script : #!/bin/bash cd /var/jenkins_home/ CUDA_VISIBLE_DEVICES=1 python test_res_push.py "https://api.GitHub.com/repos/NVIDIA-Merlin/models/issues/$ghprbPullId/comments" "/var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log" [merlin_models] $ /bin/bash /tmp/jenkins10507096986075754686.sh

nvidia-merlin-bot avatar Aug 31 '22 15:08 nvidia-merlin-bot

Click to view CI Results
GitHub pull request #685 of commit 4e44065fbb97fa1014be19a0281d473d46ffbd91, no merge conflicts.
Running as SYSTEM
Setting status of 4e44065fbb97fa1014be19a0281d473d46ffbd91 to PENDING with url https://10.20.13.93:8080/job/merlin_models/1193/console and message: 'Pending'
Using context: Jenkins
Building on master in workspace /var/jenkins_home/workspace/merlin_models
using credential nvidia-merlin-bot
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/NVIDIA-Merlin/models/ # timeout=10
Fetching upstream changes from https://github.com/NVIDIA-Merlin/models/
 > git --version # timeout=10
using GIT_ASKPASS to set credentials This is the bot credentials for our CI/CD
 > git fetch --tags --force --progress -- https://github.com/NVIDIA-Merlin/models/ +refs/pull/685/*:refs/remotes/origin/pr/685/* # timeout=10
 > git rev-parse 4e44065fbb97fa1014be19a0281d473d46ffbd91^{commit} # timeout=10
Checking out Revision 4e44065fbb97fa1014be19a0281d473d46ffbd91 (detached)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 4e44065fbb97fa1014be19a0281d473d46ffbd91 # timeout=10
Commit message: "Merge branch 'main' into in-batch-negative-sampling-with-dataloader"
 > git rev-list --no-walk cf6a293d1fbd51418226af2c1b80ca596a339c3a # timeout=10
[merlin_models] $ /bin/bash /tmp/jenkins4134992773165573820.sh
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Requirement already satisfied: testbook in /usr/local/lib/python3.8/dist-packages (0.4.2)
Requirement already satisfied: nbformat>=5.0.4 in /usr/local/lib/python3.8/dist-packages (from testbook) (5.4.0)
Requirement already satisfied: nbclient>=0.4.0 in /usr/local/lib/python3.8/dist-packages (from testbook) (0.6.6)
Requirement already satisfied: traitlets>=5.1 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (5.3.0)
Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.9.1)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.11.1)
Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (2.16.1)
Requirement already satisfied: jupyter-client>=6.1.5 in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (7.3.4)
Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (1.5.5)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (22.1.0)
Requirement already satisfied: importlib-resources>=1.4.0; python_version =2.6->nbformat>=5.0.4->testbook) (5.9.0)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10; python_version =2.6->nbformat>=5.0.4->testbook) (1.3.10)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (0.18.1)
Requirement already satisfied: entrypoints in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (0.4)
Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (2.8.2)
Requirement already satisfied: pyzmq>=23.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (23.2.1)
Requirement already satisfied: tornado>=6.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (6.2)
Requirement already satisfied: zipp>=3.1.0; python_version =1.4.0; python_version jsonschema>=2.6->nbformat>=5.0.4->testbook) (3.8.1)
Requirement already satisfied: six>=1.5 in /var/jenkins_home/.local/lib/python3.8/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (1.15.0)
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.2, pluggy-1.0.0
rootdir: /var/jenkins_home/workspace/merlin_models/models, configfile: pyproject.toml
plugins: anyio-3.6.1, xdist-2.5.0, forked-1.4.0, cov-3.0.0
collected 682 items

tests/unit/config/test_schema.py .... [ 0%] tests/unit/datasets/test_advertising.py .s [ 0%] tests/unit/datasets/test_ecommerce.py ..sss [ 1%] tests/unit/datasets/test_entertainment.py ....sss. [ 2%] tests/unit/datasets/test_social.py . [ 2%] tests/unit/datasets/test_synthetic.py ...... [ 3%] tests/unit/implicit/test_implicit.py . [ 3%] tests/unit/lightfm/test_lightfm.py . [ 4%] tests/unit/tf/test_core.py ...... [ 4%] tests/unit/tf/test_dataset.py ................ [ 7%] tests/unit/tf/test_public_api.py . [ 7%] tests/unit/tf/blocks/test_cross.py ........... [ 9%] tests/unit/tf/blocks/test_dlrm.py .......... [ 10%] tests/unit/tf/blocks/test_interactions.py . [ 10%] tests/unit/tf/blocks/test_mlp.py ................................. [ 15%] tests/unit/tf/blocks/test_optimizer.py s................................ [ 20%] ..................... [ 23%] tests/unit/tf/blocks/retrieval/test_base.py . [ 23%] tests/unit/tf/blocks/retrieval/test_matrix_factorization.py .. [ 23%] tests/unit/tf/blocks/retrieval/test_two_tower.py ........... [ 25%] tests/unit/tf/blocks/sampling/test_cross_batch.py . [ 25%] tests/unit/tf/blocks/sampling/test_in_batch.py . [ 25%] tests/unit/tf/core/test_aggregation.py ......... [ 27%] tests/unit/tf/core/test_base.py .. [ 27%] tests/unit/tf/core/test_combinators.py s................... [ 30%] tests/unit/tf/core/test_encoder.py . [ 30%] tests/unit/tf/core/test_index.py ... [ 30%] tests/unit/tf/core/test_prediction.py .. [ 31%] tests/unit/tf/core/test_tabular.py .... [ 31%] tests/unit/tf/core/test_transformations.py s............................ [ 36%] .................. [ 38%] tests/unit/tf/data_augmentation/test_misc.py . [ 38%] tests/unit/tf/data_augmentation/test_negative_sampling.py .......... [ 40%] tests/unit/tf/data_augmentation/test_noise.py ..... [ 41%] tests/unit/tf/examples/test_01_getting_started.py . [ 41%] tests/unit/tf/examples/test_02_dataschema.py . [ 41%] tests/unit/tf/examples/test_03_exploring_different_models.py . [ 41%] tests/unit/tf/examples/test_04_export_ranking_models.py . [ 41%] tests/unit/tf/examples/test_05_export_retrieval_model.py . [ 41%] tests/unit/tf/examples/test_06_advanced_own_architecture.py . [ 41%] tests/unit/tf/examples/test_07_train_traditional_models.py . [ 42%] tests/unit/tf/examples/test_usecase_ecommerce_session_based.py . [ 42%] tests/unit/tf/examples/test_usecase_pretrained_embeddings.py . [ 42%] tests/unit/tf/inputs/test_continuous.py ..... [ 43%] tests/unit/tf/inputs/test_embedding.py ................................. [ 47%] ..... [ 48%] tests/unit/tf/inputs/test_tabular.py .................. [ 51%] tests/unit/tf/layers/test_queue.py .............. [ 53%] tests/unit/tf/losses/test_losses.py ....................... [ 56%] tests/unit/tf/metrics/test_metrics_popularity.py ..... [ 57%] tests/unit/tf/metrics/test_metrics_topk.py ....................... [ 60%] tests/unit/tf/models/test_base.py s................ [ 63%] tests/unit/tf/models/test_benchmark.py .. [ 63%] tests/unit/tf/models/test_ranking.py .............................. [ 68%] tests/unit/tf/models/test_retrieval.py ................................ [ 72%] tests/unit/tf/prediction_tasks/test_classification.py .. [ 73%] tests/unit/tf/prediction_tasks/test_multi_task.py ................ [ 75%] tests/unit/tf/prediction_tasks/test_next_item.py ..... [ 76%] tests/unit/tf/prediction_tasks/test_regression.py .. [ 76%] tests/unit/tf/prediction_tasks/test_retrieval.py . [ 76%] tests/unit/tf/prediction_tasks/test_sampling.py ...... [ 77%] tests/unit/tf/predictions/test_base.py ..... [ 78%] tests/unit/tf/predictions/test_classification.py ....... [ 79%] tests/unit/tf/predictions/test_dot_product.py ........ [ 80%] tests/unit/tf/predictions/test_regression.py .. [ 80%] tests/unit/tf/predictions/test_sampling.py .... [ 81%] tests/unit/tf/utils/test_batch.py .... [ 81%] tests/unit/tf/utils/test_tf_utils.py ..... [ 82%] tests/unit/torch/test_dataset.py ......... [ 83%] tests/unit/torch/test_public_api.py . [ 84%] tests/unit/torch/block/test_base.py .... [ 84%] tests/unit/torch/block/test_mlp.py . [ 84%] tests/unit/torch/features/test_continuous.py .. [ 85%] tests/unit/torch/features/test_embedding.py .............. [ 87%] tests/unit/torch/features/test_tabular.py .... [ 87%] tests/unit/torch/model/test_head.py ............ [ 89%] tests/unit/torch/model/test_model.py .. [ 89%] tests/unit/torch/tabular/test_aggregation.py ........ [ 90%] tests/unit/torch/tabular/test_tabular.py ... [ 91%] tests/unit/torch/tabular/test_transformations.py ....... [ 92%] tests/unit/utils/test_schema_utils.py ................................ [ 97%] tests/unit/xgb/test_xgboost.py .................... [100%]

=============================== warnings summary =============================== ../../../../../usr/lib/python3/dist-packages/requests/init.py:89 /usr/lib/python3/dist-packages/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.11) or chardet (3.0.4) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36: DeprecationWarning: NEAREST is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.NEAREST or Dither.NONE instead. 'nearest': pil_image.NEAREST,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37: DeprecationWarning: BILINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead. 'bilinear': pil_image.BILINEAR,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38: DeprecationWarning: BICUBIC is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BICUBIC instead. 'bicubic': pil_image.BICUBIC,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39: DeprecationWarning: HAMMING is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.HAMMING instead. 'hamming': pil_image.HAMMING,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40: DeprecationWarning: BOX is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BOX instead. 'box': pil_image.BOX,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41: DeprecationWarning: LANCZOS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead. 'lanczos': pil_image.LANCZOS,

tests/unit/datasets/test_advertising.py: 1 warning tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 6 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_encoder.py: 2 warnings tests/unit/tf/core/test_index.py: 8 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 13 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/data_augmentation/test_noise.py: 1 warning tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 17 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 34 warnings tests/unit/tf/models/test_retrieval.py: 60 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/prediction_tasks/test_retrieval.py: 1 warning tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 9 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 3 warnings tests/unit/xgb/test_xgboost.py: 18 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.ITEM_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.ITEM: 'item'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 5 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_encoder.py: 2 warnings tests/unit/tf/core/test_index.py: 3 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 10 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 17 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 32 warnings tests/unit/tf/models/test_retrieval.py: 32 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 2 warnings tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 7 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 2 warnings tests/unit/xgb/test_xgboost.py: 17 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.USER_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.USER: 'user'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py::test_synthetic_aliccp_raw_data tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-8] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-8] tests/unit/tf/test_dataset.py::test_tf_catname_ordering tests/unit/tf/test_dataset.py::test_tf_map /usr/local/lib/python3.8/dist-packages/cudf/core/frame.py:384: UserWarning: The deep parameter is ignored and is only included for pandas compatibility. warnings.warn(

tests/unit/datasets/test_entertainment.py: 1 warning tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_encoder.py: 1 warning tests/unit/tf/core/test_prediction.py: 1 warning tests/unit/tf/data_augmentation/test_negative_sampling.py: 9 warnings tests/unit/tf/inputs/test_continuous.py: 2 warnings tests/unit/tf/inputs/test_embedding.py: 9 warnings tests/unit/tf/inputs/test_tabular.py: 8 warnings tests/unit/tf/models/test_ranking.py: 16 warnings tests/unit/tf/models/test_retrieval.py: 4 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/xgb/test_xgboost.py: 12 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.SESSION_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.SESSION: 'session'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/inputs/test_embedding.py::test_embedding_features_exporting_and_loading_pretrained_initializer /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/inputs/embedding.py:879: DeprecationWarning: This function is deprecated in favor of cupy.from_dlpack embeddings_cupy = cupy.fromDlpack(to_dlpack(tf.convert_to_tensor(embeddings)))

tests/unit/tf/core/test_index.py: 4 warnings tests/unit/tf/models/test_retrieval.py: 54 warnings tests/unit/tf/prediction_tasks/test_next_item.py: 3 warnings tests/unit/tf/predictions/test_classification.py: 12 warnings tests/unit/tf/predictions/test_dot_product.py: 2 warnings tests/unit/tf/utils/test_batch.py: 2 warnings /tmp/autograph_generated_file0r_7gp52.py:8: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead ag.converted_call(ag__.ld(warnings).warn, ("The 'warn' method is deprecated, use 'warning' instead", ag__.ld(DeprecationWarning), 2), None, fscope)

tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.1] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.3] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.5] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.7] tests/unit/tf/models/test_base.py::test_model_pre_post[True] tests/unit/tf/models/test_base.py::test_model_pre_post[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/util/dispatch.py:1082: UserWarning: tf.keras.backend.random_binomial is deprecated, and will be removed in a future version.Please use tf.keras.backend.random_bernoulli instead. return dispatch_target(*args, **kwargs)

tests/unit/tf/models/test_base.py::test_freeze_parallel_block[True] tests/unit/tf/models/test_base.py::test_freeze_sequential_block tests/unit/tf/models/test_base.py::test_freeze_unfreeze tests/unit/tf/models/test_base.py::test_unfreeze_all_blocks /usr/local/lib/python3.8/dist-packages/keras/optimizers/optimizer_v2/gradient_descent.py:108: UserWarning: The lr argument is deprecated, use learning_rate instead. super(SGD, self).init(name, **kwargs)

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_categorical_one_hot[False] tests/unit/tf/models/test_ranking.py::test_wide_deep_model_hashed_cross[False] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[True] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/core/transformations.py:980: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py:371: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag return py_builtins.overload_of(f)(*args)

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_onehot_multihot_feature_interaction[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_feature_interaction_multi_optimizer[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/torch/block/test_mlp.py::test_mlp_block /var/jenkins_home/workspace/merlin_models/models/tests/unit/torch/_conftest.py:151: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at ../torch/csrc/utils/tensor_new.cpp:201.) return {key: torch.tensor(value) for key, value in data.items()}

tests/unit/xgb/test_xgboost.py::test_without_dask_client tests/unit/xgb/test_xgboost.py::TestXGBoost::test_music_regression tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs0-DaskDeviceQuantileDMatrix] tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs1-DaskDMatrix] tests/unit/xgb/test_xgboost.py::TestEvals::test_multiple tests/unit/xgb/test_xgboost.py::TestEvals::test_default tests/unit/xgb/test_xgboost.py::TestEvals::test_train_and_valid tests/unit/xgb/test_xgboost.py::TestEvals::test_invalid_data /var/jenkins_home/workspace/merlin_models/models/merlin/models/xgb/init.py:335: UserWarning: Ignoring list columns as inputs to XGBoost model: ['item_genres', 'user_genres']. warnings.warn(f"Ignoring list columns as inputs to XGBoost model: {list_column_names}.")

tests/unit/xgb/test_xgboost.py::TestXGBoost::test_unsupported_objective /usr/local/lib/python3.8/dist-packages/tornado/ioloop.py:350: DeprecationWarning: make_current is deprecated; start the event loop first self.make_current()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] tests/unit/datasets/test_advertising.py:20: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [1] tests/unit/datasets/test_ecommerce.py:62: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:78: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:92: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [3] tests/unit/datasets/test_entertainment.py:44: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [4] ../../../../../usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/test_util.py:2746: Not a test. ========== 671 passed, 11 skipped, 1016 warnings in 960.64s (0:16:00) ========== Performing Post build task... Match found for : : True Logical operation result is TRUE Running script : #!/bin/bash cd /var/jenkins_home/ CUDA_VISIBLE_DEVICES=1 python test_res_push.py "https://api.GitHub.com/repos/NVIDIA-Merlin/models/issues/$ghprbPullId/comments" "/var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log" [merlin_models] $ /bin/bash /tmp/jenkins12188807120337416845.sh

nvidia-merlin-bot avatar Sep 12 '22 15:09 nvidia-merlin-bot

Click to view CI Results
GitHub pull request #685 of commit 2c79522a130b6792b437931046eced580619b5e9, no merge conflicts.
Running as SYSTEM
Setting status of 2c79522a130b6792b437931046eced580619b5e9 to PENDING with url https://10.20.13.93:8080/job/merlin_models/1217/console and message: 'Pending'
Using context: Jenkins
Building on master in workspace /var/jenkins_home/workspace/merlin_models
using credential nvidia-merlin-bot
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url https://github.com/NVIDIA-Merlin/models/ # timeout=10
Fetching upstream changes from https://github.com/NVIDIA-Merlin/models/
 > git --version # timeout=10
using GIT_ASKPASS to set credentials This is the bot credentials for our CI/CD
 > git fetch --tags --force --progress -- https://github.com/NVIDIA-Merlin/models/ +refs/pull/685/*:refs/remotes/origin/pr/685/* # timeout=10
 > git rev-parse 2c79522a130b6792b437931046eced580619b5e9^{commit} # timeout=10
Checking out Revision 2c79522a130b6792b437931046eced580619b5e9 (detached)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 2c79522a130b6792b437931046eced580619b5e9 # timeout=10
Commit message: "Merge branch 'main' into in-batch-negative-sampling-with-dataloader"
 > git rev-list --no-walk 48b7e4ade146052710796e64c8d7f6425fa53e38 # timeout=10
[merlin_models] $ /bin/bash /tmp/jenkins15646299174745742302.sh
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Requirement already satisfied: testbook in /usr/local/lib/python3.8/dist-packages (0.4.2)
Requirement already satisfied: nbformat>=5.0.4 in /usr/local/lib/python3.8/dist-packages (from testbook) (5.4.0)
Requirement already satisfied: nbclient>=0.4.0 in /usr/local/lib/python3.8/dist-packages (from testbook) (0.6.6)
Requirement already satisfied: traitlets>=5.1 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (5.3.0)
Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.9.1)
Requirement already satisfied: jupyter-core in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (4.11.1)
Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.8/dist-packages (from nbformat>=5.0.4->testbook) (2.16.1)
Requirement already satisfied: jupyter-client>=6.1.5 in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (7.3.4)
Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.8/dist-packages (from nbclient>=0.4.0->testbook) (1.5.5)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (22.1.0)
Requirement already satisfied: importlib-resources>=1.4.0; python_version =2.6->nbformat>=5.0.4->testbook) (5.9.0)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10; python_version =2.6->nbformat>=5.0.4->testbook) (1.3.10)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.8/dist-packages (from jsonschema>=2.6->nbformat>=5.0.4->testbook) (0.18.1)
Requirement already satisfied: entrypoints in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (0.4)
Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (2.8.2)
Requirement already satisfied: pyzmq>=23.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (23.2.1)
Requirement already satisfied: tornado>=6.0 in /usr/local/lib/python3.8/dist-packages (from jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (6.2)
Requirement already satisfied: zipp>=3.1.0; python_version =1.4.0; python_version jsonschema>=2.6->nbformat>=5.0.4->testbook) (3.8.1)
Requirement already satisfied: six>=1.5 in /var/jenkins_home/.local/lib/python3.8/site-packages (from python-dateutil>=2.8.2->jupyter-client>=6.1.5->nbclient>=0.4.0->testbook) (1.15.0)
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.2, pluggy-1.0.0
rootdir: /var/jenkins_home/workspace/merlin_models/models, configfile: pyproject.toml
plugins: anyio-3.6.1, xdist-2.5.0, forked-1.4.0, cov-3.0.0
collected 685 items

tests/unit/config/test_schema.py .... [ 0%] tests/unit/datasets/test_advertising.py .s [ 0%] tests/unit/datasets/test_ecommerce.py ..sss [ 1%] tests/unit/datasets/test_entertainment.py ....sss. [ 2%] tests/unit/datasets/test_social.py . [ 2%] tests/unit/datasets/test_synthetic.py ...... [ 3%] tests/unit/implicit/test_implicit.py . [ 3%] tests/unit/lightfm/test_lightfm.py . [ 4%] tests/unit/tf/test_core.py ...... [ 4%] tests/unit/tf/test_dataset.py ................ [ 7%] tests/unit/tf/test_public_api.py . [ 7%] tests/unit/tf/blocks/test_cross.py ........... [ 9%] tests/unit/tf/blocks/test_dlrm.py .......... [ 10%] tests/unit/tf/blocks/test_interactions.py . [ 10%] tests/unit/tf/blocks/test_mlp.py ................................. [ 15%] tests/unit/tf/blocks/test_optimizer.py s................................ [ 20%] ..................... [ 23%] tests/unit/tf/blocks/retrieval/test_base.py . [ 23%] tests/unit/tf/blocks/retrieval/test_matrix_factorization.py .. [ 23%] tests/unit/tf/blocks/retrieval/test_two_tower.py ........... [ 25%] tests/unit/tf/blocks/sampling/test_cross_batch.py . [ 25%] tests/unit/tf/blocks/sampling/test_in_batch.py . [ 25%] tests/unit/tf/core/test_aggregation.py ......... [ 27%] tests/unit/tf/core/test_base.py .. [ 27%] tests/unit/tf/core/test_combinators.py s................... [ 30%] tests/unit/tf/core/test_encoder.py . [ 30%] tests/unit/tf/core/test_index.py ... [ 30%] tests/unit/tf/core/test_prediction.py .. [ 31%] tests/unit/tf/core/test_tabular.py .... [ 31%] tests/unit/tf/core/test_transformations.py s............................ [ 35%] .................. [ 38%] tests/unit/tf/data_augmentation/test_misc.py . [ 38%] tests/unit/tf/data_augmentation/test_negative_sampling.py .......... [ 40%] tests/unit/tf/data_augmentation/test_noise.py ..... [ 40%] tests/unit/tf/examples/test_01_getting_started.py . [ 41%] tests/unit/tf/examples/test_02_dataschema.py . [ 41%] tests/unit/tf/examples/test_03_exploring_different_models.py . [ 41%] tests/unit/tf/examples/test_04_export_ranking_models.py . [ 41%] tests/unit/tf/examples/test_05_export_retrieval_model.py . [ 41%] tests/unit/tf/examples/test_06_advanced_own_architecture.py . [ 41%] tests/unit/tf/examples/test_07_train_traditional_models.py . [ 41%] tests/unit/tf/examples/test_usecase_ecommerce_session_based.py . [ 42%] tests/unit/tf/examples/test_usecase_pretrained_embeddings.py . [ 42%] tests/unit/tf/inputs/test_continuous.py ..... [ 42%] tests/unit/tf/inputs/test_embedding.py ................................. [ 47%] ..... [ 48%] tests/unit/tf/inputs/test_tabular.py .................. [ 51%] tests/unit/tf/layers/test_queue.py .............. [ 53%] tests/unit/tf/losses/test_losses.py ....................... [ 56%] tests/unit/tf/metrics/test_metrics_popularity.py ..... [ 57%] tests/unit/tf/metrics/test_metrics_topk.py ....................... [ 60%] tests/unit/tf/models/test_base.py s................ [ 63%] tests/unit/tf/models/test_benchmark.py .. [ 63%] tests/unit/tf/models/test_ranking.py .............................. [ 67%] tests/unit/tf/models/test_retrieval.py ................................ [ 72%] tests/unit/tf/prediction_tasks/test_classification.py .. [ 72%] tests/unit/tf/prediction_tasks/test_multi_task.py ................ [ 75%] tests/unit/tf/prediction_tasks/test_next_item.py ..... [ 75%] tests/unit/tf/prediction_tasks/test_regression.py ..... [ 76%] tests/unit/tf/prediction_tasks/test_retrieval.py . [ 76%] tests/unit/tf/prediction_tasks/test_sampling.py ...... [ 77%] tests/unit/tf/predictions/test_base.py ..... [ 78%] tests/unit/tf/predictions/test_classification.py ....... [ 79%] tests/unit/tf/predictions/test_dot_product.py ........ [ 80%] tests/unit/tf/predictions/test_regression.py .. [ 80%] tests/unit/tf/predictions/test_sampling.py .... [ 81%] tests/unit/tf/utils/test_batch.py .... [ 81%] tests/unit/tf/utils/test_tf_utils.py ..... [ 82%] tests/unit/torch/test_dataset.py ......... [ 83%] tests/unit/torch/test_public_api.py . [ 84%] tests/unit/torch/block/test_base.py .... [ 84%] tests/unit/torch/block/test_mlp.py . [ 84%] tests/unit/torch/features/test_continuous.py .. [ 85%] tests/unit/torch/features/test_embedding.py .............. [ 87%] tests/unit/torch/features/test_tabular.py .... [ 87%] tests/unit/torch/model/test_head.py ............ [ 89%] tests/unit/torch/model/test_model.py .. [ 89%] tests/unit/torch/tabular/test_aggregation.py ........ [ 90%] tests/unit/torch/tabular/test_tabular.py ... [ 91%] tests/unit/torch/tabular/test_transformations.py ....... [ 92%] tests/unit/utils/test_schema_utils.py ................................ [ 97%] tests/unit/xgb/test_xgboost.py .................... [100%]

=============================== warnings summary =============================== ../../../../../usr/lib/python3/dist-packages/requests/init.py:89 /usr/lib/python3/dist-packages/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.11) or chardet (3.0.4) doesn't match a supported version! warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:36: DeprecationWarning: NEAREST is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.NEAREST or Dither.NONE instead. 'nearest': pil_image.NEAREST,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:37: DeprecationWarning: BILINEAR is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BILINEAR instead. 'bilinear': pil_image.BILINEAR,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:38: DeprecationWarning: BICUBIC is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BICUBIC instead. 'bicubic': pil_image.BICUBIC,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:39: DeprecationWarning: HAMMING is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.HAMMING instead. 'hamming': pil_image.HAMMING,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:40: DeprecationWarning: BOX is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.BOX instead. 'box': pil_image.BOX,

../../../../../usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41 /usr/local/lib/python3.8/dist-packages/keras/utils/image_utils.py:41: DeprecationWarning: LANCZOS is deprecated and will be removed in Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead. 'lanczos': pil_image.LANCZOS,

tests/unit/datasets/test_advertising.py: 1 warning tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 6 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_encoder.py: 2 warnings tests/unit/tf/core/test_index.py: 8 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 13 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/data_augmentation/test_noise.py: 1 warning tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 17 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 34 warnings tests/unit/tf/models/test_retrieval.py: 60 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 5 warnings tests/unit/tf/prediction_tasks/test_retrieval.py: 1 warning tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 9 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 3 warnings tests/unit/xgb/test_xgboost.py: 18 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.ITEM_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.ITEM: 'item'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py: 2 warnings tests/unit/datasets/test_entertainment.py: 4 warnings tests/unit/datasets/test_social.py: 1 warning tests/unit/datasets/test_synthetic.py: 5 warnings tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_core.py: 6 warnings tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/test_cross.py: 5 warnings tests/unit/tf/blocks/test_dlrm.py: 9 warnings tests/unit/tf/blocks/test_mlp.py: 26 warnings tests/unit/tf/blocks/test_optimizer.py: 30 warnings tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 10 warnings tests/unit/tf/core/test_aggregation.py: 6 warnings tests/unit/tf/core/test_base.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_encoder.py: 2 warnings tests/unit/tf/core/test_index.py: 3 warnings tests/unit/tf/core/test_prediction.py: 2 warnings tests/unit/tf/core/test_transformations.py: 10 warnings tests/unit/tf/data_augmentation/test_negative_sampling.py: 10 warnings tests/unit/tf/inputs/test_continuous.py: 4 warnings tests/unit/tf/inputs/test_embedding.py: 19 warnings tests/unit/tf/inputs/test_tabular.py: 18 warnings tests/unit/tf/models/test_base.py: 17 warnings tests/unit/tf/models/test_benchmark.py: 2 warnings tests/unit/tf/models/test_ranking.py: 32 warnings tests/unit/tf/models/test_retrieval.py: 32 warnings tests/unit/tf/prediction_tasks/test_classification.py: 2 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 5 warnings tests/unit/tf/predictions/test_base.py: 5 warnings tests/unit/tf/predictions/test_classification.py: 7 warnings tests/unit/tf/predictions/test_dot_product.py: 8 warnings tests/unit/tf/predictions/test_regression.py: 2 warnings tests/unit/tf/utils/test_batch.py: 7 warnings tests/unit/torch/block/test_base.py: 4 warnings tests/unit/torch/block/test_mlp.py: 1 warning tests/unit/torch/features/test_continuous.py: 1 warning tests/unit/torch/features/test_embedding.py: 4 warnings tests/unit/torch/features/test_tabular.py: 4 warnings tests/unit/torch/model/test_head.py: 12 warnings tests/unit/torch/model/test_model.py: 2 warnings tests/unit/torch/tabular/test_aggregation.py: 6 warnings tests/unit/torch/tabular/test_transformations.py: 2 warnings tests/unit/xgb/test_xgboost.py: 17 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.USER_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.USER: 'user'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/datasets/test_ecommerce.py::test_synthetic_aliccp_raw_data tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-True-8] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-10] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-9] tests/unit/tf/test_dataset.py::test_tf_drp_reset[100-False-8] tests/unit/tf/test_dataset.py::test_tf_catname_ordering tests/unit/tf/test_dataset.py::test_tf_map /usr/local/lib/python3.8/dist-packages/cudf/core/frame.py:384: UserWarning: The deep parameter is ignored and is only included for pandas compatibility. warnings.warn(

tests/unit/datasets/test_entertainment.py: 1 warning tests/unit/implicit/test_implicit.py: 1 warning tests/unit/lightfm/test_lightfm.py: 1 warning tests/unit/tf/test_dataset.py: 1 warning tests/unit/tf/blocks/retrieval/test_matrix_factorization.py: 2 warnings tests/unit/tf/blocks/retrieval/test_two_tower.py: 2 warnings tests/unit/tf/core/test_combinators.py: 10 warnings tests/unit/tf/core/test_encoder.py: 1 warning tests/unit/tf/core/test_prediction.py: 1 warning tests/unit/tf/data_augmentation/test_negative_sampling.py: 9 warnings tests/unit/tf/inputs/test_continuous.py: 2 warnings tests/unit/tf/inputs/test_embedding.py: 9 warnings tests/unit/tf/inputs/test_tabular.py: 8 warnings tests/unit/tf/models/test_ranking.py: 16 warnings tests/unit/tf/models/test_retrieval.py: 4 warnings tests/unit/tf/prediction_tasks/test_multi_task.py: 16 warnings tests/unit/tf/prediction_tasks/test_regression.py: 3 warnings tests/unit/xgb/test_xgboost.py: 12 warnings /usr/local/lib/python3.8/dist-packages/merlin/schema/tags.py:148: UserWarning: Compound tags like Tags.SESSION_ID have been deprecated and will be removed in a future version. Please use the atomic versions of these tags, like [<Tags.SESSION: 'session'>, <Tags.ID: 'id'>]. warnings.warn(

tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_matrix_factorization.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/blocks/retrieval/test_two_tower.py::test_matrix_factorization_embedding_export tests/unit/tf/inputs/test_embedding.py::test_embedding_features_exporting_and_loading_pretrained_initializer /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/inputs/embedding.py:879: DeprecationWarning: This function is deprecated in favor of cupy.from_dlpack embeddings_cupy = cupy.fromDlpack(to_dlpack(tf.convert_to_tensor(embeddings)))

tests/unit/tf/core/test_index.py: 4 warnings tests/unit/tf/models/test_retrieval.py: 54 warnings tests/unit/tf/prediction_tasks/test_next_item.py: 3 warnings tests/unit/tf/predictions/test_classification.py: 12 warnings tests/unit/tf/predictions/test_dot_product.py: 2 warnings tests/unit/tf/utils/test_batch.py: 2 warnings /tmp/autograph_generated_filetr07yeoo.py:8: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead ag.converted_call(ag__.ld(warnings).warn, ("The 'warn' method is deprecated, use 'warning' instead", ag__.ld(DeprecationWarning), 2), None, fscope)

tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.1] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.3] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.5] tests/unit/tf/data_augmentation/test_noise.py::test_stochastic_swap_noise[0.7] tests/unit/tf/models/test_base.py::test_model_pre_post[True] tests/unit/tf/models/test_base.py::test_model_pre_post[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/util/dispatch.py:1082: UserWarning: tf.keras.backend.random_binomial is deprecated, and will be removed in a future version.Please use tf.keras.backend.random_bernoulli instead. return dispatch_target(*args, **kwargs)

tests/unit/tf/models/test_base.py::test_freeze_parallel_block[True] tests/unit/tf/models/test_base.py::test_freeze_sequential_block tests/unit/tf/models/test_base.py::test_freeze_unfreeze tests/unit/tf/models/test_base.py::test_unfreeze_all_blocks /usr/local/lib/python3.8/dist-packages/keras/optimizers/optimizer_v2/gradient_descent.py:108: UserWarning: The lr argument is deprecated, use learning_rate instead. super(SGD, self).init(name, **kwargs)

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_categorical_one_hot[False] tests/unit/tf/models/test_ranking.py::test_wide_deep_model_hashed_cross[False] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_2/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[True] tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /var/jenkins_home/workspace/merlin_models/models/merlin/models/tf/core/transformations.py:980: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_embedding_custom_inputblock[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py:371: UserWarning: Please make sure input features to be categorical, detect user_age has no categorical tag return py_builtins.overload_of(f)(*args)

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_onehot_multihot_feature_interaction[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_5/sequential_block_9/sequential_block_8/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/tf/models/test_ranking.py::test_wide_deep_model_wide_feature_interaction_multi_optimizer[False] /usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/indexed_slices.py:444: UserWarning: Converting sparse IndexedSlices(IndexedSlices(indices=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape_1:0", shape=(None,), dtype=int32), values=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Reshape:0", shape=(None, 1), dtype=float32), dense_shape=Tensor("gradient_tape/model/parallel_block_4/sequential_block_6/sequential_block_5/private__dense_3/dense_3/embedding_lookup_sparse/Cast:0", shape=(2,), dtype=int32))) to a dense Tensor of unknown shape. This may consume a large amount of memory. warnings.warn(

tests/unit/torch/block/test_mlp.py::test_mlp_block /var/jenkins_home/workspace/merlin_models/models/tests/unit/torch/_conftest.py:151: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at ../torch/csrc/utils/tensor_new.cpp:201.) return {key: torch.tensor(value) for key, value in data.items()}

tests/unit/xgb/test_xgboost.py::test_without_dask_client tests/unit/xgb/test_xgboost.py::TestXGBoost::test_music_regression tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs0-DaskDeviceQuantileDMatrix] tests/unit/xgb/test_xgboost.py::test_gpu_hist_dmatrix[fit_kwargs1-DaskDMatrix] tests/unit/xgb/test_xgboost.py::TestEvals::test_multiple tests/unit/xgb/test_xgboost.py::TestEvals::test_default tests/unit/xgb/test_xgboost.py::TestEvals::test_train_and_valid tests/unit/xgb/test_xgboost.py::TestEvals::test_invalid_data /var/jenkins_home/workspace/merlin_models/models/merlin/models/xgb/init.py:335: UserWarning: Ignoring list columns as inputs to XGBoost model: ['item_genres', 'user_genres']. warnings.warn(f"Ignoring list columns as inputs to XGBoost model: {list_column_names}.")

tests/unit/xgb/test_xgboost.py::TestXGBoost::test_unsupported_objective /usr/local/lib/python3.8/dist-packages/tornado/ioloop.py:350: DeprecationWarning: make_current is deprecated; start the event loop first self.make_current()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] tests/unit/datasets/test_advertising.py:20: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [1] tests/unit/datasets/test_ecommerce.py:62: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:78: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [1] tests/unit/datasets/test_ecommerce.py:92: ALI-CCP data is not available, pass it through env variable $DATA_PATH_ALICCP SKIPPED [3] tests/unit/datasets/test_entertainment.py:44: No data-dir available, pass it through env variable $INPUT_DATA_DIR SKIPPED [4] ../../../../../usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/test_util.py:2746: Not a test. ========== 674 passed, 11 skipped, 1025 warnings in 975.46s (0:16:15) ========== Performing Post build task... Match found for : : True Logical operation result is TRUE Running script : #!/bin/bash cd /var/jenkins_home/ CUDA_VISIBLE_DEVICES=1 python test_res_push.py "https://api.GitHub.com/repos/NVIDIA-Merlin/models/issues/$ghprbPullId/comments" "/var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/log" [merlin_models] $ /bin/bash /tmp/jenkins14851408293949059565.sh

nvidia-merlin-bot avatar Sep 13 '22 08:09 nvidia-merlin-bot

Replaced by #703

oliverholworthy avatar Sep 14 '22 17:09 oliverholworthy