MeUtils 2024.12.2.11.50.27__py3-none-any.whl → 2024.12.5.12.28.40__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {MeUtils-2024.12.2.11.50.27.dist-info → MeUtils-2024.12.5.12.28.40.dist-info}/METADATA +27 -27
- {MeUtils-2024.12.2.11.50.27.dist-info → MeUtils-2024.12.5.12.28.40.dist-info}/RECORD +28 -21
- examples/_openaisdk/4v.py +8 -6
- examples/_openaisdk/openai_step.py +9 -6
- examples/demo.py +15 -1
- meutils/apis/hailuoai/music.py +11 -0
- meutils/apis/hailuoai/videos.py +11 -1
- meutils/apis/images/recraft.py +4 -3
- meutils/apis/kling/kolors_virtual_try_on_web.py +126 -0
- meutils/apis/napkin/__init__.py +11 -0
- meutils/apis/napkin/icons.py +42 -0
- meutils/apis/sunoai/suno.py +17 -9
- meutils/apis/textin.py +3 -0
- meutils/async_task/utils.py +13 -5
- meutils/config_utils/config_manager.py +76 -0
- meutils/config_utils/{nacos.py → nacosx.py} +6 -7
- meutils/data/VERSION +1 -1
- meutils/llm/completions/tune.py +39 -33
- meutils/schemas/hailuo_types.py +61 -0
- meutils/schemas/image_types.py +3 -7
- meutils/schemas/napkin_types.py +85 -0
- meutils/schemas/oneapi/common.py +23 -19
- meutils/schemas/oneapi//351/207/215/345/256/232/345/220/221.py +132 -0
- meutils/str_utils/__init__.py +16 -2
- {MeUtils-2024.12.2.11.50.27.dist-info → MeUtils-2024.12.5.12.28.40.dist-info}/LICENSE +0 -0
- {MeUtils-2024.12.2.11.50.27.dist-info → MeUtils-2024.12.5.12.28.40.dist-info}/WHEEL +0 -0
- {MeUtils-2024.12.2.11.50.27.dist-info → MeUtils-2024.12.5.12.28.40.dist-info}/entry_points.txt +0 -0
- {MeUtils-2024.12.2.11.50.27.dist-info → MeUtils-2024.12.5.12.28.40.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: MeUtils
|
3
|
-
Version: 2024.12.
|
3
|
+
Version: 2024.12.5.12.28.40
|
4
4
|
Summary: description
|
5
5
|
Home-page: https://github.com/yuanjie-ai/MeUtils
|
6
6
|
Author: yuanjie
|
@@ -61,42 +61,42 @@ Requires-Dist: sse-starlette ; extra == 'ai'
|
|
61
61
|
Requires-Dist: openai ; extra == 'ai'
|
62
62
|
Requires-Dist: langchain ; extra == 'ai'
|
63
63
|
Provides-Extra: all
|
64
|
-
Requires-Dist: reportlab ; extra == 'all'
|
65
|
-
Requires-Dist: pymysql ; extra == 'all'
|
66
64
|
Requires-Dist: sse-starlette ; extra == 'all'
|
67
|
-
Requires-Dist: redis-py-cluster ; extra == 'all'
|
68
65
|
Requires-Dist: pretty-errors ; extra == 'all'
|
69
|
-
Requires-Dist: streamlit ; extra == 'all'
|
70
|
-
Requires-Dist: thefuck ; extra == 'all'
|
71
|
-
Requires-Dist: fastapi ; extra == 'all'
|
72
|
-
Requires-Dist: pymupd ; extra == 'all'
|
73
|
-
Requires-Dist: sqlalchemy ; extra == 'all'
|
74
|
-
Requires-Dist: pymongo ; extra == 'all'
|
75
|
-
Requires-Dist: schedule ; extra == 'all'
|
76
66
|
Requires-Dist: polars ; extra == 'all'
|
77
|
-
Requires-Dist: thriftpy2 ; extra == 'all'
|
78
|
-
Requires-Dist: pymilvus ; extra == 'all'
|
79
|
-
Requires-Dist: pandas-profiling[notebook] ; extra == 'all'
|
80
|
-
Requires-Dist: uvicorn ; extra == 'all'
|
81
67
|
Requires-Dist: cachetools ; extra == 'all'
|
82
|
-
Requires-Dist:
|
83
|
-
Requires-Dist:
|
84
|
-
Requires-Dist:
|
85
|
-
Requires-Dist: faiss-cpu ; extra == 'all'
|
86
|
-
Requires-Dist: jieba ; extra == 'all'
|
87
|
-
Requires-Dist: asyncmy ; extra == 'all'
|
88
|
-
Requires-Dist: jinja2 ; extra == 'all'
|
68
|
+
Requires-Dist: pyarrow ; extra == 'all'
|
69
|
+
Requires-Dist: openai ; extra == 'all'
|
70
|
+
Requires-Dist: pymilvus ; extra == 'all'
|
89
71
|
Requires-Dist: geopy ; extra == 'all'
|
90
|
-
Requires-Dist:
|
72
|
+
Requires-Dist: jinja2 ; extra == 'all'
|
73
|
+
Requires-Dist: asyncmy ; extra == 'all'
|
91
74
|
Requires-Dist: missingno ; extra == 'all'
|
92
75
|
Requires-Dist: jmespath ; extra == 'all'
|
93
|
-
Requires-Dist:
|
94
|
-
Requires-Dist:
|
76
|
+
Requires-Dist: thriftpy2 ; extra == 'all'
|
77
|
+
Requires-Dist: sqlalchemy ; extra == 'all'
|
78
|
+
Requires-Dist: pymysql ; extra == 'all'
|
79
|
+
Requires-Dist: pandas-profiling[notebook] ; extra == 'all'
|
80
|
+
Requires-Dist: schedule ; extra == 'all'
|
81
|
+
Requires-Dist: redis-py-cluster ; extra == 'all'
|
95
82
|
Requires-Dist: filetype ; extra == 'all'
|
96
|
-
Requires-Dist: iteration-utilities ; extra == 'all'
|
97
83
|
Requires-Dist: dataframe-image ; extra == 'all'
|
98
|
-
Requires-Dist:
|
84
|
+
Requires-Dist: gunicorn ; extra == 'all'
|
85
|
+
Requires-Dist: uvicorn ; extra == 'all'
|
99
86
|
Requires-Dist: fastapi[all] ; extra == 'all'
|
87
|
+
Requires-Dist: seaborn ; extra == 'all'
|
88
|
+
Requires-Dist: thefuck ; extra == 'all'
|
89
|
+
Requires-Dist: pymongo ; extra == 'all'
|
90
|
+
Requires-Dist: simplejson ; extra == 'all'
|
91
|
+
Requires-Dist: jieba ; extra == 'all'
|
92
|
+
Requires-Dist: pandas-summary ; extra == 'all'
|
93
|
+
Requires-Dist: streamlit ; extra == 'all'
|
94
|
+
Requires-Dist: reportlab ; extra == 'all'
|
95
|
+
Requires-Dist: fastapi ; extra == 'all'
|
96
|
+
Requires-Dist: langchain ; extra == 'all'
|
97
|
+
Requires-Dist: faiss-cpu ; extra == 'all'
|
98
|
+
Requires-Dist: pymupd ; extra == 'all'
|
99
|
+
Requires-Dist: iteration-utilities ; extra == 'all'
|
100
100
|
Provides-Extra: ann
|
101
101
|
Requires-Dist: pymilvus ; extra == 'ann'
|
102
102
|
Requires-Dist: faiss-cpu ; extra == 'ann'
|
@@ -10,7 +10,7 @@ examples/crontab_demo.py,sha256=GthbPsFmN6VwP3XLYYgLib56lFxfCp12H_Cu98l1vR0,1525
|
|
10
10
|
examples/datamodel.py,sha256=8Hpz75mbyMUOo8RA1jJA12tGdoo_M8Owgb8zkqdfvic,1052
|
11
11
|
examples/debug.py,sha256=uOxde_EQRJ-Sx_IZ5W4W4b31GoXUWtMom4EHiK4G5X8,414
|
12
12
|
examples/decorator_demo.py,sha256=HRLnQ-0gEFxTsWZZ0is-xGXRDjE0QGLL6iUWQFH8NwY,1578
|
13
|
-
examples/demo.py,sha256=
|
13
|
+
examples/demo.py,sha256=Fa7lPkxwepS-TOzL5B3Q7q4OBSl5wnOBPQCbbzRRG3Y,1312
|
14
14
|
examples/dfi.py,sha256=7jCB7e3eKyRx4Z0uez5kWWvjdjgQRCxu5zX75Cs1AOI,244
|
15
15
|
examples/es.py,sha256=9QWM9AAr70ie6rthwTdF7ofFxGqD4gwz_d9CYku8rVs,1374
|
16
16
|
examples/exec_demo.py,sha256=3MabOHpxrQRpVs1cdFgRxGrdobgRq8Tki5Ohpla7qEE,309
|
@@ -68,7 +68,7 @@ examples/Time-Extractor/TimeUnit.py,sha256=yx-SS9sxSjSUGiu1H8eTbP4vqAHrNyQcddioM
|
|
68
68
|
examples/Time-Extractor/__init__.py,sha256=hjNi8tWPOBTke6GHlxpsOrufCRdAHmYs2yBquql9X7c,156
|
69
69
|
examples/Time-Extractor/setup.py,sha256=ENYhj1_uJ7z_F3jrz8FR8w5u2SEXrZpl5GXEELUymLk,811
|
70
70
|
examples/Time-Extractor/resource/__init__.py,sha256=0HHkZVghckIg5LkGMziooZ8TUqfSQFA6j62BN9KyFp0,91
|
71
|
-
examples/_openaisdk/4v.py,sha256=
|
71
|
+
examples/_openaisdk/4v.py,sha256=7UiLgHjwT2hiV39hE_XWWAxBc_67qQsw9SnAZ2rtEHU,3305
|
72
72
|
examples/_openaisdk/__init__.py,sha256=5TNibGR-ETncXVWoevqYJ0m2yo1GOxRx3hSu2qWAQNo,271
|
73
73
|
examples/_openaisdk/baichuan.py,sha256=xmNFc64T02r9wE0VSOG0B21wJJmlrecKVVCelhs2Dt4,890
|
74
74
|
examples/_openaisdk/bpo.py,sha256=7Jw16TiKFEQvYbt4g-h7QimLBw7xY49w1MthT5OwcTM,5267
|
@@ -104,7 +104,7 @@ examples/_openaisdk/openai_moon.py,sha256=Y7RrB6SUi9taQOlA50nfGTpQa9ON6XmPmrxtL-
|
|
104
104
|
examples/_openaisdk/openai_search.py,sha256=HKRTU6y9j_nUfZgrJt2eZ84d7TVT39WN-dcA_BFkVb4,937
|
105
105
|
examples/_openaisdk/openai_sensenova.py,sha256=TnJpHcD1tG5w_x5DsgFgBRWrU8XUkww0uCebgNFfZDM,3216
|
106
106
|
examples/_openaisdk/openai_siliconflow.py,sha256=SuOwW7XmoBpKtLRbi7MFovjfeI2sFWhgOYh11O0vBR4,1349
|
107
|
-
examples/_openaisdk/openai_step.py,sha256=
|
107
|
+
examples/_openaisdk/openai_step.py,sha256=rwXrGRs5CHhWpNl9oeIHltErp1Or_B3PVKNAoMGY-0c,1054
|
108
108
|
examples/_openaisdk/openai_tune.py,sha256=rDmX_EMsAhD0gKJPQ8P0-icZQAjV6OMkMLX67uwJtvU,674
|
109
109
|
examples/_openaisdk/openai_zhipu.py,sha256=K13ogb2IZO0-_ItLqHIAFWaN6FH2vd72PdieIXMZNx8,1626
|
110
110
|
examples/_openaisdk/ppu.py,sha256=jPBufoYt2ZrqNKjgbHr49YZI5vBM-32eBYbhbYduhnY,602
|
@@ -294,7 +294,7 @@ meutils/apis/kuaidi.py,sha256=4KrtOkbGlsLpyvbY80UMSo03iFqFiBHnE0CiqAWWQ4Y,998
|
|
294
294
|
meutils/apis/llm_qa.py,sha256=XM1VMkOTb4xKzgVk56dPC1e8lg7SbnfobBVgfLXiX9A,1207
|
295
295
|
meutils/apis/niutrans.py,sha256=weWjn-tUTEaAUe5RGbzcjQqPkJxGDrPwMB6CnaiZSsg,1682
|
296
296
|
meutils/apis/search_music.py,sha256=HBLtdterztrccnLAPZrWBlrYSx4WCRflCqz-V30fOA8,972
|
297
|
-
meutils/apis/textin.py,sha256=
|
297
|
+
meutils/apis/textin.py,sha256=4Cd_iof2jgxtPxPsjWbBJ1B2rQoVrdJOFdWxP3ZKBQU,4749
|
298
298
|
meutils/apis/ts.py,sha256=Q13EOS9Q-Y2-KwOG_cFMVmGj9RUmDtxk5A3E27dxbN0,1511
|
299
299
|
meutils/apis/web_search.py,sha256=6gS3leIB2iyeLtqhB0IbpL_mKzDgArRTqnR7odTWT3E,1035
|
300
300
|
meutils/apis/yezi.py,sha256=26vhnA3lC5049Rqx-CHO-wyGKbdZAfvjEOG90W38cr0,3675
|
@@ -313,8 +313,9 @@ meutils/apis/chatglm/x.py,sha256=lI86Cd6SN4noCN5HM9gRugcVmjHDtxDTV4m-7Bj61N0,243
|
|
313
313
|
meutils/apis/hailuoai/__init__.py,sha256=2g9okuB6pxPh1hDiAE9HZo37baqIO9cX-67RpyfBj1k,272
|
314
314
|
meutils/apis/hailuoai/demo.py,sha256=WTnDFL2HgVpAjcn5BljLrbf2y2aATkvvNy75zoEIQkc,1483
|
315
315
|
meutils/apis/hailuoai/hasha_new.py,sha256=1sD3fxmxYrEufmPaJZGAkYJoHKO85hfLXemnY-xYIO8,9101
|
316
|
+
meutils/apis/hailuoai/music.py,sha256=S_oi-ZDbocTfbRgREdXtGx50xzUc1PCZGuxmr917E7M,265
|
316
317
|
meutils/apis/hailuoai/upload.py,sha256=22S6W6hGQhUquVKqh7QCkXb6KHDl3iMKKi6Z0AJdFEI,6501
|
317
|
-
meutils/apis/hailuoai/videos.py,sha256=
|
318
|
+
meutils/apis/hailuoai/videos.py,sha256=lCHej9RK8B4-TmVY7mns0monu2qdjNjkUd86GgoI3jo,19327
|
318
319
|
meutils/apis/hailuoai/yy.py,sha256=gJvr7VDa0YPEUkZuETdmCFWWheylDPoMUg8gbS_SVw8,8937
|
319
320
|
meutils/apis/hf/__init__.py,sha256=ZZoRl8yNYekoMhE__67XXBKNSYJaLgjtaa0netjJKUU,271
|
320
321
|
meutils/apis/hf/got_ocr.py,sha256=pZURFpryDh_Ak6PNiARztOzYgkjVrfScJ5-0XzMBrzI,1776
|
@@ -330,7 +331,7 @@ meutils/apis/hunyuan/image_tools.py,sha256=LZdhmFzV4i9bhJ-4Lu02mEG3QtZryC4HwW9fg
|
|
330
331
|
meutils/apis/images/__init__.py,sha256=hs7HUJZvw_3DAtoapPnbZsEb4ng1p0a6fJGFFWwUcUk,272
|
331
332
|
meutils/apis/images/deepinfra.py,sha256=N7IDJ9dubojOY--R30uQlzSBbuuy4OXkCkRB1ey0kcQ,3241
|
332
333
|
meutils/apis/images/demo.py,sha256=Cjk-EKMKbp44czykW_44qR0TzElX8nNCALqXBBw5sJA,4405
|
333
|
-
meutils/apis/images/recraft.py,sha256=
|
334
|
+
meutils/apis/images/recraft.py,sha256=XEZnKcandNW9eR-bBYg7bVicuaFJToeFSnHF-u4PbkE,10142
|
334
335
|
meutils/apis/images/fal/__init__.py,sha256=A7w3ZAS7Tv20N4X4Em6NshDxKSCPAzaPxHJTbM3BbyM,272
|
335
336
|
meutils/apis/images/fal/files.py,sha256=hxcetu8Mcdp-UICh-CF7LuTLFShvGMwgKHxpHyFGj28,1318
|
336
337
|
meutils/apis/images/fal/images.py,sha256=z7JhKMDT4tbPgkNEM2V27OVQLVfOYU1dhUnw-pHBcg8,1677
|
@@ -351,6 +352,7 @@ meutils/apis/kling/__init__.py,sha256=pKz40SEjui1dhHBD-icyNTJOYhzLvxLxJCwszuH4vi
|
|
351
352
|
meutils/apis/kling/api.py,sha256=AuVQ9URmrbTlz7dEv_kIyhA9fMTZPL9rF3Td6KxTIMA,2183
|
352
353
|
meutils/apis/kling/images.py,sha256=FcCkvA4x1Po3SuugfQa8klT0Lrj7fq4N8kbzx6luUxI,5095
|
353
354
|
meutils/apis/kling/kolors_virtual_try_on.py,sha256=H9qPHNeZII_Ajd3vQkc6zFw3SWfq17AJvLu0vKL-V4M,3093
|
355
|
+
meutils/apis/kling/kolors_virtual_try_on_web.py,sha256=UNjr-T9waujh2Gg8SSmnlfP3wXsZeYsDdWMabRQaP1E,3951
|
354
356
|
meutils/apis/kling/videos.py,sha256=6z3w0gQHPe3BQNid4ZO2DfYSqvry44EMehG9U0qSB3E,2115
|
355
357
|
meutils/apis/kling/鉴权.py,sha256=1kR67Mb0PxEo4ZxLVJZys4Iru9BUnS_Qqo2cbpLZNCU,842
|
356
358
|
meutils/apis/kuaishou/__init__.py,sha256=fDzJvVQl_CxHyiL3bCPH9x7gOLYfK6QuW2iQ33eez7c,243
|
@@ -361,6 +363,8 @@ meutils/apis/luma/__init__.py,sha256=51W483rgmMqFlRIHlkIIcKYMqggH4eY_bmV_mD3p7QI
|
|
361
363
|
meutils/apis/luma/luma.py,sha256=dAWZj2Q4t5eJNJbbtCfmUNDb1wx_OKxxtrZr0szI6tw,6026
|
362
364
|
meutils/apis/minicpm/__init__.py,sha256=XTg1aG_3CiGK7XN-APqWVbJf5OV96IKO9vliKmPUEHg,243
|
363
365
|
meutils/apis/minicpm/luca.py,sha256=eNDbHrFXRQi7XZkz3aFTnVpKriyqg1Ka4XAS7UPUI_4,4852
|
366
|
+
meutils/apis/napkin/__init__.py,sha256=EWwpRJEbN46d6Dk9PHAZvsYmqD_EOK0jjKQL1kYtcKs,271
|
367
|
+
meutils/apis/napkin/icons.py,sha256=_L8EaSeQ6ChT5w7q3jnj_AcRhKvNiBg3-qUKo9JQ12o,2217
|
364
368
|
meutils/apis/oneapi/__init__.py,sha256=wg_kqNkFqOkP70vnOHvAeKREps57Rqliu5yKC0gsgLk,284
|
365
369
|
meutils/apis/oneapi/channel.py,sha256=SdehWOlh0tLVM1CG_AT5_VpiGHXtc__AlknyLSs0jRw,1989
|
366
370
|
meutils/apis/oneapi/common.py,sha256=dZeuimzuZXVP_bEMYfTdZUKVJePrOVB0fWYl2dwQwcI,3556
|
@@ -392,7 +396,7 @@ meutils/apis/siliconflow/text_to_image.py,sha256=rDxk6NIj4TjigcSPVDZknQR9nUpK5CT
|
|
392
396
|
meutils/apis/siliconflow/utils.py,sha256=Awe0V7Mkceop1vWWrw9901cKQ6HHntIn8HbIG0fEo40,2091
|
393
397
|
meutils/apis/sunoai/__init__.py,sha256=O8J8jKTmvZGGovkF_jCRl3vbL68a4_dXVSxiKIYTkFo,244
|
394
398
|
meutils/apis/sunoai/haimian.py,sha256=CSISElYbbGFnVCxCgAbHM_YZ9ELUjhuFQ6jdYM0hh7E,5521
|
395
|
-
meutils/apis/sunoai/suno.py,sha256=
|
399
|
+
meutils/apis/sunoai/suno.py,sha256=I7UgqkBd7rd8BvOlZqzkf64n7Z2fjw678OnpP5DOKcM,17156
|
396
400
|
meutils/apis/textcard/__init__.py,sha256=akc6silym0NIl0vX7uF8vhHQnt5RhSx50MFw-2ot9Sg,271
|
397
401
|
meutils/apis/textcard/demo.py,sha256=-kfVmAjWsbEyUn2a4MljATPtJurrPKKDG3nrZhIhYS0,552
|
398
402
|
meutils/apis/textcard/hanyuxinjie.py,sha256=4-VP7ZfEPPVonqisJO-PkzcJwQFQtNYAA_tz1BE7kqA,2044
|
@@ -419,7 +423,7 @@ meutils/async_task/__init__.py,sha256=45cUr-GWvQ1JFYGOYPOIkHLyTR3JbfP_PEYrmktpML
|
|
419
423
|
meutils/async_task/celery_config.py,sha256=BX1h3jY34aO6UmUFakdBUwOdsEiOxCGuUtYDUKFtafc,3461
|
420
424
|
meutils/async_task/common.py,sha256=ZJ4e0CsEJf1ppPmGSwPCwhZBAkUL5xsi_t1ny-bJuko,845
|
421
425
|
meutils/async_task/demo_create_tasks.py,sha256=Eu4XjNxRROmMJ0oKfbEhrfLTaOUgedbAhmFyQx5nOQc,2699
|
422
|
-
meutils/async_task/utils.py,sha256=
|
426
|
+
meutils/async_task/utils.py,sha256=6M0YRIPhakpH3Geywkl-NPy_O2pQvnsDcQPyyTrA7Mc,5853
|
423
427
|
meutils/async_task/通用设计.py,sha256=kGdrJHJu9VoOkyGHREn0KUtBTibAaLIcG0O6hEJNhLA,3232
|
424
428
|
meutils/async_task/tasks/__init__.py,sha256=flHRXJMdts_9az9T9V1c5l3Y-gaDD88COWrARr4WAKU,246
|
425
429
|
meutils/async_task/tasks/_all.py,sha256=Vz63k9yvgj-IBGjekm0u2t571TTT0nMRMqcPvPqJAbY,533
|
@@ -453,14 +457,15 @@ meutils/cmds/subprocess_demo.py,sha256=oTeTIx8k6XwtOT6hZpmy9XNcRErzilqWcdoxcrVcH
|
|
453
457
|
meutils/comp_utils/__init__.py,sha256=Q4BW-gHnOUiSSpupHsprsOAPp4kuBLcH60sL1RfS3PQ,361
|
454
458
|
meutils/comp_utils/reverse_metric.py,sha256=qwcGgiHhaupIJER4gO0HQhhO07FDLFv-vfFhg6K6Q4s,1705
|
455
459
|
meutils/config_utils/__init__.py,sha256=GhgsStfGJDC8F_YgC6X5Jnj9HkgXJXxeYiJWTAkWKTo,271
|
456
|
-
meutils/config_utils/
|
460
|
+
meutils/config_utils/config_manager.py,sha256=V9n4euIZ5FtQkqLllF2OnSHi1uXQGBO_qX0pY-hCdKQ,2011
|
461
|
+
meutils/config_utils/nacosx.py,sha256=ZkLwL9ImWlCDWsu_m-lA5CNXdG5O4FYnfDAIqPkFI8w,1108
|
457
462
|
meutils/config_utils/lark_utils/__init__.py,sha256=Gf-5Y8uZiqY9jdbfiIboL92MQjOTOo0ZZ245PGxCbaY,297
|
458
463
|
meutils/config_utils/lark_utils/common.py,sha256=WB1VKB3vdYyzqWosp5T-7uBIupNXl1L7SM3Lf5GRaOU,14274
|
459
464
|
meutils/config_utils/lark_utils/demo.py,sha256=3g0Fs7oLaeW75T60gYWMLgyNg1OnfOjfHOno5NxNAio,293
|
460
465
|
meutils/config_utils/lark_utils/x.py,sha256=MlMQGhehP9xMEgetxVCX68XFaosfKoW1JA5cZ3JqN2w,1857
|
461
466
|
meutils/crawlers/__init__.py,sha256=TBU4xA-IOsHV-0yIkW7YXxn_QT7TT8NncqxO7IykEfs,271
|
462
467
|
meutils/data/SimHei.ttf,sha256=-XEnekS5yHP_URkT4XBI2w22ylV-KxudhkeIYFbrILA,10062565
|
463
|
-
meutils/data/VERSION,sha256=
|
468
|
+
meutils/data/VERSION,sha256=tkQGHrRdks4Tjpd7jJiOglCKj9lH7xI-psnFNEDyYuw,19
|
464
469
|
meutils/data/_FLAG,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
465
470
|
meutils/data/_SUCCESS,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
466
471
|
meutils/data/__init__.py,sha256=Hfwkkxs4zHqKhxht0YrhS566a9P5axtmgNvM5wF8ceQ,243
|
@@ -544,7 +549,7 @@ meutils/llm/completions/delilegal.py,sha256=mr53ps7I33SC8Fjy4rma-xoNF-mLgwdZfHgd
|
|
544
549
|
meutils/llm/completions/dify.py,sha256=dqL_8uxAp2d8M00pkyh2I30tflwi4pUyX-V6pwe3_BA,3048
|
545
550
|
meutils/llm/completions/rag.py,sha256=cpQ1aZX2QI1QDfFpODTxWHPYglK6_3qrlUM_KHLBNhc,1112
|
546
551
|
meutils/llm/completions/tryblend.py,sha256=NfVRktn1QiE2k60PzEI-LmKuxZCc7mtL_KlsrVcZg4k,8957
|
547
|
-
meutils/llm/completions/tune.py,sha256=
|
552
|
+
meutils/llm/completions/tune.py,sha256=FypfUgsB34t-E9xI6WydJYEk_-phscrLOX1iUCeKb_E,10138
|
548
553
|
meutils/llm/completions/x.py,sha256=XE8aCyuhkpYq0nho1mq9lAdRU1yOPc8BpvCpNYYMYqM,630
|
549
554
|
meutils/llm/completions/xx.py,sha256=e36z5KRfucofPTUunMMIKS-GorzHD-3LTb_MmGOgOGk,396
|
550
555
|
meutils/llm/completions/yuanbao.py,sha256=aN3MwR6yORFv5pGA1ODiLqlNKCfAKQslIfpruAD6m08,5468
|
@@ -632,10 +637,10 @@ meutils/schemas/dify_types.py,sha256=bHHWRuwoabINIx_MYukdgN0h7_h_73qA0ayDYAj85E0
|
|
632
637
|
meutils/schemas/embedding.py,sha256=rJ-XQ6X8VmACOi53BOJtkjROrNcf1ZUhzxKkClM9J0M,867
|
633
638
|
meutils/schemas/fal_types.py,sha256=a6glb5xlo0MEuKZrWtT7B8kLjwnLEhIVPbpnDWpBsJc,360
|
634
639
|
meutils/schemas/fish_types.py,sha256=yC0ZFr3Ebh8F0OhtMsXYaIfNNvzOM2LT9YtKTaRoHGU,270
|
635
|
-
meutils/schemas/hailuo_types.py,sha256=
|
640
|
+
meutils/schemas/hailuo_types.py,sha256=hmkjFPID5HS26Ayk80xS2a38XcubokEHxzg86cC0Ki8,6150
|
636
641
|
meutils/schemas/haimian_types.py,sha256=jGu484UviAeBgy5OIUyRY4uYCxXfv16zDPqiJQr9wNQ,1364
|
637
642
|
meutils/schemas/idphoto_types.py,sha256=nuHbpppejRSkJCiQ7YKx0Gnke0ShKZhOvdg0e7tk9-0,1074
|
638
|
-
meutils/schemas/image_types.py,sha256=
|
643
|
+
meutils/schemas/image_types.py,sha256=u8lPJU3robAxbACv54sMhCdET2VAb8g-zSW8EqtDuh8,11291
|
639
644
|
meutils/schemas/jina_types.py,sha256=SLRRBCap2B1uXnHF7Sgnlz1Work8HvdIltjj4oVlGTk,8826
|
640
645
|
meutils/schemas/kimi_types.py,sha256=PjCgHwCDNzKasn4X6rUzvOENqKYT3xj07cgp71IdsDA,3607
|
641
646
|
meutils/schemas/kling_types.py,sha256=brWaREBtQeZGUuwgOW2p-vIm2WWInYkq8UfrLInT-Ik,6959
|
@@ -644,6 +649,7 @@ meutils/schemas/luma_types.py,sha256=s9RZnZUpdUg8-13_WOWm3bE_e246olplFFjP8ygiDuw
|
|
644
649
|
meutils/schemas/message_types.py,sha256=AJc9ZT_weaTjfjmwF5CDroV0WJEJKnA3u4bnbHhBamo,6176
|
645
650
|
meutils/schemas/message_types_.py,sha256=oL7uOsewaziSryZywfap09M5Wh9w28RJDuadFuAfCSI,6297
|
646
651
|
meutils/schemas/metaso_types.py,sha256=YD5Xrquxibi3911ZkjODFXqPp9vqxbQXKLdMe8dCq5E,1750
|
652
|
+
meutils/schemas/napkin_types.py,sha256=Kp0MbpRxzMBz4HWW4DrfcgOvHZVEF3N7P5yNeC1XGI4,2664
|
647
653
|
meutils/schemas/ocr_types.py,sha256=fZWYQAKii7HaTlSU9DS0wHyiEoOHuLnhvgoiH4Cn498,1381
|
648
654
|
meutils/schemas/openai_api_protocol.py,sha256=0GhmhUTEr54N_XCVuZI1MSxJldvwMNJjUAAAdWznw58,12716
|
649
655
|
meutils/schemas/openai_types.py,sha256=45vL6STgObZawq_b1MIw9BW5l6NltmQTL2r9VAOep-0,11867
|
@@ -667,12 +673,13 @@ meutils/schemas/db/__init__.py,sha256=m1maURVoM6dIW0yt6ELZrZTzULtkHybVOSXtHNJRVI
|
|
667
673
|
meutils/schemas/db/oneapi_types.py,sha256=Jtt1hXRS5C3DHf_wrkjklVcdPllsAFrzvLq9JLuTdtc,2858
|
668
674
|
meutils/schemas/oneapi/__init__.py,sha256=uevbi3QAvFzN9WPbx9bYKTDyKt7P2ueZO6W0nSiD0sk,289
|
669
675
|
meutils/schemas/oneapi/_types.py,sha256=ClvAaNy3SahEN8lL8KEErHTD6HANelXUeKc_3iLfosQ,1488
|
670
|
-
meutils/schemas/oneapi/common.py,sha256=
|
676
|
+
meutils/schemas/oneapi/common.py,sha256=ULNre1gz100UuP2wMLlIjkcCO7tbhXmDcKwo0u-9XGk,22723
|
671
677
|
meutils/schemas/oneapi/icons.py,sha256=T7W5gInBJoHe62wzMimbG_UI-wn3_-rmQ1O4O2z-CQY,1089
|
672
678
|
meutils/schemas/oneapi/model_group_info.py,sha256=rGtflYJuFIjk5MsVEvK9JUR4IciX8jfErqeLqf8DIlQ,1586
|
673
679
|
meutils/schemas/oneapi/model_info.py,sha256=_uwKEPIIqm7ZYfhmpxtXB2QNsS83SpJY-OaBzvogC9w,772
|
674
680
|
meutils/schemas/oneapi/models.py,sha256=a--9Vu6yNhQn1M7Mk6E1LI6dV9WBKXdge2ZdL2fjd0E,506
|
675
681
|
meutils/schemas/oneapi/x.py,sha256=i6bC3ewSU_AfPNEQ7dGoJyg-fRmauTyk25r-20wms1s,561
|
682
|
+
meutils/schemas/oneapi/重定向.py,sha256=j7EXCNMmV7iTOHPOsxK_vg-K6w03FXYKWQowL2geIiw,12963
|
676
683
|
meutils/serving/__init__.py,sha256=WWVtrZy7E75z0dYpUMjmDD2keBcg-UFmb4fLYGCT1yg,271
|
677
684
|
meutils/serving/_fastapi.py,sha256=19NoGAD0DsmxmRtqYgCRw1dQyIgDlIuk5I2aynEgBoU,2478
|
678
685
|
meutils/serving/celery/__init__.py,sha256=sYFX-Pyejsv-H4v3uZ4VTpFblljl9sMsGxj0-DXOJQQ,756
|
@@ -717,7 +724,7 @@ meutils/settings/__init__.py,sha256=jZc0NXPA9zIMcTAYypSQDxJqvXakyJ0ztK9ZMND2Q7U,
|
|
717
724
|
meutils/settings/base.py,sha256=kb3QVS2eUFWyGgvegtSK4cqJFF76J1JctTSzCVqc1Mo,264
|
718
725
|
meutils/settings/demo.py,sha256=Ht3t6LREQsKa5W2owNrOZNAoZfS-zItIFNwGhhPj-4k,484
|
719
726
|
meutils/str_utils/Translator.py,sha256=tfvNQIeVCqmX9yW6jobeibDHG6X-XecSSAx9kJIFFyw,1258
|
720
|
-
meutils/str_utils/__init__.py,sha256=
|
727
|
+
meutils/str_utils/__init__.py,sha256=BzTEbffNPWoJxEgjaRyGIWBxb9FxxlNesOUb7anJRGw,7215
|
721
728
|
meutils/str_utils/json_utils.py,sha256=zenIakTQMVDntrEVlIxYHp9wmQAMdCR4EGOAE3c-Shw,1258
|
722
729
|
meutils/str_utils/regular_expression.py,sha256=xoStTyvSHYe7A8nyVjFk9bHv6EO-I7rGXmhj24reMRg,3387
|
723
730
|
meutils/str_utils/__translater/__init__.py,sha256=mtDbKL_Qdkeq5VPVO1M4ejf9H8PzKM5h7iepqkBG8N0,277
|
@@ -793,9 +800,9 @@ meutils/tools/seize.py,sha256=nOKAS63w-Lbi48I0m2MPhdsokUTwxco0laPxYVmW4Mw,1064
|
|
793
800
|
meutils/tools/service_monitor.py,sha256=ibsLtBN2g2DL7ZnLJ8vhiZOiOcqTAyx711djDdBK-3M,1255
|
794
801
|
meutils/tools/sys_monitor.py,sha256=6MoyzrItqDUOSjfHcMJmMofQkEPTW36CT_aKui0rg84,429
|
795
802
|
meutils/tools/token_monitor.py,sha256=Np-YK-R4P4IPAXyZvMxwvXI4sFmNJQAQK1lSegNaYpA,997
|
796
|
-
MeUtils-2024.12.
|
797
|
-
MeUtils-2024.12.
|
798
|
-
MeUtils-2024.12.
|
799
|
-
MeUtils-2024.12.
|
800
|
-
MeUtils-2024.12.
|
801
|
-
MeUtils-2024.12.
|
803
|
+
MeUtils-2024.12.5.12.28.40.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
804
|
+
MeUtils-2024.12.5.12.28.40.dist-info/METADATA,sha256=NpU55wGvIupm2QIBSoPuRPPP7Z_YmdO-HbM2QbScTOE,6143
|
805
|
+
MeUtils-2024.12.5.12.28.40.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
|
806
|
+
MeUtils-2024.12.5.12.28.40.dist-info/entry_points.txt,sha256=lufZlBHRqqZKdY-ZQJ4CSZb0qhV5hQC37egZna9M7ug,357
|
807
|
+
MeUtils-2024.12.5.12.28.40.dist-info/top_level.txt,sha256=cInfxMmkgNOskurdjwP5unau4rA7Uw48nu07tYhS7KY,22
|
808
|
+
MeUtils-2024.12.5.12.28.40.dist-info/RECORD,,
|
examples/_openaisdk/4v.py
CHANGED
@@ -17,11 +17,11 @@ from chatllm.schemas.openai_api_protocol import ChatCompletionRequest
|
|
17
17
|
|
18
18
|
base_url = os.getenv('OPENAI_BASE_URL')
|
19
19
|
openai = OpenAI(api_key=os.getenv("OPENAI_API_KEY_OPENAI"))
|
20
|
-
openai = OpenAI(api_key=os.getenv("SILICONFLOW_API_KEY"), base_url=os.getenv("SILICONFLOW_BASE_URL"))
|
21
|
-
openai = OpenAI(
|
22
|
-
|
23
|
-
|
24
|
-
)
|
20
|
+
# openai = OpenAI(api_key=os.getenv("SILICONFLOW_API_KEY"), base_url=os.getenv("SILICONFLOW_BASE_URL"))
|
21
|
+
# openai = OpenAI(
|
22
|
+
# # api_key=os.getenv("TOGETHER_API_KEY"),
|
23
|
+
# # base_url=os.getenv("TOGETHER_BASE_URL")
|
24
|
+
# )
|
25
25
|
|
26
26
|
# openai = OpenAI(api_key=os.getenv("OPENAI_API_KEY_GUOCHAN"))
|
27
27
|
|
@@ -71,6 +71,8 @@ messages = [
|
|
71
71
|
]
|
72
72
|
response = openai.chat.completions.create(
|
73
73
|
# model='gpt-4-vision-preview',
|
74
|
+
model='gpt-4o',
|
75
|
+
|
74
76
|
# model="gemini-pro-vision",
|
75
77
|
# model='gemini-1.5-flash-latest',
|
76
78
|
|
@@ -86,7 +88,7 @@ response = openai.chat.completions.create(
|
|
86
88
|
|
87
89
|
# model="Pro/OpenGVLab/InternVL2-8B",
|
88
90
|
# model="meta-llama/Llama-Vision-Free",
|
89
|
-
model="grok-vision-beta",
|
91
|
+
# model="grok-vision-beta",
|
90
92
|
|
91
93
|
# model='kimi', # ocr
|
92
94
|
|
@@ -14,21 +14,24 @@ from openai import OpenAI
|
|
14
14
|
from openai import OpenAI, APIStatusError
|
15
15
|
|
16
16
|
client = OpenAI(
|
17
|
-
api_key=os.getenv("STEP_API_KEY"),
|
18
|
-
base_url="https://api.stepfun.com/v1",
|
17
|
+
# api_key=os.getenv("STEP_API_KEY"),
|
18
|
+
# base_url="https://api.stepfun.com/v1",
|
19
|
+
base_url = "https://new.xjai.cc/v1",
|
20
|
+
api_key="sk-EmIYmk0Jiw4FWkHQ6SNnoPJpTqyCcu8P5e5nXolmS6eRKvNp"
|
19
21
|
)
|
20
22
|
|
21
23
|
try:
|
22
24
|
completion = client.chat.completions.create(
|
23
|
-
model="step-1-8k",
|
25
|
+
# model="step-1-8k",
|
26
|
+
model="o1-mini",
|
24
27
|
messages=[
|
25
|
-
{"role": "user", "content": "
|
28
|
+
{"role": "user", "content": "1+1"}
|
26
29
|
],
|
27
30
|
# top_p=0.7,
|
28
31
|
top_p=None,
|
29
32
|
temperature=None,
|
30
|
-
stream=
|
31
|
-
max_tokens=
|
33
|
+
stream=False,
|
34
|
+
max_tokens=1
|
32
35
|
)
|
33
36
|
except APIStatusError as e:
|
34
37
|
print(e.status_code)
|
examples/demo.py
CHANGED
@@ -41,6 +41,20 @@ def ff():
|
|
41
41
|
if __name__ == '__main__':
|
42
42
|
f()
|
43
43
|
ff()
|
44
|
-
print(inspect.getmembers(__file__, inspect.isfunction))
|
44
|
+
# print(inspect.getmembers(__file__, inspect.isfunction))
|
45
|
+
|
46
|
+
# lambda m: if m.startswith('gpt-3.5')
|
47
|
+
|
48
|
+
def lambda_handler(model_name):
|
49
|
+
if model_name.startswith('gpt-3.5'):
|
50
|
+
return 'gpt-4o-mini'
|
51
|
+
elif "gpt-4" in model_name and "mini" not in model_name:
|
52
|
+
return 'gpt-4o-2024-08-06'
|
53
|
+
else:
|
54
|
+
return model_name
|
55
|
+
|
56
|
+
|
57
|
+
lambda_handler('')
|
58
|
+
|
45
59
|
|
46
60
|
|
meutils/apis/hailuoai/videos.py
CHANGED
@@ -34,6 +34,12 @@ send_message = partial(
|
|
34
34
|
url=VIDEOS
|
35
35
|
)
|
36
36
|
|
37
|
+
MODEL_MAPPING = {
|
38
|
+
"T2V-01": "23000",
|
39
|
+
"I2V-01": "23001",
|
40
|
+
"I2V-01-live": "23011"
|
41
|
+
}
|
42
|
+
|
37
43
|
|
38
44
|
async def upload_for_oss(file: bytes):
|
39
45
|
token = await get_next_token_for_polling(FEISHU_URL_OSS, from_redis=True)
|
@@ -199,8 +205,10 @@ async def create_task(request: VideoRequest, token: Optional[str] = None, vip: O
|
|
199
205
|
payload = {
|
200
206
|
"desc": request.prompt,
|
201
207
|
"useOriginPrompt": request.prompt_optimizer,
|
202
|
-
"fileList": []
|
208
|
+
"fileList": [],
|
209
|
+
"modelID": "23000" # 文生视频
|
203
210
|
}
|
211
|
+
|
204
212
|
if request.first_frame_image:
|
205
213
|
file = await to_bytes(request.first_frame_image)
|
206
214
|
data = await upload(file, token=token, vip=vip)
|
@@ -210,6 +218,7 @@ async def create_task(request: VideoRequest, token: Optional[str] = None, vip: O
|
|
210
218
|
"type": "png"
|
211
219
|
}
|
212
220
|
payload["fileList"].append(file_data)
|
221
|
+
payload["modelID"] = MODEL_MAPPING.get(request.model, "23001")
|
213
222
|
|
214
223
|
# {"desc":"笑起来\n","useOriginPrompt":false,"fileList":[{"id":"307137529994682376","name":"prompt-02.jpeg","type":"jpeg"}]}
|
215
224
|
params = {
|
@@ -391,6 +400,7 @@ if __name__ == '__main__': # 304752356930580482
|
|
391
400
|
# token = None
|
392
401
|
token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MzUxMTcwNzcsInVzZXIiOnsiaWQiOiIzMTEyOTUzMTkzMjc1NzYwNjQiLCJuYW1lIjoiVUdIUiBKVkJYIiwiYXZhdGFyIjoiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jS3RuR2NjdGZsWV9fR2tiQ1MzdnhzSXdWSEFUX0ZmMFdyb3RvMnN4bFdWZW1KMm53PXM5Ni1jIiwiZGV2aWNlSUQiOiIzMTMzMTU5NTMxMDA0MTA4ODciLCJpc0Fub255bW91cyI6ZmFsc2V9fQ.KsRcfnAoPAR08ygzq-GIiujkFbZ2CgLeww7EP9qcb9Q"
|
393
402
|
request = VideoRequest(
|
403
|
+
model="I2V-01-live",
|
394
404
|
# prompt="smile", # 307145017365086216
|
395
405
|
prompt="动起来", # 307145017365086216
|
396
406
|
first_frame_image="https://oss.ffire.cc/files/kling_watermark.png" # 307173162217783304
|
meutils/apis/images/recraft.py
CHANGED
@@ -32,7 +32,7 @@ send_message = partial(
|
|
32
32
|
@alru_cache(ttl=10 * 60)
|
33
33
|
@retrying()
|
34
34
|
async def get_access_token(token: Optional[str] = None):
|
35
|
-
token = token or await get_next_token_for_polling(feishu_url=FEISHU_URL)
|
35
|
+
token = token or await get_next_token_for_polling(feishu_url=FEISHU_URL, check_token=check_token)
|
36
36
|
headers = {"cookie": token}
|
37
37
|
|
38
38
|
async with httpx.AsyncClient(base_url="https://www.recraft.ai", headers=headers, timeout=60) as client:
|
@@ -113,7 +113,7 @@ async def check_token(token, threshold: float = 1):
|
|
113
113
|
|
114
114
|
|
115
115
|
if __name__ == '__main__':
|
116
|
-
token =
|
116
|
+
token = None
|
117
117
|
# arun(get_access_token())
|
118
118
|
request = RecraftImageRequest(
|
119
119
|
prompt='一条猫'
|
@@ -122,5 +122,6 @@ if __name__ == '__main__':
|
|
122
122
|
|
123
123
|
# tokens = list(arun(aget_spreadsheet_values(feishu_url=FEISHU_URL, to_dataframe=True))[0]) | xfilter_
|
124
124
|
|
125
|
-
# tokens = "
|
125
|
+
# tokens = "__Host-next-auth.csrf-token=78920fc4c6bf5aef5c2063e3a4397b1e41074713e35020cf7049156e02d53355%7C2c8e6897101210b68ba31cec5c6232d8ab76a3e070cda7b82ad051680ab93fe0; _gcl_au=1.1.906962865.1730362257; _ga=GA1.1.435165527.1730362257; _fbp=fb.1.1730362257600.714008794112161913; AMP_MKTG_7268c9db0f=JTdCJTdE; _tt_enable_cookie=1; _pin_unauth=dWlkPU0yWmxPR1JsWkRJdE5qZGlZeTAwTWpNeUxXRmpNVEV0TlRrd1l6RTNZelEwTldZMw; __zlcmid=1OVn8OoYVNvKEWM; __stripe_mid=d21b2291-edb8-4cb1-8fac-05c6a9493ca8d85a3c; _ga_ME15C3DGRL=deleted; _ttp=412qSInHGw3jjdyNR6K4tBIYmNZ.tt.1; x-recraft-referral-code=3h7wfOgFGn; __Secure-next-auth.callback-url=https%3A%2F%2Fwww.recraft.ai%2Fprojects; _clck=uflztg%7C2%7Cfra%7C0%7C1765; __Secure-next-auth.session-token.0=eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIn0..OMh8sDyFkAVpghZU.iIKkMX3OhmwVyO8CjwCH-8YFQE-J8zE52SImLqu-imuV9q0jNKxBDr9Zo-n2I-TdREv4ffj0FFagny27pL7vjMyp04X2VD_Lh5rv9OMAObho9TsX8AzyLZOu_xbXR1ip98ZSv432BcDq5ppm5ava-ZVqm0Tp0hvJGSWD1yq4S7XjqiIAGeKZfR5Efm1k85fO6CHp-nNiIFVc6f2sw0Y_DcfdAzB4tMxKmJPoa4VHteErM2n41XUA9TvftKK5xVLHDWi0poRXkfB6Tol2xF83jUi2f2Il1BzQ-7q-MsRD-kkxJkEbv2Zcex_HFsaFWN9ohDB_wttuDxBZYCwdjflE-XyLwurtLO4XwbZTRKOR0Jgl6SdF-tBgsKSUrDUdmPGt9oiZv-MzMpTiOYRhTFjTap34rjUOpqlCoPXtiI-YExDCuKs2Dy57wRHF5GHldb3-vuaxKV5tVIq3Uj0Z2uq1SRn2hFhbvcuywlHcyF9HnGur9M6-JBxDaS0W3hrhtHgegIj_kbe6Zl1KBT5knx_IDcVu3KXhiZaLI4kfn_3EQI5zZN9Ay6412fqjP1atd0BpeS5joJl_7O0ni8-0k1I6bRxhnD3uHD5dlQxBJXXHjyisoXTckUXNUKnRbc0x3pL0ObMP7VJ4-mov1KCc_YB3Msh0yfcIa_CXRTJCWH5Q-jkO0pJCVtWjfRegN8G-UpT9k3IDfu6z59O5qFYHM0SjFeee4yJNdAHJRpbuxxNBSBS8aIOey-UN-I2UDme_iGoQnkF9nvOI1zrVHtIhhazxc5YLOyDnVuyhI9ghm2PfYYIxp8sM-Y9VNPjuAKJvg6_q1tSVyiej-qHjV3um1n44AaChgrJ0JXU0gxQV_--xL2n28Tm4sOWb5VUGYAmI32Mvo5bC-kBatusIlkFvnfiQkZT-9fNPAfDiarG-W6T9VsLKhWn2UVBqSJtJgj56uCaw1QilqaKUSYGyUkStWEn0YXsye9vxKSDjm4LJTJdGlkKW0v4qElfwzzV0d9ErjohWN915IzVY-hTRSo8tgt_QHafO3hsyiTpGqalDuT_-BMBShRLozMvGhlQ9jA0QsDueosaNt9OWyk7ZliVSuyt17lI4ApFnaTf3MBjcrnUmk7aejOAQzuy5atNo-HmxxclEYsMuMblcp9kkAsrtx87RHrPYe7DmOorGqJRiKk27S2Nog5ZlBc8RAkq4u4eub9ezwMhFUAYKsv5tnaS6NiggXVbhNiN33uwk2jI7R9ZmJtCnw-b0Nnk2ln4_9CCSa8Ds9VMkiyS6S0QLaPlkmaBzgCYPM7sxTzyuw9BryOlo3akvYJHWegVvxWfN3ap8DdqgXE87zFPE3K3PmJodcv2lVz9FfwUtI81bwRkVpt4VNY7yqGNu33637cufapQsmZJilp5GfHv1FY1lXfrm0LQ19SUjgBHobZ6SrQPUcauypDNFOOAAt9MeVVScsY_5xcyRlPglsA31piiYnDcsBFwOIf-h5GxxYtqf8pDmvUMmXf1zn-97DLpa0D83rKFFA6BralkFCMq0gbBzH4CIeYW35-q1P9Ghq4FIxVxgreueSa5KP96BtFuzIuGEccN478JnsO-DkJWRzTToYTiNUieDjjuhQXFdOFooAHvTrEyvt0HM-ZchJcto4F6xKM3tuJAk2Ng9HCYiIy7rlYzW-gL0v07gI_hwKQ-8dOungh3ggfjooGSayAbsnLeRpAm3P9sTgKrnPp3fyBzzLDkpPj4wBxADpg4sYDyJk3hTa0ec9Kg4ssReU5K77vKg4-YkDAvKvYeQbX69FjXcHf1_XtBQVh2T-teb9G-0kAy6kLVarSJLjp6Mw_Uj3eYV9gbgmNiyBrCcHmUATA6FJkuxVH5W6YVChgEZgIYS1K-PZj-3uchfa6VoSCab1VnreJ6f5aYeY-4ZI5-vDwGJDpd2XkVIrf8zWPFqUkZRpyJHYRwXAGf8MCBFTRXBqzNgPnVjkh_iP9tbmb4_pbgBaTz3Izubx9lWUmso-y0_SPAn1M6x4V2zNHZR6ZVJKAxuNCQrqfIk0Q6-zFHdAHJFPrJSVjKMIDadIpxqQ5zkMeR0O6T204oVwfrtsMnuiAo3dk4ve5qa-MlaFyc0SpfxQkhzCTA3YVXKWo9G5Jp8OYBRmZwDhg4MTvgBeri-hyMsiS025J9vreey3BSyJun7IQJhzDZ6-PVO35qpVB65CNfNSDCO8rI_kAD8xKf893nHBovBumEU_FGC4xz6Yen-7W5TX4yR_2U2CBYX5Iplw5UXHgjXymPbfHjETIh_dyKnuN9fonl8fgi2xk5DDc-oyDaE1qq4g3oBMmXeFA8XpRvcOyXeDyYs5j-KiH0yMlel0xbFluk_UsuiElluUKx5IhnAf04-TX5SCmwubvssyTjs4bWeTw3rjwpvDV9EpLDgPt_WJnHgbbT7e9zRLqQWYnCGro8tnBVsLej-j73L4KdWJQeM8b-Q95l5TfhPrkmbUI-6qyV5tRawBO3ie-c836Bz7YUY1CnopG4qzUfZasJZ8ltrAr7qtwI1c-IJ6CAwDhT_SjhQwyMVUQb7OhvCryf5trtl29kVwsRCeuw8K9uVWmrAKIk5nf3IczDeKNpR0EEnpPMfblkEAaeCSz1KX2fSiURQ2GDUUAOICnhXEhJ9-NcNTHj4ssjU_8RAltnHxTiecwhsLX1qmxi0mrjf-32el6TgQ95FsNDRITKaZ1807lFiQnj3Um9Bqb8ZPxzBBEqJh0WKoD4xT1dqLc1f4HdebodGJva35Nw1Qc9ssNihz2Tziq56J1Zx8vOtz8ibmSJ6Gm3gzWD09h2CQN9Vxwx8kxmF_LECGwgkUsI77029-bayN_t2Mv_s3jeEOAQl-BBNMGHbPPPkcZi5siduzjpphVOAX8wOiqau0MqECstDqh8nemuSvhlomElxmU9mHiRTnUqlAfbO_P1581AUfyOh_InN3ydLnkgrziI58OEWIbHKXXEhRAcCGQrX4nynwOTymiWuzIR0OqhIyi3cLfz3e51uEVmBVVSZfbZuDySiY4yOzA2cMExG1te_NjjhEsvBZ8m3Fjf-PEwBJhrXDQgXlXFp80ERZQ6xVNzt7dVd0GzsQT1-03JaLR6S9tJYXO4QOf9sgXp-R4nvP7mZDuhP-kXbI0rzAmnuPA-eR4joGugTgbH0RWHnZ6z2a8k2kBD_VdjYdbxSZ1vRXtSIpNohuaun4rzXNbRz9kwNNK_Fz-q84fAJ_J1Yb1XHBMrJYQxwVdhRqvSh_jW5zroDFjTFNKwFruMaGa4KESccnTKy8mUH7Cd6S2OCjzDrcl4mQcXBu90FKOH-pYhobFNefJq6LooejPhdN_XBdfm2kQrcTRBYbMk4vekzZxs-wPrlgZkQYSAxKj4i_XTiqztmroaNRYdfFoq4hoArBBsISxRagLukwyL2yvSKnHiqMo9T7whwYF_tXQFGk1T8dQ_9ospLy9EMBMP7tdqw7UX5S051rqADt9q2Rozx7hRuAMHWeAyfRCFgMx0lR3B2txRxxRVWrBNJAqulmG3hJk9px8LpWmlm9CorOkN7cZT6CJKIJdSClkj0VDFiDUjWsZWJLiN_DSRaqcCpgwdkXJKZ4zpUKjH6xQSKzhvbmom9ZkFkNPWO35Vf7e_rLKLCyltHmsTDlgRylqPMkigL6Rds9S07c7fCwcr4d5xWvlV78iKjmg_c4RdxrmGsqeQZl4EmbnmwZfQj3qllIEn7MJ7N5_jE_BO1huH522Ds6hTRFTn_RmA4FtIbqyuvbK1v5MlCoToKiYgBwPI79PzQSEjM4LMMbeUiJx0E5C2Wd3bpTnbc-mfY8uIpFfxnK2_0Mk7rSbm8rqtomgPyqcmAT2mwQS-; __Secure-next-auth.session-token.1=DfJBMjFpUwPYqCIaGMxrX_WtlNau_0B5y61DkoPxCwi6_MziMSz6KUgDB9o4d6xXg5mn-UBR0gXWjPFrIXzP0kdNvCSF9pSGCyiOLmdtKfi3BscGIK70dpfUfKwY972YF6TTb6tXOdLkf3JFyN0cjLd5pcBfSKFAKRt5shH4iNMu6ZwgwZd0guK8IcIddc9KTGxTZlHc6dJ1Rc-QHfBm_DPgYUvf9yKjGSguPuYFqnHwA2T91Ughu9VT2lAuCKjvEX13KOsHB-Vr1i7Ts3TrQtIoS9pMM_NnhdILOp3Od5NGfkJGqAbsfFLYU193V3cK4cib9QisQmKm4hxvlMflKA1IQNlz_isB1vi2JN04AQg.z8GHyaN7ezsgo22MdsiVvQ; _uetsid=84c52090adf211efb65c0dc3b78a1976; _uetvid=a8a766f0975f11ef9b7921e48a0cd258; _ga_ME15C3DGRL=GS1.1.1732844258.46.1.1732845589.0.0.0; _clsk=c52eh1%7C1732845591268%7C3%7C0%7Ce.clarity.ms%2Fcollect; AMP_7268c9db0f=JTdCJTIyZGV2aWNlSWQlMjIlM0ElMjI2OTE1YzI1My1jMTJjLTQ5ODYtYjM3Ni0xMTI3Y2ZmMTFlMjglMjIlMkMlMjJ1c2VySWQlMjIlM0ElMjJjNDdkY2ZiYi0yOWE5LTQ1Y2EtYWRiZS1hM2ZhYWZiODhkNzQlMjIlMkMlMjJzZXNzaW9uSWQlMjIlM0ExNzMyODQ0MjU3NzEzJTJDJTIyb3B0T3V0JTIyJTNBZmFsc2UlMkMlMjJsYXN0RXZlbnRUaW1lJTIyJTNBMTczMjg0NTY0OTcyNSUyQyUyMmxhc3RFdmVudElkJTIyJTNBOTA1JTJDJTIycGFnZUNvdW50ZXIlMjIlM0E0JTdE"
|
126
|
+
#
|
126
127
|
# arun(check_token(tokens))
|
@@ -0,0 +1,126 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
# @Project : AI. @by PyCharm
|
4
|
+
# @File : virtual_try_on
|
5
|
+
# @Time : 2024/11/25 09:48
|
6
|
+
# @Author : betterme
|
7
|
+
# @WeChat : meutils
|
8
|
+
# @Software : PyCharm
|
9
|
+
# @Description :
|
10
|
+
"""
|
11
|
+
dressInput
|
12
|
+
upperInput
|
13
|
+
lowerInput
|
14
|
+
{
|
15
|
+
"type": "mmu_img2img_aitryon",
|
16
|
+
"arguments": [
|
17
|
+
{
|
18
|
+
"name": "personType",
|
19
|
+
"value": "WOMAN"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"name": "__modelImageType",
|
23
|
+
"value": "OFFICIAL_MODEL_女模特4.png"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"name": "imageCount",
|
27
|
+
"value": "2"
|
28
|
+
},
|
29
|
+
{
|
30
|
+
"name": "biz",
|
31
|
+
"value": "klingai"
|
32
|
+
}
|
33
|
+
],
|
34
|
+
"inputs": [
|
35
|
+
{
|
36
|
+
"name": "lowerInput",
|
37
|
+
"inputType": "URL",
|
38
|
+
"url": "https://h2.inkwai.com/bs2/upload-ylab-stunt/kling/tryon/model/v3/下装4.png"
|
39
|
+
},
|
40
|
+
{
|
41
|
+
"name": "humanImage",
|
42
|
+
"inputType": "URL",
|
43
|
+
"url": "https://p2.a.kwimgs.com/bs2/upload-ylab-stunt/kling/tryon/model/v3/女模特4.png"
|
44
|
+
}
|
45
|
+
]
|
46
|
+
}
|
47
|
+
|
48
|
+
"""
|
49
|
+
import jwt
|
50
|
+
|
51
|
+
from meutils.pipe import *
|
52
|
+
from meutils.schemas.task_types import TaskResponse ############# 根据这个重构
|
53
|
+
from meutils.schemas.kling_types import API_BASE_URL, TryOnRequest, TaskResponse
|
54
|
+
from meutils.config_utils.lark_utils import get_next_token_for_polling
|
55
|
+
from meutils.decorators.retry import retrying
|
56
|
+
|
57
|
+
FEISHU_URL = "https://xchatllm.feishu.cn/sheets/GYCHsvI4qhnDPNtI4VPcdw2knEd?sheet=cjTepf"
|
58
|
+
|
59
|
+
|
60
|
+
def encode_jwt_token(token):
|
61
|
+
ak, sk = token.split('|')
|
62
|
+
headers = {
|
63
|
+
"alg": "HS256",
|
64
|
+
"typ": "JWT"
|
65
|
+
}
|
66
|
+
payload = {
|
67
|
+
"iss": ak,
|
68
|
+
"exp": int(time.time()) + 24 * 3600, # 有效时间,此处示例代表当前时间+1800s(30min)
|
69
|
+
"nbf": int(time.time()) - 5 # 开始生效的时间,此处示例代表当前时间-5秒
|
70
|
+
}
|
71
|
+
token = jwt.encode(payload, sk, headers=headers)
|
72
|
+
logger.debug(token)
|
73
|
+
return token
|
74
|
+
|
75
|
+
|
76
|
+
###################################################################### 重构
|
77
|
+
|
78
|
+
######################################################################
|
79
|
+
@alru_cache(ttl=3600)
|
80
|
+
@retrying(title=__name__)
|
81
|
+
async def create_task(request: TryOnRequest, token: Optional[str] = None): ###### 所有的 TaskResponse标准化
|
82
|
+
token = token or await get_next_token_for_polling(FEISHU_URL)
|
83
|
+
token = encode_jwt_token(token)
|
84
|
+
|
85
|
+
headers = {
|
86
|
+
"Authorization": f"Bearer {token}"
|
87
|
+
}
|
88
|
+
payload = request.model_dump()
|
89
|
+
async with httpx.AsyncClient(base_url=API_BASE_URL, headers=headers, timeout=60) as client:
|
90
|
+
response = await client.post("/v1/images/kolors-virtual-try-on", json=payload)
|
91
|
+
response.raise_for_status()
|
92
|
+
data = response.json()
|
93
|
+
logger.debug(bjson(data))
|
94
|
+
|
95
|
+
return TaskResponse(**data, system_fingerprint=token)
|
96
|
+
|
97
|
+
|
98
|
+
@retrying(title=__name__) # 触发重试
|
99
|
+
async def get_task(task_id, token):
|
100
|
+
headers = {
|
101
|
+
"Authorization": f"Bearer {token}"
|
102
|
+
}
|
103
|
+
async with httpx.AsyncClient(base_url=API_BASE_URL, headers=headers, timeout=60) as client:
|
104
|
+
response = await client.get(f"/v1/images/kolors-virtual-try-on/{task_id}")
|
105
|
+
response.raise_for_status()
|
106
|
+
data = response.json()
|
107
|
+
return TaskResponse(**data)
|
108
|
+
|
109
|
+
|
110
|
+
if __name__ == '__main__':
|
111
|
+
request = TryOnRequest()
|
112
|
+
# arun(create_task(request))
|
113
|
+
# {
|
114
|
+
# "code": 0,
|
115
|
+
# "message": "SUCCEED",
|
116
|
+
# "request_id": "CjMVomdAMUcAAAAAAHcmvg",
|
117
|
+
# "data": {
|
118
|
+
# "task_id": "CjMVomdAMUcAAAAAAHcmvg",
|
119
|
+
# "task_status": "submitted",
|
120
|
+
# "created_at": 1732500869112,
|
121
|
+
# "updated_at": 1732500869112
|
122
|
+
# }
|
123
|
+
# }
|
124
|
+
|
125
|
+
token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJkMmU1NmZkY2ZiODY0MmZmYWEyMjZlZWIxNzY4MzMyMiIsImV4cCI6MTczMzE4OTI4OSwibmJmIjoxNzMzMTAyODg0fQ.YjB792REbuFaUoyUXvd5bpI76_0PBWawDHDjPHOBA5Q'
|
126
|
+
arun(get_task("CjiL9mdJhswAAAAAAG2C6g", token))
|