Я пытаюсь добавить слой после предварительно подготовленной модели ALBERT. Я хочу использовать предварительно подготовленную модель ALBERT для генерации токенов.
import tensorflow as tf
from transformers import AlbertTokenizer, TFAlbertForMaskedLM
tokenizer = AlbertTokenizer.from_pretrained('albert-base-v2')
model = TFAlbertForMaskedLM.from_pretrained('albert-base-v2')
input_ids = tf.constant(tokenizer.encode("This is a test! Nice to meet you![MASK]love you"))[
None, :] # Batch size 1
print(input_ids)
outputs = model(input_ids)
prediction_scores = outputs[0]
outputTokens = tf.math.argmax(prediction_scores, axis=2)
outputTokens = tf.keras.backend.eval(outputTokens[0])
outputTokens = tokenizer.decode(outputTokens)
print(outputTokens)
tokenModel = tf.keras.Sequential([
tf.keras.layers.Dense(128,input_shape=input_ids.shape),
model(),
tf.keras.layers.Softmax()
])
tokenModel.summary()
Какие выходы:
/test.py", line 19, in <module>
model(),
TypeError: __call__() missing 1 required positional argument: 'inputs'
Какой должна быть модель? Я не могу добавить модель ALBERT в качестве первого слоя модели в TensorFlow.