43 lines
1.4 KiB
Python
43 lines
1.4 KiB
Python
import os
|
||
from pathlib import Path
|
||
from dashscope import MultiModalConversation
|
||
import dashscope
|
||
from models.generator import Generator
|
||
# from models.emoji_db import check_emoji, update_description
|
||
from controllers.localfile_handles import get_emoji_count, yield_emoji_path
|
||
from controllers.compress_image import compress_image
|
||
from models.logger import setup_logger
|
||
|
||
logger = setup_logger()
|
||
|
||
api_key = "sk-213f83213fce4e2ba41b8e67721f19cb"
|
||
dashscope.api_key = api_key
|
||
|
||
# root_folder = "D:\\Python\\mcunc\\EmojiTextGenerator\\"
|
||
# emoji_folder = "D:\\Python\\mcunc\\EmojiTextGenerator\\emojis\\"
|
||
root_folder = "G:\\Python\\mcunc\\EmojiTextGenerator\\"
|
||
emoji_folder = "G:\\Python\\mcunc\\EmojiTextGenerator\\emojis\\"
|
||
|
||
emoji = yield_emoji_path(emoji_folder)
|
||
|
||
gen = Generator(api_key)
|
||
|
||
fp = open("descriptions.txt", "w", encoding="utf-8")
|
||
|
||
for i in range(get_emoji_count(emoji_folder)):
|
||
emoji_file = next(emoji)
|
||
emoji_uuid = ''
|
||
p = Path(emoji_file)
|
||
if p.suffix == ".jpg" or p.suffix == ".jpeg":
|
||
emoji_uuid = p.stem
|
||
# print(emoji_uuid)
|
||
image = compress_image(emoji_file)
|
||
image_path = Path(root_folder) / image
|
||
# print(image_path)
|
||
|
||
description = gen.process_single_image(str(image_path))
|
||
logger.info(f"图片 {emoji_file} 的描述词生成完毕,序号:{i}, 其 description 为: {description}")
|
||
fp.write(f"{emoji_uuid}: {description}\n")
|
||
|
||
fp.close()
|