Files
EmojiTextGenerator/test.py

47 lines
1.7 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from pathlib import Path
import dashscope
from models.generator import Generator
from controllers.localfile_handles import get_emoji_count, yield_emoji_path
from controllers.compress_image import compress_image
from controllers.calculate_cost import calc_cost
from models.logger import setup_logger
from models.emoji_db import get_emoji_url
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\\"
emoji = yield_emoji_path(emoji_folder)
gen = Generator(api_key)
def generate_description_to_txt():
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
image = compress_image(emoji_file)
image_path = Path(root_folder) / image
description, tokens = gen.process_local_image(str(image_path))
cost = calc_cost(tokens)
input_tokens, output_tokens = tokens
logger.info(f"图片 {emoji_file} 的描述词生成完毕,序号:{i} 其 description 为: {description}")
logger.info(f"本次生成输入token{input_tokens}, 输出token{output_tokens}, 花费:{cost}")
fp.write(f"{emoji_uuid}: {description}\n")
fp.close()
generate_description_to_txt()
content = get_emoji_url("c3151774-2c4c-48f6-a3ac-b8802cf95498")
# print(content)
url = 'https://pic1.arkoo.com/56D0B40F99F841DF8A2425762AE2565D/picture/o_1i4qop009177v1tgf14db15he1iaj1is.jpg'
print(gen.get_data(url))