38 lines
1.4 KiB
Python
Raw Normal View History

import json
import types
from tencentcloud.common import credential # type: ignore
from tencentcloud.common.exception.tencent_cloud_sdk_exception import \
TencentCloudSDKException # type: ignore
from tencentcloud.common.profile.client_profile import \
ClientProfile # type: ignore
from tencentcloud.common.profile.http_profile import \
HttpProfile # type: ignore
from tencentcloud.hunyuan.v20230901 import hunyuan_client # type: ignore
from tencentcloud.hunyuan.v20230901 import models # type: ignore
from .config import config
def generate_image(prompt: str):
cred = credential.Credential(
config.marshoai_tencent_secretid, config.marshoai_tencent_secretkey
)
# 实例化一个http选项可选的没有特殊需求可以跳过
httpProfile = HttpProfile()
httpProfile.endpoint = "hunyuan.tencentcloudapi.com"
# 实例化一个client选项可选的没有特殊需求可以跳过
clientProfile = ClientProfile()
clientProfile.httpProfile = httpProfile
client = hunyuan_client.HunyuanClient(cred, "ap-guangzhou", clientProfile)
req = models.TextToImageLiteRequest()
params = {"Prompt": prompt, "RspImgType": "url", "Resolution": "1080:1920"}
req.from_json_string(json.dumps(params))
# 返回的resp是一个TextToImageLiteResponse的实例与请求对象对应
resp = client.TextToImageLite(req)
# 输出json格式的字符串回包
return resp.to_json_string()