mirror of
https://github.com/LiteyukiStudio/nonebot-plugin-marshoai.git
synced 2025-02-01 02:51:25 +08:00
37 lines
1.4 KiB
Python
Executable File
37 lines
1.4 KiB
Python
Executable File
import json
|
||
import types
|
||
|
||
from tencentcloud.common import credential # type: ignore
|
||
from tencentcloud.common.exception.tencent_cloud_sdk_exception import ( # type: ignore
|
||
TencentCloudSDKException,
|
||
)
|
||
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()
|