MeUtils 2025.2.6.20.41.23__py3-none-any.whl → 2025.2.11.18.25.28__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.
Files changed (31) hide show
  1. {MeUtils-2025.2.6.20.41.23.dist-info → MeUtils-2025.2.11.18.25.28.dist-info}/METADATA +27 -27
  2. {MeUtils-2025.2.6.20.41.23.dist-info → MeUtils-2025.2.11.18.25.28.dist-info}/RECORD +31 -26
  3. examples/_openaisdk/openai_chatfire.py +18 -8
  4. examples/_openaisdk/openai_modelscope.py +1 -1
  5. examples/_openaisdk/openai_v.py +38 -0
  6. examples/_openaisdk/openai_x.py +22 -1
  7. examples/_openaisdk/testDeepseek.py +67 -0
  8. meutils/apis/images/edits.py +6 -5
  9. meutils/apis/jimeng/images.py +6 -5
  10. meutils/apis/search/metaso.py +6 -19
  11. meutils/caches/acache.py +10 -10
  12. meutils/caches/c.py +29 -0
  13. meutils/caches/redis_.py +26 -0
  14. meutils/caches/redis_cache.py +0 -2
  15. meutils/caches/redis_mulit.py +30 -0
  16. meutils/data/VERSION +1 -1
  17. meutils/data/oneapi/NOTICE.md +11 -1
  18. meutils/llm/clients.py +19 -7
  19. meutils/llm/completions/agents/search.py +11 -7
  20. meutils/llm/completions/reasoner.py +14 -8
  21. meutils/llm/openai_utils/common.py +2 -2
  22. meutils/oss/minio_oss.py +2 -0
  23. meutils/schemas/image_types.py +1 -1
  24. meutils/schemas/metaso_types.py +16 -5
  25. meutils/schemas/oneapi/common.py +98 -25
  26. meutils/schemas/openai_types.py +19 -15
  27. meutils/serving/fastapi/exceptions/http_error.py +2 -2
  28. {MeUtils-2025.2.6.20.41.23.dist-info → MeUtils-2025.2.11.18.25.28.dist-info}/LICENSE +0 -0
  29. {MeUtils-2025.2.6.20.41.23.dist-info → MeUtils-2025.2.11.18.25.28.dist-info}/WHEEL +0 -0
  30. {MeUtils-2025.2.6.20.41.23.dist-info → MeUtils-2025.2.11.18.25.28.dist-info}/entry_points.txt +0 -0
  31. {MeUtils-2025.2.6.20.41.23.dist-info → MeUtils-2025.2.11.18.25.28.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: MeUtils
3
- Version: 2025.2.6.20.41.23
3
+ Version: 2025.2.11.18.25.28
4
4
  Summary: description
5
5
  Home-page: https://github.com/yuanjie-ai/MeUtils
6
6
  Author: yuanjie
@@ -64,41 +64,41 @@ Requires-Dist: sse-starlette ; extra == 'ai'
64
64
  Requires-Dist: openai ; extra == 'ai'
65
65
  Requires-Dist: langchain ; extra == 'ai'
66
66
  Provides-Extra: all
67
- Requires-Dist: seaborn ; extra == 'all'
68
- Requires-Dist: pretty-errors ; extra == 'all'
67
+ Requires-Dist: geopy ; extra == 'all'
69
68
  Requires-Dist: jinja2 ; extra == 'all'
69
+ Requires-Dist: cachetools ; extra == 'all'
70
+ Requires-Dist: thefuck ; extra == 'all'
71
+ Requires-Dist: seaborn ; extra == 'all'
70
72
  Requires-Dist: thriftpy2 ; extra == 'all'
71
- Requires-Dist: missingno ; extra == 'all'
72
- Requires-Dist: filetype ; extra == 'all'
73
- Requires-Dist: iteration-utilities ; extra == 'all'
73
+ Requires-Dist: pyarrow ; extra == 'all'
74
+ Requires-Dist: pymupd ; extra == 'all'
75
+ Requires-Dist: pretty-errors ; extra == 'all'
76
+ Requires-Dist: pymilvus ; extra == 'all'
77
+ Requires-Dist: pandas-profiling[notebook] ; extra == 'all'
74
78
  Requires-Dist: openai ; extra == 'all'
75
- Requires-Dist: sqlalchemy ; extra == 'all'
76
- Requires-Dist: thefuck ; extra == 'all'
77
- Requires-Dist: cachetools ; extra == 'all'
79
+ Requires-Dist: uvicorn ; extra == 'all'
80
+ Requires-Dist: langchain ; extra == 'all'
81
+ Requires-Dist: fastapi[all] ; extra == 'all'
82
+ Requires-Dist: jieba ; extra == 'all'
83
+ Requires-Dist: asyncmy ; extra == 'all'
78
84
  Requires-Dist: schedule ; extra == 'all'
79
- Requires-Dist: pyarrow ; extra == 'all'
80
- Requires-Dist: polars ; extra == 'all'
85
+ Requires-Dist: faiss-cpu ; extra == 'all'
86
+ Requires-Dist: pymongo ; extra == 'all'
87
+ Requires-Dist: filetype ; extra == 'all'
81
88
  Requires-Dist: fastapi ; extra == 'all'
82
- Requires-Dist: pymysql ; extra == 'all'
83
- Requires-Dist: sse-starlette ; extra == 'all'
84
- Requires-Dist: uvicorn ; extra == 'all'
85
- Requires-Dist: pandas-profiling[notebook] ; extra == 'all'
86
89
  Requires-Dist: gunicorn ; extra == 'all'
87
- Requires-Dist: geopy ; extra == 'all'
88
- Requires-Dist: faiss-cpu ; extra == 'all'
89
- Requires-Dist: fastapi[all] ; extra == 'all'
90
- Requires-Dist: streamlit ; extra == 'all'
90
+ Requires-Dist: polars ; extra == 'all'
91
+ Requires-Dist: reportlab ; extra == 'all'
91
92
  Requires-Dist: redis-py-cluster ; extra == 'all'
92
- Requires-Dist: pymilvus ; extra == 'all'
93
- Requires-Dist: asyncmy ; extra == 'all'
94
- Requires-Dist: pymupd ; extra == 'all'
93
+ Requires-Dist: missingno ; extra == 'all'
94
+ Requires-Dist: sqlalchemy ; extra == 'all'
95
95
  Requires-Dist: dataframe-image ; extra == 'all'
96
- Requires-Dist: jieba ; extra == 'all'
97
- Requires-Dist: langchain ; extra == 'all'
98
- Requires-Dist: pandas-summary ; extra == 'all'
96
+ Requires-Dist: iteration-utilities ; extra == 'all'
99
97
  Requires-Dist: simplejson ; extra == 'all'
100
- Requires-Dist: reportlab ; extra == 'all'
101
- Requires-Dist: pymongo ; extra == 'all'
98
+ Requires-Dist: streamlit ; extra == 'all'
99
+ Requires-Dist: pandas-summary ; extra == 'all'
100
+ Requires-Dist: sse-starlette ; extra == 'all'
101
+ Requires-Dist: pymysql ; extra == 'all'
102
102
  Provides-Extra: ann
103
103
  Requires-Dist: pymilvus ; extra == 'ann'
104
104
  Requires-Dist: faiss-cpu ; extra == 'ann'
@@ -94,7 +94,7 @@ examples/_openaisdk/openai_audio.py,sha256=ZyYslH9RfdJBpNUpjKn_5x0d94_H291Qt31u_
94
94
  examples/_openaisdk/openai_baichuan.py,sha256=-xhHovkFmWOTX25CJjIon0my-ocmwfAZJu1C0eS80Xs,1614
95
95
  examples/_openaisdk/openai_baidu.py,sha256=qnrxP66lY7Qf2jEbFEHrt0FrR5_Aji1AgwSI_46IabY,1969
96
96
  examples/_openaisdk/openai_cache.py,sha256=89GbJ1QlqQbVxlUeuFgEbwDYHOkum7BK0zB-CqmDAZU,726
97
- examples/_openaisdk/openai_chatfire.py,sha256=LlJnt5_Z6NgOjbpneO3wNfRfFuIGRTUPCZ_BbexuHc0,18528
97
+ examples/_openaisdk/openai_chatfire.py,sha256=zVkaIKifO71IkBW0dIkNJrobyKrSCfioeCW766kiWNU,18799
98
98
  examples/_openaisdk/openai_chatfire_all.py,sha256=DaiI1NfDeK655QvXyczkgXK9Awxp7NBe71LHA7trxGE,4831
99
99
  examples/_openaisdk/openai_dashscope.py,sha256=m9SjQpaNgYwr4Qd3XusWbJBGp5ZTtpuB40QopejxPKQ,1029
100
100
  examples/_openaisdk/openai_deepinfra.py,sha256=innI4BT15dZEqheqDHG4lHDczY1QC7t2Whcavi1pcz0,1195
@@ -110,7 +110,7 @@ examples/_openaisdk/openai_images.py,sha256=mJQGbue_ka9kjsNx1TRfIRab9HgC0h5i0O_6
110
110
  examples/_openaisdk/openai_json.py,sha256=M4tq_IkzYbmtgbFilGQHmRdJhH0OltiwGk7cK7uc-sQ,1850
111
111
  examples/_openaisdk/openai_lingyi.py,sha256=l2GcNxhwfLv7MfMF-cdRWGGvX-dRaZyb8IRlXLPACMw,1834
112
112
  examples/_openaisdk/openai_luchentech.py,sha256=Jy0JxpL1u3pXcmslViPvrbwSysVBV-Dz8wSKqv6QtxY,1960
113
- examples/_openaisdk/openai_modelscope.py,sha256=eb-oj7O6VQiCBbcATB3iUS0iRRMJcUDqRFt51-3VJU0,1444
113
+ examples/_openaisdk/openai_modelscope.py,sha256=C7QG1KCK7-F0Hm-MlvMJ5FQoJg9-LGGagXUJf_Nkhng,1446
114
114
  examples/_openaisdk/openai_moderations.py,sha256=WoIyXDEn4dfVPwqFc54HSz0-7wLPu7pd4ZisZcyLOWM,1369
115
115
  examples/_openaisdk/openai_moon.py,sha256=Y7RrB6SUi9taQOlA50nfGTpQa9ON6XmPmrxtL-hSL8M,1753
116
116
  examples/_openaisdk/openai_oi.py,sha256=8KJ62QgpAZdGWAoYN6AC9M9TrD8JQf7ZO_NAgXZywTo,1414
@@ -123,12 +123,14 @@ examples/_openaisdk/openai_step.py,sha256=rwXrGRs5CHhWpNl9oeIHltErp1Or_B3PVKNAoM
123
123
  examples/_openaisdk/openai_test.py,sha256=gjPveJYkI_MqCePoVZ6kNlEEChRgedE2hzMkN7gZuqI,1909
124
124
  examples/_openaisdk/openai_together.py,sha256=o9FQKDdLwx8L0zMxrceIakymT2GqFfZ2v4UjVaLyB8M,1591
125
125
  examples/_openaisdk/openai_tune.py,sha256=D8n3mnlvVpDB_P11sErlibSyYtoFT5aKPUDQhtIANWE,1237
126
- examples/_openaisdk/openai_x.py,sha256=MOxC8rHcoDhV7_d4FcviVISR-M34QymXQ9xi2t3ockM,339
126
+ examples/_openaisdk/openai_v.py,sha256=bVfMM86VpRy85patn1eDF9Y-Ojxd2w4GAx3NIUPVzC0,999
127
+ examples/_openaisdk/openai_x.py,sha256=Ny2qe94r0dc_uh_M-EoY1q6DG7XUVq5RxGIlRMuVCXA,779
127
128
  examples/_openaisdk/openai_zhipu.py,sha256=_1OO6lYKgXqVmZVrD5tTPwfaMM0zcF_VNgl3xOP1hyU,2316
128
129
  examples/_openaisdk/ppu.py,sha256=jPBufoYt2ZrqNKjgbHr49YZI5vBM-32eBYbhbYduhnY,602
129
130
  examples/_openaisdk/rag.py,sha256=NwNHhfi5FZ2XKCmsScjmM5cxCSfJuqx2jV-69ZXh244,1372
130
131
  examples/_openaisdk/rag_.py,sha256=rNTCO83JK6zqQAiY0vlHZRN5DQNT9_nCYtjeh8lTijU,121217
131
132
  examples/_openaisdk/test.py,sha256=Y_dP8rK-LFIBc_fy00ug-2XkilK0G_TlFDa3iuUK-iM,3444
133
+ examples/_openaisdk/testDeepseek.py,sha256=TH_Lu0-oi2uqlEtXJ-VbPjdm1XkkF3vEFH3TCcP2ido,1748
132
134
  examples/_openaisdk/x.py,sha256=IdhHsmyd-uZx5UohfWa_g467kZeR1Pkec42z3bW-3Iw,4752
133
135
  examples/_openaisdk/xx.py,sha256=DvU98YbhmFJZ3xWqK4NOAafNqOJLu2ehQycCRLEXVUg,645
134
136
  examples/_openaisdk/zhipu_files.py,sha256=HLvlM9CDcmNER5w-MBMLQPZVPJjR2UHRXYA3ru2cT2Q,1057
@@ -371,7 +373,7 @@ meutils/apis/hunyuan/image_tools.py,sha256=jJ652uKakJaFjqBN8oy---GEI_u5ttAob55rm
371
373
  meutils/apis/images/__init__.py,sha256=hs7HUJZvw_3DAtoapPnbZsEb4ng1p0a6fJGFFWwUcUk,272
372
374
  meutils/apis/images/deepinfra.py,sha256=lMqfU0LIXEzHiAS31dCcoTnPIE6tpoDJhq61H0TVJPg,3219
373
375
  meutils/apis/images/demo.py,sha256=Cjk-EKMKbp44czykW_44qR0TzElX8nNCALqXBBw5sJA,4405
374
- meutils/apis/images/edits.py,sha256=47s_oggNT3Vp1TYr4hwuGE08hOkNn47Nmv9wyDsMujQ,9727
376
+ meutils/apis/images/edits.py,sha256=sZ_Foem2gubgdJdLe1uSMhl6sYnNICXLGL70aYMX_Mo,9773
375
377
  meutils/apis/images/eidt.py,sha256=42dCdGPSLvr0zh8OZtwQxi-5B6Ln_o_FsL1gt2Ura_k,750
376
378
  meutils/apis/images/recraft.py,sha256=ZdlDPFTmQBma9ToeBN44mNPISOP0-hXsmSgM6DyP1Ko,59625
377
379
  meutils/apis/images/flux/__init__.py,sha256=W_PZabQm6EmtJYmzEiEpL_WCXTAW0AiJ-t_n5UTrE8c,271
@@ -391,7 +393,7 @@ meutils/apis/jimeng/common.py,sha256=o6qMyic9jbgD_tmOcGDPn9tcOctMyLP9Y3XW5rIwsZs
391
393
  meutils/apis/jimeng/doubao.py,sha256=5OdnBpmZQOCLIb6lnN8YrL7J7E0XF47q0UF-z6asSuI,4295
392
394
  meutils/apis/jimeng/doubao_utils.py,sha256=XCHnvwfCOtJmPQuzDOCfKDMP_Pcqh-Y4w2h5f7Y2gzM,5999
393
395
  meutils/apis/jimeng/files.py,sha256=afwWvN6gSRjBGVMjV3CMpMwnuJ1cAVYBiFc6wamc570,9547
394
- meutils/apis/jimeng/images.py,sha256=5y0wdiLxAAeC-1E2-REiVQrmqHRq_6de4XhzvleNIwY,11448
396
+ meutils/apis/jimeng/images.py,sha256=QoFTQj-M_I0K1TnBuxT41Nb0stn6u4kBVrWnfINJEbs,11501
395
397
  meutils/apis/jimeng/videos.py,sha256=x-PDOYNBN-yTmNvMbyDbwm_E2LXZ6A4hcVzEahV_Hvc,10813
396
398
  meutils/apis/kling/__init__.py,sha256=pKz40SEjui1dhHBD-icyNTJOYhzLvxLxJCwszuH4vio,271
397
399
  meutils/apis/kling/api.py,sha256=AuVQ9URmrbTlz7dEv_kIyhA9fMTZPL9rF3Td6KxTIMA,2183
@@ -433,7 +435,7 @@ meutils/apis/runwayml/__init__.py,sha256=90oL_3o8YkFPYm4R4PCxd3m9hgnHpOCLr0u-X4B
433
435
  meutils/apis/runwayml/gen.py,sha256=JrfegC4pI2r7DprDLGMi5px0K1C1pSgopnz0lcJU5RY,5194
434
436
  meutils/apis/search/__init__.py,sha256=1lg0ogEBgtwTi3XvkL5hMfSd14A6YNLO7M9itEJmaYI,244
435
437
  meutils/apis/search/baichuan.py,sha256=OUD0TH7KzqSxtuRJgjJPWO8XRQIoUwW5RX7lWMo7BXw,268
436
- meutils/apis/search/metaso.py,sha256=V7gOUM9_8aNwxVaPhM0GSTFHRMc853nZRdVN_26W40A,9871
438
+ meutils/apis/search/metaso.py,sha256=B1i81F5meBLd6ZWDBZb8l0GT1THKL9Qm7hKwmHYTNMA,9520
437
439
  meutils/apis/search/metaso_.py,sha256=PqMX3FLYbbAcc9qpqrPZ58LuSF29h0asZO1XMYmXbes,3144
438
440
  meutils/apis/search/n.py,sha256=o7jzNoR5v_nAjgdUvWgebL3nvvo3ECpq2KCj9YhUNr4,4337
439
441
  meutils/apis/search/searxng.py,sha256=RBPeq-AYj5D42gROrZNg0SxIWwWEW0oqrbQ3wEDH9k8,951
@@ -490,9 +492,12 @@ meutils/async_utils/background.py,sha256=dl6UaMIFBZDB1uxSZzGFJdSnpt3Xo0flK7gwsok
490
492
  meutils/async_utils/common.py,sha256=bfZkUlQz21WHAh2W7SDxFtrvUYNBnRfVxIUgMmT7o1Q,5212
491
493
  meutils/async_utils/test.py,sha256=lkZdgSzzgVg8hYVcaBNEJ3KBvFTEfjbXZVvtknQZsRQ,1155
492
494
  meutils/caches/__init__.py,sha256=2JSElkhHh0vhUCvpBhTEsglw7WdkYj2HsAQutbqiBUM,242
493
- meutils/caches/acache.py,sha256=iZLzxXSgPSYc1BNTJvaH258UqTmntyY3RhXrEgEpfGg,1342
495
+ meutils/caches/acache.py,sha256=sNB-W0S6yYINGJFyZ09k_bZrXqkH9e3WxnBq-lPwHtw,1329
496
+ meutils/caches/c.py,sha256=9hm9x_xMRGtqG51SirOS3Pzi2L9zxU_nov4muE5iJ48,699
494
497
  meutils/caches/demo.py,sha256=tY3mJUe4D2gbBVMd8gny40nK2BwqBGsaWDjDJsL7ObE,758
495
- meutils/caches/redis_cache.py,sha256=-P90KABpQ6Hq8eSRc8tkOvw1dr_qiOfUQndCvf0InZc,1463
498
+ meutils/caches/redis_.py,sha256=5Oxq_XT5BJ7C9emzsXWDkiY4p8dVG7XFn0WxB14-z5E,600
499
+ meutils/caches/redis_cache.py,sha256=oXGk_CZhjp9P_z1TG_zhmma4iGepK-iIWY_ZYQWSkFg,1395
500
+ meutils/caches/redis_mulit.py,sha256=WQrNmH98S0D9mG5eixqPtrYvOPi62T4w2ZvNETB4eU4,597
496
501
  meutils/clis/__init__.py,sha256=2Fhn43X8kFP6FpAnnAMiPcdnjUwQaukiIr2uGB6mGAY,279
497
502
  meutils/clis/browser.py,sha256=eMQ-7LlFJN_Sqs0DMnCVulfdUv9aGhHm5drCViQm4CY,4511
498
503
  meutils/clis/check_api.py,sha256=WKsLupPlM0PI6SzfVOwoqoYNEmOj_Jb-bsRDYA_SXsE,2367
@@ -518,14 +523,14 @@ meutils/config_utils/lark_utils/demo.py,sha256=3g0Fs7oLaeW75T60gYWMLgyNg1OnfOjfH
518
523
  meutils/config_utils/lark_utils/x.py,sha256=MlMQGhehP9xMEgetxVCX68XFaosfKoW1JA5cZ3JqN2w,1857
519
524
  meutils/crawlers/__init__.py,sha256=TBU4xA-IOsHV-0yIkW7YXxn_QT7TT8NncqxO7IykEfs,271
520
525
  meutils/data/SimHei.ttf,sha256=-XEnekS5yHP_URkT4XBI2w22ylV-KxudhkeIYFbrILA,10062565
521
- meutils/data/VERSION,sha256=gMmj5o_6WTKGJH8XgEaOUaTkPis38nxBlANaFkOYhkI,19
526
+ meutils/data/VERSION,sha256=hbCpCzheOblIrhWhXLNOBq_WICS_vTTVe-CBOj9xWak,19
522
527
  meutils/data/_FLAG,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
523
528
  meutils/data/_SUCCESS,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
524
529
  meutils/data/__init__.py,sha256=Hfwkkxs4zHqKhxht0YrhS566a9P5axtmgNvM5wF8ceQ,243
525
530
  meutils/data/coordinate.py,sha256=VbFtcdho0XG4j-rZD0DgqcIf2_LR2LlbLtfhLXbxiDY,600
526
531
  meutils/data/cowboy-hat-face.webp,sha256=AHi2t-WclDVKWgGEe-oZzI4xKACNlgGWUgd622y0K-E,24814
527
532
  meutils/data/oneapi/FOOTER.md,sha256=UHv39ey2ICocxPoCj-UI_PWyyWxZYLS8zG1inqtWNQ4,448
528
- meutils/data/oneapi/NOTICE.md,sha256=W0yobskQQ42MPu4dQdsfbwHQ5MHivYCymWZsGPryLJc,6345
533
+ meutils/data/oneapi/NOTICE.md,sha256=1RK-Kf7FMjrrMrrK6t5QcPfJlKTi9jGWImLi-oCK0dw,6688
529
534
  meutils/data/oneapi/__init__.py,sha256=cm2Kq2RDXPfdVMWcoBB77bu00zJpTDd21Rgc6bTlhws,398
530
535
  meutils/db/__init__.py,sha256=HR99rqxoFTWXUHDhLVl33tzIn8M86gigHLmEzOKH1Ec,7637
531
536
  meutils/db/mongo.py,sha256=B-B_t939rxtnNGt0PxhivjIUwinmHPzLUpXsjUIaTkQ,2337
@@ -571,7 +576,7 @@ meutils/jwt_utils/common.py,sha256=MlWDLtxiF-WeRl3oyK94KIa6BKFIXVeJtaQUnpa9ayo,8
571
576
  meutils/llm/__init__.py,sha256=mYv0QpACLd-wz4htIduPuTU3mX06_Y8ZprxDohtZGBM,244
572
577
  meutils/llm/check_api.py,sha256=sgxfMWM0fe3nNpv_lLR7kFgsWaowcm1cQlsbp7qZSKM,3567
573
578
  meutils/llm/check_utils.py,sha256=o5SAsjIuTK_p8ARZgjeyJiapVz3Ox_A6UdNbVACmpGw,3355
574
- meutils/llm/clients.py,sha256=lvKq4PbELbSBzkJSkomxvjpvIn0x9DEjA3ewewpB_uk,1182
579
+ meutils/llm/clients.py,sha256=WLm49NNgp80q-zEO0ZTzRmbQvZZfgU2hk6mskFFxsqg,1582
575
580
  meutils/llm/demo.py,sha256=gyGjTxuNFMOa1X4CXaChkq0lcjbKiRsnSRhkeMvsoQk,3822
576
581
  meutils/llm/mappers.py,sha256=ZQLl3OuD06kVMP8bwIpVgAB1UVzMJWUJiZ3vgk-ZjeI,303
577
582
  meutils/llm/utils.py,sha256=C1FSpJ4lIuKdaogcDDNZrznwtKgHhDEK4glcO4wT3mA,4278
@@ -585,7 +590,7 @@ meutils/llm/completions/modelscope.py,sha256=umPlJuHSL2RR0oNdTIAqts8iqEmGp_MR6Vh
585
590
  meutils/llm/completions/oi.py,sha256=DmvzxJfdLA_I3MWcULhFtiUdo90j7V2dLvYvmZ-Tm9U,293
586
591
  meutils/llm/completions/qwenllm.py,sha256=d3E51-iKSCuL2HrVO4aUmGN_fa5Jwz5K1ENbK7MtXEE,2043
587
592
  meutils/llm/completions/rag.py,sha256=cpQ1aZX2QI1QDfFpODTxWHPYglK6_3qrlUM_KHLBNhc,1112
588
- meutils/llm/completions/reasoner.py,sha256=IUwIM-B74iH_WUgGv1_y3qabtSi2EBWGO3YOsTmT3jo,5469
593
+ meutils/llm/completions/reasoner.py,sha256=VBft00syNuEE_ivIF6E_fLJRXZDSFrAyrnqGinphAKw,5922
589
594
  meutils/llm/completions/tryblend.py,sha256=NfVRktn1QiE2k60PzEI-LmKuxZCc7mtL_KlsrVcZg4k,8957
590
595
  meutils/llm/completions/tune.py,sha256=FypfUgsB34t-E9xI6WydJYEk_-phscrLOX1iUCeKb_E,10138
591
596
  meutils/llm/completions/x.py,sha256=XE8aCyuhkpYq0nho1mq9lAdRU1yOPc8BpvCpNYYMYqM,630
@@ -593,14 +598,14 @@ meutils/llm/completions/xx.py,sha256=pPfVRczvXZFUvAUOAFr0MMHMb5kVPNfKVhOLKugq52M
593
598
  meutils/llm/completions/yuanbao.py,sha256=aN3MwR6yORFv5pGA1ODiLqlNKCfAKQslIfpruAD6m08,5468
594
599
  meutils/llm/completions/agents/__init__.py,sha256=Wklnf7FTHm43hyVwfT8FXX44nqdOTykPb_HORIqDuuw,270
595
600
  meutils/llm/completions/agents/file.py,sha256=4SGCkHSBEdAB6NbxPaViXYUJq5giGtEF9FEgq2WxyBY,4934
596
- meutils/llm/completions/agents/search.py,sha256=oFM7fh5z5Uujkv53m4yM2sRdbnL52eDIc_T1H0IEv0I,4560
601
+ meutils/llm/completions/agents/search.py,sha256=uNSQlE6hmk9yPiHf5vPeM41RvSFMOteQT011uxubWSI,4764
597
602
  meutils/llm/completions/rag/__init__.py,sha256=VH4g9H0pqMM1Rkjc1xefQb4Uh8f9vlTt6tjdD6G6Wc0,272
598
603
  meutils/llm/completions/rag/fire.py,sha256=0a_POkY9mEy1YwZHXOGnqf9EVyjiJwx3fWhmv_bQ54U,5743
599
604
  meutils/llm/completions/rag/qwen.py,sha256=1dBNLLbQDRsM-7EGaStcWFU8HRa-rp3RxJ9cpxu6TBg,265
600
605
  meutils/llm/completions/rag/rag.py,sha256=mnC4bZUMuNYuPFXMBqXMofj_ms8uP5MMw1leJ5jXA_k,1209
601
606
  meutils/llm/functions/__init__.py,sha256=It6pcNwRBSh3Em45ooi61lc5tFg8eOYv0BvEFuRjSGQ,271
602
607
  meutils/llm/openai_utils/__init__.py,sha256=MWyNhP2K49oaHGEZlInZc3XlwqlStFultP8k7HDPAwk,290
603
- meutils/llm/openai_utils/common.py,sha256=XQNFzu6GkKozjRinsaTh755zoRpjsWYL5BK4q3gj8jw,9525
608
+ meutils/llm/openai_utils/common.py,sha256=mWqT-eDrjw3aKUn5TSQzWNhYiVnDbMafaZ763-iicnY,9521
604
609
  meutils/llm/openai_utils/tool_outputs.py,sha256=6mNkm4btgy0uzF98gdmcah1bYmoflXdLz2Sqm0KC_LQ,1224
605
610
  meutils/llm/output_parsers/__init__.py,sha256=EGKvgUD47ReyV5Z9RXDCrdDLgfKMHdoayzsXVmBuQxw,3474
606
611
  meutils/llm/prompts/__init__.py,sha256=VlEEViFoUSRS0EF1rHJXHh9Ik9FpvAiR1luKjHOsUc4,8580
@@ -626,7 +631,7 @@ meutils/office_automation/pdm.py,sha256=AFKdLd80v0XJThs6toigSdzaW1xT02VdqbDtUWBx
626
631
  meutils/office_automation/pdm_run.py,sha256=GF4VlAXDFQ6oGTrWsLqF4YvrbINhL9Ei8A59cYDeriE,13502
627
632
  meutils/office_automation/report/__init__.py,sha256=llPWtGZdUcsw__Eym2FLOVh4Bew5PgPUDfuKS2s1RMA,244
628
633
  meutils/oss/__init__.py,sha256=WUp1ZCdwYSN2OrqLlSgYI86vb7-FbqLR8Biu8484hwA,454
629
- meutils/oss/minio_oss.py,sha256=2jcrRkAOO8KstByyr65XEqrASXQ_xPUsjN4y8fSJ7oM,6436
634
+ meutils/oss/minio_oss.py,sha256=CqDbQzSp9zaQp_AAyRswof8_q9rybweZAPRlX53T-lg,6438
630
635
  meutils/oss/minio_utils.py,sha256=e0Vg7i4ncgB6PAs1rJt209jHWzrufkout_PUmb8UWlM,1298
631
636
  meutils/other/__demo.py,sha256=-cAInEF7G_JbOp3v8UHHwQpSrzPk0zqz4XoFnJ81Ixs,979
632
637
  meutils/other/__init__.py,sha256=WeAEUi1oZQ8gce3fimapeoCF8Wx-5P_SdDL76K7AE3k,242
@@ -709,7 +714,7 @@ meutils/schemas/fish_types.py,sha256=yC0ZFr3Ebh8F0OhtMsXYaIfNNvzOM2LT9YtKTaRoHGU
709
714
  meutils/schemas/hailuo_types.py,sha256=a9PLCHuiYbbCPKgiwwTeaQ6u1E1kwmqd0Ib6znCM5fY,7388
710
715
  meutils/schemas/haimian_types.py,sha256=jGu484UviAeBgy5OIUyRY4uYCxXfv16zDPqiJQr9wNQ,1364
711
716
  meutils/schemas/idphoto_types.py,sha256=nuHbpppejRSkJCiQ7YKx0Gnke0ShKZhOvdg0e7tk9-0,1074
712
- meutils/schemas/image_types.py,sha256=FVdYfaP-HWB03_NZh1H4baOTOfHg0i9qtI04bIj3McI,13006
717
+ meutils/schemas/image_types.py,sha256=ZbgciZpkJjD8czXTahlhqsJGW4ScKMEdxc5pBBG2XWQ,13004
713
718
  meutils/schemas/jimeng_types.py,sha256=qsjtyURGsGnAGAhfZ9k4k-mtbRgjbWId75UMV1d6AiE,851
714
719
  meutils/schemas/jina_types.py,sha256=SLRRBCap2B1uXnHF7Sgnlz1Work8HvdIltjj4oVlGTk,8826
715
720
  meutils/schemas/kimi_types.py,sha256=PjCgHwCDNzKasn4X6rUzvOENqKYT3xj07cgp71IdsDA,3607
@@ -718,11 +723,11 @@ meutils/schemas/kuaishou_types.py,sha256=-_-0Fkab5jyJFb_2Y4ugi92JSIDlvWL_e8mH-wM
718
723
  meutils/schemas/luma_types.py,sha256=s9RZnZUpdUg8-13_WOWm3bE_e246olplFFjP8ygiDuw,1900
719
724
  meutils/schemas/message_types.py,sha256=AJc9ZT_weaTjfjmwF5CDroV0WJEJKnA3u4bnbHhBamo,6176
720
725
  meutils/schemas/message_types_.py,sha256=oL7uOsewaziSryZywfap09M5Wh9w28RJDuadFuAfCSI,6297
721
- meutils/schemas/metaso_types.py,sha256=HRZarMqNvp_reOOn5EyIyCHY4xDVDSbwze9ekspfVFo,1881
726
+ meutils/schemas/metaso_types.py,sha256=WBzyL7N6_Zqy5s2UYregp4YuH0fT_OgtVPCmJqqgU2A,2086
722
727
  meutils/schemas/napkin_types.py,sha256=Kp0MbpRxzMBz4HWW4DrfcgOvHZVEF3N7P5yNeC1XGI4,2664
723
728
  meutils/schemas/ocr_types.py,sha256=fZWYQAKii7HaTlSU9DS0wHyiEoOHuLnhvgoiH4Cn498,1381
724
729
  meutils/schemas/openai_api_protocol.py,sha256=0GhmhUTEr54N_XCVuZI1MSxJldvwMNJjUAAAdWznw58,12716
725
- meutils/schemas/openai_types.py,sha256=6JAdGlaJOJ1KnzEQbcVrenPxmJZH-M6M5rTFEZMp_gY,12412
730
+ meutils/schemas/openai_types.py,sha256=Wnvyp_wpB2fQgNlWPbRk5xabedG59r0XQRc05QJcV-Y,12607
726
731
  meutils/schemas/pixverse_types.py,sha256=3mHg2KxvszV1U8K3GdzsODZz4uocLVRjEeJgYhX0Xmw,2347
727
732
  meutils/schemas/playwright_types.py,sha256=zhZd53m1Wg4zlGtq2JM4z7Aon-u_eF6rzs-_TFYWvkU,1177
728
733
  meutils/schemas/prodia_types.py,sha256=knh_lzAxMfWMoqAPmvyMweay9PmQmsoQ1X6Mj17ohWg,476
@@ -744,7 +749,7 @@ meutils/schemas/db/__init__.py,sha256=m1maURVoM6dIW0yt6ELZrZTzULtkHybVOSXtHNJRVI
744
749
  meutils/schemas/db/oneapi_types.py,sha256=YanT0q9pU7dva2ZBPWjCpwGNUuifnJh0zUJJCQ9070c,3848
745
750
  meutils/schemas/oneapi/__init__.py,sha256=uevbi3QAvFzN9WPbx9bYKTDyKt7P2ueZO6W0nSiD0sk,289
746
751
  meutils/schemas/oneapi/_types.py,sha256=ClvAaNy3SahEN8lL8KEErHTD6HANelXUeKc_3iLfosQ,1488
747
- meutils/schemas/oneapi/common.py,sha256=mePimgYAll7TAI9d044BQ1jX-xOsdO9_iPMInUHwpCg,27747
752
+ meutils/schemas/oneapi/common.py,sha256=saTw0EwQzg4QsDuAENgZUOEJrIygSeUFzUL_17gD2gs,29873
748
753
  meutils/schemas/oneapi/icons.py,sha256=T7W5gInBJoHe62wzMimbG_UI-wn3_-rmQ1O4O2z-CQY,1089
749
754
  meutils/schemas/oneapi/model_group_info.py,sha256=rGtflYJuFIjk5MsVEvK9JUR4IciX8jfErqeLqf8DIlQ,1586
750
755
  meutils/schemas/oneapi/model_info.py,sha256=_uwKEPIIqm7ZYfhmpxtXB2QNsS83SpJY-OaBzvogC9w,772
@@ -771,7 +776,7 @@ meutils/serving/fastapi/__demo/异步任务.py,sha256=60_ruA4ljlTLIP5zxcejmm9WJ0
771
776
  meutils/serving/fastapi/dependencies/__init__.py,sha256=shI1EgfH4gFuajmHGlzt_ArdDrFq8DqnUg7ycpFuYl0,245
772
777
  meutils/serving/fastapi/dependencies/auth.py,sha256=oCqzC44XsBLTkRu36yAvvR2JmluaubdEFd18FYFaLRk,1645
773
778
  meutils/serving/fastapi/exceptions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
774
- meutils/serving/fastapi/exceptions/http_error.py,sha256=BNnT36g1bmGgGQYdPjX8UDT--gWRis-OGnUElRqQEI8,2128
779
+ meutils/serving/fastapi/exceptions/http_error.py,sha256=N_sgX9uEA77nmTfLYZU7o-vUZwrDK8Uvjyqf7FSxr2I,2065
775
780
  meutils/serving/fastapi/exceptions/validation_error.py,sha256=Q71wYfzGsVjLA-SQ3R5a8iT0kDG01mwriVUXHhvsTv0,1234
776
781
  meutils/serving/fastapi/routers/__init__.py,sha256=F473oGpbMmCFMbnfuk9MKyO30ke-YvP7AR5jhsnxjNg,270
777
782
  meutils/serving/fastapi/routers/_test.py,sha256=FgymiRBXz_EEerTc4V7aY9iTUZ1u0qZSTqhdQMg2Or4,546
@@ -872,9 +877,9 @@ meutils/tools/seize.py,sha256=nOKAS63w-Lbi48I0m2MPhdsokUTwxco0laPxYVmW4Mw,1064
872
877
  meutils/tools/service_monitor.py,sha256=ibsLtBN2g2DL7ZnLJ8vhiZOiOcqTAyx711djDdBK-3M,1255
873
878
  meutils/tools/sys_monitor.py,sha256=6MoyzrItqDUOSjfHcMJmMofQkEPTW36CT_aKui0rg84,429
874
879
  meutils/tools/token_monitor.py,sha256=Np-YK-R4P4IPAXyZvMxwvXI4sFmNJQAQK1lSegNaYpA,997
875
- MeUtils-2025.2.6.20.41.23.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
876
- MeUtils-2025.2.6.20.41.23.dist-info/METADATA,sha256=2hhfEzGEv6L9m2YB36RLjEWfZpVf0ezXPxbGsf4GQwQ,6142
877
- MeUtils-2025.2.6.20.41.23.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
878
- MeUtils-2025.2.6.20.41.23.dist-info/entry_points.txt,sha256=lufZlBHRqqZKdY-ZQJ4CSZb0qhV5hQC37egZna9M7ug,357
879
- MeUtils-2025.2.6.20.41.23.dist-info/top_level.txt,sha256=cInfxMmkgNOskurdjwP5unau4rA7Uw48nu07tYhS7KY,22
880
- MeUtils-2025.2.6.20.41.23.dist-info/RECORD,,
880
+ MeUtils-2025.2.11.18.25.28.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
881
+ MeUtils-2025.2.11.18.25.28.dist-info/METADATA,sha256=eAcLVw3eon3APpz73Io1tTY7ZxH3SlLI8I7GjB2zTB0,6143
882
+ MeUtils-2025.2.11.18.25.28.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
883
+ MeUtils-2025.2.11.18.25.28.dist-info/entry_points.txt,sha256=lufZlBHRqqZKdY-ZQJ4CSZb0qhV5hQC37egZna9M7ug,357
884
+ MeUtils-2025.2.11.18.25.28.dist-info/top_level.txt,sha256=cInfxMmkgNOskurdjwP5unau4rA7Uw48nu07tYhS7KY,22
885
+ MeUtils-2025.2.11.18.25.28.dist-info/RECORD,,
@@ -52,10 +52,10 @@ def check_models(models, api_key=os.getenv("OPENAI_API_KEY_GUOCHAN")):
52
52
  model=model,
53
53
  messages=messages,
54
54
  stream=False,
55
- temperature=1,
55
+ # temperature=1,
56
56
  # top_p=0.9,
57
- top_p=1,
58
- max_tokens=100,
57
+ # top_p=1,
58
+ # max_tokens=100,
59
59
 
60
60
  # **to_openai_completion_params(data)
61
61
 
@@ -69,9 +69,9 @@ def check_models(models, api_key=os.getenv("OPENAI_API_KEY_GUOCHAN")):
69
69
  model=model,
70
70
  messages=messages,
71
71
  stream=True,
72
- temperature=0,
73
- top_p=0,
74
- max_tokens=100,
72
+ # temperature=0,
73
+ # top_p=0,
74
+ # max_tokens=100,
75
75
 
76
76
  )
77
77
  print(f"""\n\n{"-" * 32}流{"-" * 32}\n\n""")
@@ -230,8 +230,12 @@ if __name__ == '__main__':
230
230
  # "deepseek-r1:1.5b"
231
231
  # "deepseek-r1:1.5b"
232
232
 
233
- "deepseek-r1",
233
+ # "deepseek-r1",
234
234
  # "deepseek-v3"
235
+ # "deepseek-r1"
236
+ # "qwen2.5-max"
237
+ "deepseek-r1-distill-qwen-7b",
238
+ "deepseek-r1-distill-qwen-32b"
235
239
 
236
240
  ]
237
241
  # check_models(models, api_key=os.getenv("OPENAI_API_KEY"))
@@ -251,4 +255,10 @@ if __name__ == '__main__':
251
255
 
252
256
  # check_models(models, api_key=os.getenv("OPENAI_API_KEY_GUOCHAN") + "-725")
253
257
 
254
- check_models(models, api_key=os.getenv("OPENAI_API_KEY_GUOCHAN") + "-722")
258
+ # check_models(models, api_key=os.getenv("OPENAI_API_KEY") + "-743")
259
+ check_models(models, api_key=os.getenv("OPENAI_API_KEY"))
260
+
261
+
262
+ #############神奇 #############reasoning_content 神奇
263
+
264
+ #############
@@ -33,7 +33,7 @@ try:
33
33
  # model="step-1-8k",
34
34
  # model="Qwen/QwQ-32B-Preview",
35
35
  # model="Qwen/QVQ-72B-Preview",
36
- model="qwen/qvq-72b-preview",
36
+ # model="qwen/qvq-72b-preview",
37
37
 
38
38
  messages=[
39
39
  {"role": "user", "content": "你是谁"}
@@ -0,0 +1,38 @@
1
+ #!/usr/bin/env python
2
+ # -*- coding: utf-8 -*-
3
+ # @Project : AI. @by PyCharm
4
+ # @File : openai_v
5
+ # @Time : 2025/2/11 16:13
6
+ # @Author : betterme
7
+ # @WeChat : meutils
8
+ # @Software : PyCharm
9
+ # @Description :
10
+
11
+ from meutils.pipe import *
12
+
13
+ url = "https://ts3.cn.mm.bing.net/th?id=OIP-C.BYyILFgs3ATnTEQ-B5ApFQHaFj&w=288&h=216&c=8&rs=1&qlt=90&o=6&dpr=1.3&pid=3.1&rm=2"
14
+ # url = "https://oss.ffire.cc/files/kling_watermark.png"
15
+
16
+
17
+
18
+ import openai
19
+ c = openai.OpenAI(
20
+
21
+ api_key=os.getenv("OPENAI_API_KEY") + "-575"
22
+
23
+ # api_key=os.getenv("OPENAI_API_KEY_OPENAI")
24
+ )
25
+ x = c.chat.completions.create(model='gpt-4o',messages=[
26
+ {
27
+ 'role': 'user',
28
+ 'content': [{
29
+ "type": "text",
30
+ "text": '总结一下'
31
+ }, {
32
+ "type": "image_url",
33
+ "image_url": {
34
+ "url": url
35
+ }
36
+ }]
37
+ }
38
+ ])
@@ -9,4 +9,25 @@
9
9
  # @Description :
10
10
 
11
11
  from meutils.pipe import *
12
- # 'X-API-KEY': "hl_sk_dae400bf07e363d414525f38ad73803701c499f1891ef583"
12
+ # 'X-API-KEY': "hl_sk_dae400bf07e363d414525f38ad73803701c499f1891ef583"
13
+
14
+
15
+ from openai import OpenAI
16
+
17
+ client = OpenAI(
18
+ base_url="https://openai-dev.chatfire.cn/r/v1",
19
+ default_query={"base_url": "https://ai.gitee.com/v1"},
20
+ api_key="AHKZ65ARNFH8QGMUUVCPECDTZVOLRPUXIKPGAC1Y",
21
+ )
22
+
23
+ r = client.chat.completions.create(
24
+ # model="DeepSeek-R1-Distill-Qwen-1.5B",
25
+ model="deepseek-r1-Distill-Qwen-1.5B",
26
+
27
+ # stream=True,
28
+ messages=[
29
+ {"role": "user", "content": "Hello!"}
30
+ ]
31
+ )
32
+
33
+ print(r)
@@ -0,0 +1,67 @@
1
+ import asyncio
2
+ import aiohttp
3
+ import time
4
+ import nest_asyncio
5
+ import json
6
+
7
+ baseUrl = "http://localhost:11434/v1/chat/completions"
8
+ model = "deepseek-r1:1.5b"
9
+ question = "你好,共产党员可以炒股么?"
10
+ count = 100
11
+ sk = "sk-xxx"
12
+
13
+
14
+ async def send_request(session, baseUrl, model):
15
+ # 设置请求头
16
+ headers = {
17
+ 'Content-Type': 'application/json',
18
+ 'Authorization': 'Bearer ' + sk
19
+ }
20
+
21
+ # 设置请求参数
22
+ data = {
23
+ 'model': model,
24
+ "messages": [
25
+ {"role": "user", "content": question}
26
+ ],
27
+ "stream": True
28
+ }
29
+
30
+ # 发送请求
31
+ async with session.post(baseUrl, headers=headers, json=data) as response:
32
+ response.raise_for_status()
33
+
34
+ # 测量第一个字的时间
35
+ start_time = time.time()
36
+ async for chunk in response.content:
37
+ if chunk:
38
+ # print(chunk)
39
+ end_time = time.time()
40
+ break
41
+ # 输出第一个字的时间
42
+ print('第一个字的时间:', (end_time - start_time) * 1000)
43
+ return (end_time - start_time) * 1000
44
+
45
+
46
+ async def main(baseUrl, model, count):
47
+ # 创建会话
48
+ async with aiohttp.ClientSession() as session:
49
+ # 创建任务
50
+ tasks = []
51
+ for _ in range(count):
52
+ task = asyncio.ensure_future(send_request(session, baseUrl, model))
53
+ tasks.append(task)
54
+
55
+ # 等待所有任务完成
56
+ times = await asyncio.gather(*tasks)
57
+ print(times)
58
+ # 计算平均时间
59
+ avg_time = sum(times) / count
60
+
61
+ # 输出平均时间
62
+ print('平均时间:', avg_time)
63
+
64
+
65
+ # 进行测试
66
+ loop = asyncio.get_event_loop()
67
+ loop.run_until_complete(main(baseUrl, model, count))
@@ -104,6 +104,7 @@ async def make_request_for_gitee(payload, token: Optional[str] = None, response_
104
104
 
105
105
 
106
106
  async def make_request_for_baidu(payload, token: Optional[str] = None, response_format: str = "url"):
107
+ """todo redis"""
107
108
  s = time.time()
108
109
  token = token or await get_next_token_for_polling(feishu_url=FEISHU_URL, from_redis=True)
109
110
  headers = {
@@ -131,7 +132,7 @@ async def make_request_for_baidu(payload, token: Optional[str] = None, response_
131
132
  logger.error(e)
132
133
  if i > 3: break
133
134
  if not image_base64:
134
- raise Exception(f"未检测到: {data}")
135
+ raise Exception(f"NO WATERMARK FOUND: {data}") #############
135
136
 
136
137
  if response_format == "url":
137
138
  url = await to_url_fal(image_base64, content_type="image/png")
@@ -191,15 +192,15 @@ if __name__ == '__main__':
191
192
  token = "web_uid=ac283ec7-4bf6-40c9-a0ce-5a2e0cd7db06; hy_source=web; hy_user=I09MgMfFcUUyVSIg; hy_token=hevVCi/QuVjQcre5NDRMO7FuiWCZoDMIq3Zp8IwNxrPUofl4zWYazHEdeZ2S5o7q; _qimei_q36=; _qimei_h38=f2d27f50f0f23e085296d28303000006a17a09; _qimei_fingerprint=efbb885a22f7d4e5589008c28bc8e7ba; _qimei_uuid42=18c0310102d1002a082420cd40bb9717523c3c7e12; _gcl_au=1.1.915258067.1733278380; _ga_RPMZTEBERQ=GS1.1.1733722091.3.1.1733722108.0.0.0; _ga=GA1.2.981511920.1725261466; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%22100000458739%22%2C%22first_id%22%3A%22191b198c7b2d52-0fcca8d731cb9b8-18525637-2073600-191b198c7b31fd9%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%A4%BE%E4%BA%A4%E7%BD%91%E7%AB%99%E6%B5%81%E9%87%8F%22%2C%22%24latest_utm_medium%22%3A%22cpc%22%7D%2C%22identities%22%3A%22eyIkaWRlbnRpdHlfY29va2llX2lkIjoiMTkxYjE5OGM3YjJkNTItMGZjY2E4ZDczMWNiOWI4LTE4NTI1NjM3LTIwNzM2MDAtMTkxYjE5OGM3YjMxZmQ5IiwiJGlkZW50aXR5X2xvZ2luX2lkIjoiMTAwMDAwNDU4NzM5In0%3D%22%2C%22history_login_id%22%3A%7B%22name%22%3A%22%24identity_login_id%22%2C%22value%22%3A%22100000458739%22%7D%2C%22%24device_id%22%3A%22191b198c7b2d52-0fcca8d731cb9b8-18525637-2073600-191b198c7b31fd9%22%7D"
192
193
 
193
194
  url = "https://oss.ffire.cc/files/kling_watermark.png"
194
- url = "https://oss.ffire.cc/files/shuiyin.jpg"
195
- url = "https://oss.ffire.cc/files/shuiyin3.jpg"
195
+ # url = "https://oss.ffire.cc/files/shuiyin.jpg"
196
+ # url = "https://oss.ffire.cc/files/shuiyin3.jpg"
196
197
 
197
198
  # url = "https://s22-def.ap4r.com/bs2/upload-ylab-stunt-sgp/se/ai_portal_sgp_queue_mmu_txt2img_aiweb/9c520b80-efc2-4321-8f0e-f1d34d483ddd/1.png"
198
199
 
199
200
  request = ImageProcess(
200
- model="hunyuan-remove-watermark",
201
+ # model="hunyuan-remove-watermark",
201
202
 
202
- # model="remove-watermark",
203
+ model="remove-watermark",
203
204
  # model="clarity",
204
205
  # model="expand",
205
206
  # model="rmbg-2.0",
@@ -288,7 +288,8 @@ async def generate(request: ImageRequest):
288
288
 
289
289
 
290
290
  if __name__ == '__main__':
291
- token = "eb4d120829cfd3ee957943f63d6152ed"
291
+ # token = "eb4d120829cfd3ee957943f63d6152ed"
292
+ token = "34438eb03d165737122180caf62a8058"
292
293
 
293
294
  # request = ImageRequest(prompt="做一个圣诞节的海报", size="1024x1024")
294
295
  # request = ImageRequest(prompt="https://oss.ffire.cc/files/kling_watermark.png 让她带上墨镜", size="1024x1024")
@@ -324,11 +325,11 @@ if __name__ == '__main__':
324
325
  }
325
326
  # arun(generate(ImageRequest(**data)))
326
327
 
327
- # arun(generate(ImageRequest(prompt="做一个圣诞节的海报")))
328
- 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"
329
- request = ImageRequest(prompt=prompt)
328
+ arun(generate(ImageRequest(prompt="做一个圣诞节的海报")))
329
+ # 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"
330
+ # request = ImageRequest(prompt=prompt)
330
331
  # task = arun(create_task(request))
331
332
 
332
333
  # arun(get_task(task.task_id, task.system_fingerprint))
333
334
 
334
- arun(generate(request))
335
+ # arun(generate(request))
@@ -97,8 +97,7 @@ async def create(request: ChatCompletionRequest, response_format: Optional[str]
97
97
 
98
98
  request = MetasoRequest(
99
99
  model=model,
100
- mode=MODELS.get(request.model, "concise"),
101
- engineType=engine_type,
100
+ mode=MODELS.get(request.model, "detail"),
102
101
  question=request.last_content,
103
102
  response_format=response_format
104
103
  )
@@ -124,22 +123,9 @@ async def create(request: ChatCompletionRequest, response_format: Optional[str]
124
123
  session_id = await get_session_id(request, headers=headers, proxy=proxy)
125
124
 
126
125
  token = await get_access_token(session_id)
127
- params = {
128
- 'token': token,
129
-
130
- 'question': request.question,
131
- 'mode': request.mode,
132
- 'engineType': request.engineType,
133
-
134
- "sessionId": session_id,
135
- 'lang': 'zh',
136
- # 'url': f'https://metaso.cn/search/{sessionId}?q={q}',
137
- 'enableMix': 'true',
138
- 'scholarSearchDomain': 'all',
139
- 'expectedCurrentSessionSearchCount': '1',
140
- 'newEngine': 'true',
141
- 'enableImage': 'true',
142
- }
126
+
127
+ params = request.model_dump(exclude_none=True)
128
+ params['token'] = token
143
129
 
144
130
  pattern = re.compile('\[\[(\d+)\]\]')
145
131
  async with httpx.AsyncClient(base_url=BASE_URL, headers=headers, params=params, proxy=proxy) as client:
@@ -235,7 +221,8 @@ if __name__ == '__main__':
235
221
 
236
222
  # model="search-pro",
237
223
 
238
- messages=[{'role': 'user', 'content': '今天南京天气怎么样'}]
224
+ # messages=[{'role': 'user', 'content': '今天南京天气怎么样'}]
225
+ messages=[{'role': 'user', 'content': 'hi'}]
239
226
 
240
227
  )
241
228
 
meutils/caches/acache.py CHANGED
@@ -16,24 +16,24 @@ from aiocache import cached
16
16
  from aiocache import cached, Cache, RedisCache, caches
17
17
  from aiocache import multi_cached
18
18
 
19
+
20
+
21
+ @cached(ttl=60)
22
+ @cached(ttl=60)
23
+ async def cached_fc(user_id, **kwargs):
24
+ logger.debug(user_id)
25
+ return False
26
+ #
19
27
  rcache = RedisCache(
20
28
  endpoint="127.0.0.1", port=6379, namespace="me" # 缓存键前缀
21
29
  )
22
-
23
-
24
- # @cached(ttl=60)
25
- # async def cached_fc(user_id, **kwargs):
26
- # logger.debug(user_id)
27
- # return False
28
-
29
-
30
30
  @cached(ttl=60, cache=rcache)
31
31
  async def redis_fc(user_id, **kwargs):
32
32
  logger.debug(user_id)
33
33
  return False
34
34
 
35
35
 
36
- # @multi_cached(ttl=60, caches=[Cache.MEMORY, Cache.MEMORY])
36
+ # @multi_cached(ttl=60) # 多key缓存
37
37
  # async def complex_function(user_id, **kwargs):
38
38
  # logger.debug(user_id)
39
39
  # return False
@@ -63,4 +63,4 @@ class A(BaseModel):
63
63
 
64
64
 
65
65
  if __name__ == '__main__':
66
- arun(redis_fc(A()))
66
+ arun(cached_fc(A()))
meutils/caches/c.py ADDED
@@ -0,0 +1,29 @@
1
+ import asyncio
2
+
3
+ from collections import namedtuple
4
+ import redis.asyncio as redis
5
+
6
+ from aiocache import cached
7
+ from aiocache import RedisCache
8
+ from aiocache.serializers import PickleSerializer
9
+
10
+ Result = namedtuple('Result', "content, status")
11
+
12
+ cache = RedisCache(namespace="main", client=redis.Redis(), serializer=PickleSerializer())
13
+
14
+
15
+ @cached(cache, ttl=10, key_builder=lambda *args, **kw: "key")
16
+ async def cached_call():
17
+ return Result("content", 200)
18
+
19
+
20
+ async def test_cached():
21
+ async with cache:
22
+ await cached_call()
23
+ exists = await cache.exists("key")
24
+ assert exists is True
25
+ await cache.delete("key")
26
+
27
+
28
+ if __name__ == "__main__":
29
+ asyncio.run(test_cached())