code: def test_crf_unary_score(dtype):
      inputs = np.array(
          [[4, 5, -3], [3, -1, 3], [-1, 2, 1], [0, 0, 0]], dtype=dtype
      )
      for dtype in (np.int32, np.int64):
          tag_indices = np.array([1, 2, 1, 0], dtype=dtype)
          sequence_lengths = np.array(3, dtype=np.int32)
          unary_score = crf_unary_score(
              tag_indices=tf.expand_dims(tag_indices, 0),
              sequence_lengths=tf.expand_dims(sequence_lengths, 0),
              inputs=tf.expand_dims(inputs, 0),
          )
          unary_score = tf.squeeze(unary_score, [0])
          expected_unary_score = sum(
              inputs[i][tag_indices[i]] for i in range(sequence_lengths)
          )
          np.testing.assert_allclose(unary_score, expected_unary_score)
  
file_path: rasa/tests/utils/tensorflow/test_crf.py
imports: import itertools
  import pytest
  import numpy
  import tensorflow
  from rasa.utils.tensorflow.crf import crf_sequence_score, crf_unary_score, crf_binary_score, crf_log_norm, crf_log_likelihood
label_desc: Use image node_id 4 for calling a global function with example usage: test_crf_unary_score(dtype) without return types