from PIL import Image from io import BytesIO import base64 import math import ast import re import torch from transformers import StoppingCriteria IGNORE_INDEX = -100 IMAGE_TOKEN_INDEX = -200 GANDALF_TOKEN_INDEX = -300 DEFAULT_PAD_TOKEN = "[PAD]" DEFAULT_EOS_TOKEN = "" DEFAULT_BOS_TOKEN = "" DEFAULT_UNK_TOKEN = "" DEFAULT_IMAGE_TOKEN = "" DEFAULT_IMAGE_PATCH_TOKEN = "" DEFAULT_IM_START_TOKEN = "" DEFAULT_IM_END_TOKEN = "" DEFAULT_VIDEO_TOKEN = "