Модель CLIP из модуля open_clip возвращает одно вложение для 77 токенов.Python

Программы на Python
Ответить
Anonymous
 Модель CLIP из модуля open_clip возвращает одно вложение для 77 токенов.

Сообщение Anonymous »

Я использую модуль open_clip для получения вложений текста из модели CLIP. Когда я маркирую список одной текстовой последовательности и передаю его методу модели encode_text, я ожидаю получить вложения формы [77, 1024]. Однако на выходе я получаю форму [1, 1024].
Вот соответствующий код:

Код: Выделить всё

import open_clip

model, preprocess_train, preprocess_val = open_clip.create_model_and_transforms('hf-hub:laion/CLIP-ViT-H-14-laion2B-s32B-b79K')
tokenizer = open_clip.get_tokenizer('hf-hub:laion/CLIP-ViT-H-14-laion2B-s32B-b79K')

text_inputs = ["cat"]
tokenized_inputs = tokenizer(text_inputs)
print(len(tokenized_inputs))  # This prints 77

text_embeddings = model.encode_text(tokenized_inputs)
print(text_embeddings.shape)  # This prints [1, 1024]
Я что-то упускаю при использовании токенизатора или метода encode_text модели? Как я могу получить отдельные вложения для каждой из 77 последовательностей токенов? Я ожидаю [77, 1024]


Подробнее здесь: https://stackoverflow.com/questions/769 ... -77-tokens
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»