webscout 8.3.2__py3-none-any.whl → 8.3.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of webscout might be problematic. Click here for more details.
- webscout/AIutel.py +146 -37
- webscout/Bing_search.py +1 -2
- webscout/Provider/AISEARCH/__init__.py +1 -0
- webscout/Provider/AISEARCH/stellar_search.py +132 -0
- webscout/Provider/ExaChat.py +84 -58
- webscout/Provider/HeckAI.py +85 -80
- webscout/Provider/Jadve.py +56 -50
- webscout/Provider/MiniMax.py +207 -0
- webscout/Provider/Nemotron.py +41 -13
- webscout/Provider/Netwrck.py +34 -51
- webscout/Provider/OPENAI/BLACKBOXAI.py +0 -1
- webscout/Provider/OPENAI/MiniMax.py +298 -0
- webscout/Provider/OPENAI/README.md +30 -29
- webscout/Provider/OPENAI/TogetherAI.py +4 -17
- webscout/Provider/OPENAI/__init__.py +3 -1
- webscout/Provider/OPENAI/autoproxy.py +752 -17
- webscout/Provider/OPENAI/base.py +7 -76
- webscout/Provider/OPENAI/deepinfra.py +42 -108
- webscout/Provider/OPENAI/flowith.py +179 -166
- webscout/Provider/OPENAI/friendli.py +233 -0
- webscout/Provider/OPENAI/monochat.py +329 -0
- webscout/Provider/OPENAI/pydantic_imports.py +1 -172
- webscout/Provider/OPENAI/toolbaz.py +1 -0
- webscout/Provider/OPENAI/typegpt.py +1 -1
- webscout/Provider/OPENAI/utils.py +19 -42
- webscout/Provider/OPENAI/x0gpt.py +14 -2
- webscout/Provider/OpenGPT.py +54 -32
- webscout/Provider/PI.py +58 -84
- webscout/Provider/StandardInput.py +32 -13
- webscout/Provider/TTI/README.md +9 -9
- webscout/Provider/TTI/__init__.py +2 -1
- webscout/Provider/TTI/aiarta.py +92 -78
- webscout/Provider/TTI/infip.py +212 -0
- webscout/Provider/TTI/monochat.py +220 -0
- webscout/Provider/TeachAnything.py +11 -3
- webscout/Provider/TextPollinationsAI.py +78 -70
- webscout/Provider/TogetherAI.py +32 -48
- webscout/Provider/Venice.py +37 -46
- webscout/Provider/VercelAI.py +27 -24
- webscout/Provider/WiseCat.py +35 -35
- webscout/Provider/WrDoChat.py +22 -26
- webscout/Provider/WritingMate.py +26 -22
- webscout/Provider/__init__.py +2 -2
- webscout/Provider/granite.py +48 -57
- webscout/Provider/koala.py +51 -39
- webscout/Provider/learnfastai.py +49 -64
- webscout/Provider/llmchat.py +79 -93
- webscout/Provider/llmchatco.py +63 -78
- webscout/Provider/multichat.py +51 -40
- webscout/Provider/oivscode.py +1 -1
- webscout/Provider/scira_chat.py +159 -96
- webscout/Provider/scnet.py +13 -13
- webscout/Provider/searchchat.py +13 -13
- webscout/Provider/sonus.py +12 -11
- webscout/Provider/toolbaz.py +25 -8
- webscout/Provider/turboseek.py +41 -42
- webscout/Provider/typefully.py +27 -12
- webscout/Provider/typegpt.py +41 -46
- webscout/Provider/uncovr.py +55 -90
- webscout/Provider/x0gpt.py +33 -17
- webscout/Provider/yep.py +79 -96
- webscout/auth/__init__.py +12 -1
- webscout/auth/providers.py +27 -5
- webscout/auth/routes.py +128 -104
- webscout/auth/server.py +367 -312
- webscout/client.py +121 -116
- webscout/litagent/Readme.md +68 -55
- webscout/litagent/agent.py +99 -9
- webscout/version.py +1 -1
- {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/METADATA +102 -90
- {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/RECORD +75 -87
- webscout/Provider/TTI/fastflux.py +0 -233
- webscout/Provider/Writecream.py +0 -246
- webscout/auth/static/favicon.svg +0 -11
- webscout/auth/swagger_ui.py +0 -203
- webscout/auth/templates/components/authentication.html +0 -237
- webscout/auth/templates/components/base.html +0 -103
- webscout/auth/templates/components/endpoints.html +0 -750
- webscout/auth/templates/components/examples.html +0 -491
- webscout/auth/templates/components/footer.html +0 -75
- webscout/auth/templates/components/header.html +0 -27
- webscout/auth/templates/components/models.html +0 -286
- webscout/auth/templates/components/navigation.html +0 -70
- webscout/auth/templates/static/api.js +0 -455
- webscout/auth/templates/static/icons.js +0 -168
- webscout/auth/templates/static/main.js +0 -784
- webscout/auth/templates/static/particles.js +0 -201
- webscout/auth/templates/static/styles.css +0 -3353
- webscout/auth/templates/static/ui.js +0 -374
- webscout/auth/templates/swagger_ui.html +0 -170
- {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/WHEEL +0 -0
- {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/entry_points.txt +0 -0
- {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/licenses/LICENSE.md +0 -0
- {webscout-8.3.2.dist-info → webscout-8.3.3.dist-info}/top_level.txt +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
webscout/AIauto.py,sha256=zRQcmNzQCCPOD6ancQlRlSRqEM24rtb-Xlpqg6bt5Pg,10557
|
|
2
2
|
webscout/AIbase.py,sha256=MbtLlwMNrRu1nKJkj-4ZYUL8YVzDzLdboIAA_7yextM,14529
|
|
3
|
-
webscout/AIutel.py,sha256=
|
|
3
|
+
webscout/AIutel.py,sha256=lHubbAm9JxNDFd6NTeDPdV6bwgi491f_Cq_KMYKzBWM,35723
|
|
4
4
|
webscout/Bard.py,sha256=VTvnSapEleBnw-O6CM_-4PiijhsLFx_B7gauknV58p4,45280
|
|
5
|
-
webscout/Bing_search.py,sha256=
|
|
5
|
+
webscout/Bing_search.py,sha256=eFeqR6aOF_Drdie5GdYGMfxsrjcfOBB62o20Avd04GA,16347
|
|
6
6
|
webscout/DWEBS.py,sha256=OnoKtIkrlNtYlGL_CCPsLet8cj2wKxqquFB8RdBxXfk,18621
|
|
7
7
|
webscout/__init__.py,sha256=AVG0wCun0afiuNnWoF8BJ46nCpT3ax2ecOjVqcUAxJk,1142
|
|
8
8
|
webscout/__main__.py,sha256=qtkMZK5jzQ79ZkFAuZBxMgayuhmw3aRDj1F8Pt06NW4,108
|
|
9
9
|
webscout/cli.py,sha256=_ZeVKRKw6ZX0RScC5BeKNK81gak89qkik168FqB9BH8,20239
|
|
10
|
-
webscout/client.py,sha256=
|
|
10
|
+
webscout/client.py,sha256=HHnOL9I14uEJHCpGcyjlpZwna_DEJehHD5sqmti7sd8,5588
|
|
11
11
|
webscout/conversation.py,sha256=6U6MepqYlYFev-HR2ZSqCKYhoU816E00jmxtYhYUQ2I,16955
|
|
12
12
|
webscout/exceptions.py,sha256=cj0BDCZhB46g_vJ0r2PH0U_T35dqZro-rWu6tvtIZ3c,12833
|
|
13
13
|
webscout/models.py,sha256=C7QY-KDkqFCI698t9pvTHQ27rYadPIvwaYHJ3-AOCJI,6566
|
|
@@ -16,7 +16,7 @@ webscout/prompt_manager.py,sha256=j4MLYx3SpeeTxzsbgUGAHWLtJ1HAF6eaWOzJCAiGND4,10
|
|
|
16
16
|
webscout/tempid.py,sha256=lqTTOjVSwDMmC0UoThdyshFyIAxTikVaN613-6K3g_s,4968
|
|
17
17
|
webscout/update_checker.py,sha256=vZKTk4HkDED8x5cujKK0Bjq3UjncyESWM7nNm4LR1fg,3825
|
|
18
18
|
webscout/utils.py,sha256=o2hU3qaVPk25sog3e4cyVZO3l8xwaZpYRziZPotEzNo,3075
|
|
19
|
-
webscout/version.py,sha256=
|
|
19
|
+
webscout/version.py,sha256=tXuUoGx31cy5oli5VRLPRDr09_trXLM-IC9Gj3YbiF0,46
|
|
20
20
|
webscout/webscout_search.py,sha256=e8n03H11N_6Eaey99SvdD9rYEwMERnurNwwrX8ORGVs,47825
|
|
21
21
|
webscout/webscout_search_async.py,sha256=xjwSPpQSbeemwRfJYZJA8pJ8WqEHj93Nm4ouH_JddLc,27110
|
|
22
22
|
webscout/yep_search.py,sha256=WwdbHtHjgrqc4j9vChf601UB-6ShVcd0iuWem-9qi_8,11730
|
|
@@ -78,7 +78,7 @@ webscout/Provider/Cloudflare.py,sha256=tcjXK50ghqxmLP0VC8kUQkslgVn9JDB7adxlJHNHI
|
|
|
78
78
|
webscout/Provider/Cohere.py,sha256=oL9kAv--RSkEQxwkPTq1Wi57Wkgg0WNvL82CpTj22YY,8264
|
|
79
79
|
webscout/Provider/Deepinfra.py,sha256=lCjsAMxhoq-FbJ-8ztZCU0HbL1jT9PHqQy29joK1jcU,15057
|
|
80
80
|
webscout/Provider/ExaAI.py,sha256=plbjF5LYyZS4elLWKtD6AURDQS3O9xAGBScpDGPHWiY,9783
|
|
81
|
-
webscout/Provider/ExaChat.py,sha256=
|
|
81
|
+
webscout/Provider/ExaChat.py,sha256=dz5c101OuwT--oeitwcVQiqRB7XHZg91TN1Xq8AAoGg,14484
|
|
82
82
|
webscout/Provider/Flowith.py,sha256=w5rpUmRkoAL-WqrKMyRrsTTDmsPN2Cc5zyRBy7_48mY,8605
|
|
83
83
|
webscout/Provider/FreeGemini.py,sha256=lpsTlkzk7kcTfTODFKZFayQox9DmOM4Az7zTMV5bla0,11004
|
|
84
84
|
webscout/Provider/Gemini.py,sha256=sM25PD6AxOFmiIab3ASbnrb-mbVHYJJ9Dc6bo1L4PJo,6806
|
|
@@ -87,38 +87,38 @@ webscout/Provider/GithubChat.py,sha256=vBPjsLchav-kuond0D2kaIo8_QsrYDPYNwKF-D4yK
|
|
|
87
87
|
webscout/Provider/GizAI.py,sha256=o8liIlSPz0MDTqLLGwtLiX3iSAsEuJfX1Cl8UNGOpfQ,10865
|
|
88
88
|
webscout/Provider/Glider.py,sha256=MbgKflBwSrvsOKW3Ya-ijKc3Hxh_L6LnD6tfUSFKsoQ,9342
|
|
89
89
|
webscout/Provider/Groq.py,sha256=V6nDhue-AEOJLc1-BP6ZOwsUxpjXP1SqBLTG07dhwWc,36880
|
|
90
|
-
webscout/Provider/HeckAI.py,sha256=
|
|
90
|
+
webscout/Provider/HeckAI.py,sha256=19LH3UMpLUKWHgzPZHSDLnDaQ0Nv_Q_qTQa4_mObgYQ,16567
|
|
91
91
|
webscout/Provider/HuggingFaceChat.py,sha256=xRhaXs22ipUE8qbZ40PljA6nssRwow0xdYedXHYXuCY,21854
|
|
92
92
|
webscout/Provider/Hunyuan.py,sha256=FjFcqVhexIpEuljUsGJN4t12bMQvGmzrmc4D1kBLdNk,12332
|
|
93
|
-
webscout/Provider/Jadve.py,sha256=
|
|
93
|
+
webscout/Provider/Jadve.py,sha256=5TwX4cxB5X4JAuEw_9BjjvNtiGeaISkqX4s9mMTRSC4,12972
|
|
94
94
|
webscout/Provider/Koboldai.py,sha256=K_bAuRMYRkHzN1Qjh0hP6N3oWN_2KoqHpucROmoyLUY,15363
|
|
95
95
|
webscout/Provider/LambdaChat.py,sha256=jtlvMBQ2BSA2Cgcf2p3e7TZhOwWyH7wVo9q-WA9Fyco,18881
|
|
96
96
|
webscout/Provider/Llama3.py,sha256=9f-7ha23OdvUthKUqLwBpSBBZzWPmadJPESyDOUKbC0,10770
|
|
97
97
|
webscout/Provider/MCPCore.py,sha256=EFykzoDvifeLAiW6HJ-dtjPnaBB8EvxTGhPHi_uix8E,13070
|
|
98
98
|
webscout/Provider/Marcus.py,sha256=JDjjpmimsWCgrRqZFPGxuHIZ5M98d2ijFzMie86CZvs,8352
|
|
99
|
-
webscout/Provider/
|
|
100
|
-
webscout/Provider/
|
|
99
|
+
webscout/Provider/MiniMax.py,sha256=OLZBUY9tuopLlTxX1XhoI5yhBnM2zKD8VHDBlygKzq4,9303
|
|
100
|
+
webscout/Provider/Nemotron.py,sha256=xA8tQlckUMa5LXSlEeLnf9vbC9x3nCHxh9hChBFb7_Q,9097
|
|
101
|
+
webscout/Provider/Netwrck.py,sha256=Mdv0_GcT-BgfAZj-0L_oA6e5eUsEK7rrblwWb292Xuc,10726
|
|
101
102
|
webscout/Provider/OLLAMA.py,sha256=k8EbK_EqH02xiTtqubViKsHebyJFLUwug5zeP1HkDa4,15155
|
|
102
|
-
webscout/Provider/OpenGPT.py,sha256=
|
|
103
|
+
webscout/Provider/OpenGPT.py,sha256=uyQx2l4U-NhBEB3IHXR1-pMnsRRVyfedjZ7lo6oXWAo,9594
|
|
103
104
|
webscout/Provider/Openai.py,sha256=TC4BkezoLqimaqOwzX-nYC9w7hXbDCajm-bzkdyl-gA,20433
|
|
104
|
-
webscout/Provider/PI.py,sha256=
|
|
105
|
+
webscout/Provider/PI.py,sha256=XbOILpmUoVN5px10mg8vMvUMRaaOHrCbfwxXNBxw2M4,16608
|
|
105
106
|
webscout/Provider/Perplexitylabs.py,sha256=e0k7tuh99dedBTkQxytvfwPS6x6hlaFVpZyrpvy4_Xs,16621
|
|
106
107
|
webscout/Provider/QwenLM.py,sha256=lxnSF38wrupb1e7XhN8f0py8v6efwOndFh2SwvIy7Sc,10430
|
|
107
108
|
webscout/Provider/Reka.py,sha256=dWw4vX91nJhAn-X1SXK72gttRaTqWNGUBFaeRJobTJg,8519
|
|
108
|
-
webscout/Provider/StandardInput.py,sha256=
|
|
109
|
-
webscout/Provider/TeachAnything.py,sha256=
|
|
110
|
-
webscout/Provider/TextPollinationsAI.py,sha256=
|
|
111
|
-
webscout/Provider/TogetherAI.py,sha256
|
|
109
|
+
webscout/Provider/StandardInput.py,sha256=hBNHn6EqjrJ5LG0W4hTsFcJYRpNCt1WpRJaK6IQK0uw,15084
|
|
110
|
+
webscout/Provider/TeachAnything.py,sha256=Wy1fFxi_K4G8oFvcBlmDHJBhP1OMihpnBJKt6IA0c38,10416
|
|
111
|
+
webscout/Provider/TextPollinationsAI.py,sha256=9jdX89ixla8NU828FWrOwyOirqJqZP3XkQT9V9OgWpw,13279
|
|
112
|
+
webscout/Provider/TogetherAI.py,sha256=NIHt9b1QzozKZi-vc9Z5zhGoDqj7ZHYmEsq8KvkHND8,14488
|
|
112
113
|
webscout/Provider/TwoAI.py,sha256=T7EVecu9QnuESmDYTyxikOIJiMsfpPKtx4hp4CZ7tps,19951
|
|
113
114
|
webscout/Provider/TypliAI.py,sha256=lfOyX2mGZBsmqqB4GafAzAhiV0U0C9RJf9I--hTw9Ik,11919
|
|
114
|
-
webscout/Provider/Venice.py,sha256=
|
|
115
|
-
webscout/Provider/VercelAI.py,sha256=
|
|
116
|
-
webscout/Provider/WiseCat.py,sha256=
|
|
117
|
-
webscout/Provider/WrDoChat.py,sha256=
|
|
118
|
-
webscout/Provider/
|
|
119
|
-
webscout/Provider/WritingMate.py,sha256=fOZ5Tu1A-PKFpl10ekheEy0h0qclSoO__KkBrci_aiI,12332
|
|
115
|
+
webscout/Provider/Venice.py,sha256=knVMQGZESmx1cfUfBKboXlBKFsGtQxShYJZ3Cf_8Saw,10216
|
|
116
|
+
webscout/Provider/VercelAI.py,sha256=MFmx-hMcu6-Xbx3-1ZRtyGSA0VF8I8wGqwQIX9i8AQ0,9978
|
|
117
|
+
webscout/Provider/WiseCat.py,sha256=6ReKCCDHzOV7icExqpHs564y-smrtwyuc4eH3VczwE4,9279
|
|
118
|
+
webscout/Provider/WrDoChat.py,sha256=wHq46_0kn1i4rDN4Y72Uctb-jXXpXT20Z43-MPtfFLs,14100
|
|
119
|
+
webscout/Provider/WritingMate.py,sha256=kvUD3E1nY9w0G79T4lqCKvyWrzX5MP3X9a3HCd8t72U,12203
|
|
120
120
|
webscout/Provider/XenAI.py,sha256=GZL9J_1yGc3ft2Uo3eq7jS2cZy0ytIPgQ6eNyEN1MAM,13514
|
|
121
|
-
webscout/Provider/__init__.py,sha256=
|
|
121
|
+
webscout/Provider/__init__.py,sha256=yvR6zuVRtWu6B3R5WlFSKeDAuhy2ZW9Y3S8JVnW8A2w,4041
|
|
122
122
|
webscout/Provider/ai4chat.py,sha256=4PvQxPAWlaDgSyo5Dg1W6BVIUDTHq0rFK0H7rcBiCOI,6845
|
|
123
123
|
webscout/Provider/akashgpt.py,sha256=iJke-aCmTT_8RmrJbSAZayhtIimum1h680diJwBxdOI,13045
|
|
124
124
|
webscout/Provider/asksteve.py,sha256=qDRe4X6EmgOkhzRz8AAMYUSQFuO5k_84jwgPWKFkjGY,8985
|
|
@@ -130,106 +130,111 @@ webscout/Provider/deepseek_assistant.py,sha256=KdQ_Ldg_7jUpSIWmxgz6tXS-uOmE5rPKm
|
|
|
130
130
|
webscout/Provider/elmo.py,sha256=PiiRLwkyHsPmAY8uydd_TuWe2qVXbs_wfW5u4Ytbqp8,12875
|
|
131
131
|
webscout/Provider/freeaichat.py,sha256=yKTGYYrv_v3xoOcsXc83F0qTBv5rjFKPuZQLX-vRhIQ,9963
|
|
132
132
|
webscout/Provider/geminiapi.py,sha256=-_QbDBF_IiYyOJ0_uAIcE-gfzIs8H86nA5VWX52SRoY,8505
|
|
133
|
-
webscout/Provider/granite.py,sha256=
|
|
133
|
+
webscout/Provider/granite.py,sha256=orHpbcM0_7YWTjp90w1DhNlqkJUyTkx2dH_KPi7VknM,11251
|
|
134
134
|
webscout/Provider/hermes.py,sha256=Dw3zQQ1r850_qhNSMGwQBO6EfpTsN91yV9QZaDVHCi0,10720
|
|
135
135
|
webscout/Provider/julius.py,sha256=ra20kGPafLDgV8gd2Z-Yce5eKlgSjFl4CpyHtEmHIlg,8583
|
|
136
|
-
webscout/Provider/koala.py,sha256=
|
|
137
|
-
webscout/Provider/learnfastai.py,sha256=
|
|
136
|
+
webscout/Provider/koala.py,sha256=JU-_PG0nzPdsuB2naaHTxe2ObZPDD5TtUwTzYx9AEoE,7100
|
|
137
|
+
webscout/Provider/learnfastai.py,sha256=Ch8PGpDlAh5tnwLeugD2_pOUwVuQZyVNtCtn7u9ffFs,12368
|
|
138
138
|
webscout/Provider/llama3mitril.py,sha256=FU98n5qsYnmd0y1jPz48FqTktC50zQunpSaMwDQnh_A,9210
|
|
139
|
-
webscout/Provider/llmchat.py,sha256=
|
|
140
|
-
webscout/Provider/llmchatco.py,sha256=
|
|
139
|
+
webscout/Provider/llmchat.py,sha256=uCkrTjS41_PwlvT2SdlcXaQa3zS9Y6DV_nlBq9j3dco,9737
|
|
140
|
+
webscout/Provider/llmchatco.py,sha256=Fiqljgb2QN4lDLPAZefRX4_A0-Lmxzcyd1v6ydrepKE,11530
|
|
141
141
|
webscout/Provider/lmarena.py,sha256=wPwj0xv1x1cPx10DgYTsJatl5MIqjc61Q0GypfGigOA,9640
|
|
142
142
|
webscout/Provider/meta.py,sha256=uQw0yS80eXoPqVfmWvwE_pvjTVYDDiTu4xrmfKmrqI0,30741
|
|
143
|
-
webscout/Provider/multichat.py,sha256=
|
|
144
|
-
webscout/Provider/oivscode.py,sha256=
|
|
143
|
+
webscout/Provider/multichat.py,sha256=DOt1E4e9X01UxqbDcNy2RPjvgVP3_4ZJb-EWyAn-sgg,15277
|
|
144
|
+
webscout/Provider/oivscode.py,sha256=3QR2_8nq1ceVTz_TZHCYTuAeK00orOWkpieSK6cgo3o,12713
|
|
145
145
|
webscout/Provider/samurai.py,sha256=xwl5CXgV5E_93ATMDXh6QtUKuLK7h0kuGN7JWAJLOCc,8446
|
|
146
|
-
webscout/Provider/scira_chat.py,sha256=
|
|
147
|
-
webscout/Provider/scnet.py,sha256=
|
|
148
|
-
webscout/Provider/searchchat.py,sha256=
|
|
149
|
-
webscout/Provider/sonus.py,sha256=
|
|
146
|
+
webscout/Provider/scira_chat.py,sha256=i6DuGFEhOGUCvMLj9ErI7Taq4DxkKvZYm-HQtSxIYBU,15102
|
|
147
|
+
webscout/Provider/scnet.py,sha256=FgdOFixINiP9ONoMOUmAgMq_i8wiVfb_oW20R4CTe7M,11418
|
|
148
|
+
webscout/Provider/searchchat.py,sha256=2mrI-qcc_XwypuTDywGnU8l94SKRImZMwmtT05aNEKw,12426
|
|
149
|
+
webscout/Provider/sonus.py,sha256=yDe_00pIFBlMngj7vHO3hNjbKowOTR6i-ZGsvJpz3UQ,11342
|
|
150
150
|
webscout/Provider/talkai.py,sha256=18EB9FPx2rOWdnuqMtBZc_QbLWKNFj06n1Xdtm6npwg,7613
|
|
151
|
-
webscout/Provider/toolbaz.py,sha256=
|
|
152
|
-
webscout/Provider/turboseek.py,sha256=
|
|
153
|
-
webscout/Provider/typefully.py,sha256=
|
|
154
|
-
webscout/Provider/typegpt.py,sha256=
|
|
155
|
-
webscout/Provider/uncovr.py,sha256=
|
|
156
|
-
webscout/Provider/x0gpt.py,sha256
|
|
157
|
-
webscout/Provider/yep.py,sha256=
|
|
151
|
+
webscout/Provider/toolbaz.py,sha256=x3VyljJCZ0G3byohS18xBe37SJNtGftOQlcuX7OuIx8,15038
|
|
152
|
+
webscout/Provider/turboseek.py,sha256=hWVWlQiNYHCejWcc28RtsbYQa5Zm_4FOCh9thHESCuQ,11244
|
|
153
|
+
webscout/Provider/typefully.py,sha256=sxzh7zYvuKGHM4y9nN3nzz_IBFUJ37W_V_TjJarVy2Q,8797
|
|
154
|
+
webscout/Provider/typegpt.py,sha256=jeuxZlY8K6JXTum16l5rT10IzZCyTVF2jW9UekIWA24,12391
|
|
155
|
+
webscout/Provider/uncovr.py,sha256=Fjq1YTbNCDVetbkNMpphzVJOKC4DZpWs9d-Bo-jqvyA,14534
|
|
156
|
+
webscout/Provider/x0gpt.py,sha256=-6E1N3wI9cB_AqWmeHwOGqyJRbrdVggWf41c5jDDznw,12458
|
|
157
|
+
webscout/Provider/yep.py,sha256=WA6Z14ikRHy53XoAy9AThwryrHE1B6UDaBuvAjMU5DY,17041
|
|
158
158
|
webscout/Provider/AISEARCH/DeepFind.py,sha256=nYS9wCAj5ODkIjGaNKPRfYkJ1kQai7kL32QCnh_oOuQ,10117
|
|
159
159
|
webscout/Provider/AISEARCH/Perplexity.py,sha256=AcKqelQfjR5TULqCSA7s6U5-T3zv4HXvV13pFrdj4Dk,15138
|
|
160
160
|
webscout/Provider/AISEARCH/README.md,sha256=3WlTa-icOdDyyJpHsgmL0mfJ2BV_ViIC-hlMlRwbZYI,9693
|
|
161
|
-
webscout/Provider/AISEARCH/__init__.py,sha256=
|
|
161
|
+
webscout/Provider/AISEARCH/__init__.py,sha256=SvvTHqJZs9eF6w6G9NZKEk8MBSbu8imjhgHetUguHHg,292
|
|
162
162
|
webscout/Provider/AISEARCH/felo_search.py,sha256=UPr6pOAoVIsEfqf_w9c10qv7HWtqHeXia0WMJEb8VMY,8408
|
|
163
163
|
webscout/Provider/AISEARCH/genspark_search.py,sha256=dsTaopBuuiK09uo_Dw5yQQTkB3jL4UHdy60nPZmryoA,16670
|
|
164
164
|
webscout/Provider/AISEARCH/hika_search.py,sha256=puGSf65CCVCj9w-C1lh2wPgNFlWr9TCNVjxO4WSj3O4,6757
|
|
165
165
|
webscout/Provider/AISEARCH/iask_search.py,sha256=48f5z7hV_y_hAYH4J3Ywsj-sPG_7UHjsSbs90AUDKZA,17629
|
|
166
166
|
webscout/Provider/AISEARCH/monica_search.py,sha256=5-6XHPCXw7eNyJt5WHosqegCAN39aGZauz4AEmuCdP0,8614
|
|
167
167
|
webscout/Provider/AISEARCH/scira_search.py,sha256=OoozAGcyB4--XkohCltgdgBK1aNw4lEVTWQJI3D_0Z4,11371
|
|
168
|
+
webscout/Provider/AISEARCH/stellar_search.py,sha256=N5GByrBLrXlFREJFDaARyCH6laao4XX38vrvIa1U4Jg,6588
|
|
168
169
|
webscout/Provider/AISEARCH/webpilotai_search.py,sha256=eBjfuXB_HNkTL5Z_--JyrwH8e4cJ52hcwrB-rV0_KQU,11511
|
|
169
|
-
webscout/Provider/OPENAI/BLACKBOXAI.py,sha256=
|
|
170
|
+
webscout/Provider/OPENAI/BLACKBOXAI.py,sha256=36PMvkkArXeMf_oxI_bqly5cTSPwZ92BFRipsk1AiU8,48008
|
|
170
171
|
webscout/Provider/OPENAI/Cloudflare.py,sha256=jGvB6iInA2U1hjZ5TVy_Pt3U47u0zEgyZireNYQVHIY,14765
|
|
171
172
|
webscout/Provider/OPENAI/FalconH1.py,sha256=ISWDHCuR7hKZbmWesxG83n5ihq1v3a8HTWs_0gktse0,22454
|
|
172
173
|
webscout/Provider/OPENAI/FreeGemini.py,sha256=8QNiVs4s9eh0g-lKSL4Y3J35C3P47GIe5MhuEmsI6Vw,11227
|
|
173
174
|
webscout/Provider/OPENAI/GeminiProxy.py,sha256=9_6VHFylM3-ct0m5XDvxfZ1tmd70RnyZl5HT-qv1g4E,11266
|
|
175
|
+
webscout/Provider/OPENAI/MiniMax.py,sha256=hWrKiiXm5geUqTHDwKcOfhanb2eoejeOTjdCDZnKyic,14426
|
|
174
176
|
webscout/Provider/OPENAI/NEMOTRON.py,sha256=ZwBgNe3b466zkJ7JYtzLvobQte-Gppk1_YOBGGk6Mc8,9731
|
|
175
177
|
webscout/Provider/OPENAI/PI.py,sha256=MHkX7wsXJIdItwOfMMGEo8OzlZXIaolopBda7b_SpfQ,15185
|
|
176
178
|
webscout/Provider/OPENAI/Qwen3.py,sha256=91wKmXhM8gXyP6pat7fspr1XW0clN91Spx_Cq8WBL7o,16073
|
|
177
|
-
webscout/Provider/OPENAI/README.md,sha256=
|
|
179
|
+
webscout/Provider/OPENAI/README.md,sha256=eqiEm3vL4kMOk1hi0ba5V1rIqW0SveXW1co_Uqthpxo,25083
|
|
178
180
|
webscout/Provider/OPENAI/README_AUTOPROXY.md,sha256=EqZ8MJOg8LPdH5wzNHvvu40bUNYwqtozXaT7BL-NbEo,6244
|
|
179
|
-
webscout/Provider/OPENAI/TogetherAI.py,sha256=
|
|
181
|
+
webscout/Provider/OPENAI/TogetherAI.py,sha256=tvOKKaIy6PRtQq4Z_B7hrNzbcvNfdUgKsqB0cUr0ixc,13800
|
|
180
182
|
webscout/Provider/OPENAI/TwoAI.py,sha256=seRAKgp10vg5ilacJ6f5kfXytVshM1Bx4b1VJvVNk34,14590
|
|
181
|
-
webscout/Provider/OPENAI/__init__.py,sha256=
|
|
183
|
+
webscout/Provider/OPENAI/__init__.py,sha256=JOqDyCP1j0Fvd6rGkR8m0pPzX78HnN_x6olft166s90,1688
|
|
182
184
|
webscout/Provider/OPENAI/ai4chat.py,sha256=I0o7ZnGzG_2-PZfDDEbTMPh5OCx-4LfqfNcUFFdZAGY,11273
|
|
183
|
-
webscout/Provider/OPENAI/autoproxy.py,sha256=
|
|
184
|
-
webscout/Provider/OPENAI/base.py,sha256=
|
|
185
|
+
webscout/Provider/OPENAI/autoproxy.py,sha256=UYWkCKj9dRXZvsn4Zqeux2-OdrQIw9R7kQeCExYgElU,41314
|
|
186
|
+
webscout/Provider/OPENAI/base.py,sha256=pjyz1e4Y1A9nttOZRMsihqhcP6ujGctzr7BNTXEtNd8,10507
|
|
185
187
|
webscout/Provider/OPENAI/c4ai.py,sha256=f0rzU1a5B3NJDNfOjvFoyTlDdmwuwL_3NfFr2uKqkxY,15636
|
|
186
188
|
webscout/Provider/OPENAI/chatgpt.py,sha256=z2R7GmsI-xVSrzVjnwmSXqm-SBuZAt9UE0DNvYXlPlc,20787
|
|
187
189
|
webscout/Provider/OPENAI/chatgptclone.py,sha256=XHrp4lw9AD3wr9MW2Aar9H-6Aw8l-TgmCLXM9OiH8fE,20423
|
|
188
190
|
webscout/Provider/OPENAI/chatsandbox.py,sha256=nmFQdZaj6puw28Hux57f-E8UYqNQnaMnQBOdhnd-ZQY,6999
|
|
189
191
|
webscout/Provider/OPENAI/copilot.py,sha256=6I6BsRTRfYehZxraTf5r0flWUl3-QBwLMVFuc6XWe-Y,9395
|
|
190
|
-
webscout/Provider/OPENAI/deepinfra.py,sha256=
|
|
192
|
+
webscout/Provider/OPENAI/deepinfra.py,sha256=mcyKcpbtVheuiDmrfXKcQENc3kP-qFhSY-MMUsRuvF4,11605
|
|
191
193
|
webscout/Provider/OPENAI/e2b.py,sha256=sgLJ5FF-thlY8SYW0pqzFfQltiQfH6QwZqELydtUPFo,71438
|
|
192
194
|
webscout/Provider/OPENAI/exaai.py,sha256=D7i2zpxQhjo_LRnO0nzAU651aOWgXM_9_AQjcRX2IY0,15066
|
|
193
195
|
webscout/Provider/OPENAI/exachat.py,sha256=z95aqrunxVNlF_y_REGz_hhxirQP18DrBrGYlabiMlA,15632
|
|
194
|
-
webscout/Provider/OPENAI/flowith.py,sha256=
|
|
196
|
+
webscout/Provider/OPENAI/flowith.py,sha256=ieMIuIlEQeaPQX599GSY4us3nmalik02oSLIAoJKmJA,6580
|
|
195
197
|
webscout/Provider/OPENAI/freeaichat.py,sha256=4lReAFaRRWobeH_A8WNcqlaOqA-uc0kWqAa10gocasY,12229
|
|
198
|
+
webscout/Provider/OPENAI/friendli.py,sha256=vIOlpc-HBVSi-kfb956wEpBzabtU6HY-Tm5yf-THfvI,10446
|
|
196
199
|
webscout/Provider/OPENAI/glider.py,sha256=DpVOvgZZQXCuaHJPKGqrvis4EkVlXxX5s207nDz7evE,13758
|
|
197
200
|
webscout/Provider/OPENAI/groq.py,sha256=if3RBZmFwqSKtYPwlVzK_YGGGlFv4dRxw2obGs8MvRE,14564
|
|
198
201
|
webscout/Provider/OPENAI/heckai.py,sha256=br0Zj_rvOCL1w_N3SVltiVlQQQhlCwAb-WOhaFaEwh4,11709
|
|
199
202
|
webscout/Provider/OPENAI/llmchatco.py,sha256=CUcFgZuuV4njk9HEocnCGnLg7zcTB1k1awRJSHX5NFA,15371
|
|
200
203
|
webscout/Provider/OPENAI/mcpcore.py,sha256=UsIAKXiO9F3p6m5yptjslAo60NJa5AmtcaQOqzDD3EU,18939
|
|
204
|
+
webscout/Provider/OPENAI/monochat.py,sha256=ugoYn6Wwl_xbDEj8k0n_r0cYQXS18gh5pxUBL2b176E,11509
|
|
201
205
|
webscout/Provider/OPENAI/multichat.py,sha256=r65SxO4GxolYCs5Phoys_1xZtIEqolyW-I539Zj_mXM,13989
|
|
202
206
|
webscout/Provider/OPENAI/netwrck.py,sha256=vWeh8T3VdC4EdD6Rd-9PrdPOFQnl4RRqlBuXlSenvfE,13287
|
|
203
207
|
webscout/Provider/OPENAI/oivscode.py,sha256=Gjw2SETSIkIGREk5BfdEkkQL_RjnI8jFcwxLmUvlzOE,11875
|
|
204
208
|
webscout/Provider/OPENAI/opkfc.py,sha256=2YdpcNxMn2p3w9Z7mQ7g0dFJ17zzAgvnIM4UwCgynpM,21877
|
|
205
|
-
webscout/Provider/OPENAI/pydantic_imports.py,sha256=
|
|
209
|
+
webscout/Provider/OPENAI/pydantic_imports.py,sha256=argzn_wiEY1Ymf2eU5W41V93aZOU0EPEbCtpL0X-TEQ,24
|
|
206
210
|
webscout/Provider/OPENAI/scirachat.py,sha256=T9C04sjdqV3wgjcqufuhxXoIicMG2bOu00FJ88Uvvt0,19173
|
|
207
211
|
webscout/Provider/OPENAI/sonus.py,sha256=nRUJkK0T08Ao1WLF5ySmCpfH4x9C8wUXjezW4mygqJo,11159
|
|
208
212
|
webscout/Provider/OPENAI/standardinput.py,sha256=xBHWMRZcPwDJZaQvszaZmKwFzV3wCpwnoynSvsIqhTQ,19547
|
|
209
213
|
webscout/Provider/OPENAI/textpollinations.py,sha256=6KHxk41zvqPqhDNPSASHO-_QzpKPCM6KL4tpchgW3yw,13134
|
|
210
|
-
webscout/Provider/OPENAI/toolbaz.py,sha256=
|
|
214
|
+
webscout/Provider/OPENAI/toolbaz.py,sha256=nFbfZ9f-V8LvK3C-A_jKAqi1SVs70Bn9PE5f484V8JA,14266
|
|
211
215
|
webscout/Provider/OPENAI/typefully.py,sha256=yuOf1Idb6LCkK_YT4c9ABnjTuwRzSzffX-OAumSqrJQ,13004
|
|
212
|
-
webscout/Provider/OPENAI/typegpt.py,sha256=
|
|
216
|
+
webscout/Provider/OPENAI/typegpt.py,sha256=AQwXHMGF8NNoVR1MpOfZN-y1xXndaoJCRFfAxJdg2Mg,14136
|
|
213
217
|
webscout/Provider/OPENAI/uncovrAI.py,sha256=3a6h1ixmLZGglRuPVV1rhoDRgNkxTCVTuklegJ-6JY4,18333
|
|
214
|
-
webscout/Provider/OPENAI/utils.py,sha256=
|
|
218
|
+
webscout/Provider/OPENAI/utils.py,sha256=UB9MBoPEXl7zinIeZ3sQU1K5PTZjtzV-CBj9KiS3CYk,9374
|
|
215
219
|
webscout/Provider/OPENAI/venice.py,sha256=OLexvhEDEBe0r9mHiclwzDovU8OStQqouUUyeJrEcr0,16141
|
|
216
220
|
webscout/Provider/OPENAI/wisecat.py,sha256=fvD_Lz1wIpHiWTG2zdA5lr53vR3biHtMJ-1WZbkNnJQ,14071
|
|
217
221
|
webscout/Provider/OPENAI/writecream.py,sha256=kiOJ-9iT5RNR1LDyZ_XoQCeVXZuPPnO_CdvEuZdk1s4,6529
|
|
218
|
-
webscout/Provider/OPENAI/x0gpt.py,sha256=
|
|
222
|
+
webscout/Provider/OPENAI/x0gpt.py,sha256=iqcTzDTiiMD-YOskZu_ZpXn55mKooQ4NFacK4049aMQ,13400
|
|
219
223
|
webscout/Provider/OPENAI/xenai.py,sha256=wPXB9uam_igQ9iOjXBARmYBzD4hzRKy4vxGh8BosPEc,22531
|
|
220
224
|
webscout/Provider/OPENAI/yep.py,sha256=ksuKhFSbVw6_50pdg5Uf2qKjV-ND1WRkonLZuG2oBrk,16261
|
|
221
225
|
webscout/Provider/STT/__init__.py,sha256=BWYNyzX5tgt68dL_WO6fQIZ8H6NpRJz-JQcEPXCy7Uc,98
|
|
222
226
|
webscout/Provider/STT/base.py,sha256=Xue1mo6Lj00rRxU1lRsv_zQ7_igU7hLON7lHkw_Li28,8404
|
|
223
227
|
webscout/Provider/STT/elevenlabs.py,sha256=lZs3HwGrnJ3jY81WeV1H7yJTVulitTE1lI2Lhkx42HA,9168
|
|
224
|
-
webscout/Provider/TTI/README.md,sha256=
|
|
225
|
-
webscout/Provider/TTI/__init__.py,sha256=
|
|
226
|
-
webscout/Provider/TTI/aiarta.py,sha256=
|
|
228
|
+
webscout/Provider/TTI/README.md,sha256=10mWDIrA39EhWGRnTWrVhhS3CwKT97yOkSc0dMLUQxM,2983
|
|
229
|
+
webscout/Provider/TTI/__init__.py,sha256=4M_7yW3ekcT2GWEoKQCXv1bIutw8UYtU5ICcQ2B9k5s,273
|
|
230
|
+
webscout/Provider/TTI/aiarta.py,sha256=s7_ovvGJXTpH7TMMqBaQi00JKhUM5lcsG3PDdLp90Ps,15369
|
|
227
231
|
webscout/Provider/TTI/base.py,sha256=DCf8UfTM64D93DToY9Dc8KA-VgNIDFWVM-_nHp-wN5Q,5224
|
|
228
232
|
webscout/Provider/TTI/bing.py,sha256=OvB76EYAjNU3hsDZ76YqI-LpinCzFO4mWk3GXMIjG1A,10551
|
|
229
|
-
webscout/Provider/TTI/fastflux.py,sha256=-Qqg-BTCb9JBI86abttQ55UtWbIud-lPi6Z6U7aHlN0,9674
|
|
230
233
|
webscout/Provider/TTI/gpt1image.py,sha256=4xE5MFfjuKMc3lO3QCsEYvgidyoDhmvF7J1_sBqzmoU,4980
|
|
231
234
|
webscout/Provider/TTI/imagen.py,sha256=1qoyUeoqrzbQ660P5TFIJQVuZnwZQL65tCNEIXjD7CY,6684
|
|
235
|
+
webscout/Provider/TTI/infip.py,sha256=QQYBsof2pC0lqC1oAy6lex2LoRlDVg6Uu6qao0bZnsE,7294
|
|
232
236
|
webscout/Provider/TTI/magicstudio.py,sha256=9V2xK7k-7f-ohZgxJNXYZkVDTY5hSCjWQTcRK7KI86g,9286
|
|
237
|
+
webscout/Provider/TTI/monochat.py,sha256=1brykP1FyOEJOxbVM-Dpi4VKvo25eSlNYIssRQ-RES8,8632
|
|
233
238
|
webscout/Provider/TTI/piclumen.py,sha256=JM7aLa1Mdv4xuB0d1XLqS0t9yMR9C8Rgtv7979wtETc,7978
|
|
234
239
|
webscout/Provider/TTI/pixelmuse.py,sha256=k2NypIvZ1Xfe9ubL0Hkg5zkY-VLLvk4uZtPHmUFlmQg,8625
|
|
235
240
|
webscout/Provider/TTI/pollinations.py,sha256=tu1FAvAetET9KnwiXVlhsIEjfJZPghgSDdl7oFqLBso,8688
|
|
@@ -256,7 +261,7 @@ webscout/Provider/UNFINISHED/fetch_together_models.py,sha256=IkGppAIbwIfvJRwzpyi
|
|
|
256
261
|
webscout/Provider/UNFINISHED/liner_api_request.py,sha256=yTVXbqZMTyo5oOPX_FO95fO56TT5hkbt8r4PK7ahFqw,10558
|
|
257
262
|
webscout/Provider/UNFINISHED/puterjs.py,sha256=Hhtz9PS8wSuG2BDUbPp2qLS5AQSAZzQ2viqC_-F-9yM,28225
|
|
258
263
|
webscout/Provider/UNFINISHED/test_lmarena.py,sha256=-BfHfe14HbozIkYUNl2RqI5Ih2VdSXv6DInBlUfvMZk,3853
|
|
259
|
-
webscout/auth/__init__.py,sha256=
|
|
264
|
+
webscout/auth/__init__.py,sha256=5DRoEayUBirss358dwignHLSqzRCt_svovbi2uBu9Gc,1438
|
|
260
265
|
webscout/auth/api_key_manager.py,sha256=a3F4d2r7h3GqV-wxNj2vNLkU9o0-ld-XU9udt_CQL0g,6954
|
|
261
266
|
webscout/auth/auth_system.py,sha256=LPMtrqpi7EQhqdbWQ5RKu4nIhsT4CShvIEaF9Zo-khc,3171
|
|
262
267
|
webscout/auth/config.py,sha256=PLg6RS59DKdP0BMU71LbnikBuR9eZBouvzUsRQH3Ff4,2911
|
|
@@ -264,33 +269,16 @@ webscout/auth/database.py,sha256=OPZTkXtC75cwZkflHc2gheOANqDXrbUdKjfvNHNpWuQ,154
|
|
|
264
269
|
webscout/auth/exceptions.py,sha256=FGqNLQmjv2i3Jk_P3csJzT4qkmVdBMdH7vFkM37Xa3Y,2048
|
|
265
270
|
webscout/auth/middleware.py,sha256=zSQBIt0LacbeyNjwRIfnO-tdE7-p0w77UkPd7aUTri0,9863
|
|
266
271
|
webscout/auth/models.py,sha256=zlHiAkOoXu5LdpOwVxsYmHXrxIu5DQb0Xli86800vaE,5018
|
|
267
|
-
webscout/auth/providers.py,sha256=
|
|
272
|
+
webscout/auth/providers.py,sha256=gE0zKl8gwCD2P0e16y6YnbhmBM1qut0wKwAk5jmt8LI,11646
|
|
268
273
|
webscout/auth/rate_limiter.py,sha256=8l1CpUY5YkY8SPHvZxL2SejAkO93uNklwQeSbjRxU5A,9925
|
|
269
274
|
webscout/auth/request_models.py,sha256=hgo0AZ5CknEWCmZ4KBMs8T0xjmtlecbk645yU622Ujs,5804
|
|
270
275
|
webscout/auth/request_processing.py,sha256=1fs-sfiNAR04B5Rj4ui5EEjgPsBCXMqf73li6mQpDEU,10569
|
|
271
|
-
webscout/auth/routes.py,sha256=
|
|
276
|
+
webscout/auth/routes.py,sha256=MYZJ2FfMhhbOk1ISyRnQ9CJsB7XFLPnzQFS3J7odHjs,25083
|
|
272
277
|
webscout/auth/schemas.py,sha256=fu3-V9F0n5AZ65A-fGGiBiuQcwk1Ec3urO7N30Nv90o,4577
|
|
273
|
-
webscout/auth/server.py,sha256=
|
|
274
|
-
webscout/
|
|
275
|
-
webscout/auth/static/favicon.svg,sha256=d1vxz4TLRKt2oV9W3gaoQuw1ydKg-Wk3mgQSK0uk8_w,548
|
|
276
|
-
webscout/auth/templates/swagger_ui.html,sha256=2_8rKou9WfqbeeWqfCFQLo9DpNpkpbR-E8qhdIkBQxg,6713
|
|
277
|
-
webscout/auth/templates/components/authentication.html,sha256=UXx2ixnsxdgkeWOoPT6ozYNNxw3lgNqcuqWozS8v-74,11495
|
|
278
|
-
webscout/auth/templates/components/base.html,sha256=R7I7v4s9Vuvl3qg-Peq6lVmU8mErc_uwQZvuycBby7c,4086
|
|
279
|
-
webscout/auth/templates/components/endpoints.html,sha256=631YiwacqNWZSnADBPcMzZD5SzTIdGa72Xap2Ak6twc,36921
|
|
280
|
-
webscout/auth/templates/components/examples.html,sha256=Lu60kvAknIytLcyLxihiTt1ottl_otTpv0Jnr3jA85A,16113
|
|
281
|
-
webscout/auth/templates/components/footer.html,sha256=l7XlPkhgQsCeaP_LkfuZ8C20w2ew28Xc_Yhc5NtM3Hc,3951
|
|
282
|
-
webscout/auth/templates/components/header.html,sha256=sbpcieP4l9yJR8DvxgKdIlIiRN9OSkBjfKkTv1IgN1w,1293
|
|
283
|
-
webscout/auth/templates/components/models.html,sha256=nym-1NzJv0LPh23vO2H-0M730y3D4d9tfB-ptt3eFVE,12311
|
|
284
|
-
webscout/auth/templates/components/navigation.html,sha256=wZOqiu-udzFntp_bs1EvbHD7hXwzf6A1fXXINYio-ho,2299
|
|
285
|
-
webscout/auth/templates/static/api.js,sha256=ds4LXqMnMyZkJOA2PdQbwtPhuabnlrUB5FokEk9fTK8,15738
|
|
286
|
-
webscout/auth/templates/static/icons.js,sha256=JFLe3fMNf7VD0GgXkJpud-LLpXZDso_sB0A1C0hB6to,7907
|
|
287
|
-
webscout/auth/templates/static/main.js,sha256=zRK6KuzZ5a5ZUu0O29mv9CBYbFzJUL25z5D75XmZSBY,29770
|
|
288
|
-
webscout/auth/templates/static/particles.js,sha256=xxcAEXq-D9jii7qMkTCAAr_mx1BHJfI6RekNKo6yZ_M,6748
|
|
289
|
-
webscout/auth/templates/static/styles.css,sha256=34rk8MiJCH4wxjP8Y44iFlbkT4hpU2B3ZhgvJ1nrUxI,79258
|
|
290
|
-
webscout/auth/templates/static/ui.js,sha256=h13Bl0Hm6AzEJpygUJNLCdWi5_ggIrqU5spidI5Wbls,13461
|
|
291
|
-
webscout/litagent/Readme.md,sha256=UKBFkbJV8KXitJ6fievY9iUvZknS-it35xUu8A3hIO8,7806
|
|
278
|
+
webscout/auth/server.py,sha256=1IxZKoMd2uBtEj1XyTmIGRNPgI_mil0z_JsTQFEcU4M,13653
|
|
279
|
+
webscout/litagent/Readme.md,sha256=WoKNgY1np4xmrfbl6mx1iDitAEyfWySVL97VnfN2QbE,7563
|
|
292
280
|
webscout/litagent/__init__.py,sha256=2HydGSdDVBZ7SRNgGzXX-TJiuol1sxzNJBw7wVAFueo,882
|
|
293
|
-
webscout/litagent/agent.py,sha256=
|
|
281
|
+
webscout/litagent/agent.py,sha256=aflDZYVN_wZQ3OWOUK3ah7bnlFAUBandPfVuxCJZI04,24626
|
|
294
282
|
webscout/litagent/constants.py,sha256=3_3tWXhmyZ2dFIO8f0YWL4CRkoFoL18h0_jNttTN7mk,2175
|
|
295
283
|
webscout/litprinter/__init__.py,sha256=dEsi76uca5Art7tOc3ps240PPrWEVOdTLgR2pim1u9I,2510
|
|
296
284
|
webscout/scout/README.md,sha256=vMMB_XT1F63YfZHpjisgfsuHE3uyT92EAiACCkjRxpE,12487
|
|
@@ -330,9 +318,9 @@ webscout/zeroart/__init__.py,sha256=3reMOf41PFtYVhq2wjFpJbIIHWRcy63efeUpolWm1P0,
|
|
|
330
318
|
webscout/zeroart/base.py,sha256=nkf3WAE3YxKIpOFJ4Xf01T7dyWlbi98F1mIYo6vDux8,2365
|
|
331
319
|
webscout/zeroart/effects.py,sha256=DOMPCNk-IwhnUrXsYSx5oSWeYQ6KN7T_jZOYdEofyMg,3345
|
|
332
320
|
webscout/zeroart/fonts.py,sha256=ZiyQqA0BFN2IH5Ldijqe93rTiROmqPgxpeDtUNmmeRw,38812
|
|
333
|
-
webscout-8.3.
|
|
334
|
-
webscout-8.3.
|
|
335
|
-
webscout-8.3.
|
|
336
|
-
webscout-8.3.
|
|
337
|
-
webscout-8.3.
|
|
338
|
-
webscout-8.3.
|
|
321
|
+
webscout-8.3.3.dist-info/licenses/LICENSE.md,sha256=hyfFlVn7pWcrvuvs-piB8k4J8DlXdOsYje9RyPxc6Ik,7543
|
|
322
|
+
webscout-8.3.3.dist-info/METADATA,sha256=HpTrBBmocXBaHVrH-OoWWaLTGMPUHIQA4OTs-Xd0uTQ,36472
|
|
323
|
+
webscout-8.3.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
324
|
+
webscout-8.3.3.dist-info/entry_points.txt,sha256=WooZuMBei-kQl5qByoRMkc2cHsaDL1Jd2_tSYsNiUGg,116
|
|
325
|
+
webscout-8.3.3.dist-info/top_level.txt,sha256=nYIw7OKBQDr_Z33IzZUKidRD3zQEo8jOJYkMVMeN334,9
|
|
326
|
+
webscout-8.3.3.dist-info/RECORD,,
|
|
@@ -1,233 +0,0 @@
|
|
|
1
|
-
import requests
|
|
2
|
-
import os
|
|
3
|
-
import tempfile
|
|
4
|
-
import time
|
|
5
|
-
import base64
|
|
6
|
-
from typing import Optional, List, Dict, Any
|
|
7
|
-
from webscout.Provider.TTI.utils import (
|
|
8
|
-
ImageData,
|
|
9
|
-
ImageResponse
|
|
10
|
-
)
|
|
11
|
-
from webscout.Provider.TTI.base import TTICompatibleProvider, BaseImages
|
|
12
|
-
from io import BytesIO
|
|
13
|
-
from webscout.litagent import LitAgent
|
|
14
|
-
|
|
15
|
-
try:
|
|
16
|
-
from PIL import Image
|
|
17
|
-
except ImportError:
|
|
18
|
-
Image = None
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
class Images(BaseImages):
|
|
22
|
-
def __init__(self, client):
|
|
23
|
-
self._client = client
|
|
24
|
-
|
|
25
|
-
def create(
|
|
26
|
-
self,
|
|
27
|
-
model: str = "flux_1_schnell",
|
|
28
|
-
prompt: str = None,
|
|
29
|
-
n: int = 1,
|
|
30
|
-
size: str = "1_1",
|
|
31
|
-
response_format: str = "url",
|
|
32
|
-
user: Optional[str] = None,
|
|
33
|
-
style: str = "none",
|
|
34
|
-
aspect_ratio: str = "1:1",
|
|
35
|
-
timeout: int = 60,
|
|
36
|
-
image_format: str = "png",
|
|
37
|
-
is_public: bool = False,
|
|
38
|
-
**kwargs,
|
|
39
|
-
) -> ImageResponse:
|
|
40
|
-
if not prompt:
|
|
41
|
-
raise ValueError("Prompt is required!")
|
|
42
|
-
agent = LitAgent()
|
|
43
|
-
images = []
|
|
44
|
-
urls = []
|
|
45
|
-
api_url = self._client.api_endpoint
|
|
46
|
-
payload = {
|
|
47
|
-
"prompt": prompt,
|
|
48
|
-
"model": model,
|
|
49
|
-
"size": size,
|
|
50
|
-
"isPublic": is_public,
|
|
51
|
-
}
|
|
52
|
-
for _ in range(n):
|
|
53
|
-
resp = self._client.session.post(
|
|
54
|
-
api_url,
|
|
55
|
-
json=payload,
|
|
56
|
-
timeout=timeout,
|
|
57
|
-
)
|
|
58
|
-
resp.raise_for_status()
|
|
59
|
-
result = resp.json()
|
|
60
|
-
if result and "result" in result:
|
|
61
|
-
image_data = result["result"]
|
|
62
|
-
base64_data = image_data.split(",")[1]
|
|
63
|
-
img_bytes = base64.b64decode(base64_data)
|
|
64
|
-
# Convert to png or jpeg in memory if needed
|
|
65
|
-
if Image is not None:
|
|
66
|
-
with BytesIO(img_bytes) as input_io:
|
|
67
|
-
with Image.open(input_io) as im:
|
|
68
|
-
out_io = BytesIO()
|
|
69
|
-
if image_format.lower() == "jpeg":
|
|
70
|
-
im = im.convert("RGB")
|
|
71
|
-
im.save(out_io, format="JPEG")
|
|
72
|
-
else:
|
|
73
|
-
im.save(out_io, format="PNG")
|
|
74
|
-
img_bytes = out_io.getvalue()
|
|
75
|
-
images.append(img_bytes)
|
|
76
|
-
if response_format == "url":
|
|
77
|
-
|
|
78
|
-
def upload_file_with_retry(img_bytes, image_format, max_retries=3):
|
|
79
|
-
ext = "jpg" if image_format.lower() == "jpeg" else "png"
|
|
80
|
-
for attempt in range(max_retries):
|
|
81
|
-
tmp_path = None
|
|
82
|
-
try:
|
|
83
|
-
with tempfile.NamedTemporaryFile(
|
|
84
|
-
suffix=f".{ext}", delete=False
|
|
85
|
-
) as tmp:
|
|
86
|
-
tmp.write(img_bytes)
|
|
87
|
-
tmp.flush()
|
|
88
|
-
tmp_path = tmp.name
|
|
89
|
-
with open(tmp_path, "rb") as f:
|
|
90
|
-
files = {
|
|
91
|
-
"fileToUpload": (
|
|
92
|
-
f"image.{ext}",
|
|
93
|
-
f,
|
|
94
|
-
f"image/{ext}",
|
|
95
|
-
)
|
|
96
|
-
}
|
|
97
|
-
data = {"reqtype": "fileupload", "json": "true"}
|
|
98
|
-
headers = {"User-Agent": agent.random()}
|
|
99
|
-
if attempt > 0:
|
|
100
|
-
headers["Connection"] = "close"
|
|
101
|
-
resp = requests.post(
|
|
102
|
-
"https://catbox.moe/user/api.php",
|
|
103
|
-
files=files,
|
|
104
|
-
data=data,
|
|
105
|
-
headers=headers,
|
|
106
|
-
timeout=timeout,
|
|
107
|
-
)
|
|
108
|
-
if resp.status_code == 200 and resp.text.strip():
|
|
109
|
-
text = resp.text.strip()
|
|
110
|
-
if text.startswith("http"):
|
|
111
|
-
return text
|
|
112
|
-
try:
|
|
113
|
-
result = resp.json()
|
|
114
|
-
if "url" in result:
|
|
115
|
-
return result["url"]
|
|
116
|
-
except Exception:
|
|
117
|
-
if "http" in text:
|
|
118
|
-
return text
|
|
119
|
-
except Exception:
|
|
120
|
-
if attempt < max_retries - 1:
|
|
121
|
-
time.sleep(1 * (attempt + 1))
|
|
122
|
-
finally:
|
|
123
|
-
if tmp_path and os.path.isfile(tmp_path):
|
|
124
|
-
try:
|
|
125
|
-
os.remove(tmp_path)
|
|
126
|
-
except Exception:
|
|
127
|
-
pass
|
|
128
|
-
return None
|
|
129
|
-
|
|
130
|
-
def upload_file_alternative(img_bytes, image_format):
|
|
131
|
-
try:
|
|
132
|
-
ext = "jpg" if image_format.lower() == "jpeg" else "png"
|
|
133
|
-
with tempfile.NamedTemporaryFile(
|
|
134
|
-
suffix=f".{ext}", delete=False
|
|
135
|
-
) as tmp:
|
|
136
|
-
tmp.write(img_bytes)
|
|
137
|
-
tmp.flush()
|
|
138
|
-
tmp_path = tmp.name
|
|
139
|
-
try:
|
|
140
|
-
if not os.path.isfile(tmp_path):
|
|
141
|
-
return None
|
|
142
|
-
with open(tmp_path, "rb") as img_file:
|
|
143
|
-
files = {"file": img_file}
|
|
144
|
-
response = requests.post(
|
|
145
|
-
"https://0x0.st", files=files
|
|
146
|
-
)
|
|
147
|
-
response.raise_for_status()
|
|
148
|
-
image_url = response.text.strip()
|
|
149
|
-
if not image_url.startswith("http"):
|
|
150
|
-
return None
|
|
151
|
-
return image_url
|
|
152
|
-
except Exception:
|
|
153
|
-
return None
|
|
154
|
-
finally:
|
|
155
|
-
try:
|
|
156
|
-
os.remove(tmp_path)
|
|
157
|
-
except Exception:
|
|
158
|
-
pass
|
|
159
|
-
except Exception:
|
|
160
|
-
return None
|
|
161
|
-
|
|
162
|
-
uploaded_url = upload_file_with_retry(img_bytes, image_format)
|
|
163
|
-
if not uploaded_url:
|
|
164
|
-
uploaded_url = upload_file_alternative(img_bytes, image_format)
|
|
165
|
-
if uploaded_url:
|
|
166
|
-
urls.append(uploaded_url)
|
|
167
|
-
else:
|
|
168
|
-
raise RuntimeError(
|
|
169
|
-
"Failed to upload image to catbox.moe using all available methods"
|
|
170
|
-
)
|
|
171
|
-
else:
|
|
172
|
-
raise RuntimeError("No image data received from FastFlux API")
|
|
173
|
-
result_data = []
|
|
174
|
-
if response_format == "url":
|
|
175
|
-
for url in urls:
|
|
176
|
-
result_data.append(ImageData(url=url))
|
|
177
|
-
elif response_format == "b64_json":
|
|
178
|
-
import base64
|
|
179
|
-
|
|
180
|
-
for img in images:
|
|
181
|
-
b64 = base64.b64encode(img).decode("utf-8")
|
|
182
|
-
result_data.append(ImageData(b64_json=b64))
|
|
183
|
-
else:
|
|
184
|
-
raise ValueError("response_format must be 'url' or 'b64_json'")
|
|
185
|
-
from time import time as _time
|
|
186
|
-
|
|
187
|
-
return ImageResponse(created=int(_time()), data=result_data)
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
class FastFluxAI(TTICompatibleProvider):
|
|
191
|
-
AVAILABLE_MODELS = [
|
|
192
|
-
"flux_1_schnell",
|
|
193
|
-
]
|
|
194
|
-
|
|
195
|
-
def __init__(self, api_key: str = None):
|
|
196
|
-
self.api_endpoint = "https://api.freeflux.ai/v1/images/generate"
|
|
197
|
-
self.session = requests.Session()
|
|
198
|
-
self.user_agent = LitAgent().random()
|
|
199
|
-
self.api_key = api_key
|
|
200
|
-
self.headers = {
|
|
201
|
-
"accept": "application/json, text/plain, */*",
|
|
202
|
-
"accept-language": "en-US,en;q=0.9",
|
|
203
|
-
"content-type": "application/json",
|
|
204
|
-
"origin": "https://freeflux.ai",
|
|
205
|
-
"referer": "https://freeflux.ai/",
|
|
206
|
-
"user-agent": self.user_agent,
|
|
207
|
-
}
|
|
208
|
-
if self.api_key:
|
|
209
|
-
self.headers["authorization"] = f"Bearer {self.api_key}"
|
|
210
|
-
self.session.headers.update(self.headers)
|
|
211
|
-
self.images = Images(self)
|
|
212
|
-
|
|
213
|
-
@property
|
|
214
|
-
def models(self):
|
|
215
|
-
class _ModelList:
|
|
216
|
-
def list(inner_self):
|
|
217
|
-
return type(self).AVAILABLE_MODELS
|
|
218
|
-
|
|
219
|
-
return _ModelList()
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
if __name__ == "__main__":
|
|
223
|
-
from rich import print
|
|
224
|
-
|
|
225
|
-
client = FastFluxAI()
|
|
226
|
-
response = client.images.create(
|
|
227
|
-
model="flux_1_schnell",
|
|
228
|
-
prompt="A cool cyberpunk city at night",
|
|
229
|
-
response_format="url",
|
|
230
|
-
n=2,
|
|
231
|
-
timeout=30,
|
|
232
|
-
)
|
|
233
|
-
print(response)
|