MeUtils 2025.6.13.20.54.5__py3-none-any.whl → 2025.6.18.16.30.56__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.6.13.20.54.5.dist-info → MeUtils-2025.6.18.16.30.56.dist-info}/METADATA +260 -260
- {MeUtils-2025.6.13.20.54.5.dist-info → MeUtils-2025.6.18.16.30.56.dist-info}/RECORD +21 -19
- examples/_openaisdk/openai_doubao.py +20 -5
- examples/_openaisdk/openai_google.py +2 -1
- examples/_openaisdk/openai_kimi.py +35 -0
- examples/_openaisdk/openai_modelscope.py +47 -28
- examples/exec_demo.py +24 -1
- examples/parse_cmd.py +73 -0
- examples/parse_cmd_re.py +49 -0
- meutils/apis/hailuoai/videos.py +17 -6
- meutils/apis/oneapi/channel.py +1 -1
- meutils/apis/volcengine_apis/videos.py +2 -2
- meutils/data/VERSION +1 -1
- meutils/llm/check_utils.py +1 -1
- meutils/schemas/image_types.py +3 -1
- meutils/schemas/oneapi/common.py +10 -4
- meutils/serving/fastapi/dependencies/auth.py +8 -3
- examples/_openaisdk/openai_kindo.py +0 -32
- {MeUtils-2025.6.13.20.54.5.dist-info → MeUtils-2025.6.18.16.30.56.dist-info}/LICENSE +0 -0
- {MeUtils-2025.6.13.20.54.5.dist-info → MeUtils-2025.6.18.16.30.56.dist-info}/WHEEL +0 -0
- {MeUtils-2025.6.13.20.54.5.dist-info → MeUtils-2025.6.18.16.30.56.dist-info}/entry_points.txt +0 -0
- {MeUtils-2025.6.13.20.54.5.dist-info → MeUtils-2025.6.18.16.30.56.dist-info}/top_level.txt +0 -0
@@ -15,7 +15,7 @@ examples/decorator_demo.py,sha256=HRLnQ-0gEFxTsWZZ0is-xGXRDjE0QGLL6iUWQFH8NwY,15
|
|
15
15
|
examples/demo.py,sha256=Fa7lPkxwepS-TOzL5B3Q7q4OBSl5wnOBPQCbbzRRG3Y,1312
|
16
16
|
examples/dfi.py,sha256=7jCB7e3eKyRx4Z0uez5kWWvjdjgQRCxu5zX75Cs1AOI,244
|
17
17
|
examples/es.py,sha256=9QWM9AAr70ie6rthwTdF7ofFxGqD4gwz_d9CYku8rVs,1374
|
18
|
-
examples/exec_demo.py,sha256=
|
18
|
+
examples/exec_demo.py,sha256=qHRxbvG8s8u5kZqP7enzVi24YOJ3aCAQSY3OjcVvny4,1092
|
19
19
|
examples/fastapi_caching.py,sha256=OK6RrPEaz5MJ3FOwXZ29jssYfDlXDJx-JZ76QsDtdyg,1326
|
20
20
|
examples/feishu.py,sha256=kIQNGqBKc1xVCgKIQFKykPXcWbwbG3ys4OxlEiZMilQ,395
|
21
21
|
examples/geo.py,sha256=ZiwJ9TFGyl4pxL1pJbN8cx66jQWM_f8I7dzdkc1sje8,804
|
@@ -33,6 +33,8 @@ examples/logger_patch.py,sha256=rBdNV_ud1ifmO0pXkFuIbMfTEyKsmL2jK1XUnwXvQF0,435
|
|
33
33
|
examples/md.py,sha256=o1hbtL3joKJu8NeddxvGK1s5nHRBQYwWf3fTfdC9hpg,749
|
34
34
|
examples/memory_profiler_demo.py,sha256=cp1e9B751CoK6KJBdiIY5oaaT-tqEbgJvfe6lMBrVZ0,471
|
35
35
|
examples/mj.py,sha256=qZK908ZaYcEF9sngMAgsZQ2pDw57tU6_lApZqqgjC_k,772
|
36
|
+
examples/parse_cmd.py,sha256=VgCWQmajhkZ_x7AIYTxfoHJZHJy7tWpL1ODf3ls0ClQ,1988
|
37
|
+
examples/parse_cmd_re.py,sha256=0xgl8k8tdIZcH8stbvyT6Fjdi3HjO5Aq6fOp9iCEv1s,1346
|
36
38
|
examples/partialmethod_demo.py,sha256=otLq0-3C2q24eKWPTlDTDMXnJgIxLm7wqzTS3E4tjjU,598
|
37
39
|
examples/pydantic_demo.py,sha256=3i2RxkqDVtS4CVEmfYDKzXera2NqgFPt7HmGZWzevhI,742
|
38
40
|
examples/pyinstxtractor.py,sha256=zLNoIMtTFJuDs_RCnb47BofuvoMxoPXm0KNvHiNZXmY,12667
|
@@ -107,23 +109,23 @@ examples/_openaisdk/openai_chatfire_usa.py,sha256=kS7QlZYTUAJ0lfgTnh3wK-NIW9lfC8
|
|
107
109
|
examples/_openaisdk/openai_dashscope.py,sha256=m9SjQpaNgYwr4Qd3XusWbJBGp5ZTtpuB40QopejxPKQ,1029
|
108
110
|
examples/_openaisdk/openai_deepinfra.py,sha256=innI4BT15dZEqheqDHG4lHDczY1QC7t2Whcavi1pcz0,1195
|
109
111
|
examples/_openaisdk/openai_deepseek.py,sha256=0IbHh2F6eVDs-i8gP8x8wj6s9R6CzOGN7QrCp1EuB5k,2086
|
110
|
-
examples/_openaisdk/openai_doubao.py,sha256=
|
112
|
+
examples/_openaisdk/openai_doubao.py,sha256=3-rTeG0yPnkxrc2Gg_Iv4PcJLWbAwb2X79EfjxEMfS8,1750
|
111
113
|
examples/_openaisdk/openai_embeddings.py,sha256=IRMAWSQxgnWiOON5YXb9AFraZgI-5tsplOXQrw6Lgx4,1232
|
112
114
|
examples/_openaisdk/openai_ep.py,sha256=cAaeyC8Lstk1MB36c4h7X9n7EnEnY7rr2Tugo_diT3M,726
|
113
115
|
examples/_openaisdk/openai_ffire.py,sha256=R9fEznBvsz3KtPiwKXC3qol7lZ46T_7jzn7wGkXM2to,720
|
114
116
|
examples/_openaisdk/openai_files.py,sha256=zcF4k4sQ2FnINhq6x1wCKw1WCu93g1h69Yul_rLdakE,2058
|
115
117
|
examples/_openaisdk/openai_gitee.py,sha256=UQEJMQMQDhgqYzo_aYetYXnBmVtqRwIweJDDK3NlSMw,1205
|
116
118
|
examples/_openaisdk/openai_god.py,sha256=O8fbhyxiIlVR7pTvBTXgQ2QTwfcZ2MkEIyDe_jp797A,1056
|
117
|
-
examples/_openaisdk/openai_google.py,sha256=
|
119
|
+
examples/_openaisdk/openai_google.py,sha256=8BMuIqv3SLPssBlEj2nhhcExwnQp0Aia2Ci3c-S008I,6050
|
118
120
|
examples/_openaisdk/openai_groq.py,sha256=_5Ue1yEx0Gp6theFioB_D8kepR0UlqMU96PVGH-LkVY,7363
|
119
121
|
examples/_openaisdk/openai_images.py,sha256=nWVyoTDVDV0X7caW2IiGAPEVj_o2Vql4QvZQq1o3QKM,6102
|
120
122
|
examples/_openaisdk/openai_jina.py,sha256=QeGRXMQmkJyg8Cz4Vfx4pP39a5TcO7pQQfPAPbBA8bs,1628
|
121
123
|
examples/_openaisdk/openai_json.py,sha256=M4tq_IkzYbmtgbFilGQHmRdJhH0OltiwGk7cK7uc-sQ,1850
|
122
|
-
examples/_openaisdk/
|
124
|
+
examples/_openaisdk/openai_kimi.py,sha256=Y0ohLt2GVBrUzR286mDTJL7kPdLWVKjw36XSBEELUQc,1155
|
123
125
|
examples/_openaisdk/openai_lingyi.py,sha256=l2GcNxhwfLv7MfMF-cdRWGGvX-dRaZyb8IRlXLPACMw,1834
|
124
126
|
examples/_openaisdk/openai_local.py,sha256=w-MedYgmRiO5eoMfbTQsB5J8ILFPfla0m6vP7qbQAxY,1889
|
125
127
|
examples/_openaisdk/openai_luchentech.py,sha256=Jy0JxpL1u3pXcmslViPvrbwSysVBV-Dz8wSKqv6QtxY,1960
|
126
|
-
examples/_openaisdk/openai_modelscope.py,sha256=
|
128
|
+
examples/_openaisdk/openai_modelscope.py,sha256=wY7wLSP2Bh8-vhsa0SGSsd8my2uoOC6_1276g3fQ4EE,3423
|
127
129
|
examples/_openaisdk/openai_moderations.py,sha256=WoIyXDEn4dfVPwqFc54HSz0-7wLPu7pd4ZisZcyLOWM,1369
|
128
130
|
examples/_openaisdk/openai_moon.py,sha256=7-gILGwZArZ1VHVb-jtIXEqWJMv65SaMmBSKJ90fx_w,1889
|
129
131
|
examples/_openaisdk/openai_oi.py,sha256=8KJ62QgpAZdGWAoYN6AC9M9TrD8JQf7ZO_NAgXZywTo,1414
|
@@ -396,7 +398,7 @@ meutils/apis/hailuoai/hasha_new.py,sha256=1sD3fxmxYrEufmPaJZGAkYJoHKO85hfLXemnY-
|
|
396
398
|
meutils/apis/hailuoai/images.py,sha256=2SLRKnzz2jdHHVwDzLdJetXZpvn9Mkzjrr_1gJPTIFI,19848
|
397
399
|
meutils/apis/hailuoai/music.py,sha256=S_oi-ZDbocTfbRgREdXtGx50xzUc1PCZGuxmr917E7M,265
|
398
400
|
meutils/apis/hailuoai/upload.py,sha256=22S6W6hGQhUquVKqh7QCkXb6KHDl3iMKKi6Z0AJdFEI,6501
|
399
|
-
meutils/apis/hailuoai/videos.py,sha256=
|
401
|
+
meutils/apis/hailuoai/videos.py,sha256=GdnVcpliHJBi-fLKTfToPDF0IwmVn_knrSO21_me73I,23447
|
400
402
|
meutils/apis/hailuoai/yy.py,sha256=uBwtpMhCE4lQyDqEsua4eupGAU0A2N0UJN20pE1tOUo,8962
|
401
403
|
meutils/apis/hf/__init__.py,sha256=ZZoRl8yNYekoMhE__67XXBKNSYJaLgjtaa0netjJKUU,271
|
402
404
|
meutils/apis/hf/got_ocr.py,sha256=pZURFpryDh_Ak6PNiARztOzYgkjVrfScJ5-0XzMBrzI,1776
|
@@ -470,7 +472,7 @@ meutils/apis/monica/llm.py,sha256=gYyBPOTvmoNFaa1KmW3OlSsRKeN7C97EyPUa264nJ08,26
|
|
470
472
|
meutils/apis/napkin/__init__.py,sha256=EWwpRJEbN46d6Dk9PHAZvsYmqD_EOK0jjKQL1kYtcKs,271
|
471
473
|
meutils/apis/napkin/icons.py,sha256=_L8EaSeQ6ChT5w7q3jnj_AcRhKvNiBg3-qUKo9JQ12o,2217
|
472
474
|
meutils/apis/oneapi/__init__.py,sha256=wg_kqNkFqOkP70vnOHvAeKREps57Rqliu5yKC0gsgLk,284
|
473
|
-
meutils/apis/oneapi/channel.py,sha256=
|
475
|
+
meutils/apis/oneapi/channel.py,sha256=R4ni_vZQtWM465ng7x7ItUXwzoUEF79g4EuwSOauXc8,12232
|
474
476
|
meutils/apis/oneapi/common.py,sha256=AIs8ro-1qui3FG42msBY6dL_zt9QJ0jS63qtp-XTlY4,3617
|
475
477
|
meutils/apis/oneapi/demo.py,sha256=i9iBK2OftTvOZdPcCo2nxu8zs0fSKIZbzD8DRKQNla8,1851
|
476
478
|
meutils/apis/oneapi/log.py,sha256=gNFFXXcG2Xp5ttO7Q7qR6n6GQUheuU8SOCjJPXZudLY,1447
|
@@ -543,7 +545,7 @@ meutils/apis/voice_clone/fish_api.py,sha256=pDpE-B8HFiGIOV3NVd1HmFrCC2GQc3wH-81o
|
|
543
545
|
meutils/apis/volcengine_apis/__init__.py,sha256=gtu5ZNCc3up8bzgrCi10uwhsC04HpuCEEPXR_iVCNJE,244
|
544
546
|
meutils/apis/volcengine_apis/images.py,sha256=F9LXXptesnASB_Al7rkEshb2S5r3PixZd8w0mif5468,5463
|
545
547
|
meutils/apis/volcengine_apis/tasks.py,sha256=da2wYs2bqjYte_P2aFbSdKkLBaghuAj6vVKIlgdMg5A,4495
|
546
|
-
meutils/apis/volcengine_apis/videos.py,sha256=
|
548
|
+
meutils/apis/volcengine_apis/videos.py,sha256=S0KCkXSb360BJXmqW3IcVpSRH9s2Krxw0ImKRMRPQsY,7034
|
547
549
|
meutils/async_task/__init__.py,sha256=45cUr-GWvQ1JFYGOYPOIkHLyTR3JbfP_PEYrmktpMLo,367
|
548
550
|
meutils/async_task/celery_config.py,sha256=BX1h3jY34aO6UmUFakdBUwOdsEiOxCGuUtYDUKFtafc,3461
|
549
551
|
meutils/async_task/common.py,sha256=ZJ4e0CsEJf1ppPmGSwPCwhZBAkUL5xsi_t1ny-bJuko,845
|
@@ -592,7 +594,7 @@ meutils/config_utils/lark_utils/demo.py,sha256=3g0Fs7oLaeW75T60gYWMLgyNg1OnfOjfH
|
|
592
594
|
meutils/config_utils/lark_utils/x.py,sha256=MlMQGhehP9xMEgetxVCX68XFaosfKoW1JA5cZ3JqN2w,1857
|
593
595
|
meutils/crawlers/__init__.py,sha256=TBU4xA-IOsHV-0yIkW7YXxn_QT7TT8NncqxO7IykEfs,271
|
594
596
|
meutils/data/SimHei.ttf,sha256=-XEnekS5yHP_URkT4XBI2w22ylV-KxudhkeIYFbrILA,10062565
|
595
|
-
meutils/data/VERSION,sha256=
|
597
|
+
meutils/data/VERSION,sha256=MnadeRs6Rp5h7pjksioZELerRAU_FjFtzIKL1hKPyOk,19
|
596
598
|
meutils/data/_FLAG,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
597
599
|
meutils/data/_SUCCESS,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
598
600
|
meutils/data/__init__.py,sha256=Hfwkkxs4zHqKhxht0YrhS566a9P5axtmgNvM5wF8ceQ,243
|
@@ -674,7 +676,7 @@ meutils/jwt_utils/__init__.py,sha256=zs4pIDk4sQ82o7meMwt64_tv2WBMRTaXX9doe0ilvvs
|
|
674
676
|
meutils/jwt_utils/common.py,sha256=u2PPQJ9S-83y8f3Sb5L2OCRP7o-xV56EAmlzMZ8Je0Q,2352
|
675
677
|
meutils/llm/__init__.py,sha256=mYv0QpACLd-wz4htIduPuTU3mX06_Y8ZprxDohtZGBM,244
|
676
678
|
meutils/llm/check_api.py,sha256=Cu60Rvp7zLmmazuLXxpK4z-FCab4NrO4nH5LzfYjjoM,3591
|
677
|
-
meutils/llm/check_utils.py,sha256=
|
679
|
+
meutils/llm/check_utils.py,sha256=_Ity0z6lKOrKO7DoiF20HWA8jq_c8xwTHOdtDhvPz2o,8594
|
678
680
|
meutils/llm/clients.py,sha256=qZa9WC85Ah4tdEd-EI_P_038mnJLq_z-smaJdwJp-EM,2956
|
679
681
|
meutils/llm/demo.py,sha256=gyGjTxuNFMOa1X4CXaChkq0lcjbKiRsnSRhkeMvsoQk,3822
|
680
682
|
meutils/llm/mappers.py,sha256=ZQLl3OuD06kVMP8bwIpVgAB1UVzMJWUJiZ3vgk-ZjeI,303
|
@@ -825,7 +827,7 @@ meutils/schemas/fish_types.py,sha256=yC0ZFr3Ebh8F0OhtMsXYaIfNNvzOM2LT9YtKTaRoHGU
|
|
825
827
|
meutils/schemas/hailuo_types.py,sha256=ubG6qIU506tq51UsURuwlPhtPNa49xHSoBzBtW7jg_0,7431
|
826
828
|
meutils/schemas/haimian_types.py,sha256=jGu484UviAeBgy5OIUyRY4uYCxXfv16zDPqiJQr9wNQ,1364
|
827
829
|
meutils/schemas/idphoto_types.py,sha256=nuHbpppejRSkJCiQ7YKx0Gnke0ShKZhOvdg0e7tk9-0,1074
|
828
|
-
meutils/schemas/image_types.py,sha256=
|
830
|
+
meutils/schemas/image_types.py,sha256=9EIpJCSzGKGQG3r5J3JBxgduwmTuuw5VAsVJ-Ab1sdo,16433
|
829
831
|
meutils/schemas/jimeng_types.py,sha256=z0mAICgNE0Yaq09_puzgMfHOP-QKWiZqqMlFbLVHtmY,1995
|
830
832
|
meutils/schemas/jina_types.py,sha256=SLRRBCap2B1uXnHF7Sgnlz1Work8HvdIltjj4oVlGTk,8826
|
831
833
|
meutils/schemas/kimi_types.py,sha256=PjCgHwCDNzKasn4X6rUzvOENqKYT3xj07cgp71IdsDA,3607
|
@@ -861,7 +863,7 @@ meutils/schemas/db/__init__.py,sha256=m1maURVoM6dIW0yt6ELZrZTzULtkHybVOSXtHNJRVI
|
|
861
863
|
meutils/schemas/db/oneapi_types.py,sha256=3t2m0H80saEXmYUZfVFrtEaY117GjZTsSa1GKgkJzqQ,3896
|
862
864
|
meutils/schemas/oneapi/__init__.py,sha256=uevbi3QAvFzN9WPbx9bYKTDyKt7P2ueZO6W0nSiD0sk,289
|
863
865
|
meutils/schemas/oneapi/_types.py,sha256=_QAl69kZ7tEU2UMmSSCNIVHg_0lc8bm5CKqNa0eDvBc,3091
|
864
|
-
meutils/schemas/oneapi/common.py,sha256=
|
866
|
+
meutils/schemas/oneapi/common.py,sha256=ehLJr9iDsl0Y1tuGUan6W-T2CDEF22J-zi1PoksqXEU,42353
|
865
867
|
meutils/schemas/oneapi/icons.py,sha256=T7W5gInBJoHe62wzMimbG_UI-wn3_-rmQ1O4O2z-CQY,1089
|
866
868
|
meutils/schemas/oneapi/model_group_info.py,sha256=rGtflYJuFIjk5MsVEvK9JUR4IciX8jfErqeLqf8DIlQ,1586
|
867
869
|
meutils/schemas/oneapi/model_info.py,sha256=_uwKEPIIqm7ZYfhmpxtXB2QNsS83SpJY-OaBzvogC9w,772
|
@@ -886,7 +888,7 @@ meutils/serving/fastapi/utils.py,sha256=H5lQSU7-IfJ2w9FWbaJ34LCbQSaNTFSU7z1pG5wZ
|
|
886
888
|
meutils/serving/fastapi/__demo/__init__.py,sha256=TxXjqy2ZxAkadPxqN92Xq3ixCUYkQ-4X6UxsReRpHhc,271
|
887
889
|
meutils/serving/fastapi/__demo/异步任务.py,sha256=60_ruA4ljlTLIP5zxcejmm9WJ0SDuqpsO49SZK9vA_s,1444
|
888
890
|
meutils/serving/fastapi/dependencies/__init__.py,sha256=TQcxvWqZdA2jZZX84NtAij-bhS7ihcMLx1-xsbSpV4g,384
|
889
|
-
meutils/serving/fastapi/dependencies/auth.py,sha256=
|
891
|
+
meutils/serving/fastapi/dependencies/auth.py,sha256=fGzhGSytpyQRUljl7Lnz_IL8TX5mXb9D0GeVu5vDw5I,2520
|
890
892
|
meutils/serving/fastapi/dependencies/headers.py,sha256=ddifDCJyELqfPwuUX12x-lH0KNylu2iidc7Mupcvl6k,922
|
891
893
|
meutils/serving/fastapi/exceptions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
892
894
|
meutils/serving/fastapi/exceptions/http_error.py,sha256=-cBBWNJH3qp1GMSaa9AlojJ18lBLFEk0KHoGUnmV3u4,2601
|
@@ -990,9 +992,9 @@ meutils/tools/seize.py,sha256=nOKAS63w-Lbi48I0m2MPhdsokUTwxco0laPxYVmW4Mw,1064
|
|
990
992
|
meutils/tools/service_monitor.py,sha256=ibsLtBN2g2DL7ZnLJ8vhiZOiOcqTAyx711djDdBK-3M,1255
|
991
993
|
meutils/tools/sys_monitor.py,sha256=6MoyzrItqDUOSjfHcMJmMofQkEPTW36CT_aKui0rg84,429
|
992
994
|
meutils/tools/token_monitor.py,sha256=Np-YK-R4P4IPAXyZvMxwvXI4sFmNJQAQK1lSegNaYpA,997
|
993
|
-
MeUtils-2025.6.
|
994
|
-
MeUtils-2025.6.
|
995
|
-
MeUtils-2025.6.
|
996
|
-
MeUtils-2025.6.
|
997
|
-
MeUtils-2025.6.
|
998
|
-
MeUtils-2025.6.
|
995
|
+
MeUtils-2025.6.18.16.30.56.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
996
|
+
MeUtils-2025.6.18.16.30.56.dist-info/METADATA,sha256=hKah27vOywIM7x_vMz61XVRXloTXbNDWhLDMTtqDS2g,32834
|
997
|
+
MeUtils-2025.6.18.16.30.56.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
|
998
|
+
MeUtils-2025.6.18.16.30.56.dist-info/entry_points.txt,sha256=lufZlBHRqqZKdY-ZQJ4CSZb0qhV5hQC37egZna9M7ug,357
|
999
|
+
MeUtils-2025.6.18.16.30.56.dist-info/top_level.txt,sha256=cInfxMmkgNOskurdjwP5unau4rA7Uw48nu07tYhS7KY,22
|
1000
|
+
MeUtils-2025.6.18.16.30.56.dist-info/RECORD,,
|
@@ -13,17 +13,25 @@ from meutils.pipe import *
|
|
13
13
|
from openai import OpenAI
|
14
14
|
from openai import OpenAI, APIStatusError
|
15
15
|
|
16
|
+
# 404 403 429
|
16
17
|
client = OpenAI(
|
17
18
|
# api_key=os.getenv("OPENAI_API_KEY_GUOCHAN"),
|
18
19
|
# api_key="sk-acnBrFLJo3E732FfHN0kf0tcHyjfAiCEomyjKr56AUtPIWso",
|
19
|
-
# api_key="
|
20
|
-
# base_url="https://ark.cn-beijing.volces.com/api/v3",
|
20
|
+
# api_key="31c64288-e87d-4020-9d24-0ae6f4abaa7a",
|
21
|
+
# base_url="https://ark.cn-beijing.volces.com/api/v3", # /chat/completions
|
22
|
+
base_url="http://38.147.104.170:3007/v1",
|
23
|
+
api_key="sk-FzHBMMb6tfTDOnv1ZLnxqiuZbmthHu5Vs5nDi94iWFWb5Ie7"
|
24
|
+
|
25
|
+
# api_key=os.getenv("OPENAI_API_KEY") +'-3587'
|
26
|
+
|
21
27
|
)
|
22
28
|
|
23
29
|
try:
|
24
30
|
completion = client.chat.completions.create(
|
25
31
|
# model="ep-20241225184145-7nf5n",
|
26
|
-
model="
|
32
|
+
# model="deepseek-r1-250528",
|
33
|
+
# model="doubao-1-5-pro-32k-250115",
|
34
|
+
model="doubao-1-5-thinking-vision-pro-250428",
|
27
35
|
|
28
36
|
# model="doubao-lite-32k-character",
|
29
37
|
# model="doubao-pro-32k-character",
|
@@ -36,9 +44,15 @@ try:
|
|
36
44
|
# top_p=0.7,
|
37
45
|
top_p=None,
|
38
46
|
temperature=None,
|
39
|
-
stream=
|
47
|
+
stream=False,
|
40
48
|
stream_options={"include_usage": True},
|
41
|
-
max_tokens=
|
49
|
+
max_tokens=1,
|
50
|
+
|
51
|
+
extra_body={
|
52
|
+
"thinking": {
|
53
|
+
"type": "disabled"
|
54
|
+
}
|
55
|
+
}
|
42
56
|
)
|
43
57
|
except APIStatusError as e:
|
44
58
|
print(e.status_code)
|
@@ -47,6 +61,7 @@ except APIStatusError as e:
|
|
47
61
|
print(e.message)
|
48
62
|
print(e.code)
|
49
63
|
|
64
|
+
print(completion)
|
50
65
|
for chunk in completion:
|
51
66
|
print(chunk)
|
52
67
|
print(chunk.choices[0].delta.content)
|
@@ -26,10 +26,11 @@ from meutils.io.files_utils import to_base64
|
|
26
26
|
|
27
27
|
client = OpenAI(
|
28
28
|
api_key=os.getenv("GOOGLE_API_KEY"),
|
29
|
+
|
29
30
|
base_url=os.getenv("GOOGLE_BASE_URL"),
|
30
31
|
)
|
31
32
|
|
32
|
-
model = "gemini-2.5-
|
33
|
+
model = "models/gemini-2.5-pro-exp-03-25"
|
33
34
|
# model = "gemini-2.5-pro-preview-03-25"
|
34
35
|
# model = "gemini-2.0-flash"
|
35
36
|
# model = "gemini-2.0-flash" # openai.BadRequestError: Error code: 400 - [{'error': {'code': 400, 'message': 'Unable to submit request because thinking_budget is only supported when enable_thinking is true. Learn more: https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/gemini', 'status': 'INVALID_ARGUMENT'}}]
|
@@ -0,0 +1,35 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
# @Project : AI. @by PyCharm
|
4
|
+
# @File : openai_siliconflow
|
5
|
+
# @Time : 2024/6/26 10:42
|
6
|
+
# @Author : betterme
|
7
|
+
# @WeChat : meutils
|
8
|
+
# @Software : PyCharm
|
9
|
+
# @Description :
|
10
|
+
import os
|
11
|
+
|
12
|
+
from meutils.pipe import *
|
13
|
+
from openai import OpenAI
|
14
|
+
from openai import OpenAI, APIStatusError
|
15
|
+
|
16
|
+
api_key = """
|
17
|
+
eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ1c2VyLWNlbnRlciIsImV4cCI6MTczOTY4NDk3NywiaWF0IjoxNzMxOTA4OTc3LCJqdGkiOiJjc3RkYXNmZDBwODBpaGtkNTY5MCIsInR5cCI6InJlZnJlc2giLCJhcHBfaWQiOiJraW1pIiwic3ViIjoiY2tpMDk0YjNhZXNsZ2xqNmZvMzAiLCJzcGFjZV9pZCI6ImNraTA5NGIzYWVzbGdsajZmbzJnIiwiYWJzdHJhY3RfdXNlcl9pZCI6ImNraTA5NGIzYWVzbGdsajZmbzMwIn0.CYXj16LIV6yLG9TJCYm9oZ8GGW6jhA6kRhBp4k3elDznwl8XM4U9xxm4K58XIAkuf2f0Rom6xoTKByyqOAZgPQ
|
18
|
+
"""
|
19
|
+
client = OpenAI(
|
20
|
+
# base_url="https://free.chatfire.cn/v1",
|
21
|
+
base_url="https://all.chatfire.cn/kimi/v1",
|
22
|
+
api_key=api_key.strip()
|
23
|
+
|
24
|
+
)
|
25
|
+
|
26
|
+
try:
|
27
|
+
_ = client.chat.completions.create(
|
28
|
+
messages=[
|
29
|
+
{"role": "user", "content": "你是谁"}
|
30
|
+
],
|
31
|
+
model="azure/gpt-4o-mini",
|
32
|
+
)
|
33
|
+
print(_)
|
34
|
+
except Exception as e:
|
35
|
+
print(e)
|
@@ -23,33 +23,52 @@ client = OpenAI(
|
|
23
23
|
# base_url="https://api.stepfun.com/v1",
|
24
24
|
base_url=os.getenv("MODELSCOPE_BASE_URL"),
|
25
25
|
# api_key=os.getenv("MODELSCOPE_API_KEY"),
|
26
|
-
api_key="
|
26
|
+
api_key="3f82dcb0-f061-41e9-83aa-626f35fa8194"
|
27
27
|
)
|
28
28
|
|
29
|
-
print(client.models.list().model_dump_json(indent=4))
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
29
|
+
# print(client.models.list().model_dump_json(indent=4))
|
30
|
+
|
31
|
+
models = client.models.list().data
|
32
|
+
print(', '.join([m.id for m in models]))
|
33
|
+
"""
|
34
|
+
LLM-Research/c4ai-command-r-plus-08-2024, mistralai/Mistral-Small-Instruct-2409, mistralai/Ministral-8B-Instruct-2410, mistralai/Mistral-Large-Instruct-2407, Qwen/Qwen2.5-Coder-32B-Instruct, Qwen/Qwen2.5-Coder-14B-Instruct, Qwen/Qwen2.5-Coder-7B-Instruct, Qwen/Qwen2.5-72B-Instruct, Qwen/Qwen2.5-32B-Instruct, Qwen/Qwen2.5-14B-Instruct, Qwen/Qwen2.5-7B-Instruct, Qwen/QwQ-32B-Preview, LLM-Research/Llama-3.3-70B-Instruct, opencompass/CompassJudger-1-32B-Instruct, Qwen/QVQ-72B-Preview, LLM-Research/Meta-Llama-3.1-405B-Instruct, LLM-Research/Meta-Llama-3.1-8B-Instruct, Qwen/Qwen2-VL-7B-Instruct, LLM-Research/Meta-Llama-3.1-70B-Instruct, Qwen/Qwen2.5-14B-Instruct-1M, Qwen/Qwen2.5-7B-Instruct-1M, Qwen/Qwen2.5-VL-3B-Instruct, Qwen/Qwen2.5-VL-7B-Instruct, Qwen/Qwen2.5-VL-72B-Instruct, deepseek-ai/DeepSeek-R1-Distill-Llama-70B, deepseek-ai/DeepSeek-R1-Distill-Llama-8B, deepseek-ai/DeepSeek-R1-Distill-Qwen-32B, deepseek-ai/DeepSeek-R1-Distill-Qwen-14B, deepseek-ai/DeepSeek-R1-Distill-Qwen-7B, deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B, deepseek-ai/DeepSeek-R1, deepseek-ai/DeepSeek-V3, Qwen/QwQ-32B, XGenerationLab/XiYanSQL-QwenCoder-32B-2412, Qwen/Qwen2.5-VL-32B-Instruct, deepseek-ai/DeepSeek-V3-0324, Wan-AI/Wan2.1-T2V-1.3B, LLM-Research/Llama-4-Scout-17B-16E-Instruct, LLM-Research/Llama-4-Maverick-17B-128E-Instruct, Qwen/Qwen3-0.6B, Qwen/Qwen3-1.7B, Qwen/Qwen3-4B, Qwen/Qwen3-8B, Qwen/Qwen3-14B, Qwen/Qwen3-30B-A3B, Qwen/Qwen3-32B, Qwen/Qwen3-235B-A22B, XGenerationLab/XiYanSQL-QwenCoder-32B-2504, deepseek-ai/DeepSeek-R1-0528
|
35
|
+
|
36
|
+
"""
|
37
|
+
|
38
|
+
|
39
|
+
def main():
|
40
|
+
try:
|
41
|
+
completion = client.chat.completions.create(
|
42
|
+
# model="step-1-8k",
|
43
|
+
model="deepseek-ai/DeepSeek-R1-0528",
|
44
|
+
|
45
|
+
# model="Qwen/QVQ-72B-Preview",
|
46
|
+
# model="qwen/qvq-72b-preview",
|
47
|
+
|
48
|
+
messages=[
|
49
|
+
{"role": "user", "content": "你是谁"}
|
50
|
+
],
|
51
|
+
# top_p=0.7,
|
52
|
+
top_p=None,
|
53
|
+
temperature=None,
|
54
|
+
stream=True,
|
55
|
+
max_tokens=1
|
56
|
+
)
|
57
|
+
except APIStatusError as e:
|
58
|
+
print(e.status_code)
|
59
|
+
|
60
|
+
print(e.response)
|
61
|
+
print(e.message)
|
62
|
+
print(e.code)
|
63
|
+
|
64
|
+
for chunk in completion:
|
65
|
+
content = chunk.choices[0].delta.content
|
66
|
+
reasoning_content = chunk.choices[0].delta.reasoning_content
|
67
|
+
print(content or reasoning_content)
|
68
|
+
print(chunk)
|
69
|
+
|
70
|
+
|
71
|
+
if __name__ == '__main__':
|
72
|
+
for i in tqdm(range(1)):
|
73
|
+
# break
|
74
|
+
main()
|
examples/exec_demo.py
CHANGED
@@ -15,4 +15,27 @@ def f(x):
|
|
15
15
|
print(f(x))
|
16
16
|
"""
|
17
17
|
|
18
|
-
exec(s, {'x': 1111})
|
18
|
+
exec(s, {'x': 1111})
|
19
|
+
|
20
|
+
|
21
|
+
# curl -X POST https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks \
|
22
|
+
# -H "Content-Type: application/json" \
|
23
|
+
# -H "Authorization: Bearer $ARK_API_KEY" \
|
24
|
+
# -d '{
|
25
|
+
# "model": "doubao-seedance-1-0-pro-250528",
|
26
|
+
# "content": [
|
27
|
+
# {
|
28
|
+
# "type": "text",
|
29
|
+
# "text": "多个镜头。一名侦探进入一间光线昏暗的房间。他检查桌上的线索,手里拿起桌上的某个物品。镜头转向他正在思索。 --ratio 16:9"
|
30
|
+
# }
|
31
|
+
# ]
|
32
|
+
# }'
|
33
|
+
|
34
|
+
import typer
|
35
|
+
import shlex # 用于将命令字符串拆分为参数列表
|
36
|
+
|
37
|
+
|
38
|
+
command = """
|
39
|
+
无人机以极快速度穿越复杂障碍或自然奇观,带来沉浸式飞行体验 --resolution 1080p --duration 5 --camerafixed false
|
40
|
+
"""
|
41
|
+
tokens = shlex.split(command)
|
examples/parse_cmd.py
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
import re
|
2
|
+
def universal_command_parser(text):
|
3
|
+
"""
|
4
|
+
通用的命令行参数解析器,可以处理未知参数
|
5
|
+
"""
|
6
|
+
# 分离描述和参数
|
7
|
+
match = re.search(r'\s+--', text)
|
8
|
+
print(match)
|
9
|
+
if match:
|
10
|
+
description = text[:match.start()].strip()
|
11
|
+
args_part = text[match.start():].strip()
|
12
|
+
|
13
|
+
print(description)
|
14
|
+
print(args_part)
|
15
|
+
else:
|
16
|
+
return {"description": text.strip(), "parameters": {}}
|
17
|
+
|
18
|
+
# 改进的正则表达式,处理带引号的值
|
19
|
+
pattern = r'--(\w+)\s+(".*?"|\'.*?\'|[^\s--]+)'
|
20
|
+
matches = re.findall(pattern, args_part)
|
21
|
+
|
22
|
+
parameters = {}
|
23
|
+
for param, value in matches:
|
24
|
+
# 去除引号
|
25
|
+
if (value.startswith('"') and value.endswith('"')) or \
|
26
|
+
(value.startswith("'") and value.endswith("'")):
|
27
|
+
value = value[1:-1]
|
28
|
+
|
29
|
+
# 智能类型转换
|
30
|
+
converted_value = smart_type_conversion(value)
|
31
|
+
parameters[param] = converted_value
|
32
|
+
|
33
|
+
return {
|
34
|
+
"description": description,
|
35
|
+
"parameters": parameters
|
36
|
+
}
|
37
|
+
|
38
|
+
def smart_type_conversion(value):
|
39
|
+
"""智能类型转换"""
|
40
|
+
# 布尔值
|
41
|
+
if value.lower() in ['true', 'yes', 'on', '1']:
|
42
|
+
return True
|
43
|
+
elif value.lower() in ['false', 'no', 'off', '0']:
|
44
|
+
return False
|
45
|
+
|
46
|
+
# 整数
|
47
|
+
try:
|
48
|
+
return int(value)
|
49
|
+
except ValueError:
|
50
|
+
pass
|
51
|
+
|
52
|
+
# 浮点数
|
53
|
+
try:
|
54
|
+
return float(value)
|
55
|
+
except ValueError:
|
56
|
+
pass
|
57
|
+
|
58
|
+
# 字符串
|
59
|
+
return value
|
60
|
+
|
61
|
+
# 完整示例
|
62
|
+
if __name__ == "__main__":
|
63
|
+
test_string = "无人机以极快速度穿越复杂障碍或自然奇观,带来沉浸式飞行体验 --resolution 1080p --duration 5 --camerafixed false"
|
64
|
+
|
65
|
+
result = universal_command_parser(test_string)
|
66
|
+
|
67
|
+
print(result)
|
68
|
+
|
69
|
+
# print("解析结果:")
|
70
|
+
# print(f"描述: {result['description']}")
|
71
|
+
# print("参数:")
|
72
|
+
# for key, value in result['parameters'].items():
|
73
|
+
# print(f" {key}: {value} ({type(value).__name__})")
|
examples/parse_cmd_re.py
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
import re
|
2
|
+
|
3
|
+
|
4
|
+
def parse_command_string_recommended(text):
|
5
|
+
"""推荐的解析方法 - 简洁且有效"""
|
6
|
+
# 分离描述和参数
|
7
|
+
match = re.search(r'\s+--', text)
|
8
|
+
|
9
|
+
if match:
|
10
|
+
description = text[:match.start()].strip()
|
11
|
+
args_part = text[match.start():].strip()
|
12
|
+
|
13
|
+
return description, args_part
|
14
|
+
|
15
|
+
|
16
|
+
if __name__ == '__main__':
|
17
|
+
import shlex
|
18
|
+
|
19
|
+
# 测试
|
20
|
+
# text = "无人机以极快速度穿越复杂障碍或自然奇观,带来沉浸式飞行体验 你好呀 --resolution 1080p --duration 5 --camerafixed false"
|
21
|
+
text = "无人机以极快速度穿越复杂障碍或自然奇观,带来沉浸式飞行体验 你好呀"
|
22
|
+
|
23
|
+
# result = parse_command_string_recommended(text)
|
24
|
+
# print(result)
|
25
|
+
|
26
|
+
print(shlex.split(text))
|
27
|
+
|
28
|
+
args = shlex.split(text)
|
29
|
+
prompt = ""
|
30
|
+
for i, arg in enumerate(args):
|
31
|
+
if arg.startswith('--'):
|
32
|
+
break
|
33
|
+
else:
|
34
|
+
prompt += arg
|
35
|
+
|
36
|
+
print(args[i:])
|
37
|
+
#
|
38
|
+
# # text = "无人机以极快速度穿越复杂障碍或自然奇观,带来沉浸式飞行体验"
|
39
|
+
#
|
40
|
+
# prompt, *args = shlex.split(text)
|
41
|
+
|
42
|
+
# text =
|
43
|
+
print(re.split(r'\s+--', text, maxsplit=1))
|
44
|
+
args = re.split(r'\s+--', text, maxsplit=1)
|
45
|
+
if len(args) == 2:
|
46
|
+
prompt, args = args
|
47
|
+
args = shlex.split(args)
|
48
|
+
else:
|
49
|
+
prompt = args[0]
|
meutils/apis/hailuoai/videos.py
CHANGED
@@ -38,7 +38,7 @@ send_message = partial(
|
|
38
38
|
)
|
39
39
|
|
40
40
|
APP_ID = '3001'
|
41
|
-
VERSION_CODE='22202'
|
41
|
+
VERSION_CODE = '22202'
|
42
42
|
|
43
43
|
MODEL_MAPPING = {
|
44
44
|
# video-01 video-01 video-01-live2d S2V-01
|
@@ -50,6 +50,8 @@ MODEL_MAPPING = {
|
|
50
50
|
"i2v-01-live": "23011",
|
51
51
|
"video-01-live2d": "23011",
|
52
52
|
"s2v-01": "23021",
|
53
|
+
|
54
|
+
# "23210" # 要积分
|
53
55
|
}
|
54
56
|
|
55
57
|
|
@@ -222,7 +224,16 @@ async def create_task(request: VideoRequest, token: Optional[str] = None):
|
|
222
224
|
"useOriginPrompt": not request.prompt_optimizer,
|
223
225
|
"fileList": [],
|
224
226
|
"modelID": "23000", # 文生视频
|
225
|
-
"quantity": f"{request.n}"
|
227
|
+
"quantity": f"{request.n}",
|
228
|
+
|
229
|
+
# "extra": {
|
230
|
+
# "promptStruct": "{"value":[{"type":"paragraph","children":[{"text":"动起来"}]}],"length":3,"plainLength":3,"
|
231
|
+
# rawLength":3}",
|
232
|
+
# "templateID": ""
|
233
|
+
# },
|
234
|
+
|
235
|
+
# "durationType": 1,
|
236
|
+
# "resolutionType": 3
|
226
237
|
}
|
227
238
|
|
228
239
|
if request.first_frame_image:
|
@@ -412,7 +423,7 @@ async def check_token(token, threshold: int = 30, **kwargs):
|
|
412
423
|
|
413
424
|
logger.debug(bjson(data))
|
414
425
|
|
415
|
-
return
|
426
|
+
return any(i in str(data) for i in {"Ultra", "Unlimited", "高级会员"})
|
416
427
|
except Exception as e:
|
417
428
|
logger.error(e)
|
418
429
|
logger.debug(token)
|
@@ -463,7 +474,7 @@ if __name__ == '__main__': # 304752356930580482
|
|
463
474
|
# first_frame_image="https://oss.ffire.cc/files/kling_watermark.png" # 307173162217783304
|
464
475
|
)
|
465
476
|
|
466
|
-
|
477
|
+
r = arun(create_task(request, token=token))
|
467
478
|
# arun(get_task(task_id=r.task_id, token=r.system_fingerprint))
|
468
479
|
|
469
480
|
# arun(get_task(task_id="hailuoai-378260932722450439", token=token))
|
@@ -488,5 +499,5 @@ if __name__ == '__main__': # 304752356930580482
|
|
488
499
|
# token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MzUwMzQ1MjcsInVzZXIiOnsiaWQiOiIzMTMzODk5MjA0NjA5MzkyNjgiLCJuYW1lIjoiY2l4ZiB4YmNnIiwiYXZhdGFyIjoiIiwiZGV2aWNlSUQiOiIzMTM0MDgyMjg0NTEwOTg2MjYiLCJpc0Fub255bW91cyI6ZmFsc2V9fQ.eOtAUe3MmarOGNk64j0bfaLNBZ4yxkqwIi1tUhOFD5c"
|
489
500
|
# token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTAxMjg4NTIsInVzZXIiOnsiaWQiOiIzNzQwMTM3NzUyNzg4ODY5MTciLCJuYW1lIjoiTmFodWVsIE1vbGluYSIsImF2YXRhciI6IiIsImRldmljZUlEIjoiMzEzMzc0MTIyMjEyMjc4MjczIiwiaXNBbm9ueW1vdXMiOmZhbHNlfX0.uxTtDTcPT07piVA-x3N2ms2VrRN3JwcU99g_HJLwqLE"
|
490
501
|
# token="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTAxMjg4NTIsInVzZXIiOnsiaWQiOiIzNzQwMTM3NzUyNzg4ODY5MTciLCJuYW1lIjoiTmFodWVsIE1vbGluYSIsImF2YXRhciI6IiIsImRldmljZUlEIjoiMzEzMzc0MTIyMjEyMjc4MjczIiwiaXNBbm9ueW1vdXMiOmZhbHNlfX0.uxTtDTcPT07piVA-x3N2ms2VrRN3JwcU99g_HJLwqLE"
|
491
|
-
token="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
|
492
|
-
arun(check_token(token))
|
502
|
+
# token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NTMxNzMyMjgsInVzZXIiOnsiaWQiOiIzODkxMjkzNTAyMjk0MTM4OTIiLCJuYW1lIjoibG53ciBqb2R1IiwiYXZhdGFyIjoiIiwiZGV2aWNlSUQiOiIzMTMzNzQxMjIyMTIyNzgyNzMiLCJpc0Fub255bW91cyI6ZmFsc2V9fQ.XIScaKmCg2OfBGoB-QD-J9Q1SEJuL41l5SqOFpHVWbc"
|
503
|
+
# arun(check_token(token))
|
meutils/apis/oneapi/channel.py
CHANGED
@@ -81,7 +81,7 @@ async def create_or_update_channel(
|
|
81
81
|
api_key: Optional[str] = None,
|
82
82
|
):
|
83
83
|
method = "put" if request.id else "post"
|
84
|
-
base_url = base_url or "https://api.
|
84
|
+
base_url = base_url or "https://api.chatfire.cn"
|
85
85
|
|
86
86
|
# 新创建的优先级低,保证旧key刷的时间更长
|
87
87
|
request.priority = request.priority or int(1000 - (time.time() - time.time() // 1000 * 1000))
|
@@ -25,8 +25,8 @@ from fastapi import APIRouter, File, UploadFile, Query, Form, Depends, Request,
|
|
25
25
|
FEISHU_URL = "https://xchatllm.feishu.cn/sheets/GYCHsvI4qhnDPNtI4VPcdw2knEd?sheet=8W6kk8" # 超刷
|
26
26
|
|
27
27
|
|
28
|
-
async def get_valid_token():
|
29
|
-
tokens = await get_series(FEISHU_URL)
|
28
|
+
async def get_valid_token(tokens: Optional[list] = None):
|
29
|
+
tokens = tokens or await get_series(FEISHU_URL)
|
30
30
|
for token in tokens:
|
31
31
|
if await check(token):
|
32
32
|
logger.debug(f"有效 {token}")
|
meutils/data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2025.06.
|
1
|
+
2025.06.18.16.30.56
|
meutils/llm/check_utils.py
CHANGED
@@ -198,7 +198,7 @@ async def check_token_for_volc(api_key, threshold: float = 1, purpose: Optional[
|
|
198
198
|
|
199
199
|
try:
|
200
200
|
base_url = os.getenv("VOLC_BASE_URL") or "https://ark.cn-beijing.volces.com/api/v3"
|
201
|
-
client = AsyncOpenAI(base_url, api_key=api_key)
|
201
|
+
client = AsyncOpenAI(base_url=base_url, api_key=api_key)
|
202
202
|
|
203
203
|
if purpose:
|
204
204
|
response = client.images.generate(
|
meutils/schemas/image_types.py
CHANGED
@@ -194,8 +194,10 @@ class ImageEditRequest(BaseModel):
|
|
194
194
|
if self.aspect_ratio: # 适配比例
|
195
195
|
self.size = ASPECT_RATIOS.get(self.aspect_ratio, '1024x1024')
|
196
196
|
|
197
|
-
elif self.size:
|
197
|
+
elif self.size == 'auto':
|
198
|
+
self.size = self.aspect_ratio = None
|
198
199
|
|
200
|
+
elif self.size: # 适配尺寸
|
199
201
|
self.aspect_ratio = size2aspect_ratio(self.size)
|
200
202
|
|
201
203
|
self.size = self.size if 'x' in self.size else '512x512'
|
meutils/schemas/oneapi/common.py
CHANGED
@@ -147,7 +147,7 @@ MODEL_PRICE = {
|
|
147
147
|
"official-api-vidu": 0.5,
|
148
148
|
|
149
149
|
"official-api-hailuo-video": 0.5,
|
150
|
-
"api-hailuo-video": 0.
|
150
|
+
"api-hailuo-video": 0.5,
|
151
151
|
|
152
152
|
"api-videos-seedream-3.0": 0.5,
|
153
153
|
|
@@ -625,6 +625,8 @@ MODEL_RATIO = {
|
|
625
625
|
|
626
626
|
# minimax https://platform.minimaxi.com/document/price?id=6433f32294878d408fc8293e
|
627
627
|
"minimax-text-01": 0.5,
|
628
|
+
"minimax-m1-80k": 2,
|
629
|
+
|
628
630
|
"abab6.5-chat": 15 / 7.5,
|
629
631
|
"abab6.5s-chat": 5,
|
630
632
|
"abab6.5t-chat": 2.5,
|
@@ -851,10 +853,12 @@ MODEL_RATIO = {
|
|
851
853
|
"gemini-2.0-flash": 0.075,
|
852
854
|
"gemini-2.0-flash-001": 0.075,
|
853
855
|
"gemini-2.0-flash-lite-preview-02-05": 0.075,
|
856
|
+
"gemini-2.5-flash-lite-preview-06-17": 0.075,
|
854
857
|
"gemini-2.0-flash-exp": 0.075,
|
855
858
|
"gemini-2.0-flash-thinking-exp": 0.075,
|
856
859
|
"gemini-2.0-flash-thinking-exp-1219": 0.075,
|
857
860
|
"gemini-2.0-flash-thinking-exp-01-21": 0.075,
|
861
|
+
"gemini-2.5-flash": 0.075,
|
858
862
|
|
859
863
|
"gemini-2.5-flash-preview-04-17": 0.075,
|
860
864
|
"gemini-2.5-flash-preview-05-20": 0.075,
|
@@ -866,6 +870,7 @@ MODEL_RATIO = {
|
|
866
870
|
"gemini-2.5-pro-preview-03-25": 0.625,
|
867
871
|
"gemini-2.5-pro-preview-05-06": 0.625,
|
868
872
|
"gemini-2.5-pro-preview-06-05": 0.625,
|
873
|
+
"gemini-2.5-pro": 0.625,
|
869
874
|
|
870
875
|
"gemini-1.5-pro-001": 1.25,
|
871
876
|
"gemini-1.5-pro-002": 1.25,
|
@@ -947,10 +952,10 @@ MODEL_RATIO = {
|
|
947
952
|
"o4-mini": 0.55,
|
948
953
|
"gpt-image-1": 2.5,
|
949
954
|
|
950
|
-
"o3":
|
951
|
-
"o3-2025-04-16":
|
952
|
-
|
955
|
+
"o3": 1,
|
956
|
+
"o3-2025-04-16": 1,
|
953
957
|
"o3-pro": 10,
|
958
|
+
"o3-pro-2025-06-10": 10,
|
954
959
|
|
955
960
|
# 硅基
|
956
961
|
"llama-3.1-8b-instruct": 0.01,
|
@@ -1013,6 +1018,7 @@ MODEL_RATIO = {
|
|
1013
1018
|
|
1014
1019
|
COMPLETION_RATIO = {
|
1015
1020
|
"minimax-text-01": 8,
|
1021
|
+
"minimax-m1-80k":4,
|
1016
1022
|
|
1017
1023
|
# 智能体
|
1018
1024
|
"gpt-4-plus": 5,
|