MeUtils 2025.8.26.19.8.18__py3-none-any.whl → 2025.8.27.12.16.3__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.
@@ -16,8 +16,11 @@ from meutils.schemas.image_types import ImageRequest, ImageEditRequest
16
16
  from openai import OpenAI
17
17
 
18
18
  client = OpenAI(
19
- base_url=os.getenv("GITEE_BASE_URL"),
20
- api_key=os.getenv("GITEE_API_KEY"),
19
+ # base_url=os.getenv("GITEE_BASE_URL"),
20
+ # api_key=os.getenv("GITEE_API_KEY"),
21
+ base_url="http://0.0.0.0:8000/v1",
22
+ api_key="null",
23
+
21
24
  )
22
25
 
23
26
  # r = client.images.edit(
@@ -27,26 +30,40 @@ client = OpenAI(
27
30
  # response_format="url"
28
31
  # )
29
32
 
33
+ model = "FLUX.1-Kontext-dev"
34
+ # model ="qwen-image"
35
+ model = "fal-ai/flux-pro/kontext"
36
+ # model = "fal-ai/flux-pro/kontext/max"
37
+
38
+ # model = "fal-ai/gemini-25-flash-image"
39
+
30
40
  data = {
31
- 'prompt': "A sunlit indoor lounge area with a pool containing a flamingo",
32
- 'model': "FLUX.1-Kontext-dev",
33
- 'size': "1024x1024",
34
- 'steps': "20",
35
- 'guidance_scale': "2.5",
36
- 'return_image_quality': "80",
37
- 'return_image_format': "PNG",
38
- # 'lora_weights': json.dumps(lora_weights_data), # 将字典转换为 JSON 字符串
39
- 'lora_scale': "1",
41
+ 'model': model,
42
+ 'prompt': "将小黄鸭放在衣服上",
43
+ 'size': "1024x1024",
44
+ 'steps': "20",
45
+ 'guidance_scale': "2.5",
46
+ 'return_image_quality': "80",
47
+ 'return_image_format': "PNG",
48
+ # 'lora_weights': json.dumps(lora_weights_data), # 将字典转换为 JSON 字符串
49
+ 'lora_scale': "1",
40
50
 
41
- 'image': open("1.png"),
42
- }
51
+ # 'image': open('/Users/betterme/PycharmProjects/AI/MeUtils/meutils/apis/images/image2.webp', 'rb').read(),
52
+ 'image': [
43
53
 
44
- data = to_openai_params(ImageEditRequest(**data))
54
+ # open('/Users/betterme/PycharmProjects/AI/MeUtils/meutils/apis/images/image1.webp', 'rb'),
55
+ # open('/Users/betterme/PycharmProjects/AI/MeUtils/meutils/apis/images/image2.webp', 'rb')
56
+ open('/Users/betterme/PycharmProjects/AI/MeUtils/meutils/apis/images/image1.webp', 'rb').read(),
57
+ open('/Users/betterme/PycharmProjects/AI/MeUtils/meutils/apis/images/image2.webp', 'rb').read()
58
+ ]
45
59
 
46
- # r = client.images.edit(
47
- # **data
48
- # )
60
+ }
61
+
62
+ data = to_openai_params(ImageEditRequest(**data))
49
63
 
64
+ r = client.images.edit(
65
+ **data
66
+ )
50
67
 
51
68
  # import requests
52
69
  #
@@ -71,4 +88,4 @@ data = to_openai_params(ImageEditRequest(**data))
71
88
  # })
72
89
  #
73
90
  # with open("output.png", "wb") as file:
74
- # file.write(output)
91
+ # file.write(output)
@@ -96,13 +96,10 @@ async def generate(request: ImageRequest, api_key: Optional[str] = None):
96
96
  }
97
97
  elif "kontext" in request.model: # https://fal.ai/models/fal-ai/flux-pro/kontext/max
98
98
 
99
- if image_urls := parse_url(request.prompt):
99
+ if (image_urls := request.image_urls) or (image_urls := parse_url(request.prompt)):
100
100
  if not validate_url(image_urls):
101
101
  raise Exception(f"Invalid image url: {image_urls}")
102
102
 
103
- if request.user: # 转存
104
- image_urls = await to_url_fal(image_urls)
105
-
106
103
  for image_url in image_urls:
107
104
  request.prompt = request.prompt.replace(image_url, "")
108
105
 
@@ -202,6 +199,17 @@ async def generate(request: ImageRequest, api_key: Optional[str] = None):
202
199
 
203
200
  }
204
201
 
202
+ elif request.model.startswith(("fal-ai/nano-banana", "fal-ai/gemini-25-flash-image")):
203
+ arguments = {
204
+ "prompt": request.prompt,
205
+ "image_urls": request.image_urls,
206
+ "num_images": request.n or 1,
207
+ }
208
+ if request.image_urls:
209
+ request.model = f"""{request.model.removesuffix("/edit")}/edit"""
210
+
211
+ logger.debug(bjson(arguments))
212
+
205
213
  try:
206
214
 
207
215
  data = await AsyncClient(key=token).run(
@@ -245,9 +253,10 @@ if __name__ == '__main__':
245
253
  model = "fal-ai/imagen4/preview"
246
254
  model = "fal-ai/flux-pro/kontext"
247
255
  # model = "fal-ai/flux-pro/kontext/max"
256
+
248
257
  #
249
258
  prompt = "https://v3.fal.media/files/penguin/XoW0qavfF-ahg-jX4BMyL_image.webp https://v3.fal.media/files/tiger/bml6YA7DWJXOigadvxk75_image.webp Put the little duckling on top of the woman's t-shirt."
250
- prompt = '把小鸭子放在女人的T恤上面。\nhttps://s3.ffire.cc/cdn/20250530/tEzZKkhp3tKbNzva6mgC2T\nhttps://s3.ffire.cc/cdn/20250530/AwHJpuJuNg5w3sVbH4PZdv'
259
+ # prompt = '把小鸭子放在女人的T恤上面。\nhttps://s3.ffire.cc/cdn/20250530/tEzZKkhp3tKbNzva6mgC2T\nhttps://s3.ffire.cc/cdn/20250530/AwHJpuJuNg5w3sVbH4PZdv'
251
260
  request = ImageRequest(prompt=prompt, model=model)
252
261
 
253
262
  data = {
@@ -256,14 +265,20 @@ if __name__ == '__main__':
256
265
  "size": 'auto'
257
266
  }
258
267
 
268
+ data = {
269
+ "model": "fal-ai/gemini-25-flash-image",
270
+ "prompt": "make a photo of the man driving the car down the california coastline",
271
+ "image": [
272
+ "https://storage.googleapis.com/falserverless/example_inputs/nano-banana-edit-input.png",
273
+ "https://storage.googleapis.com/falserverless/example_inputs/nano-banana-edit-input-2.png"
274
+ ],
275
+ "num_images": 1
276
+ }
259
277
 
260
278
  request = ImageRequest(**data)
261
279
 
262
- print(request)
263
-
264
280
  arun(generate(request))
265
281
 
266
-
267
282
  # request = ImageRequest(prompt='https://oss.ffire.cc/files/kling_watermark.png The woman smiled', model=model)
268
283
  #
269
284
  # request = ImageRequest(prompt="https://oss.ffire.cc/files/kling_watermark.png 让这个女人哭起来", model=model)
@@ -34,16 +34,17 @@ async def generate(
34
34
  **request.model_dump(exclude_none=True, exclude={"extra_fields", "aspect_ratio"}),
35
35
  **(request.extra_fields or {})
36
36
  }
37
- #
37
+ request = ImageRequest(**data)
38
38
  if request.model.startswith("doubao"):
39
- data['watermark'] = False
40
-
41
- data = to_openai_params(ImageRequest(**data))
39
+ request.watermark = False
40
+ if request.image and isinstance(request.image, list):
41
+ request.image = request.image[0]
42
42
 
43
+ data = to_openai_params(request)
43
44
  client = AsyncClient(api_key=api_key, base_url=base_url)
44
45
  return await client.images.generate(**data)
45
46
 
46
- if request.model.startswith("fal-ai"):
47
+ if request.model.startswith("fal-ai"): # 主要 request.image
47
48
  return await fal_generate(request, api_key)
48
49
 
49
50
  if request.model.startswith(("recraft",)):
@@ -62,7 +63,9 @@ async def generate(
62
63
  if request.model in {"Qwen-Image", "FLUX_1-Krea-dev"} and request.model.endswith(("lora",)):
63
64
  return await gitee_images_generate(request, api_key)
64
65
 
65
- if request.model.startswith("qwen-image"):
66
+ if request.model.startswith("qwen-image"): # 仅支持单图
67
+ if request.image and isinstance(request.image, list):
68
+ request.image = request.image[-1]
66
69
  return await QwenCompletions(api_key=api_key).generate(request)
67
70
 
68
71
 
@@ -218,9 +218,6 @@ async def create_task(request: ImageRequest, token: Optional[str] = None): # to
218
218
 
219
219
  headers = get_headers(url, token)
220
220
 
221
- if "http" in request.prompt: # 图生
222
- request.model = "high_aes_general_v20_L:general_v2.0_L"
223
-
224
221
  draft_content = await create_draft_content(request, token)
225
222
 
226
223
  logger.debug(json.dumps(draft_content))
@@ -663,7 +660,7 @@ if __name__ == '__main__':
663
660
  # arun(generate(ImageRequest(prompt="fuck you")))
664
661
  prompt = "A plump Chinese beauty wearing a wedding dress revealing her skirt and underwear is swinging on the swing,Happy smile,cleavage,Exposed thighs,Spread your legs open,Extend your leg,panties,upskirt,Barefoot,sole"
665
662
  # prompt = "a dog cat in the same room"
666
- prompt = "https://oss.ffire.cc/files/kling_watermark.png 让这个女人带上墨镜,衣服换个颜色... ! "
663
+ prompt = "https://oss.ffire.cc/files/kling_watermark.png 让这个女人带上墨镜,衣服换个颜色.. . ! "
667
664
  request = ImageRequest(prompt=prompt, size="1328x1328")
668
665
  # request = ImageRequest(prompt=prompt, size="1024x1024")
669
666
 
@@ -14,6 +14,7 @@ from meutils.apis.utils import make_request_httpx
14
14
  from meutils.apis.oneapi.log import get_logs
15
15
  from meutils.apis.oneapi.user import update_user_for_refund, get_user
16
16
 
17
+
17
18
  # headers
18
19
  ACTIONS = {
19
20
  # 按量计费的异步任务
@@ -36,7 +37,7 @@ ACTIONS = {
36
37
  }
37
38
 
38
39
 
39
- async def get_tasks(platform: str = "flux", action: str = "", status: str = "NOT_START"):
40
+ async def get_tasks(platform: str = "flux", action: str = "", status: str = "NOT_START", return_ids: bool = False):
40
41
  base_url = "https://api.chatfire.cn"
41
42
  path = "/api/task/"
42
43
  headers = {
@@ -66,6 +67,11 @@ async def get_tasks(platform: str = "flux", action: str = "", status: str = "NOT
66
67
  params=params,
67
68
  headers=headers
68
69
  )
70
+ if return_ids:
71
+ # from meutils.str_utils.json_utils import json_path
72
+
73
+ return [item['task_id'] for item in response['data']['items']] | xUnique
74
+
69
75
  return response
70
76
 
71
77
 
@@ -139,7 +145,11 @@ async def refund_tasks(task_id: Optional[str] = None): # 只补偿一次
139
145
 
140
146
 
141
147
  if __name__ == '__main__':
148
+
142
149
  pass
143
150
  arun(polling_tasks())
144
- # arun(get_tasks(action="async-task", status="FAILURE"))
151
+ # arun(get_tasks(action="jimeng-video-3.0", status="FAILURE"))
152
+ # arun(get_tasks(action="jimeng-video-3.0", return_ids=True))
153
+
154
+
145
155
  # arun(refund_tasks())
@@ -28,18 +28,29 @@ from fastapi import APIRouter, File, UploadFile, Query, Form, Depends, Request,
28
28
  FEISHU_URL = "https://xchatllm.feishu.cn/sheets/GYCHsvI4qhnDPNtI4VPcdw2knEd?sheet=8W6kk8" # 超刷
29
29
 
30
30
 
31
- async def get_valid_token(tokens: Optional[list] = None):
31
+ async def get_valid_token(tokens: Optional[list] = None, force_update: bool = True):
32
32
  tokens = tokens or await get_series(FEISHU_URL)
33
33
 
34
+ if token := await redis_aclient.get("volc-token"):
35
+ token = token.decode()
36
+
37
+ if force_update: # 强制检测更新
38
+ if await check(token):
39
+ return token
40
+ else:
41
+ await redis_aclient.delete("volc-token") # 删除无效
42
+ else:
43
+ return token
44
+
34
45
  for token in tokens:
35
46
  if await check(token):
36
-
37
- logger.debug(f"有效 {token}")
47
+ if not await redis_aclient.get("volc-token"):
48
+ await redis_aclient.set("volc-token", token, ex=2 * 3600 - 10 * 60)
38
49
 
39
50
  return token
40
- else:
41
- logger.debug(f"无效 {token}")
42
- _ = f"{time.ctime()}\n\n{FEISHU_URL}\n\n所有token无效"
51
+
52
+ logger.debug(f"无效 {token}")
53
+ _ = f"{time.ctime()}\n\n{FEISHU_URL}\n\n所有token无效\n\n{token}"
43
54
  logger.error(_)
44
55
  send_message(_, n=3)
45
56
 
@@ -47,18 +58,18 @@ async def get_valid_token(tokens: Optional[list] = None):
47
58
  # check_image_and_video = partial(check, purpose='video and image')
48
59
 
49
60
 
50
- @retrying(max_retries=5)
61
+ @retrying()
51
62
  async def create_task(request: Union[CompletionRequest, VideoRequest], api_key: Optional[str] = None):
52
63
  # api_key = api_key or await get_next_token_for_polling(feishu_url=FEISHU_URL, check_token=check)
53
- # api_key = api_key or await get_valid_token()
64
+ api_key = api_key or await get_valid_token(force_update=False)
54
65
 
55
- feishu_url = "https://xchatllm.feishu.cn/sheets/Z59Js10DbhT8wdt72LachSDlnlf?sheet=rcoDg7"
56
- api_key = api_key or await get_next_token_for_polling(
57
- feishu_url=feishu_url,
58
- from_redis=True,
59
- ttl=24 * 3600,
60
- check_token=check
61
- )
66
+ # feishu_url = "https://xchatllm.feishu.cn/sheets/Z59Js10DbhT8wdt72LachSDlnlf?sheet=rcoDg7"
67
+ # api_key = api_key or await get_next_token_for_polling(
68
+ # feishu_url=feishu_url,
69
+ # from_redis=True,
70
+ # ttl=24 * 3600,
71
+ # check_token=check
72
+ # )
62
73
 
63
74
  logger.debug(f"api_key: {api_key}")
64
75
  if isinstance(request, VideoRequest): # 兼容jimeng
@@ -129,6 +140,9 @@ async def create_task(request: Union[CompletionRequest, VideoRequest], api_key:
129
140
  payload["content"] = request.content
130
141
 
131
142
  elif image_urls := request.last_urls.get("image_url"):
143
+ if payload["model"] not in {"doubao-seedance-1-0-lite-i2v-250428", "doubao-seedance-1-0-pro-250528"}:
144
+ payload["model"] = "doubao-seedance-1-0-lite-i2v-250428"
145
+
132
146
  payload["content"] = [
133
147
  {
134
148
  "type": "text",
@@ -181,7 +195,7 @@ async def get_task(task_id: str):
181
195
  return response
182
196
 
183
197
 
184
- async def get_task_from_feishu(task_id: Union[str, list], tokens: Optional[str] = None):
198
+ async def get_task_from_feishu(task_id: Union[str, list], tokens: Optional[list] = None): # todo: 定时校验
185
199
  feishu_url = "https://xchatllm.feishu.cn/sheets/Z59Js10DbhT8wdt72LachSDlnlf?sheet=rcoDg7"
186
200
  tokens = tokens or await get_series(feishu_url)
187
201
 
@@ -202,6 +216,7 @@ async def get_task_from_feishu(task_id: Union[str, list], tokens: Optional[str]
202
216
 
203
217
  await redis_aclient.set(task_id, api_key, ex=7 * 24 * 3600)
204
218
  logger.debug(f"{task_id} => {api_key}")
219
+ break
205
220
 
206
221
  except Exception as e:
207
222
  # logger.error(e)
@@ -238,33 +253,21 @@ if __name__ == "__main__":
238
253
 
239
254
  # arun(get_task("cgt-20250707160713-j8kll"))
240
255
 
256
+ tokens = """
257
+
258
+ 7499ffeb-dbb1-4016-b178-98407c701f09
259
+ c4356b58-4aa3-4a52-b907-b40c4dd2e502
260
+
261
+ """.split()
262
+
241
263
  ids = [
242
- "cgt-20250826174412-r9pj7",
243
- "cgt-20250826174112-g4kql",
244
- "cgt-20250826174041-ldv9m",
245
- "cgt-20250826174010-6z8fn",
246
- "cgt-20250826170728-2r4z7",
247
- "cgt-20250826170711-x5vdg",
248
- "cgt-20250826170646-hk4mt",
249
- "cgt-20250826170641-97xw7",
250
- "cgt-20250826170212-ckttq",
251
- "cgt-20250826170152-gk2fx",
252
- "cgt-20250826170152-q8nrg",
253
- "cgt-20250826170152-6fzdm",
254
- "cgt-20250826170053-n6z7w",
255
- "cgt-20250826164626-mn7q6",
256
- "cgt-20250826164454-c5mfz",
257
- "cgt-20250826164314-n7zf8",
258
- "cgt-20250826164315-7hlnx",
259
- "cgt-20250826163703-cntqz",
260
- "cgt-20250826163703-cntqz",
261
- "cgt-20250826163704-2qkbk",
262
- "cgt-20250826163704-2qkbk"
263
- ]
264
-
265
- arun(get_task_from_feishu(ids))
266
-
267
- # arun(get_valid_token())
264
+ "cgt-20250826185409-d6vb2", "cgt-20250826185409-h8dsf"
265
+ ]
266
+
267
+ # arun(get_task_from_feishu(ids, tokens))
268
+ # arun(get_task_from_feishu(ids, ))
269
+
270
+ arun(get_valid_token())
268
271
 
269
272
  """
270
273
  {'id': 'cgt-20250613160030-2dvd7',
meutils/data/VERSION CHANGED
@@ -1 +1 @@
1
- 2025.08.26.19.08.18
1
+ 2025.08.27.12.16.03
meutils/db/redis_db.py CHANGED
@@ -88,8 +88,8 @@ if __name__ == '__main__':
88
88
  #
89
89
  # arun(main())
90
90
 
91
- async def main():
92
- return await redis_aclient.lpop("redis_key")
91
+ # async def main():
92
+ # return await redis_aclient.lpop("redis_key")
93
93
 
94
94
 
95
95
  # arun(main())
@@ -98,4 +98,6 @@ if __name__ == '__main__':
98
98
  # r = redis_client.sadd('set1', 'd')
99
99
  # k="meutils.config_utils.lark_utils.commonaget_spreadsheet_values()[('feishu_url', 'https://xchatllm.feishu.cn/sheets/GYCHsvI4qhnDPNtI4VPcdw2knEd?sheet=Gvm9dt'), ('to_dataframe', True)] "
100
100
  # redis_client.delete(k)
101
- print(redis_client.get('test'))
101
+ print(redis_client.get('test'))
102
+
103
+ print(redis_client.delete("k"))
@@ -213,7 +213,7 @@ async def check_token_for_sophnet(api_key, threshold: float = 1):
213
213
 
214
214
  #
215
215
  @retrying()
216
- @rcache(ttl=1 * 24 * 3600, skip_cache_func=skip_cache_func)
216
+ # @rcache(ttl=7 * 24 * 3600, skip_cache_func=skip_cache_func)
217
217
  async def check_token_for_volc(api_key, threshold: float = 1, purpose: Optional[str] = None):
218
218
  if not isinstance(api_key, str):
219
219
  return await check_tokens(api_key, check_token_for_volc)
@@ -226,8 +226,8 @@ async def check_token_for_volc(api_key, threshold: float = 1, purpose: Optional[
226
226
  url = "https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks"
227
227
 
228
228
  payload = {
229
- "model": "doubao-seedance-1-0-pro-250528",
230
- # "model":"doubao-seedance-1-0-lite-i2v-250428",
229
+ # "model": "doubao-seedance-1-0-pro-250528",
230
+ "model":"doubao-seedance-1-0-lite-i2v-250428",
231
231
  "content": [
232
232
  {
233
233
  "type": "text",
@@ -267,6 +267,7 @@ async def check_token_for_volc(api_key, threshold: float = 1, purpose: Optional[
267
267
  messages=[{"role": "user", "content": "hi"}],
268
268
  max_tokens=1
269
269
  )
270
+ # logger.debug(response.json())
270
271
 
271
272
  return True
272
273
  except TimeoutException as e:
@@ -399,8 +400,9 @@ if __name__ == '__main__':
399
400
 
400
401
  # arun(check_token_for_ppinfra("sk_F0kgPyCMTzmOH_-VCEJucOK8HIrbnLGYm_IWxBToHZQ"))
401
402
 
402
- arun(check_token_for_volc("c27c2746-f51e-4b1c-8270-1e19075004c3"))
403
+ # arun(check_token_for_volc("c720b2fb-e2be-42a7-a9e5-0a42c29d5766"))
403
404
  # arun(check_token_for_volc("279749bd-ba5e-4962-9c65-eb6604b65594"))
405
+ arun(check_token_for_volc("8a5af7cb-42a3-4391-ac40-9d0f4502acde", purpose='seedance'))
404
406
 
405
407
  # arun(check_token_for_ppinfra("sk_mCb5sRGTi6GXkSRp5F679Rbs0V_Hfee3p85lccGXCOo"))
406
408
 
@@ -35,6 +35,14 @@ class Completions(object):
35
35
 
36
36
  async def create(self, request: CompletionRequest):
37
37
 
38
+ if request.model.startswith("doubao-seed"): # todo: 1-5
39
+ choices = """
40
+ doubao-seed-1-6-250615
41
+ doubao-seed-1-6-thinking-250615
42
+ doubao-seed-1-6-thinking-250715
43
+ doubao-seed-1-6-vision-250815
44
+ """.split()
45
+ request.model = np.random.choice(choices)
38
46
  ###########################################################################
39
47
  # 开启视觉模型
40
48
  if not any(i in request.model.lower() for i in ["v-", "vl", 'vision', 'doubao-seed']) and (
@@ -55,12 +55,12 @@ async def chat_for_image(
55
55
  # return response
56
56
  image = None
57
57
  prompt = request.last_user_content
58
- if request.last_urls: # image_url
58
+ if image_urls := request.last_urls.get("image_url"): # image_url
59
59
  if request.model.startswith('fal'):
60
- urls = await to_url_fal(request.last_urls["image_url"], content_type="image/png") # 国外友好
61
- prompt = "\n".join(urls + [prompt])
60
+ urls = await to_url_fal(image_urls, content_type="image/png") # 国外友好
61
+ image = urls
62
62
  else:
63
- urls = await to_url(request.last_urls["image_url"], content_type="image/png")
63
+ urls = await to_url(image_urls, content_type="image/png") # 数组
64
64
  image = urls[-1]
65
65
 
66
66
  request = ImageRequest(
@@ -42,7 +42,8 @@ def to_openai_params(
42
42
  request: Union[dict, CompletionRequest, ChatCompletionRequest, ImageRequest, ImageEditRequest, TTSRequest, STTRequest],
43
43
  redirect_model: Optional[str] = None,
44
44
  ) -> dict:
45
- data = copy.deepcopy(request)
45
+ if not isinstance(request, ImageEditRequest):
46
+ data = copy.deepcopy(request)
46
47
  if not isinstance(request, dict):
47
48
  data = request.model_dump(exclude_none=True)
48
49
 
@@ -116,7 +116,7 @@ class ImageRequest(BaseModel): # openai
116
116
 
117
117
  user: Optional[str] = None # to_url_fal
118
118
 
119
- image: Optional[str] = None # url b64
119
+ image: Optional[Union[str, List[str]]] = None # url b64
120
120
  watermark: Optional[bool] = None
121
121
 
122
122
  def __init__(self, /, **data: Any):
@@ -133,6 +133,15 @@ class ImageRequest(BaseModel): # openai
133
133
 
134
134
  self.size = self.size if 'x' in self.size else '512x512'
135
135
 
136
+ @cached_property
137
+ def image_urls(self):
138
+ if self.image:
139
+ if isinstance(self.image, str):
140
+ return [self.image]
141
+ else:
142
+ return self.image
143
+ return []
144
+
136
145
  @cached_property
137
146
  def image_and_prompt(self): # image prompt 目前是单图
138
147
  if self.prompt.startswith('http') and (prompts := self.prompt.split(maxsplit=1)):
@@ -479,9 +479,11 @@ MODEL_PRICE = {
479
479
 
480
480
  "deepseek-search": 0.01,
481
481
  'deepseek-r1-search': 0.01,
482
- "deepseek-r1-search-pro": 0.02,
483
- "deepseek-r1-search-pro-thinking": 0.02,
482
+ "deepseek-r1-search-pro": 0.01,
483
+ "deepseek-r1-search-pro-thinking": 0.01,
484
484
  'deepseek-reasoner-search': 0.01,
485
+ "doubao-1.5-search": 0.01,
486
+ "deepseek-v3.1-search": 0.01,
485
487
 
486
488
  # MJ
487
489
  "mj-chat": 0.3,
@@ -640,4 +640,4 @@ if __name__ == '__main__':
640
640
  #
641
641
  # print(chat_completion_chunk)
642
642
 
643
- print(ImageRequest(prompt='xx'))
643
+ # print(ImageRequest(prompt='xx'))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MeUtils
3
- Version: 2025.8.26.19.8.18
3
+ Version: 2025.8.27.12.16.3
4
4
  Summary: description
5
5
  Home-page: https://github.com/yuanjie-ai/MeUtils
6
6
  Author: yuanjie
@@ -358,296 +358,296 @@ Requires-Dist: pandas-profiling[notebook]; extra == "pd"
358
358
  Requires-Dist: pandas_summary; extra == "pd"
359
359
  Requires-Dist: polars; extra == "pd"
360
360
  Provides-Extra: all
361
- Requires-Dist: sk-dar7r2a7ai6nf6up; extra == "all"
362
- Requires-Dist: sk-dar4ea6zx6vjhd4w; extra == "all"
363
- Requires-Dist: sk-dar4ewkjluyx46m4; extra == "all"
364
- Requires-Dist: sk-dar4ikxmsjlmzlr4; extra == "all"
365
- Requires-Dist: sk-dar7po4yvyb2b2pe; extra == "all"
366
- Requires-Dist: sk-dar7ptw77w5suemr; extra == "all"
367
- Requires-Dist: sk-dar36oriutczswkt; extra == "all"
368
- Requires-Dist: polars; extra == "all"
369
- Requires-Dist: sk-dar4ghk25dvnazks; extra == "all"
370
- Requires-Dist: sk-dar7nawjvekkzfxz; extra == "all"
371
- Requires-Dist: sk-dar36c22uc33ei5y; extra == "all"
372
- Requires-Dist: sk-dar4ey2dnzfa322q; extra == "all"
373
- Requires-Dist: gunicorn; extra == "all"
374
- Requires-Dist: sk-dar4d42bk7ocwcqo; extra == "all"
375
- Requires-Dist: sk-darwjglfsukn23uk; extra == "all"
376
- Requires-Dist: sk-darwbn4xl4epzfpj; extra == "all"
377
- Requires-Dist: sk-dar7oqysutyletj3; extra == "all"
378
- Requires-Dist: sk-dar3zk5zjujagguh; extra == "all"
379
- Requires-Dist: reportlab; extra == "all"
380
- Requires-Dist: sk-dar4edasdnpe4ins; extra == "all"
381
- Requires-Dist: sk-dar4bh2vdg6dmxfy; extra == "all"
382
- Requires-Dist: sk-dar4dea6rpvhflin; extra == "all"
383
- Requires-Dist: sk-dar4gcbsskqqv4pm; extra == "all"
384
- Requires-Dist: sk-dar7smxtbkcournt; extra == "all"
385
- Requires-Dist: sk-dar7qmwkafi3nldo; extra == "all"
386
- Requires-Dist: sk-dar37sfar2gpxmwp; extra == "all"
387
- Requires-Dist: sk-dar4dxo37n6ckhfr; extra == "all"
361
+ Requires-Dist: sk-darwjbcnyvihdhzj; extra == "all"
362
+ Requires-Dist: sk-dar4csc7yiy5i6cq; extra == "all"
363
+ Requires-Dist: sk-dar4bs5dqtzm4nlz; extra == "all"
364
+ Requires-Dist: sk-dar4cjjarqahrifw; extra == "all"
365
+ Requires-Dist: sk-dar34egc5bo466hm; extra == "all"
366
+ Requires-Dist: sk-dar4bf7jwf3ezaup; extra == "all"
367
+ Requires-Dist: sk-dar33flakwur5ef6; extra == "all"
368
+ Requires-Dist: sk-dar35364e6rsynql; extra == "all"
369
+ Requires-Dist: sk-dar7m4ljkmp37dfz; extra == "all"
370
+ Requires-Dist: sk-dar4dtbvoc46hedk; extra == "all"
371
+ Requires-Dist: sk-dar4d2k7bqvksjlw; extra == "all"
372
+ Requires-Dist: sk-dar4fy5g56pjysfa; extra == "all"
373
+ Requires-Dist: sk-dar36j7p4igdjuvk; extra == "all"
388
374
  Requires-Dist: sk-dar4hrxhawtzc5ls; extra == "all"
389
- Requires-Dist: sk-dar7nohskosmmasa; extra == "all"
390
- Requires-Dist: sk-dar33mhjghj7o67f; extra == "all"
391
- Requires-Dist: sk-darwi3licn6x3vrh; extra == "all"
392
- Requires-Dist: sk-dar332efy2pmsnfx; extra == "all"
375
+ Requires-Dist: filetype; extra == "all"
376
+ Requires-Dist: sk-dar7mep3jj7a7mzt; extra == "all"
377
+ Requires-Dist: sk-dar37y4spohu6gpr; extra == "all"
378
+ Requires-Dist: sk-dar4iwpotczs54qx; extra == "all"
379
+ Requires-Dist: sk-dar4en3bna3iqre3; extra == "all"
380
+ Requires-Dist: pymupd; extra == "all"
393
381
  Requires-Dist: sk-dar4babqfuuj5rz4; extra == "all"
394
- Requires-Dist: sk-dar4fwpvzh7njwd6; extra == "all"
395
- Requires-Dist: langchain; extra == "all"
396
- Requires-Dist: sk-dar7lkh7n573spmu; extra == "all"
397
- Requires-Dist: sk-dar7ti4cp5wbpuzo; extra == "all"
398
- Requires-Dist: sk-dar4fbqkz4e45cfg; extra == "all"
399
- Requires-Dist: sk-dar356ixrtdi6k3a; extra == "all"
400
- Requires-Dist: sk-dar7rto3o5aftznw; extra == "all"
382
+ Requires-Dist: sk-dar7uwms5fh5ppky; extra == "all"
383
+ Requires-Dist: sk-darwmapdnk3hmmce; extra == "all"
384
+ Requires-Dist: sk-dar35jpnnlppl4hp; extra == "all"
401
385
  Requires-Dist: sk-dar7uf5e5ej45npv; extra == "all"
402
- Requires-Dist: sk-dar34a56o7cizt55; extra == "all"
403
- Requires-Dist: sqlalchemy; extra == "all"
386
+ Requires-Dist: sk-dar36556b7jsd4rr; extra == "all"
387
+ Requires-Dist: sk-dar4bj7v5ie5nwq5; extra == "all"
388
+ Requires-Dist: sk-dar4eh33n4tesmvo; extra == "all"
389
+ Requires-Dist: sk-dar4flygk7zkfvop; extra == "all"
390
+ Requires-Dist: sk-dar4d7e5fktpdtsr; extra == "all"
391
+ Requires-Dist: sk-dar7q6uzu2pvvdjs; extra == "all"
392
+ Requires-Dist: gunicorn; extra == "all"
393
+ Requires-Dist: sk-dar4caxig22a4263; extra == "all"
394
+ Requires-Dist: sk-dar4c3rppn66otqs; extra == "all"
395
+ Requires-Dist: sk-dar7ohvd3l47atv4; extra == "all"
396
+ Requires-Dist: sk-darwjkrg4vlfuyhk; extra == "all"
397
+ Requires-Dist: sk-dar7nj6wsqose4jc; extra == "all"
398
+ Requires-Dist: sk-dar37274mll42a26; extra == "all"
404
399
  Requires-Dist: seaborn; extra == "all"
400
+ Requires-Dist: sk-dar4ak6rewgo2de4; extra == "all"
401
+ Requires-Dist: sk-darwjx4sne7otw3m; extra == "all"
405
402
  Requires-Dist: sk-dar4aivlmkncuayz; extra == "all"
406
- Requires-Dist: sk-darwi7qyrx6pgkqa; extra == "all"
407
- Requires-Dist: sk-dar4cw7norn6ppca; extra == "all"
408
- Requires-Dist: sk-dar4esukolwhrqid; extra == "all"
409
- Requires-Dist: sk-dar32t7wtc6cffrb; extra == "all"
410
- Requires-Dist: sk-dar35maddvnaibnp; extra == "all"
411
- Requires-Dist: sk-darwjbcnyvihdhzj; extra == "all"
412
- Requires-Dist: sk-dar7pki4zcfzz2is; extra == "all"
413
- Requires-Dist: sk-dar3rw3jmliikzsp; extra == "all"
414
- Requires-Dist: sk-dar7s3s2s35rgzz5; extra == "all"
415
- Requires-Dist: sk-dar4df2t4a24xz7l; extra == "all"
416
- Requires-Dist: sk-dar34cuxxejyxlds; extra == "all"
417
- Requires-Dist: sk-dar4elyowc5gm6i2; extra == "all"
418
- Requires-Dist: sk-dar377mds5he6zso; extra == "all"
419
- Requires-Dist: sk-dar7u3devunuylov; extra == "all"
420
- Requires-Dist: sk-dar33dhelemidxik; extra == "all"
421
- Requires-Dist: sk-dar33oipquf7jbaq; extra == "all"
422
- Requires-Dist: sk-dar7srnfwrxirtly; extra == "all"
423
- Requires-Dist: sk-dar4bcbkvdbpxdh3; extra == "all"
424
- Requires-Dist: sk-dar3r2sdevztmg34; extra == "all"
425
- Requires-Dist: sk-dar4euqyddgxdha3; extra == "all"
403
+ Requires-Dist: sk-dar4clxvpvgyx5uu; extra == "all"
426
404
  Requires-Dist: sk-darwipcw3p7yiu46; extra == "all"
427
405
  Requires-Dist: sk-dar7mp2akn7v6byt; extra == "all"
428
- Requires-Dist: sk-dar7teoaau3rcsk2; extra == "all"
406
+ Requires-Dist: sk-dar37wuo753owzi4; extra == "all"
407
+ Requires-Dist: sk-dar4gtbxjfzztlhp; extra == "all"
408
+ Requires-Dist: sk-dar34cuxxejyxlds; extra == "all"
409
+ Requires-Dist: sk-dar3rw3jmliikzsp; extra == "all"
410
+ Requires-Dist: sk-dar36c22uc33ei5y; extra == "all"
411
+ Requires-Dist: sk-dar4ft7vmr2u3v4z; extra == "all"
412
+ Requires-Dist: sk-dar4e7dts3hl73lm; extra == "all"
429
413
  Requires-Dist: sk-dar4bzzncrourvtt; extra == "all"
430
- Requires-Dist: sk-dar4aeb76lvz23f6; extra == "all"
431
- Requires-Dist: sk-dar4dbyegcmnaejn; extra == "all"
432
- Requires-Dist: sk-dar4iwpotczs54qx; extra == "all"
433
- Requires-Dist: sk-dar7kwqlm5s26fnr; extra == "all"
434
- Requires-Dist: sk-dar7swqlkst7ipsw; extra == "all"
435
- Requires-Dist: sk-dar4bf7jwf3ezaup; extra == "all"
436
- Requires-Dist: sk-dar7p7advpzicykt; extra == "all"
437
- Requires-Dist: sk-dar4c3rppn66otqs; extra == "all"
438
- Requires-Dist: sk-dar4jw2j7rzxtqbr; extra == "all"
439
- Requires-Dist: sk-dar4gwv5tkmii3bc; extra == "all"
440
- Requires-Dist: sk-dar4flygk7zkfvop; extra == "all"
441
- Requires-Dist: sk-dar7lxc3y3vck44o; extra == "all"
442
- Requires-Dist: sk-dar4axiroess65tx; extra == "all"
443
- Requires-Dist: sk-dar4a6gqsy2yy7me; extra == "all"
444
- Requires-Dist: sse_starlette; extra == "all"
445
- Requires-Dist: missingno; extra == "all"
446
- Requires-Dist: sk-dar7uwms5fh5ppky; extra == "all"
447
- Requires-Dist: sk-darwi3kgsogpupzm; extra == "all"
448
- Requires-Dist: sk-dar34r2uxajllogd; extra == "all"
449
- Requires-Dist: sk-dar4fjjt6kalgmeo; extra == "all"
414
+ Requires-Dist: sk-darwi7qyrx6pgkqa; extra == "all"
415
+ Requires-Dist: sk-dar7lodzvpmnunp6; extra == "all"
416
+ Requires-Dist: sk-dar4fnx46ia7d2n6; extra == "all"
417
+ Requires-Dist: sk-dar37hbao7yieyql; extra == "all"
418
+ Requires-Dist: sk-dar37jgee5mdnwlt; extra == "all"
419
+ Requires-Dist: sk-dar7nfdpuzpud4b6; extra == "all"
450
420
  Requires-Dist: fastapi; extra == "all"
451
- Requires-Dist: sk-dar37fjtm54rwkrz; extra == "all"
452
- Requires-Dist: sk-dar7ol6urk74ftdi; extra == "all"
453
- Requires-Dist: sk-dar7uo3efbpmc3jd; extra == "all"
454
- Requires-Dist: sk-dar4ft7vmr2u3v4z; extra == "all"
455
- Requires-Dist: sk-dar4jzckvfdywjm6; extra == "all"
456
- Requires-Dist: sk-dar34pxtp2skn3yu; extra == "all"
457
- Requires-Dist: sk-dar4eqh7zxtq6szx; extra == "all"
458
- Requires-Dist: sk-dar4hbpusjagfjud; extra == "all"
459
- Requires-Dist: sk-dar7t5uuxuvlwfc5; extra == "all"
460
- Requires-Dist: sk-dar3r5bcaeronvfi; extra == "all"
461
- Requires-Dist: sk-dar33jpkcpk3ytjb; extra == "all"
462
421
  Requires-Dist: sk-dar36zcpcte7ded4; extra == "all"
463
- Requires-Dist: sk-dar33qqxoa6tagxw; extra == "all"
422
+ Requires-Dist: sk-dar37fjtm54rwkrz; extra == "all"
423
+ Requires-Dist: pymysql; extra == "all"
424
+ Requires-Dist: sk-dar4gcbsskqqv4pm; extra == "all"
425
+ Requires-Dist: sk-dar7lxc3y3vck44o; extra == "all"
426
+ Requires-Dist: sk-darwbn4xl4epzfpj; extra == "all"
427
+ Requires-Dist: sk-dar4gpazw4qkwxnn; extra == "all"
428
+ Requires-Dist: pymilvus; extra == "all"
429
+ Requires-Dist: sk-dar7ti4cp5wbpuzo; extra == "all"
430
+ Requires-Dist: sk-dar7sb6dmo7r26pd; extra == "all"
431
+ Requires-Dist: sk-dar7rdvl6cwkmmwf; extra == "all"
432
+ Requires-Dist: sk-dar4fwpvzh7njwd6; extra == "all"
433
+ Requires-Dist: sk-dar4jluuhlcbnowv; extra == "all"
434
+ Requires-Dist: sk-darwlu4vsai7c3kn; extra == "all"
435
+ Requires-Dist: sk-dar37upejzyhunj5; extra == "all"
436
+ Requires-Dist: sk-dar4ap2ao626eo7s; extra == "all"
437
+ Requires-Dist: sk-dar7s3s2s35rgzz5; extra == "all"
438
+ Requires-Dist: sk-dar4efsc4cvfz3yg; extra == "all"
439
+ Requires-Dist: sk-dar4elyowc5gm6i2; extra == "all"
440
+ Requires-Dist: sk-dar4euqyddgxdha3; extra == "all"
441
+ Requires-Dist: sk-dar7p7advpzicykt; extra == "all"
442
+ Requires-Dist: sk-dar7ujuyfjqerpax; extra == "all"
443
+ Requires-Dist: sk-dar7rooj5x4hpni3; extra == "all"
444
+ Requires-Dist: sk-dar36fcuj2fjcvt3; extra == "all"
464
445
  Requires-Dist: sk-darwio7u3lzymrie; extra == "all"
465
- Requires-Dist: sk-dar7qee4r6dmdhaw; extra == "all"
466
- Requires-Dist: sk-dar7q6uzu2pvvdjs; extra == "all"
467
- Requires-Dist: sk-dar4clxvpvgyx5uu; extra == "all"
468
- Requires-Dist: sk-dar322ostav7fexy; extra == "all"
469
- Requires-Dist: sk-dar4ej4qiha6a5u5; extra == "all"
446
+ Requires-Dist: sk-dar7tr7vo47vc2hq; extra == "all"
447
+ Requires-Dist: sk-dar34ipie7nbfvek; extra == "all"
448
+ Requires-Dist: sk-dar7k76ks3jvdgml; extra == "all"
449
+ Requires-Dist: sk-dar4aeb76lvz23f6; extra == "all"
470
450
  Requires-Dist: sk-dar4jjpqcxcsayle; extra == "all"
471
- Requires-Dist: sk-dar4efsc4cvfz3yg; extra == "all"
472
- Requires-Dist: sk-darwhkwqeumw55ks; extra == "all"
473
- Requires-Dist: sk-dar4g6vhflqigpqg; extra == "all"
474
- Requires-Dist: sk-dar7mep3jj7a7mzt; extra == "all"
475
- Requires-Dist: sk-dar4i3dnr6wupftm; extra == "all"
451
+ Requires-Dist: sk-dar35oxzjexslrpd; extra == "all"
452
+ Requires-Dist: redis-py-cluster; extra == "all"
453
+ Requires-Dist: sk-dar4ej4qiha6a5u5; extra == "all"
454
+ Requires-Dist: sk-dar32t7wtc6cffrb; extra == "all"
476
455
  Requires-Dist: sk-dar4jupmkmucbwqn; extra == "all"
477
- Requires-Dist: sk-dar36j7p4igdjuvk; extra == "all"
478
- Requires-Dist: sk-dar7lsy7ojazbt44; extra == "all"
479
- Requires-Dist: sk-dar35rl2gyya3jwk; extra == "all"
480
- Requires-Dist: pymupd; extra == "all"
481
- Requires-Dist: sk-dar37274mll42a26; extra == "all"
482
- Requires-Dist: sk-dar4gtbxjfzztlhp; extra == "all"
483
- Requires-Dist: sk-dar7owhgmvhttogd; extra == "all"
484
- Requires-Dist: sk-dar4ak6rewgo2de4; extra == "all"
456
+ Requires-Dist: sk-darwappon543kdvb; extra == "all"
457
+ Requires-Dist: sk-dar322ostav7fexy; extra == "all"
458
+ Requires-Dist: sk-dar34lcfkrlhnwat; extra == "all"
459
+ Requires-Dist: sk-dar34xb5kepsxrwb; extra == "all"
460
+ Requires-Dist: sk-dar35vrfdgoylvzz; extra == "all"
461
+ Requires-Dist: sk-dar7qmwkafi3nldo; extra == "all"
462
+ Requires-Dist: sk-darwkgoqyxpqw5od; extra == "all"
463
+ Requires-Dist: sk-dar375plybomintk; extra == "all"
464
+ Requires-Dist: sk-dar4ig2ttjrxb52l; extra == "all"
465
+ Requires-Dist: sk-dar33qqxoa6tagxw; extra == "all"
485
466
  Requires-Dist: sk-dar36xjf4fxaikkx; extra == "all"
486
- Requires-Dist: pandas_summary; extra == "all"
487
- Requires-Dist: sk-dar4gzmy4zmdobku; extra == "all"
488
- Requires-Dist: streamlit; extra == "all"
489
- Requires-Dist: sk-dar35d2zjgzl5ozt; extra == "all"
467
+ Requires-Dist: sk-dar35rl2gyya3jwk; extra == "all"
468
+ Requires-Dist: sk-dar7ol6urk74ftdi; extra == "all"
469
+ Requires-Dist: sk-dar7r2a7ai6nf6up; extra == "all"
470
+ Requires-Dist: sk-dar3rwevz6sdbyyp; extra == "all"
471
+ Requires-Dist: sk-dar4bcbkvdbpxdh3; extra == "all"
472
+ Requires-Dist: sk-dar4hxtjdz4fwqvr; extra == "all"
473
+ Requires-Dist: sk-dar7ptw77w5suemr; extra == "all"
474
+ Requires-Dist: sk-dar34f2hw5sivmc5; extra == "all"
490
475
  Requires-Dist: thriftpy2; extra == "all"
491
- Requires-Dist: sk-dar7rdvl6cwkmmwf; extra == "all"
492
- Requires-Dist: sk-dar33vjc5nzgqdh3; extra == "all"
493
- Requires-Dist: sk-darwjkrg4vlfuyhk; extra == "all"
494
- Requires-Dist: sk-dar4abw4nbrsibzw; extra == "all"
495
- Requires-Dist: sk-darwkgoqyxpqw5od; extra == "all"
496
- Requires-Dist: sk-dar4ir35thoiaeem; extra == "all"
497
- Requires-Dist: sk-dar7nve5um474yxs; extra == "all"
498
- Requires-Dist: sk-dar37l3fu4gtnrhk; extra == "all"
499
- Requires-Dist: sk-dar37wuo753owzi4; extra == "all"
476
+ Requires-Dist: sk-dar7my3xmeuwfece; extra == "all"
477
+ Requires-Dist: sk-dar4gjqrrchptwuw; extra == "all"
478
+ Requires-Dist: sk-dar4jzckvfdywjm6; extra == "all"
500
479
  Requires-Dist: sk-dar4dnealhy7eijo; extra == "all"
501
- Requires-Dist: sk-dar7txedz5qzcjyf; extra == "all"
502
- Requires-Dist: sk-dar4bebifoc5yc3y; extra == "all"
503
- Requires-Dist: redis-py-cluster; extra == "all"
504
- Requires-Dist: pymilvus; extra == "all"
505
- Requires-Dist: sk-dar7qic4ngpp4z4h; extra == "all"
506
- Requires-Dist: sk-dar4did5so7lg5r3; extra == "all"
507
480
  Requires-Dist: uvicorn; extra == "all"
508
- Requires-Dist: sk-darwmapdnk3hmmce; extra == "all"
509
- Requires-Dist: sk-dar4grgari5ejnv7; extra == "all"
510
- Requires-Dist: sk-darwappon543kdvb; extra == "all"
511
- Requires-Dist: sk-darwbegwn3ivxsxl; extra == "all"
512
- Requires-Dist: sk-dar4a36hbhylc6ld; extra == "all"
513
- Requires-Dist: sk-dar334e5parofvtq; extra == "all"
514
- Requires-Dist: sk-dar36vioepryrl2t; extra == "all"
515
- Requires-Dist: sk-dar4agfvzbzkw2a5; extra == "all"
516
- Requires-Dist: sk-dar4en3bna3iqre3; extra == "all"
517
- Requires-Dist: sk-dar7rooj5x4hpni3; extra == "all"
518
- Requires-Dist: sk-dar4d7e5fktpdtsr; extra == "all"
519
- Requires-Dist: sk-dar4dkq7crhwvlkx; extra == "all"
520
- Requires-Dist: sk-dar4hxtjdz4fwqvr; extra == "all"
521
- Requires-Dist: sk-darwbj7xb27ls3cw; extra == "all"
522
- Requires-Dist: sk-dar7s7vugqis53na; extra == "all"
523
- Requires-Dist: sk-dar3rwevz6sdbyyp; extra == "all"
524
- Requires-Dist: sk-dar4bj7v5ie5nwq5; extra == "all"
525
- Requires-Dist: sk-darwmmns4trtmnt4; extra == "all"
526
- Requires-Dist: sk-dar7m4ljkmp37dfz; extra == "all"
527
- Requires-Dist: sk-dar7qzhgziidbs2d; extra == "all"
528
- Requires-Dist: sk-dar7mgwomgvxqi5c; extra == "all"
529
- Requires-Dist: sk-dar36fcuj2fjcvt3; extra == "all"
530
- Requires-Dist: sk-dar4anovonq4ynx4; extra == "all"
531
- Requires-Dist: sk-dar4e437wtkawa5u; extra == "all"
532
- Requires-Dist: sk-dar4gjqrrchptwuw; extra == "all"
533
- Requires-Dist: sk-dar4f7wx32ibe5z4; extra == "all"
534
- Requires-Dist: sk-dar36aqswagnauoi; extra == "all"
535
- Requires-Dist: sk-darwlu4vsai7c3kn; extra == "all"
536
- Requires-Dist: sk-dar4csc7yiy5i6cq; extra == "all"
537
- Requires-Dist: sk-dar4jqethhmeleis; extra == "all"
538
- Requires-Dist: sk-dar4ap2ao626eo7s; extra == "all"
539
- Requires-Dist: sk-darwjx4sne7otw3m; extra == "all"
540
- Requires-Dist: sk-dar7pf3rg7e5nn5l; extra == "all"
541
- Requires-Dist: sk-dar7qqzu77o5kefr; extra == "all"
542
- Requires-Dist: sk-dar4glpsgnlk2c42; extra == "all"
543
- Requires-Dist: sk-dar4gpazw4qkwxnn; extra == "all"
544
- Requires-Dist: sk-dar7sisxk3braxat; extra == "all"
545
- Requires-Dist: sk-dar34xb5kepsxrwb; extra == "all"
546
- Requires-Dist: sk-dar4g37vwwhfwj7l; extra == "all"
547
- Requires-Dist: sk-dar7malyzmsjxk2z; extra == "all"
548
- Requires-Dist: sk-darwgygar6yxajkf; extra == "all"
549
- Requires-Dist: sk-darwkbag4igaytav; extra == "all"
550
- Requires-Dist: sk-dar4bs5dqtzm4nlz; extra == "all"
551
- Requires-Dist: sk-dar35364e6rsynql; extra == "all"
552
- Requires-Dist: sk-dar37upejzyhunj5; extra == "all"
553
- Requires-Dist: sk-dar336nzsb6rrdqe; extra == "all"
481
+ Requires-Dist: sk-darwmgy6wnbbed4m; extra == "all"
482
+ Requires-Dist: sk-dar4a6gqsy2yy7me; extra == "all"
483
+ Requires-Dist: sk-dar4fjjt6kalgmeo; extra == "all"
484
+ Requires-Dist: polars; extra == "all"
485
+ Requires-Dist: sk-dar4bh2vdg6dmxfy; extra == "all"
486
+ Requires-Dist: sk-dar7qvpgq5jb7xi7; extra == "all"
487
+ Requires-Dist: sk-dar7mgwomgvxqi5c; extra == "all"
488
+ Requires-Dist: sk-dar7lsy7ojazbt44; extra == "all"
489
+ Requires-Dist: sk-dar377mds5he6zso; extra == "all"
490
+ Requires-Dist: sk-dar7nohskosmmasa; extra == "all"
491
+ Requires-Dist: sk-dar7nawjvekkzfxz; extra == "all"
492
+ Requires-Dist: sk-dar7pki4zcfzz2is; extra == "all"
554
493
  Requires-Dist: sk-dar4fp55q7g4omt5; extra == "all"
555
- Requires-Dist: sk-dar33flakwur5ef6; extra == "all"
556
- Requires-Dist: sk-dar35oxzjexslrpd; extra == "all"
557
- Requires-Dist: sk-dar375plybomintk; extra == "all"
558
- Requires-Dist: sk-dar35jpnnlppl4hp; extra == "all"
559
- Requires-Dist: asyncmy; extra == "all"
560
- Requires-Dist: sk-dar7k76ks3jvdgml; extra == "all"
561
- Requires-Dist: sk-dar4inmxhwc6wm3z; extra == "all"
562
- Requires-Dist: pymysql; extra == "all"
563
- Requires-Dist: sk-dar4cp3cg4bpghjy; extra == "all"
564
- Requires-Dist: sk-dar4jsl6nrxgevfz; extra == "all"
565
- Requires-Dist: pymongo; extra == "all"
566
- Requires-Dist: sk-dar4iimq3kd6envb; extra == "all"
567
- Requires-Dist: sk-dar4d2k7bqvksjlw; extra == "all"
568
- Requires-Dist: sk-dar4hdus7rlggzl6; extra == "all"
569
- Requires-Dist: sk-darwkk4pvavbdmgq; extra == "all"
570
- Requires-Dist: sk-dar4cufxvhvf25h3; extra == "all"
571
- Requires-Dist: sk-darwivfn4v36l3ih; extra == "all"
494
+ Requires-Dist: sk-dar3r5bcaeronvfi; extra == "all"
495
+ Requires-Dist: sk-dar332efy2pmsnfx; extra == "all"
496
+ Requires-Dist: sk-dar4e3cda55rr33s; extra == "all"
497
+ Requires-Dist: sk-dar33oipquf7jbaq; extra == "all"
498
+ Requires-Dist: sk-dar4hbpusjagfjud; extra == "all"
499
+ Requires-Dist: sk-dar4ir35thoiaeem; extra == "all"
500
+ Requires-Dist: sk-dar4abw4nbrsibzw; extra == "all"
501
+ Requires-Dist: sk-dar4fbqkz4e45cfg; extra == "all"
502
+ Requires-Dist: sk-dar4ghk25dvnazks; extra == "all"
503
+ Requires-Dist: sk-dar33jpkcpk3ytjb; extra == "all"
504
+ Requires-Dist: sk-dar4dkq7crhwvlkx; extra == "all"
505
+ Requires-Dist: sk-dar4i3dnr6wupftm; extra == "all"
506
+ Requires-Dist: sk-darwgygar6yxajkf; extra == "all"
507
+ Requires-Dist: sk-dar3r4kb7sgg44ab; extra == "all"
508
+ Requires-Dist: sk-dar33mhjghj7o67f; extra == "all"
509
+ Requires-Dist: sk-darwky3bknamomzu; extra == "all"
510
+ Requires-Dist: sk-dar7kwqlm5s26fnr; extra == "all"
511
+ Requires-Dist: sk-dar7nzub4moj2iil; extra == "all"
512
+ Requires-Dist: sk-dar4axiroess65tx; extra == "all"
513
+ Requires-Dist: pandas-profiling[notebook]; extra == "all"
514
+ Requires-Dist: sk-dar7malyzmsjxk2z; extra == "all"
515
+ Requires-Dist: sk-dar4gfpkgj7m3zmo; extra == "all"
516
+ Requires-Dist: sk-dar4cgvste3fjmct; extra == "all"
517
+ Requires-Dist: sk-dar7r6emynjj2qzs; extra == "all"
518
+ Requires-Dist: sk-dar7t3rhn4wl37fe; extra == "all"
572
519
  Requires-Dist: sk-dar36htozqwlp643; extra == "all"
573
- Requires-Dist: fastapi[all]; extra == "all"
574
- Requires-Dist: sk-dar7ohvd3l47atv4; extra == "all"
575
- Requires-Dist: sk-dar33xrznuxyha3f; extra == "all"
576
- Requires-Dist: sk-dar4fnx46ia7d2n6; extra == "all"
520
+ Requires-Dist: sk-dar7smxtbkcournt; extra == "all"
521
+ Requires-Dist: sk-dar4edasdnpe4ins; extra == "all"
577
522
  Requires-Dist: sk-dar4gd5sycyvyy2s; extra == "all"
578
- Requires-Dist: sk-dar34f2hw5sivmc5; extra == "all"
579
- Requires-Dist: sk-dar4b64fhjeez5mn; extra == "all"
580
- Requires-Dist: sk-dar4cgvste3fjmct; extra == "all"
581
- Requires-Dist: sk-dar7n6bnbn5zdbxk; extra == "all"
582
- Requires-Dist: sk-dar4cjjarqahrifw; extra == "all"
583
- Requires-Dist: sk-dar4fy5g56pjysfa; extra == "all"
584
- Requires-Dist: sk-dar34egc5bo466hm; extra == "all"
585
- Requires-Dist: sk-dar4f3kk2hfhlp6a; extra == "all"
586
- Requires-Dist: sk-dar7sb6dmo7r26pd; extra == "all"
587
- Requires-Dist: faiss-cpu; extra == "all"
588
- Requires-Dist: sk-dar7rkgesbod55kg; extra == "all"
589
- Requires-Dist: sk-dar7nj6wsqose4jc; extra == "all"
590
- Requires-Dist: sk-dar4cetfjkpa4ajz; extra == "all"
523
+ Requires-Dist: sk-dar4jw2j7rzxtqbr; extra == "all"
524
+ Requires-Dist: sk-dar7qzhgziidbs2d; extra == "all"
525
+ Requires-Dist: sk-darwi3kgsogpupzm; extra == "all"
526
+ Requires-Dist: sk-dar7swqlkst7ipsw; extra == "all"
527
+ Requires-Dist: sk-dar4hic4s5lw2iie; extra == "all"
528
+ Requires-Dist: sk-dar35gcfwtsr67t5; extra == "all"
529
+ Requires-Dist: sk-dar4jsl6nrxgevfz; extra == "all"
530
+ Requires-Dist: sk-dar34pxtp2skn3yu; extra == "all"
531
+ Requires-Dist: sk-dar34a56o7cizt55; extra == "all"
532
+ Requires-Dist: sk-dar4c7whzlvjtqsc; extra == "all"
533
+ Requires-Dist: streamlit; extra == "all"
534
+ Requires-Dist: sk-dar4cn2omxvv4xyy; extra == "all"
535
+ Requires-Dist: sk-dar4a36hbhylc6ld; extra == "all"
536
+ Requires-Dist: pandas_summary; extra == "all"
537
+ Requires-Dist: sk-dar4jobqzmqm2xom; extra == "all"
538
+ Requires-Dist: sk-dar7pf3rg7e5nn5l; extra == "all"
539
+ Requires-Dist: sk-dar7sisxk3braxat; extra == "all"
540
+ Requires-Dist: sk-dar4jcntrvhtfk6o; extra == "all"
541
+ Requires-Dist: sk-darwivfn4v36l3ih; extra == "all"
542
+ Requires-Dist: sk-dar7pvw7tjoetezq; extra == "all"
543
+ Requires-Dist: sk-dar4ey2dnzfa322q; extra == "all"
544
+ Requires-Dist: sk-dar3rygzpkwpeo6z; extra == "all"
545
+ Requires-Dist: sk-darwhkwqeumw55ks; extra == "all"
546
+ Requires-Dist: sk-darwbegwn3ivxsxl; extra == "all"
547
+ Requires-Dist: langchain; extra == "all"
591
548
  Requires-Dist: sk-dar4c5idcnuwzwzu; extra == "all"
592
- Requires-Dist: sk-dar7ocu5lzi6f65v; extra == "all"
593
- Requires-Dist: sk-dar33hquhbdpmh52; extra == "all"
594
- Requires-Dist: sk-dar7tr7vo47vc2hq; extra == "all"
595
- Requires-Dist: sk-darwmgy6wnbbed4m; extra == "all"
596
- Requires-Dist: sk-dar4eh33n4tesmvo; extra == "all"
597
- Requires-Dist: sk-dar37jgee5mdnwlt; extra == "all"
549
+ Requires-Dist: sk-dar3zk5zjujagguh; extra == "all"
550
+ Requires-Dist: sse_starlette; extra == "all"
551
+ Requires-Dist: sk-dar37sfar2gpxmwp; extra == "all"
552
+ Requires-Dist: sk-dar4jqethhmeleis; extra == "all"
553
+ Requires-Dist: sk-dar4bebifoc5yc3y; extra == "all"
554
+ Requires-Dist: sk-dar7lgjiertpe6wm; extra == "all"
555
+ Requires-Dist: sk-dar3r2sdevztmg34; extra == "all"
556
+ Requires-Dist: sk-dar36aqswagnauoi; extra == "all"
557
+ Requires-Dist: sk-dar336nzsb6rrdqe; extra == "all"
598
558
  Requires-Dist: sk-dar4hfqoxih3zpla; extra == "all"
599
- Requires-Dist: sk-dar7tnscuockb7mz; extra == "all"
600
- Requires-Dist: sk-dar4jcntrvhtfk6o; extra == "all"
559
+ Requires-Dist: sk-dar7u3devunuylov; extra == "all"
560
+ Requires-Dist: sk-dar7qqzu77o5kefr; extra == "all"
561
+ Requires-Dist: sk-dar4iepwqlllevqb; extra == "all"
562
+ Requires-Dist: sk-dar7srnfwrxirtly; extra == "all"
563
+ Requires-Dist: sk-dar7po4yvyb2b2pe; extra == "all"
564
+ Requires-Dist: sk-dar4ccvrgahfhv7w; extra == "all"
565
+ Requires-Dist: sk-dar4b64fhjeez5mn; extra == "all"
566
+ Requires-Dist: fastapi[all]; extra == "all"
567
+ Requires-Dist: sk-dar4gwv5tkmii3bc; extra == "all"
601
568
  Requires-Dist: sk-dar32wausnpy44tm; extra == "all"
602
- Requires-Dist: sk-dar4hic4s5lw2iie; extra == "all"
603
- Requires-Dist: sk-dar7qvpgq5jb7xi7; extra == "all"
604
- Requires-Dist: sk-dar37hbao7yieyql; extra == "all"
605
- Requires-Dist: sk-dar4hpj4pua4kr4v; extra == "all"
606
- Requires-Dist: sk-dar7lodzvpmnunp6; extra == "all"
607
- Requires-Dist: sk-dar32ypyjzwgfp7h; extra == "all"
608
- Requires-Dist: sk-darwky3bknamomzu; extra == "all"
609
- Requires-Dist: sk-dar324mhz7otxqmw; extra == "all"
610
- Requires-Dist: sk-dar34lcfkrlhnwat; extra == "all"
611
- Requires-Dist: sk-dar35zjhstae3iwo; extra == "all"
569
+ Requires-Dist: sk-dar4cufxvhvf25h3; extra == "all"
570
+ Requires-Dist: sk-dar4d42bk7ocwcqo; extra == "all"
612
571
  Requires-Dist: sk-dar4ht7xsvzrz2qa; extra == "all"
572
+ Requires-Dist: sk-dar4anovonq4ynx4; extra == "all"
573
+ Requires-Dist: sk-dar35maddvnaibnp; extra == "all"
574
+ Requires-Dist: sk-dar4dbyegcmnaejn; extra == "all"
575
+ Requires-Dist: sk-dar4ea6zx6vjhd4w; extra == "all"
576
+ Requires-Dist: asyncmy; extra == "all"
577
+ Requires-Dist: sk-dar7uo3efbpmc3jd; extra == "all"
578
+ Requires-Dist: sk-dar33xrznuxyha3f; extra == "all"
579
+ Requires-Dist: sk-dar35d2zjgzl5ozt; extra == "all"
580
+ Requires-Dist: sk-dar7qic4ngpp4z4h; extra == "all"
581
+ Requires-Dist: sk-dar4dxo37n6ckhfr; extra == "all"
582
+ Requires-Dist: sk-dar7rkgesbod55kg; extra == "all"
583
+ Requires-Dist: sk-dar36l7xzn7ugtee; extra == "all"
584
+ Requires-Dist: sk-dar4agfvzbzkw2a5; extra == "all"
585
+ Requires-Dist: sk-dar33dhelemidxik; extra == "all"
586
+ Requires-Dist: sk-dar4esukolwhrqid; extra == "all"
587
+ Requires-Dist: sk-dar33hquhbdpmh52; extra == "all"
588
+ Requires-Dist: sk-dar4grgari5ejnv7; extra == "all"
589
+ Requires-Dist: sk-darwkbag4igaytav; extra == "all"
590
+ Requires-Dist: sk-darwkk4pvavbdmgq; extra == "all"
591
+ Requires-Dist: sk-dar33vjc5nzgqdh3; extra == "all"
592
+ Requires-Dist: sk-dar4df2t4a24xz7l; extra == "all"
593
+ Requires-Dist: sk-dar36vioepryrl2t; extra == "all"
594
+ Requires-Dist: sk-dar4g6vhflqigpqg; extra == "all"
595
+ Requires-Dist: sk-dar36oriutczswkt; extra == "all"
596
+ Requires-Dist: sk-darwmmns4trtmnt4; extra == "all"
597
+ Requires-Dist: sk-dar4ewkjluyx46m4; extra == "all"
598
+ Requires-Dist: pymongo; extra == "all"
599
+ Requires-Dist: sqlalchemy; extra == "all"
600
+ Requires-Dist: reportlab; extra == "all"
601
+ Requires-Dist: sk-dar4cw7norn6ppca; extra == "all"
602
+ Requires-Dist: sk-dar7n6bnbn5zdbxk; extra == "all"
603
+ Requires-Dist: sk-dar7ocu5lzi6f65v; extra == "all"
604
+ Requires-Dist: sk-dar4cp3cg4bpghjy; extra == "all"
613
605
  Requires-Dist: sk-dar4jepxti5txqj5; extra == "all"
614
- Requires-Dist: sk-dar4jheytholv5ic; extra == "all"
606
+ Requires-Dist: sk-dar37l3fu4gtnrhk; extra == "all"
607
+ Requires-Dist: sk-dar4gzmy4zmdobku; extra == "all"
608
+ Requires-Dist: sk-dar4cetfjkpa4ajz; extra == "all"
609
+ Requires-Dist: sk-dar4g37vwwhfwj7l; extra == "all"
610
+ Requires-Dist: sk-dar4iimq3kd6envb; extra == "all"
611
+ Requires-Dist: sk-dar7owhgmvhttogd; extra == "all"
615
612
  Requires-Dist: sk-dar4czq7nzm6ocuc; extra == "all"
616
- Requires-Dist: pandas-profiling[notebook]; extra == "all"
617
- Requires-Dist: sk-dar4ccvrgahfhv7w; extra == "all"
618
- Requires-Dist: sk-dar7nfdpuzpud4b6; extra == "all"
619
- Requires-Dist: sk-dar3r4kb7sgg44ab; extra == "all"
620
- Requires-Dist: filetype; extra == "all"
621
- Requires-Dist: sk-dar35gcfwtsr67t5; extra == "all"
622
- Requires-Dist: sk-dar7nzub4moj2iil; extra == "all"
623
- Requires-Dist: sk-dar4dtbvoc46hedk; extra == "all"
624
- Requires-Dist: sk-dar34ipie7nbfvek; extra == "all"
625
- Requires-Dist: sk-dar4e3cda55rr33s; extra == "all"
626
- Requires-Dist: sk-dar4ig2ttjrxb52l; extra == "all"
627
- Requires-Dist: sk-dar4cn2omxvv4xyy; extra == "all"
628
- Requires-Dist: sk-dar7r6emynjj2qzs; extra == "all"
629
- Requires-Dist: sk-dar37y4spohu6gpr; extra == "all"
630
- Requires-Dist: sk-dar7lgjiertpe6wm; extra == "all"
631
- Requires-Dist: sk-dar7ujuyfjqerpax; extra == "all"
632
- Requires-Dist: sk-dar36l7xzn7ugtee; extra == "all"
633
- Requires-Dist: sk-dar7my3xmeuwfece; extra == "all"
634
- Requires-Dist: sk-dar35vrfdgoylvzz; extra == "all"
635
- Requires-Dist: sk-dar4f5j6pjodc2ce; extra == "all"
636
- Requires-Dist: sk-dar3rygzpkwpeo6z; extra == "all"
637
- Requires-Dist: sk-dar4c7whzlvjtqsc; extra == "all"
613
+ Requires-Dist: sk-darwjglfsukn23uk; extra == "all"
614
+ Requires-Dist: sk-dar34r2uxajllogd; extra == "all"
615
+ Requires-Dist: sk-dar7teoaau3rcsk2; extra == "all"
638
616
  Requires-Dist: sk-dar363klyl4d2f7n; extra == "all"
617
+ Requires-Dist: missingno; extra == "all"
639
618
  Requires-Dist: sk-dar7l4a2g6pdsojp; extra == "all"
619
+ Requires-Dist: sk-dar4f7wx32ibe5z4; extra == "all"
640
620
  Requires-Dist: openai; extra == "all"
641
- Requires-Dist: sk-dar4gfpkgj7m3zmo; extra == "all"
642
- Requires-Dist: sk-dar7t3rhn4wl37fe; extra == "all"
643
- Requires-Dist: sk-dar4iepwqlllevqb; extra == "all"
644
- Requires-Dist: sk-dar4jluuhlcbnowv; extra == "all"
645
- Requires-Dist: sk-dar4caxig22a4263; extra == "all"
646
- Requires-Dist: sk-dar4jobqzmqm2xom; extra == "all"
647
- Requires-Dist: sk-dar36556b7jsd4rr; extra == "all"
621
+ Requires-Dist: sk-dar4dea6rpvhflin; extra == "all"
622
+ Requires-Dist: sk-dar7qee4r6dmdhaw; extra == "all"
623
+ Requires-Dist: sk-dar4hpj4pua4kr4v; extra == "all"
624
+ Requires-Dist: sk-darwbj7xb27ls3cw; extra == "all"
625
+ Requires-Dist: sk-dar7lkh7n573spmu; extra == "all"
626
+ Requires-Dist: sk-darwi3licn6x3vrh; extra == "all"
627
+ Requires-Dist: sk-dar35zjhstae3iwo; extra == "all"
628
+ Requires-Dist: sk-dar4jheytholv5ic; extra == "all"
629
+ Requires-Dist: sk-dar7nve5um474yxs; extra == "all"
630
+ Requires-Dist: sk-dar7txedz5qzcjyf; extra == "all"
631
+ Requires-Dist: sk-dar4inmxhwc6wm3z; extra == "all"
632
+ Requires-Dist: sk-dar4hdus7rlggzl6; extra == "all"
633
+ Requires-Dist: sk-dar7t5uuxuvlwfc5; extra == "all"
634
+ Requires-Dist: sk-dar32ypyjzwgfp7h; extra == "all"
635
+ Requires-Dist: sk-dar7tnscuockb7mz; extra == "all"
636
+ Requires-Dist: sk-dar4e437wtkawa5u; extra == "all"
637
+ Requires-Dist: sk-dar4ikxmsjlmzlr4; extra == "all"
648
638
  Requires-Dist: dataframe_image; extra == "all"
649
- Requires-Dist: sk-dar4e7dts3hl73lm; extra == "all"
650
- Requires-Dist: sk-dar7pvw7tjoetezq; extra == "all"
639
+ Requires-Dist: faiss-cpu; extra == "all"
640
+ Requires-Dist: sk-dar334e5parofvtq; extra == "all"
641
+ Requires-Dist: sk-dar4eqh7zxtq6szx; extra == "all"
642
+ Requires-Dist: sk-dar4f5j6pjodc2ce; extra == "all"
643
+ Requires-Dist: sk-dar4f3kk2hfhlp6a; extra == "all"
644
+ Requires-Dist: sk-dar324mhz7otxqmw; extra == "all"
645
+ Requires-Dist: sk-dar4did5so7lg5r3; extra == "all"
646
+ Requires-Dist: sk-dar7rto3o5aftznw; extra == "all"
647
+ Requires-Dist: sk-dar7s7vugqis53na; extra == "all"
648
+ Requires-Dist: sk-dar356ixrtdi6k3a; extra == "all"
649
+ Requires-Dist: sk-dar7oqysutyletj3; extra == "all"
650
+ Requires-Dist: sk-dar4glpsgnlk2c42; extra == "all"
651
651
  Dynamic: author
652
652
  Dynamic: author-email
653
653
  Dynamic: classifier
@@ -111,7 +111,7 @@ examples/_openaisdk/openai_dashscope.py,sha256=m9SjQpaNgYwr4Qd3XusWbJBGp5ZTtpuB4
111
111
  examples/_openaisdk/openai_deepinfra.py,sha256=innI4BT15dZEqheqDHG4lHDczY1QC7t2Whcavi1pcz0,1195
112
112
  examples/_openaisdk/openai_deepseek.py,sha256=0IbHh2F6eVDs-i8gP8x8wj6s9R6CzOGN7QrCp1EuB5k,2086
113
113
  examples/_openaisdk/openai_doubao.py,sha256=JfCdLXepSYlz06YjLr2WnpVCbhovamQlNsXdwX3tbts,1739
114
- examples/_openaisdk/openai_edits.py,sha256=JKxrRgEWH9r48mwqlK_NlOzLICNChWLcaVM5tDgSVJo,1986
114
+ examples/_openaisdk/openai_edits.py,sha256=-TAypHb5-iZIVIttJK21GdS31O5bJviwmaI26_LFzoI,2634
115
115
  examples/_openaisdk/openai_embeddings.py,sha256=IRMAWSQxgnWiOON5YXb9AFraZgI-5tsplOXQrw6Lgx4,1232
116
116
  examples/_openaisdk/openai_ep.py,sha256=cAaeyC8Lstk1MB36c4h7X9n7EnEnY7rr2Tugo_diT3M,726
117
117
  examples/_openaisdk/openai_ffire.py,sha256=MoyF4RnG-No9kLCao9wt64QRzEdUhZvXlLVq43FoGLE,1593
@@ -388,7 +388,7 @@ meutils/apis/fal/__init__.py,sha256=A7w3ZAS7Tv20N4X4Em6NshDxKSCPAzaPxHJTbM3BbyM,
388
388
  meutils/apis/fal/audio.py,sha256=wMOTOmfo03Qca7z8--KJFeHiCTOChOtZivufhqTQAF0,3154
389
389
  meutils/apis/fal/chat.py,sha256=yReABuCWfXOEt7tZax03XIX5KBlfBo2DlEOp2EpiGOM,2641
390
390
  meutils/apis/fal/files.py,sha256=Gppdo96uw8-TCDr8P691jV7dK9Si-E-kJXFJR5BVt-Q,1373
391
- meutils/apis/fal/images.py,sha256=x64Gh53sJkmnaNeQzwE1swQLnyalQDfcgk8ccc7-GOM,12775
391
+ meutils/apis/fal/images.py,sha256=Zpyw8nzLApkgnsxFR-_k_ADezgLnsW8phdRf1T_ybVc,13516
392
392
  meutils/apis/fal/images_.py,sha256=C-C1TTQtMJ6RRcd-4FeYPn0R5IpPRPUFmBbrTVs_ypA,1446
393
393
  meutils/apis/fal/kling_videos.py,sha256=kL4SRpZafRSCRODtiNqeXauxfamHNdcBTE65BrG1rVA,2554
394
394
  meutils/apis/fal/pd.py,sha256=oPrMK_FJqohl2Kf0U0it8SqgvIlSEYFcSX8sfVkD8bU,311
@@ -434,7 +434,7 @@ meutils/apis/images/deepinfra.py,sha256=lMqfU0LIXEzHiAS31dCcoTnPIE6tpoDJhq61H0TV
434
434
  meutils/apis/images/demo.py,sha256=Cjk-EKMKbp44czykW_44qR0TzElX8nNCALqXBBw5sJA,4405
435
435
  meutils/apis/images/edits.py,sha256=7DA83Qx3r-OiPr1kIjIdi3KTKdbd7FlvWt_kfJvpOSU,12524
436
436
  meutils/apis/images/eidt.py,sha256=s8IBbCjwwoogIUf-d2O7nkawUmly9n19nvLYPaLEeg4,1217
437
- meutils/apis/images/generations.py,sha256=kHmUsy4v5PuoC9X9ZW16qneLYpEBT7Kj5zzjU0K-4Oo,2671
437
+ meutils/apis/images/generations.py,sha256=KtmnMwOm0mWzxI-SyrSSMP5ozutTzq2yEXHHlXn_7zU,2952
438
438
  meutils/apis/images/lora.py,sha256=54aGsXOzDR6elCF92UdNG82jB-ei6G3mjbMkM3ucPS0,2023
439
439
  meutils/apis/images/mj.py,sha256=5dpFkfKGr-wgrWDs7n6qTdBh9WK5B0Qa35PpJ6126yM,1850
440
440
  meutils/apis/images/openai_edits.py,sha256=a03L8vY8NXnl8uT9o0SMszMxE7dv6tTCZQyMyI5dS_g,2160
@@ -459,7 +459,7 @@ meutils/apis/jimeng/common.py,sha256=LFuhgY-KKE661Kf5oY0xAA1LhNu6ErGJ6SflSJPVHkE
459
459
  meutils/apis/jimeng/doubao_images.py,sha256=Aeq1hve2PiO3baP50Augsu0u2YFlC7r_X5jgnDqv6y4,2082
460
460
  meutils/apis/jimeng/doubao_utils.py,sha256=d9KDNkqKN4oxaJRAeGNMouRvzHEhIRXzN3T_HjtTXdM,6025
461
461
  meutils/apis/jimeng/files.py,sha256=AlsAlQGufGm84TldUBLFZpZQGD6INN5xIwHql9ocPj4,11310
462
- meutils/apis/jimeng/images.py,sha256=0IFBcFqr117bz9m78KZNY100M4Zd3M3HPAFOkMHux5w,23136
462
+ meutils/apis/jimeng/images.py,sha256=X3HJEfpmZz-DK2DIBGGwmoZ2VPTTUTEhIMDYcPemYG4,23030
463
463
  meutils/apis/jimeng/videos.py,sha256=Mf8c5abUXR2PZlHkCHM7KS8EUkJicgmkITnsQ0YeMuw,6431
464
464
  meutils/apis/jimeng/videos_videos.py,sha256=A6oWLKcrb6YMIumqUMQS3KVP9bhOEKLUOIlAUlbREmE,12259
465
465
  meutils/apis/jimeng_global/__init__.py,sha256=ENdwkppOOekt9Qzy_50TyA7lzNEqo0TpZcF7d2rYBhc,245
@@ -500,7 +500,7 @@ meutils/apis/oneapi/common.py,sha256=VN2SEv1crfRH9l93Zp2Jvm6Suvv-5OJ50RPkVF_MSDg
500
500
  meutils/apis/oneapi/demo.py,sha256=i9iBK2OftTvOZdPcCo2nxu8zs0fSKIZbzD8DRKQNla8,1851
501
501
  meutils/apis/oneapi/log.py,sha256=rRQFwkH9Jx5guMrtCdw3S83ob6QJpkh1-_2VWfN-MZk,2529
502
502
  meutils/apis/oneapi/system.py,sha256=WmsGEEAig1rbOPkNxu3yxY67fnoRAiHWYnFWQmvAqtU,911
503
- meutils/apis/oneapi/tasks.py,sha256=frQuSJDQwJRCVJox_7sEMfGJYDNgiMp0gkcAc59ccgM,4606
503
+ meutils/apis/oneapi/tasks.py,sha256=-bsS4z0M-C97y3juVEKjWg4ctT00Gr0IZJGOVpxP30E,4871
504
504
  meutils/apis/oneapi/token.py,sha256=QK_nPnwZFgfXPCIAUj3LIWGL51i6QizrRVRKwILgUYU,1723
505
505
  meutils/apis/oneapi/token_.py,sha256=3NPU1jbjiRbcXIkw8bANcnby3rXq4U2LjU_8W3PaE_4,2560
506
506
  meutils/apis/oneapi/user.py,sha256=Tby8GQ6dzCs5eN-BxZ5A6T9pikMnXkwSEWT4cx73eTY,4464
@@ -578,7 +578,7 @@ meutils/apis/volcengine_apis/__init__.py,sha256=gtu5ZNCc3up8bzgrCi10uwhsC04HpuCE
578
578
  meutils/apis/volcengine_apis/doubao_images.py,sha256=c7o6VOqft_RdI7NKyMgVm4eonniJAn_lVifnzfMmLHQ,346
579
579
  meutils/apis/volcengine_apis/images.py,sha256=30mLla3v09Xa17LQjA4erL8N7GYWXvyqTSLEEcoAPfY,5626
580
580
  meutils/apis/volcengine_apis/tasks.py,sha256=da2wYs2bqjYte_P2aFbSdKkLBaghuAj6vVKIlgdMg5A,4495
581
- meutils/apis/volcengine_apis/videos.py,sha256=X8rdlzjTZjDIZWLWG_QEQcdy_0v02eFaIJB5Gh0DTnU,11236
581
+ meutils/apis/volcengine_apis/videos.py,sha256=Qp4RA_xaha76X5yyIBupgG2f9_7ilJq-eoEV9lqY7C4,11533
582
582
  meutils/async_task/__init__.py,sha256=45cUr-GWvQ1JFYGOYPOIkHLyTR3JbfP_PEYrmktpMLo,367
583
583
  meutils/async_task/celery_config.py,sha256=BX1h3jY34aO6UmUFakdBUwOdsEiOxCGuUtYDUKFtafc,3461
584
584
  meutils/async_task/common.py,sha256=ZJ4e0CsEJf1ppPmGSwPCwhZBAkUL5xsi_t1ny-bJuko,845
@@ -627,7 +627,7 @@ meutils/config_utils/lark_utils/demo.py,sha256=3g0Fs7oLaeW75T60gYWMLgyNg1OnfOjfH
627
627
  meutils/config_utils/lark_utils/x.py,sha256=MlMQGhehP9xMEgetxVCX68XFaosfKoW1JA5cZ3JqN2w,1857
628
628
  meutils/crawlers/__init__.py,sha256=-KP0tkkiihzomM-63gZleTmcKnfFF054NwVBLb8599U,244
629
629
  meutils/data/SimHei.ttf,sha256=-XEnekS5yHP_URkT4XBI2w22ylV-KxudhkeIYFbrILA,10062565
630
- meutils/data/VERSION,sha256=khDug84BHZo4aRWzXXzpup6SOMaP6p5pdad9H2b_l0k,19
630
+ meutils/data/VERSION,sha256=VhmTIC8f5QFTsl7ry9vT93N2_68A-_dITRrKDB3PXHg,19
631
631
  meutils/data/_FLAG,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
632
632
  meutils/data/_SUCCESS,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
633
633
  meutils/data/__init__.py,sha256=Hfwkkxs4zHqKhxht0YrhS566a9P5axtmgNvM5wF8ceQ,243
@@ -642,7 +642,7 @@ meutils/db/id2redis.py,sha256=Ae-xHbMI6dvGHtARZqZ6V_ubV75n9w18Iy9sasYIQ_A,269
642
642
  meutils/db/mongo.py,sha256=B-B_t939rxtnNGt0PxhivjIUwinmHPzLUpXsjUIaTkQ,2337
643
643
  meutils/db/neo4j.py,sha256=eYd3jP3COWlOFBaF20UXphW67-HwlZ1t0Q34Cp-j6o0,2168
644
644
  meutils/db/orm.py,sha256=NEOO6p6D98EARszGXKuc9iTFQburllQS_vlgjp15lls,5094
645
- meutils/db/redis_db.py,sha256=Q0EPQDRrYHZr0npXlcqBpN7wlKgQye3h1PpghScbo4c,3029
645
+ meutils/db/redis_db.py,sha256=lmn-dQ3dq_P4Pe70WKOifyiwKAIJNg5f7-5C2o07QmY,3071
646
646
  meutils/db/sync_data.py,sha256=35XECcDjtCe_hMeCxx7Exlp1VtYY545RDPLgUn0fGS8,1051
647
647
  meutils/decorators/__ai.py,sha256=QAz005-Wa-sp0YUUoelaR1pMbt6hPSBML5j0My6TbEI,1681
648
648
  meutils/decorators/__init__.py,sha256=hgpHo40pfFWYXEnrW74o8W7SIfCD0GHr3gnujBw1hIQ,3284
@@ -711,7 +711,7 @@ meutils/jwt_utils/__init__.py,sha256=zs4pIDk4sQ82o7meMwt64_tv2WBMRTaXX9doe0ilvvs
711
711
  meutils/jwt_utils/common.py,sha256=u2PPQJ9S-83y8f3Sb5L2OCRP7o-xV56EAmlzMZ8Je0Q,2352
712
712
  meutils/llm/__init__.py,sha256=mYv0QpACLd-wz4htIduPuTU3mX06_Y8ZprxDohtZGBM,244
713
713
  meutils/llm/check_api.py,sha256=Cu60Rvp7zLmmazuLXxpK4z-FCab4NrO4nH5LzfYjjoM,3591
714
- meutils/llm/check_utils.py,sha256=nfCg7MyoMSQ42BVqm3mBVztDIoJtkDuCcrkc1wRORyQ,14545
714
+ meutils/llm/check_utils.py,sha256=5YpZRKwI4eIDGMD8K46PiUp4JLQCwxsuNdmielxyZIw,14684
715
715
  meutils/llm/clients.py,sha256=qZa9WC85Ah4tdEd-EI_P_038mnJLq_z-smaJdwJp-EM,2956
716
716
  meutils/llm/demo.py,sha256=gyGjTxuNFMOa1X4CXaChkq0lcjbKiRsnSRhkeMvsoQk,3822
717
717
  meutils/llm/models.py,sha256=dDdU_WzcQGdgaFOYtMJpDYmt5uKFKEz2pc0guqNVkSk,3175
@@ -756,12 +756,12 @@ meutils/llm/models/modelscope.py,sha256=1RnbSvZxlQZn4mONBMJ-xAFWmAGxrsVIr6wJg_8V
756
756
  meutils/llm/models/ppio.py,sha256=PCNIYV15I6D40WgRiU57iQtyppYdJ1BCFDnTh_Gkxbg,953
757
757
  meutils/llm/models/siliconflow.py,sha256=d2BXBXItN-0uDAUb7keLlCNpVhgVn-oZoWE2y5MvTbE,2704
758
758
  meutils/llm/openai_polling/__init__.py,sha256=qmAMITPtrTD-y57RiJXewuOic7iLKBhx8mz5uvcxsy8,270
759
- meutils/llm/openai_polling/chat.py,sha256=IGgxP-enYhhI5o73_PGgGz-BfGyc0CbfwMNvMbuKarg,8978
759
+ meutils/llm/openai_polling/chat.py,sha256=Fjz1xLlmMd-LylbOXAcDhFKXyuecPfLEv0DJcfbw7P4,9312
760
760
  meutils/llm/openai_polling/images.py,sha256=qKMk3vCvamS_48ceC-_y2LPpP5XsD476FHG9MUu8kks,1042
761
761
  meutils/llm/openai_utils/__init__.py,sha256=MWyNhP2K49oaHGEZlInZc3XlwqlStFultP8k7HDPAwk,290
762
- meutils/llm/openai_utils/adapters.py,sha256=DSo1lHjps0DokUHXVN8jIwZlY7jSUBdWvvJM5RmmOtA,4761
762
+ meutils/llm/openai_utils/adapters.py,sha256=K_Kwj4rh-o4RDd33pJAifhAvI_eI_t3YxSjnf-xTcDw,4738
763
763
  meutils/llm/openai_utils/billing_utils.py,sha256=gV77BKcxKgK0zSnIYKZEtANgyoeSMVjQuWAZ4A9n7W8,8554
764
- meutils/llm/openai_utils/common.py,sha256=ASkviXllW06y2Zn8gRfknR50TQTeCwi49Zd8Sgxt7gc,10657
764
+ meutils/llm/openai_utils/common.py,sha256=y4aQLsSGvmEPmAkFEYV_Bixx4TV31GtRlXrg5ZPLyrc,10711
765
765
  meutils/llm/openai_utils/tool_outputs.py,sha256=6mNkm4btgy0uzF98gdmcah1bYmoflXdLz2Sqm0KC_LQ,1224
766
766
  meutils/llm/output_parsers/__init__.py,sha256=EGKvgUD47ReyV5Z9RXDCrdDLgfKMHdoayzsXVmBuQxw,3474
767
767
  meutils/llm/prompts/__init__.py,sha256=VlEEViFoUSRS0EF1rHJXHh9Ik9FpvAiR1luKjHOsUc4,8580
@@ -870,7 +870,7 @@ meutils/schemas/gitee_types.py,sha256=bkNEPGGQeMoDepIHEUFB5o0SSxJ-n7Shn0oSZW9oBY
870
870
  meutils/schemas/hailuo_types.py,sha256=3nx2jgDmi2dpwEfJ6xRiZQ-9nhOOXQgTz1yyLz5d-ik,7722
871
871
  meutils/schemas/haimian_types.py,sha256=jGu484UviAeBgy5OIUyRY4uYCxXfv16zDPqiJQr9wNQ,1364
872
872
  meutils/schemas/idphoto_types.py,sha256=nuHbpppejRSkJCiQ7YKx0Gnke0ShKZhOvdg0e7tk9-0,1074
873
- meutils/schemas/image_types.py,sha256=bMxtGrEd-PxxnvPCuLVdsEmJxCgLt382GsmnPRMz71A,16526
873
+ meutils/schemas/image_types.py,sha256=Ts_ndU6Mn4ZZ0HOMIcQavM9riBbEtSIwX3wU_7RDbcc,16765
874
874
  meutils/schemas/jimeng_types.py,sha256=z0mAICgNE0Yaq09_puzgMfHOP-QKWiZqqMlFbLVHtmY,1995
875
875
  meutils/schemas/jina_types.py,sha256=SLRRBCap2B1uXnHF7Sgnlz1Work8HvdIltjj4oVlGTk,8826
876
876
  meutils/schemas/kimi_types.py,sha256=PjCgHwCDNzKasn4X6rUzvOENqKYT3xj07cgp71IdsDA,3607
@@ -883,7 +883,7 @@ meutils/schemas/metaso_types.py,sha256=nbZ_5chFtAszZltilE_o-AZcwlqHvzF4ATKwD101W
883
883
  meutils/schemas/napkin_types.py,sha256=Kp0MbpRxzMBz4HWW4DrfcgOvHZVEF3N7P5yNeC1XGI4,2664
884
884
  meutils/schemas/ocr_types.py,sha256=fZWYQAKii7HaTlSU9DS0wHyiEoOHuLnhvgoiH4Cn498,1381
885
885
  meutils/schemas/openai_api_protocol.py,sha256=0GhmhUTEr54N_XCVuZI1MSxJldvwMNJjUAAAdWznw58,12716
886
- meutils/schemas/openai_types.py,sha256=7dUpnsUnE6_3Ma82RJgEAEUjJKtTZfLG6OQX901uQ-s,23630
886
+ meutils/schemas/openai_types.py,sha256=CO3RFsdvcM-ktMRCROf_a8H0qczxzrjIkClxWC0cjbo,23632
887
887
  meutils/schemas/pixverse_types.py,sha256=3mHg2KxvszV1U8K3GdzsODZz4uocLVRjEeJgYhX0Xmw,2347
888
888
  meutils/schemas/playwright_types.py,sha256=zhZd53m1Wg4zlGtq2JM4z7Aon-u_eF6rzs-_TFYWvkU,1177
889
889
  meutils/schemas/prodia_types.py,sha256=knh_lzAxMfWMoqAPmvyMweay9PmQmsoQ1X6Mj17ohWg,476
@@ -906,7 +906,7 @@ meutils/schemas/db/__init__.py,sha256=m1maURVoM6dIW0yt6ELZrZTzULtkHybVOSXtHNJRVI
906
906
  meutils/schemas/db/oneapi_types.py,sha256=3t2m0H80saEXmYUZfVFrtEaY117GjZTsSa1GKgkJzqQ,3896
907
907
  meutils/schemas/oneapi/__init__.py,sha256=uevbi3QAvFzN9WPbx9bYKTDyKt7P2ueZO6W0nSiD0sk,289
908
908
  meutils/schemas/oneapi/_types.py,sha256=Mx5NZKEo-856e75Z19ybVY7kJvEaWM8fAy5L3kFsMtY,4083
909
- meutils/schemas/oneapi/common.py,sha256=7lFXYq-CxtxbDnTqeY5a94rMGxqER8y33aLHi-SS6GI,51111
909
+ meutils/schemas/oneapi/common.py,sha256=bLgHigsfBIkjPFq5eqDCnLYA8jYqr2rgFaRMuAB52Lo,51176
910
910
  meutils/schemas/oneapi/icons.py,sha256=T7W5gInBJoHe62wzMimbG_UI-wn3_-rmQ1O4O2z-CQY,1089
911
911
  meutils/schemas/oneapi/model_group_info.py,sha256=rGtflYJuFIjk5MsVEvK9JUR4IciX8jfErqeLqf8DIlQ,1586
912
912
  meutils/schemas/oneapi/model_info.py,sha256=_uwKEPIIqm7ZYfhmpxtXB2QNsS83SpJY-OaBzvogC9w,772
@@ -1035,9 +1035,9 @@ meutils/tools/seize.py,sha256=nOKAS63w-Lbi48I0m2MPhdsokUTwxco0laPxYVmW4Mw,1064
1035
1035
  meutils/tools/service_monitor.py,sha256=ibsLtBN2g2DL7ZnLJ8vhiZOiOcqTAyx711djDdBK-3M,1255
1036
1036
  meutils/tools/sys_monitor.py,sha256=6MoyzrItqDUOSjfHcMJmMofQkEPTW36CT_aKui0rg84,429
1037
1037
  meutils/tools/token_monitor.py,sha256=Np-YK-R4P4IPAXyZvMxwvXI4sFmNJQAQK1lSegNaYpA,997
1038
- meutils-2025.8.26.19.8.18.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
1039
- meutils-2025.8.26.19.8.18.dist-info/METADATA,sha256=-O-r3Oy3geEKeXggZCE3nEnFhWeGhFJmJCfupnlHr_I,32614
1040
- meutils-2025.8.26.19.8.18.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
1041
- meutils-2025.8.26.19.8.18.dist-info/entry_points.txt,sha256=lufZlBHRqqZKdY-ZQJ4CSZb0qhV5hQC37egZna9M7ug,357
1042
- meutils-2025.8.26.19.8.18.dist-info/top_level.txt,sha256=cInfxMmkgNOskurdjwP5unau4rA7Uw48nu07tYhS7KY,22
1043
- meutils-2025.8.26.19.8.18.dist-info/RECORD,,
1038
+ meutils-2025.8.27.12.16.3.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
1039
+ meutils-2025.8.27.12.16.3.dist-info/METADATA,sha256=Uf8GCXvSA9EEysXgAw4gQ9kZDFshcgpgc78av59Uu-E,32614
1040
+ meutils-2025.8.27.12.16.3.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
1041
+ meutils-2025.8.27.12.16.3.dist-info/entry_points.txt,sha256=lufZlBHRqqZKdY-ZQJ4CSZb0qhV5hQC37egZna9M7ug,357
1042
+ meutils-2025.8.27.12.16.3.dist-info/top_level.txt,sha256=cInfxMmkgNOskurdjwP5unau4rA7Uw48nu07tYhS7KY,22
1043
+ meutils-2025.8.27.12.16.3.dist-info/RECORD,,