koclip / embed_captions.py
ampehta
updated embed_captions.py
275e87e
raw
history blame
1.02 kB
import csv
import argparse
from utils import load_model
def main(args):
caption_txt_path = args.text_path
f = open(caption_txt_path)
captions = [sent.strip() for sent in f.readlines()
for model_name in ["koclip-base", "koclip-large"]:
model, processor = load_model(f"koclip/{model_name}")
captions_processed = [processor(sent,images=None,return_tensors='jax') for sent in captions]
vec = [np.asarray(model.get_text_features(**c)) for c in captions_processed]
with open(os.path.join(args.out_path, f"{model_name}.tsv"), "a+") as f:
writer = csv.writer(f, delimiter="\t")
for text, feature in zip(captions, vec):
writer.writerow([text, ",".join(map(lambda x: str(x), feature))])
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("--text_path", default="cifar100_captions_kr.txt")
parser.add_argument("--out_path", default="features/text")
args = parser.parse_args()
main(args)