Files
dsProject/dsLightRag/Liblib/T1_VersionGet.py
2025-09-03 07:57:36 +08:00

95 lines
3.8 KiB
Python
Raw 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.

import hmac
from hashlib import sha1
import base64
import time
import uuid
import requests
import Config.Config
def make_sign(uri):
"""
生成签名
"""
# API访问密钥
secret_key = Config.Config.LIBLIB_SECRETKEY
# 当前毫秒时间戳
timestamp = str(int(time.time() * 1000))
# 随机字符串
signature_nonce = str(uuid.uuid4())
# 拼接请求数据
content = '&'.join((uri, timestamp, signature_nonce))
# 生成签名
digest = hmac.new(secret_key.encode(), content.encode(), sha1).digest()
# 移除为了补全base64位数而填充的尾部等号
sign = base64.urlsafe_b64encode(digest).rstrip(b'=').decode()
return sign, timestamp, signature_nonce
if __name__ == '__main__':
# 要调用的接口路径
uri = "/api/model/version/get"
# 获取签名
sign, timestamp, signature_nonce = make_sign(uri)
url = f'{Config.Config.LIBLIB_URL}{uri}?AccessKey={Config.Config.LIBLIB_ACCESSKEY}&Signature={sign}&Timestamp={timestamp}&SignatureNonce={signature_nonce}'
# 封装调用参数
# hellonijicute25d官方版
# https://www.liblib.art/modelinfo/018f2fd5718d45a38546b5e518483856?from=feed&versionUuid=390e7df48aed45d4bc3f0bcbc89fa44c
# 接口文档
# https://liblibai.feishu.cn/wiki/UAMVw67NcifQHukf8fpccgS5n6d
versionUuid="390e7df48aed45d4bc3f0bcbc89fa44c"
response = requests.post(url, json={"versionUuid":versionUuid})
response_data = response.json()
if response_data.get('code') == 0:
model_info = response_data.get('data')
modelName= model_info.get('modelName')
versionNam= model_info.get('versionName')
commercialUse=model_info.get('commercialUse')
modelUrl= model_info.get('modelUrl')
print(f"模型名称:{modelName}")
print(f"版本名称:{versionNam}")
print(f"是否允许商业用途:{commercialUse}")
print(f"模型下载地址:{modelUrl}")
else:
print(f"错误信息:{response_data.get('message')}")
# POST /api/generate/webui/text2img
"""
https://liblibai.feishu.cn/wiki/UAMVw67NcifQHukf8fpccgS5n6d
{
"templateUuid": "7d888009f81d4252a7c458c874cd017f", // 参数模板ID
"generateParams": {
// 基础参数
"checkPointId": "0ea388c7eb854be3ba3c6f65aac6bfd3", // 仅 XL模型支持人像换脸
"prompt": "Asian portrait,A young woman wearing a green baseball cap, close shot, background is coffee store, masterpiece, best quality, ultra resolution", // 选填
"width": 768, // 宽,必填
"height": 1152, // 高,必填
//以下参数可不传
"sampler":20, // 默认DPM++ 2M SDE Karras
"steps": 35, // 默认35步
"cfgScale": 2.0,
"imgCount": 1, // 图片数量默认1张
// controlNet最多4组
"controlNet": [
// 设置要用的人像人脸
{
"unitOrder": 1, // 第一步:先识别要用的人像人脸
"sourceImage": "https://liblibai-online.liblib.cloud/img/081e9f07d9bd4c2ba090efde163518f9/49943c0b-4d79-4e2f-8c55-bc1e5b8c69d8.png",
"width": 1080, // 参考图宽度
"height": 1432 // 参考图高度
},
// 设置面部朝向的人像参考图
{
"unitOrder": 2, // 第二步:再识别要参考的人物面部朝向
"sourceImage": "https://liblibai-online.liblib.cloud/img/081e9f07d9bd4c2ba090efde163518f9/e713676d-baaa-4dac-99b9-d5d814a29f9f.png", //这张图可以与上一张不同,可以是任意人像。只参考面部朝向,不参考人物长相。
"width": 1024, // 参考图宽度
"height": 1024 // 参考图高度
}
]
}
}
"""