Files
dsProject/dsLightRag/Liblib/T1_VersionGet.py

54 lines
1.8 KiB
Python
Raw Normal View History

2025-09-02 14:09:35 +08:00
import hmac
from hashlib import sha1
import base64
import time
2025-09-02 16:26:38 +08:00
import uuid
2025-09-02 16:27:43 +08:00
import requests
2025-09-02 16:26:38 +08:00
import Config.Config
2025-09-02 16:04:10 +08:00
2025-09-02 14:09:35 +08:00
def make_sign(uri):
2025-09-02 16:26:38 +08:00
"""
生成签名
"""
# 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__':
2025-09-02 16:27:43 +08:00
# 要调用的接口路径
2025-09-02 16:26:38 +08:00
uri = "/api/model/version/get"
2025-09-02 16:27:43 +08:00
# 获取签名
2025-09-02 16:26:38 +08:00
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}'
2025-09-02 16:27:43 +08:00
# 封装调用参数
2025-09-02 16:26:38 +08:00
versionUuid="21df5d84cca74f7a885ba672b5a80d19"
response = requests.post(url, json={"versionUuid":versionUuid})
2025-09-02 16:30:38 +08:00
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')}")