MeUtils 2025.4.1.18.47.48__py3-none-any.whl → 2025.4.8.19.54.40__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {MeUtils-2025.4.1.18.47.48.dist-info → MeUtils-2025.4.8.19.54.40.dist-info}/METADATA +262 -262
- {MeUtils-2025.4.1.18.47.48.dist-info → MeUtils-2025.4.8.19.54.40.dist-info}/RECORD +36 -29
- examples/_openaisdk/openai_ark_bots.py +4 -22
- examples/_openaisdk/openai_audio_gpt.py +67 -0
- examples/_openaisdk/openai_google.py +128 -77
- examples/_openaisdk/zhipu_/346/231/272/350/203/275/344/275/223.py +3 -3
- meutils/apis/google_apis/__init__.py +11 -0
- meutils/apis/google_apis/audios.py +115 -0
- meutils/apis/google_apis/common.py +251 -0
- meutils/apis/google_apis/files.py +19 -0
- meutils/apis/google_apis/gemini_sdk.py +170 -0
- meutils/{llm/completions → apis/google_apis}/google2openai.py +22 -8
- meutils/apis/google_apis/images.py +11 -0
- meutils/apis/google_apis/search.py +46 -0
- meutils/apis/hailuoai/videos.py +1 -1
- meutils/apis/jimeng/images.py +1 -1
- meutils/apis/search/ark_web_search.py +8 -4
- meutils/apis/search/zhipu_web_search.py +6 -3
- meutils/apis/textin_apis/common.py +1 -1
- meutils/apis/tripo3d/images.py +1 -1
- meutils/caches/common.py +2 -2
- meutils/data/VERSION +1 -1
- meutils/io/files_utils.py +27 -22
- meutils/llm/completions/assistants/ppt.py +17 -13
- meutils/llm/completions/qwenllm.py +8 -2
- meutils/notice/feishu.py +2 -0
- meutils/oss/minio_oss.py +38 -8
- meutils/oss/minio_utils.py +2 -2
- meutils/schemas/jimeng_types.py +1 -1
- meutils/schemas/oneapi/common.py +23 -6
- meutils/schemas/openai_types.py +70 -40
- meutils/str_utils/regular_expression.py +6 -3
- meutils/apis/kling/api.py +0 -62
- {MeUtils-2025.4.1.18.47.48.dist-info → MeUtils-2025.4.8.19.54.40.dist-info}/LICENSE +0 -0
- {MeUtils-2025.4.1.18.47.48.dist-info → MeUtils-2025.4.8.19.54.40.dist-info}/WHEEL +0 -0
- {MeUtils-2025.4.1.18.47.48.dist-info → MeUtils-2025.4.8.19.54.40.dist-info}/entry_points.txt +0 -0
- {MeUtils-2025.4.1.18.47.48.dist-info → MeUtils-2025.4.8.19.54.40.dist-info}/top_level.txt +0 -0
@@ -21,7 +21,6 @@ HTML_PARSER = re.compile(r'```html(.*?)```', re.DOTALL)
|
|
21
21
|
# re.sub(r'=(.+)', r'=123','s=xxxxx')
|
22
22
|
|
23
23
|
|
24
|
-
|
25
24
|
@lru_cache()
|
26
25
|
def remove_date_suffix(filename):
|
27
26
|
"""
|
@@ -61,7 +60,9 @@ def get_parse_and_index(text, pattern):
|
|
61
60
|
|
62
61
|
|
63
62
|
@lru_cache()
|
64
|
-
def parse_url(text: str, for_image=False):
|
63
|
+
def parse_url(text: str, for_image=False, fn: Optional[Callable] = None):
|
64
|
+
fn = fn or (lambda x: x.removesuffix(")"))
|
65
|
+
|
65
66
|
# url_pattern = r'http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+'
|
66
67
|
url_pattern = r'http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+|#]|[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+'
|
67
68
|
|
@@ -92,6 +93,9 @@ def parse_url(text: str, for_image=False):
|
|
92
93
|
valid_urls = []
|
93
94
|
for url in urls:
|
94
95
|
url = url.strip(r"\n")
|
96
|
+
if fn:
|
97
|
+
url = fn(url) # lambda x: x.removesuffix(")")
|
98
|
+
|
95
99
|
valid_urls.append(url)
|
96
100
|
|
97
101
|
return valid_urls
|
@@ -149,7 +153,6 @@ if __name__ == '__main__':
|
|
149
153
|
d = {"url": "https://mj101-1317487292.cos.ap-shanghai.myqcloud.com/ai/test.pdf\n\n总结下"}
|
150
154
|
# print(parse_url(str(d)))
|
151
155
|
|
152
|
-
|
153
156
|
text = "https://sc-maas.oss-cn-shanghai.aliyuncs.com/outputs/bb305b60-d258-4542-8b07-5ced549e9896_0.png?OSSAccessKeyId=LTAI5tQnPSzwAnR8NmMzoQq4&Expires=1739948468&Signature=NAswPSXj4AGghDuoNX5rVFIidcs%3D 笑起来"
|
154
157
|
|
155
158
|
print(parse_url(text))
|
meutils/apis/kling/api.py
DELETED
@@ -1,62 +0,0 @@
|
|
1
|
-
#!/usr/bin/env python
|
2
|
-
# -*- coding: utf-8 -*-
|
3
|
-
# @Project : AI. @by PyCharm
|
4
|
-
# @File : api
|
5
|
-
# @Time : 2024/10/10 10:05
|
6
|
-
# @Author : betterme
|
7
|
-
# @WeChat : meutils
|
8
|
-
# @Software : PyCharm
|
9
|
-
# @Description : https://github.com/nodetool-ai/nodetool/blob/bfd32cf40dcf1fe2711803f9c8730c0e816067e4/src/nodetool/nodes/kling/api.py#L99
|
10
|
-
|
11
|
-
import jwt
|
12
|
-
|
13
|
-
from meutils.pipe import *
|
14
|
-
from meutils.config_utils.lark_utils import get_next_token_for_polling
|
15
|
-
|
16
|
-
from meutils.schemas.kling_types import API_BASE_URL, API_FEISHU_URL, STATUSES, send_message
|
17
|
-
from meutils.schemas.kling_types import ImageRequest, VideoRequest
|
18
|
-
|
19
|
-
|
20
|
-
def encode_jwt_token(ak, sk):
|
21
|
-
headers = {
|
22
|
-
"alg": "HS256",
|
23
|
-
"typ": "JWT"
|
24
|
-
}
|
25
|
-
payload = {
|
26
|
-
"iss": ak,
|
27
|
-
"exp": int(time.time()) + 1800, # 有效时间,此处示例代表当前时间+1800s(30min)
|
28
|
-
"nbf": int(time.time()) - 5 # 开始生效的时间,此处示例代表当前时间-5秒
|
29
|
-
}
|
30
|
-
token = jwt.encode(payload, sk, headers=headers)
|
31
|
-
logger.debug(token)
|
32
|
-
return token
|
33
|
-
|
34
|
-
|
35
|
-
async def create_task(request: BaseModel, token: Optional[str] = None):
|
36
|
-
# token = token or await get_next_token_for_polling(API_FEISHU_URL)
|
37
|
-
token = "2111f9eb7cf84576b775e06625eb65f1|e264fd49e39a4408a76e461937ee2926"
|
38
|
-
ak, sk = token.split("|")
|
39
|
-
|
40
|
-
headers = {
|
41
|
-
'content-type': 'application/json;charset=utf-8',
|
42
|
-
"Authorization": f"Bearer {encode_jwt_token(ak, sk)}"
|
43
|
-
}
|
44
|
-
payload = request.model_dump(exclude_none=True)
|
45
|
-
async with httpx.AsyncClient(base_url=API_BASE_URL, headers=headers, timeout=60) as client:
|
46
|
-
# response = await client.post("/v1/videos/text2video", json=payload)
|
47
|
-
response = await client.post("/v1/images/generations", json=payload)
|
48
|
-
response.raise_for_status()
|
49
|
-
return response.json()
|
50
|
-
#
|
51
|
-
# if response.is_success:
|
52
|
-
# data = response.json()
|
53
|
-
# return data
|
54
|
-
# else:
|
55
|
-
# raise Exception(f"请求失败,状态码:{response.status_code},响应内容:{response.text}")
|
56
|
-
|
57
|
-
|
58
|
-
if __name__ == '__main__':
|
59
|
-
# api_token = encode_jwt_token(ak, sk)
|
60
|
-
# print(api_token) # 打印生成的API_TOKEN
|
61
|
-
# arun(create_task(VideoRequest(prompt="可爱的小姐姐")))
|
62
|
-
arun(create_task(ImageRequest(prompt="可爱的小姐姐")))
|
File without changes
|
File without changes
|
{MeUtils-2025.4.1.18.47.48.dist-info → MeUtils-2025.4.8.19.54.40.dist-info}/entry_points.txt
RENAMED
File without changes
|
File without changes
|