Sorry, missed this response! I set up a new virtual environment and just ran pip install bayesflow, jax.
This seems about as minimal as I could get? then ran the code above. See full trace below:
(venv) me:~/Documents/repos/bf_minimal$ python3.11 example.py
INFO:jax._src.xla_bridge:Unable to initialize backend 'tpu': INTERNAL: Failed to open libtpu.so: libtpu.so: cannot open shared object file: No such file or directory
WARNING:jax._src.xla_bridge:An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
INFO:bayesflow:Using backend 'jax'
INFO:bayesflow:Fitting on dataset instance of OnlineDataset.
INFO:bayesflow:Building on a test batch.
Traceback (most recent call last):
File "/home/mydetails/Documents/repos/bf_minimal/example.py", line 24, in <module>
history = workflow.fit_online(epochs=5, batch_size=128, num_batches=100)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/workflows/basic_workflow.py", line 340, in fit_online
return self._fit(
^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/workflows/basic_workflow.py", line 467, in _fit
self.history = self.approximator.fit(
^^^^^^^^^^^^^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/approximators/continuous_approximator.py", line 182, in fit
return super().fit(*args, **kwargs, adapter=self.adapter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/approximators/approximator.py", line 534, in fit
self.build_from_data(mock_data)
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/approximators/approximator.py", line 540, in build_from_data
self.build(keras.tree.map_structure(keras.ops.shape, adapted_data))
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/keras/src/layers/layer.py", line 233, in build_wrapper
original_build_method(*args, **kwargs)
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/approximators/approximator.py", line 66, in build
summary_outputs_shape = self._build_summary_network(data_shapes)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/approximators/approximator.py", line 98, in _build_summary_network
self.summary_network.build(data_shapes["summary_variables"])
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/keras/src/layers/layer.py", line 233, in build_wrapper
original_build_method(*args, **kwargs)
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/utils/decorators.py", line 95, in wrapper
return fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/networks/summary/summary_network.py", line 57, in build
z = self.call(x)
^^^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/bayesflow/networks/summary/transformers/time_series_transformer.py", line 154, in call
inp = layer(inp, inp, training=training, attention_mask=attention_mask)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/keras/src/utils/traceback_utils.py", line 122, in error_handler
raise e.with_traceback(filtered_tb) from None
File "/home/mydetails/Documents/repos/bf_minimal/venv/lib/python3.11/site-packages/keras/src/layers/layer.py", line 2041, in update_shapes_dict_for_target_fn
raise ValueError(
ValueError: For a `build()` method with more than one argument, all arguments should have a `_shape` suffix and match an argument from `call()`. E.g. `build(self, foo_shape, bar_shape)` For layer 'MultiHeadAttention', Received `build()` argument `self`, which does not end in `_shape`.