webscout 7.9__py3-none-any.whl → 8.1__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.

Files changed (69) hide show
  1. webscout/Extra/GitToolkit/__init__.py +10 -0
  2. webscout/Extra/GitToolkit/gitapi/__init__.py +12 -0
  3. webscout/Extra/GitToolkit/gitapi/repository.py +195 -0
  4. webscout/Extra/GitToolkit/gitapi/user.py +96 -0
  5. webscout/Extra/GitToolkit/gitapi/utils.py +62 -0
  6. webscout/Extra/YTToolkit/ytapi/video.py +232 -103
  7. webscout/Provider/AISEARCH/DeepFind.py +1 -1
  8. webscout/Provider/AISEARCH/ISou.py +1 -1
  9. webscout/Provider/AISEARCH/__init__.py +6 -1
  10. webscout/Provider/AISEARCH/felo_search.py +1 -1
  11. webscout/Provider/AISEARCH/genspark_search.py +1 -1
  12. webscout/Provider/AISEARCH/hika_search.py +194 -0
  13. webscout/Provider/AISEARCH/iask_search.py +436 -0
  14. webscout/Provider/AISEARCH/monica_search.py +246 -0
  15. webscout/Provider/AISEARCH/scira_search.py +320 -0
  16. webscout/Provider/AISEARCH/webpilotai_search.py +281 -0
  17. webscout/Provider/AllenAI.py +255 -122
  18. webscout/Provider/DeepSeek.py +1 -2
  19. webscout/Provider/Deepinfra.py +17 -9
  20. webscout/Provider/ExaAI.py +261 -0
  21. webscout/Provider/ExaChat.py +8 -1
  22. webscout/Provider/GithubChat.py +2 -1
  23. webscout/Provider/Jadve.py +2 -2
  24. webscout/Provider/Netwrck.py +3 -2
  25. webscout/Provider/OPENAI/__init__.py +17 -0
  26. webscout/Provider/OPENAI/base.py +46 -0
  27. webscout/Provider/OPENAI/c4ai.py +347 -0
  28. webscout/Provider/OPENAI/chatgptclone.py +460 -0
  29. webscout/Provider/OPENAI/deepinfra.py +284 -0
  30. webscout/Provider/OPENAI/exaai.py +419 -0
  31. webscout/Provider/OPENAI/exachat.py +421 -0
  32. webscout/Provider/OPENAI/freeaichat.py +355 -0
  33. webscout/Provider/OPENAI/glider.py +314 -0
  34. webscout/Provider/OPENAI/heckai.py +337 -0
  35. webscout/Provider/OPENAI/llmchatco.py +325 -0
  36. webscout/Provider/OPENAI/netwrck.py +348 -0
  37. webscout/Provider/OPENAI/scirachat.py +459 -0
  38. webscout/Provider/OPENAI/sonus.py +294 -0
  39. webscout/Provider/OPENAI/typegpt.py +361 -0
  40. webscout/Provider/OPENAI/utils.py +211 -0
  41. webscout/Provider/OPENAI/venice.py +428 -0
  42. webscout/Provider/OPENAI/wisecat.py +381 -0
  43. webscout/Provider/OPENAI/x0gpt.py +389 -0
  44. webscout/Provider/OPENAI/yep.py +329 -0
  45. webscout/Provider/OpenGPT.py +199 -0
  46. webscout/Provider/PI.py +39 -24
  47. webscout/Provider/Venice.py +1 -1
  48. webscout/Provider/Youchat.py +326 -296
  49. webscout/Provider/__init__.py +16 -6
  50. webscout/Provider/ai4chat.py +58 -56
  51. webscout/Provider/akashgpt.py +34 -22
  52. webscout/Provider/freeaichat.py +1 -1
  53. webscout/Provider/labyrinth.py +121 -20
  54. webscout/Provider/llmchatco.py +306 -0
  55. webscout/Provider/scira_chat.py +274 -0
  56. webscout/Provider/typefully.py +280 -0
  57. webscout/Provider/typegpt.py +3 -184
  58. webscout/prompt_manager.py +2 -1
  59. webscout/version.py +1 -1
  60. webscout/webscout_search.py +118 -54
  61. webscout/webscout_search_async.py +109 -45
  62. webscout-8.1.dist-info/METADATA +683 -0
  63. {webscout-7.9.dist-info → webscout-8.1.dist-info}/RECORD +67 -33
  64. webscout/Provider/flowith.py +0 -207
  65. webscout-7.9.dist-info/METADATA +0 -995
  66. {webscout-7.9.dist-info → webscout-8.1.dist-info}/LICENSE.md +0 -0
  67. {webscout-7.9.dist-info → webscout-8.1.dist-info}/WHEEL +0 -0
  68. {webscout-7.9.dist-info → webscout-8.1.dist-info}/entry_points.txt +0 -0
  69. {webscout-7.9.dist-info → webscout-8.1.dist-info}/top_level.txt +0 -0
@@ -11,18 +11,23 @@ webscout/conversation.py,sha256=wmRZ1xvlx9L1gdOnSSQlxze1cSbFwgm6TEBykNOh2QI,2182
11
11
  webscout/exceptions.py,sha256=9rSq7sUFgZYe9UJ6qOlC20xowfzHDTghwGCS6osA8hM,12007
12
12
  webscout/models.py,sha256=C7QY-KDkqFCI698t9pvTHQ27rYadPIvwaYHJ3-AOCJI,6566
13
13
  webscout/optimizers.py,sha256=NlnxWCav7cTyjfeLHuq2pUCgqgW1pljWbMTklHYMGwo,9954
14
- webscout/prompt_manager.py,sha256=F42AiUIqYIcB-8HNE6VznFwfddAw6DBtfQnGqlDtkMQ,9642
14
+ webscout/prompt_manager.py,sha256=Myom6P1QZgjKmQHw7U0ETgP_5jw4JHcqHOeSN5H_X7U,9701
15
15
  webscout/tempid.py,sha256=lqTTOjVSwDMmC0UoThdyshFyIAxTikVaN613-6K3g_s,4968
16
16
  webscout/update_checker.py,sha256=5FCr6p1zLVASXcXkxKEgR7bFvICbpzJdgRTr3teKFCs,4217
17
17
  webscout/utils.py,sha256=o2hU3qaVPk25sog3e4cyVZO3l8xwaZpYRziZPotEzNo,3075
18
- webscout/version.py,sha256=FD01AZbLTdTygE25Ve3lLKXlM7JzsKUOp887qfipnC8,44
19
- webscout/webscout_search.py,sha256=OlKFDiAX8175gzOP-GbQ8pRaokJGeKMazMKhPeAxYGE,52895
20
- webscout/webscout_search_async.py,sha256=suBEYwrh24Rqc_1l2OvzqSpnTwfDWiFAfRQ4I_tfzuY,32796
18
+ webscout/version.py,sha256=JRZJy7vadnbY13p9NrCKXVovSGlQFUm5M1nD1QwZBZU,44
19
+ webscout/webscout_search.py,sha256=rTqQO1e8S8i9okFO5y_2lznyh4BQ4AEzTTcM-70TWTc,55674
20
+ webscout/webscout_search_async.py,sha256=fKQ01dBCJoHmB47QJoAoTz5mns9lb0V_jgbHY2NpVnk,35680
21
21
  webscout/yep_search.py,sha256=4jIn9KKXD6zJMdg302o4rzHQwFAy4haWoIagFn1XjLM,10429
22
22
  webscout/Extra/__init__.py,sha256=KvJRsRBRO-fZp2jSCl6KQnPppi93hriA6O_U1O1s31c,177
23
23
  webscout/Extra/gguf.py,sha256=KpkKIIQf2wtCrWuAdqThLQjQGPziPsGzgcSVuNhObfk,29220
24
24
  webscout/Extra/weather.py,sha256=Xfxzt43U5m7qpK3h4pzQ55Zh9JVu5HS6XUeLJccASkE,7841
25
25
  webscout/Extra/weather_ascii.py,sha256=k6U0F9w5xXPvYK-Wq3pjUh7W0gGJG4e_YhxeUI65Vpk,2612
26
+ webscout/Extra/GitToolkit/__init__.py,sha256=S8clC97xkihcsxfbAO9QOmSO2ljLOiQFoUh_klhp2zw,146
27
+ webscout/Extra/GitToolkit/gitapi/__init__.py,sha256=e3Vu2X8qwOEpNBIbVONhJhhFtu1_3c3ylFAxi1VO_2g,265
28
+ webscout/Extra/GitToolkit/gitapi/repository.py,sha256=nbagmnp9fiEfGnseelCpSGc0xS5k3TguhkRB1y0O0Xg,7319
29
+ webscout/Extra/GitToolkit/gitapi/user.py,sha256=Hto5xZojqDfphWR62yXVYwqeDZqLJEFTfbRqaPg6_kk,3630
30
+ webscout/Extra/GitToolkit/gitapi/utils.py,sha256=Qku8PVk5aRQXLc4GJhnDgoPnMNVgR00hxgWizZVDoM8,1896
26
31
  webscout/Extra/YTToolkit/YTdownloader.py,sha256=xnGPCBmMwjjb-x7cTOiR01scufNq4I8gnAct4qKUpoI,33051
27
32
  webscout/Extra/YTToolkit/__init__.py,sha256=xuEyGmDWvtI62R7EtChdphavQzLn_2AknVUVWlY0ssY,77
28
33
  webscout/Extra/YTToolkit/transcriber.py,sha256=Nta6hVqQr4fIkJwcq6y3fQiE0jeOOZG1w6NSkrf_KLQ,19050
@@ -37,7 +42,7 @@ webscout/Extra/YTToolkit/ytapi/pool.py,sha256=7sM_ncFqmkcPzqMY8O9dAeJsxO1eYU49HU
37
42
  webscout/Extra/YTToolkit/ytapi/query.py,sha256=A5WJv3ZCz-s_92PFjJwRnmYFv6T7N39daZysdiKavGU,1545
38
43
  webscout/Extra/YTToolkit/ytapi/stream.py,sha256=yjIrAFgSNN0Ba8JxwN3M85EgrAMnknZp631w_udAiJ8,2101
39
44
  webscout/Extra/YTToolkit/ytapi/utils.py,sha256=mmmUCDMXy3TKauPj6T7PWfEYBAcQ8WiR13xspmlT_SM,2028
40
- webscout/Extra/YTToolkit/ytapi/video.py,sha256=8KBUDgC4bTpFCANSdexGqbTJOzT95wmaqg5cLortR-c,4050
45
+ webscout/Extra/YTToolkit/ytapi/video.py,sha256=rP4dGzi6QkdB7oHaQU_HGb_auKW8NnuMq2diaBCkSzE,8912
41
46
  webscout/Extra/autocoder/__init__.py,sha256=Py5-Lq6xLwzp4odeJdGVJ91EgKpPLRMcNyX6jAZpOvQ,230
42
47
  webscout/Extra/autocoder/autocoder.py,sha256=ifyaG0uf5ahOZ-2jBpsj19yf55xiEvU6SXKsnJD1N7I,33332
43
48
  webscout/Extra/autocoder/autocoder_utiles.py,sha256=JNdeuoo6SmfH5KOOOvklb1jdfNNTmJ8tTyQhRnEtHdM,20574
@@ -64,7 +69,7 @@ webscout/Litlogger/utils/detectors.py,sha256=VvpiL1baVrxN6XwksoKG1Z0hiuISwCpwQ8Y
64
69
  webscout/Litlogger/utils/formatters.py,sha256=MdgaCavaF7OKIo3b3c8BCyyvvskcNKhFQygnhoEY3R4,6100
65
70
  webscout/Provider/AI21.py,sha256=kyr07xbalGQuR-wP9L5W7c_ri5-PEEvyj42jLV56XaE,6225
66
71
  webscout/Provider/Aitopia.py,sha256=Gu0NvNVAHFHajSu1Ox4WxE8mhS_5eMOPyK5NqgRWpbk,12024
67
- webscout/Provider/AllenAI.py,sha256=nnCquJugsqKcj3rbQf8mkowYzQzRFwK1Ld2knfteLE0,10813
72
+ webscout/Provider/AllenAI.py,sha256=-vVnEPxEc1SV_RBgMgwdoWQFmNYsefNVLBYh3onI6fM,15886
68
73
  webscout/Provider/Andi.py,sha256=-Pf3ptSL7PMpVzj2WawopKNFKCC5ZhhH0e5kUFNiIb4,8778
69
74
  webscout/Provider/Blackboxai.py,sha256=al72E9hK1bpIYx7zLTkLMMRBw3CeE7GPvUZ8hh9oLVk,8130
70
75
  webscout/Provider/C4ai.py,sha256=dUcURjgCYkZ65Zc6cAom-7PRbL2H8dzX0N6SRhLzH4g,18109
@@ -74,29 +79,31 @@ webscout/Provider/ChatGPTGratis.py,sha256=HgqvYSfSvbfqG-nh3vpBWj9TweWn-yrOzoV3MN
74
79
  webscout/Provider/Chatify.py,sha256=_NoYKkz4kBZNx6n0UZ6_DouYJ1TAbUHPbug0_nAjeJg,6300
75
80
  webscout/Provider/Cloudflare.py,sha256=6pUZjdO6c63CLR9NG55Y7lJN8aWnGavsdWv4I9eQzsw,11497
76
81
  webscout/Provider/Cohere.py,sha256=oL9kAv--RSkEQxwkPTq1Wi57Wkgg0WNvL82CpTj22YY,8264
77
- webscout/Provider/DeepSeek.py,sha256=8NmP3QaD1sjoyWCejd5PcYTdqI7SL79Fa4Icc4DUPjw,7540
78
- webscout/Provider/Deepinfra.py,sha256=2hYjF048hEXmc6tpgH6dctFklCJUdajP7LTQfa9kgnU,12512
82
+ webscout/Provider/DeepSeek.py,sha256=Hdy47w_K9YBH5s2EgU_XrLxYET7L2pr35fCCb9JxYeM,7475
83
+ webscout/Provider/Deepinfra.py,sha256=-U994bHrHTiiUkZWHTxYQ88-hOIArP5eW9oaeKsAc5E,12739
79
84
  webscout/Provider/ElectronHub.py,sha256=nKfLw9HwYd6K9p-sDEl_dud4mPnqzOD9VKSJ3gXIXQI,24372
80
- webscout/Provider/ExaChat.py,sha256=PRgmqh8mqBOiAyKf2Lvb6-26xRW_0Bb3_JUKeGA9wUs,11277
85
+ webscout/Provider/ExaAI.py,sha256=plbjF5LYyZS4elLWKtD6AURDQS3O9xAGBScpDGPHWiY,9783
86
+ webscout/Provider/ExaChat.py,sha256=javk0MaTYPFQouviZSC2MuA9Wiu_8-fsJkQMsnf-t1U,11549
81
87
  webscout/Provider/Free2GPT.py,sha256=FJLn2Ho5oC1bJ2syDfIVvMpMwyFJu32S0ls1rAyr-R0,9213
82
88
  webscout/Provider/GPTWeb.py,sha256=xh_mnBko6RDyz2v3KhMux-yIipipkZfVVVoUJWkbzcQ,7466
83
89
  webscout/Provider/Gemini.py,sha256=8RQPrxJ58mpSEpbo9mCn5tlo6z7krH8igqSNmHxhkbs,6558
84
- webscout/Provider/GithubChat.py,sha256=jHwLPR7o8iRaL5KsRIS5suBnTtjx6wVvg1RjJtFBaX4,13856
90
+ webscout/Provider/GithubChat.py,sha256=y5xp4d125_6hp4qnoSCiiuy4eJCVSR-dLfqHihoU8ko,13883
85
91
  webscout/Provider/Glider.py,sha256=q2c6uFNMyKT6qsovZt0KHehXL7LJ1CSrplIGckEFTUA,8475
86
92
  webscout/Provider/Groq.py,sha256=jlhbTsx32OAb1fiyxN6ypJYLYTvOpJsRPSOrvqruVYo,29563
87
93
  webscout/Provider/HeckAI.py,sha256=yihna7seFQ6vMqL6t28KNha3Wz1K0BnmZ4BzN57i_Nw,8869
88
94
  webscout/Provider/HuggingFaceChat.py,sha256=iyyDMIJUthdq0P6uv8J-oyMb60C1xLQkYOHw4A71TmQ,19412
89
95
  webscout/Provider/Hunyuan.py,sha256=45wHp9OR8iD_r5B8bLgRY7LhtevzAFQ-WXBZ44Ro8dE,11419
90
- webscout/Provider/Jadve.py,sha256=F4wM1LbCawZVX6040DDCPmJdXdRvHpmp9TS0QWuQths,10820
96
+ webscout/Provider/Jadve.py,sha256=mE70LtZ-IzHErH8Rlj1E_kdu-aXwCb9V_L3nso_PZWo,10667
91
97
  webscout/Provider/Koboldai.py,sha256=0mnpya8GBbmBf8s2qAl88h2PjqavwbRab8G6l5mbJlU,15204
92
98
  webscout/Provider/LambdaChat.py,sha256=Eg_lJ6ywC8cUohTNxR70S1idn60uN-O0xRS7Ces1qyg,15999
93
99
  webscout/Provider/Llama.py,sha256=ySwmr3drK58bekE8nxMma7U5kViYW7_WrbqXhOpn5TM,7718
94
100
  webscout/Provider/Llama3.py,sha256=aaW0jT403a4KJw07Dogp1jDMuWcDEbsSEA3qdikk2Aw,7671
95
101
  webscout/Provider/Marcus.py,sha256=Zhbu8JX-Q8-WmQ8CyBMeX3R7tpZ-BUyGsEEeQiVfhBc,5285
96
- webscout/Provider/Netwrck.py,sha256=o5FkTdqJ7CXFBdB9euMHGwuCiG_KrHgv5vpaM84opao,8612
102
+ webscout/Provider/Netwrck.py,sha256=Ef7urR4k7tEUtib-5jmEpRrS2qjtGR-bpZ011hSvrYE,8636
97
103
  webscout/Provider/OLLAMA.py,sha256=k8EbK_EqH02xiTtqubViKsHebyJFLUwug5zeP1HkDa4,15155
104
+ webscout/Provider/OpenGPT.py,sha256=gFL_FPBobLeiNAUgOBSowm1crVByHPS9neB4_XzCE1I,7595
98
105
  webscout/Provider/Openai.py,sha256=TC4BkezoLqimaqOwzX-nYC9w7hXbDCajm-bzkdyl-gA,20433
99
- webscout/Provider/PI.py,sha256=5jQ-au7VLU1iG48rDmLD-pqKnhZl42aBm0SZmNvkW-E,12156
106
+ webscout/Provider/PI.py,sha256=W-hjyJo6JykUyssisqsx5azZqdhhAPsyl6MfBWkGYSo,12608
100
107
  webscout/Provider/Perplexitylabs.py,sha256=e0k7tuh99dedBTkQxytvfwPS6x6hlaFVpZyrpvy4_Xs,16621
101
108
  webscout/Provider/Phind.py,sha256=IQGKGpPC_ODP0P2UnUZFKl1gIhAFUWc7ZB_MHdpd00c,20196
102
109
  webscout/Provider/PizzaGPT.py,sha256=8iSPQgFpev4JEtoIREs2A5L5xATTUS-hWKVMmm75mW0,7192
@@ -105,15 +112,15 @@ webscout/Provider/Reka.py,sha256=dWw4vX91nJhAn-X1SXK72gttRaTqWNGUBFaeRJobTJg,851
105
112
  webscout/Provider/TeachAnything.py,sha256=3hmi94hgu9lDmjxRWQgQFMK5xvJumzKBsquObpI-SnE,7176
106
113
  webscout/Provider/TextPollinationsAI.py,sha256=kAFXJGgAItBE6Ilc31PSM4_NODArrBuoaaJTjUKuFmE,8885
107
114
  webscout/Provider/TwoAI.py,sha256=6-JZ1rxoZY3cgXpK__y4LhbUrptgzMxALef5q5NLKm0,7247
108
- webscout/Provider/Venice.py,sha256=64qSUwlz-zdw6sSizaZF-5Rg-lPT592P3M2oFjLS0FA,8347
115
+ webscout/Provider/Venice.py,sha256=yVPZneaubuCWXW-mUlqSfeT9STDljnYZ4KHq9sIvBwg,8348
109
116
  webscout/Provider/VercelAI.py,sha256=Gqn_TLBwSIgWEHqz612NSy1Dm8PdzMWCgwANR33K7OY,8462
110
117
  webscout/Provider/WebSim.py,sha256=8Ea1rKV-LCOL6H6ffgNeS2Vr70rslQUd0yVVtKRjUHA,8819
111
118
  webscout/Provider/WiseCat.py,sha256=qYffSfSbgSbERYzkQ4W8YqREMY0AFhh6h8dxT54XPIg,6997
112
- webscout/Provider/Youchat.py,sha256=PllEeJrUnj9O--ZmZNkaY5zZxhH1P0FrDjh_2pwh9dU,11501
113
- webscout/Provider/__init__.py,sha256=t4bEny045eaECzoTZyx5zld5yieRjYrWaLBRxuMhdRo,3865
114
- webscout/Provider/ai4chat.py,sha256=mcVr9Q6rni4DPfD7m6poibGhnyOnL3i_4ilxfyVf3fU,8147
119
+ webscout/Provider/Youchat.py,sha256=tVgyUK7cXAsQX3JBCJikxmxsH1QBm-B076pRCjsyHfM,12664
120
+ webscout/Provider/__init__.py,sha256=oV069bSFIfMvCVpOQaPna6KrQA6ljf4o5ZnkSvzJ5Ro,4132
121
+ webscout/Provider/ai4chat.py,sha256=S6DfY1bfZuFT2OBt2o9dDUF8clyzMlOEzNTzt6aMbro,8436
115
122
  webscout/Provider/aimathgpt.py,sha256=X1dPGdJ-Jc-6nQOnm-Bivzlo0B_n_j2A5cQK1bNrDlA,7176
116
- webscout/Provider/akashgpt.py,sha256=3FUT3Fj0mK0JdYFWKDMMVIAjNR_OB0FrL1prOXFsry4,12425
123
+ webscout/Provider/akashgpt.py,sha256=fswzQktBU2dnD0b-kZjlB_yygFxk3xSIWnrSk_8Nino,13087
117
124
  webscout/Provider/askmyai.py,sha256=b300MrPkjRebccZimZe3C0FttySwbMf6rVjTqlJQEy8,5920
118
125
  webscout/Provider/asksteve.py,sha256=_HYSNxs6A5S6QwwHl10Iq5E1xHZ1NXiQeuwRYUzZi-w,7736
119
126
  webscout/Provider/bagoodex.py,sha256=XOmIvOn_P7dpNBgylCveaCIXpAU6awGkvEphZZHrYCM,5063
@@ -122,8 +129,7 @@ webscout/Provider/chatglm.py,sha256=0pOS8HQ5bnUjY5E7yjenLLycpQVieNZmD06Wm4KhiwI,
122
129
  webscout/Provider/cleeai.py,sha256=lgIBs5JpNaY-gfwUBorZdSeA_Q7tawfTvkWWTg7EfuI,7981
123
130
  webscout/Provider/copilot.py,sha256=Au04Xw0VW5LJB6ODuO7qt097qr7jxG9C4UpoVyfTlNI,19006
124
131
  webscout/Provider/elmo.py,sha256=5myTgfEuZTtFHw5C2NT7iY2BjPUwEEkdLlo1m3Nhygc,9317
125
- webscout/Provider/flowith.py,sha256=o5V7DCeS7ysZ-Ttm9OtmmvYm9_3V-kUFPChga0Of6DE,7719
126
- webscout/Provider/freeaichat.py,sha256=5dWWTtzzO_u4cpefwG1yJl7UFEaS0rTmnOrqNlUdM0g,9744
132
+ webscout/Provider/freeaichat.py,sha256=waRu1GiRTUDJFmpsesknqU8Fk7omUIIiNh_QS3KlLGY,9744
127
133
  webscout/Provider/gaurish.py,sha256=-OVX6STSjt0pYn6lH5RiJZ5YPsYtWEorjBgENEsvsAQ,9998
128
134
  webscout/Provider/geminiapi.py,sha256=-_QbDBF_IiYyOJ0_uAIcE-gfzIs8H86nA5VWX52SRoY,8505
129
135
  webscout/Provider/geminiprorealtime.py,sha256=2ThViylzCGgKl7UfdFQoPdcsYJKIvf4t4wU0cXXQ43I,5775
@@ -131,31 +137,59 @@ webscout/Provider/granite.py,sha256=FuRO4msa5WRd5Wpy1zNvLJtHmBkG-IV9cLBSdZwI3iM,
131
137
  webscout/Provider/hermes.py,sha256=QYvzwhdOPYykGyWl4NVLnV5bxrqYTb19lu0OFN2dADE,8404
132
138
  webscout/Provider/julius.py,sha256=ra20kGPafLDgV8gd2Z-Yce5eKlgSjFl4CpyHtEmHIlg,8583
133
139
  webscout/Provider/koala.py,sha256=C1Mxj2hawrUfo_CYC_hjzZPH6ruQSl1Vbg3B93SR-v8,11045
134
- webscout/Provider/labyrinth.py,sha256=fREg50o1UUJhkR0AYsELyqu4g3jTCb9NJz46GTM73Qc,11135
140
+ webscout/Provider/labyrinth.py,sha256=jX7w-ueTxZv3J0Vhes8vnPZEsGUPP_RwrdGE3GIG36E,14912
135
141
  webscout/Provider/learnfastai.py,sha256=luHIgnzYrdwI3ZhTTR4-B1XQDFTgxHO2CnZ3w97Fp3M,10377
136
142
  webscout/Provider/lepton.py,sha256=Q-hbKwaDbRCvSFbDWqUPxir0dkiufx6eQt6hFeLaWVU,7522
137
143
  webscout/Provider/llama3mitril.py,sha256=0sTD6mtVT1SwTPPyhTdPg592Wf39DHum20vThinP5Eg,6641
138
144
  webscout/Provider/llamatutor.py,sha256=94LSHZI8GrColyum_diVZTolFUB27gqh-EsSlz8qsqI,6791
139
145
  webscout/Provider/llmchat.py,sha256=lel0r3OZKSm1HPDBvwkjUI_pEU36gYC-vGWzr-6xhPY,7831
146
+ webscout/Provider/llmchatco.py,sha256=Mqe2SG3yGZVOFhOFXu3XkE7-ATAmzzB_s9hPJQrCbRs,11848
140
147
  webscout/Provider/meta.py,sha256=qWpVmSACYkEKsW8wRpm-rnlFJoOyku-WkfPGgGjUUYY,30717
141
148
  webscout/Provider/multichat.py,sha256=tsEudoeTFk30l9m8CRS0QVnK0jdceS1BPktcxmIqwdo,12419
142
149
  webscout/Provider/promptrefine.py,sha256=et8bNFf74Bn06SG0-3o8XNE5cJC_mRr5tTI3dqZAbE8,7731
150
+ webscout/Provider/scira_chat.py,sha256=UzpmxWGLlSJat_B2ITuuDxF7cJdET1ICBfwurfksU7A,10811
143
151
  webscout/Provider/searchchat.py,sha256=0heQnkBBsqRSnKurblPOXZ0hEPILs91VtXUG-QbsYik,11933
144
152
  webscout/Provider/sonus.py,sha256=d2UUuD1ooxoQYXiJUsEctU2sBKZpWveIvxixgKlsP3M,8394
145
153
  webscout/Provider/talkai.py,sha256=18EB9FPx2rOWdnuqMtBZc_QbLWKNFj06n1Xdtm6npwg,7613
146
154
  webscout/Provider/turboseek.py,sha256=R2vbYHU7vJyhjRKHpPYfVl7P6V23_WuZSL5vlxuKnFA,8563
147
155
  webscout/Provider/tutorai.py,sha256=d__8jPhXtJKeOGlqwlxqW3f5meRDi2e3vNWVrOhEMrs,11278
148
- webscout/Provider/typegpt.py,sha256=ET-tUh3p-72sY6F39aMwVi5k1PGwjBjhanlXhhMGdxY,17369
156
+ webscout/Provider/typefully.py,sha256=loOxnRPRv920yoHYKn1RgY61teEvA9_zhchvuLNiWLU,10766
157
+ webscout/Provider/typegpt.py,sha256=WwYYMLEDPk1ieJdz8nrvxLq8YpzQtdywPxrvJvrr52U,9769
149
158
  webscout/Provider/uncovr.py,sha256=0-OlppjOjKO5_ozzYtzUtut2CbReAlv3bXG4GpuVdH0,13393
150
159
  webscout/Provider/x0gpt.py,sha256=5THMLSDxTOzIXh4ZJFnBTxp1uU-6ospTo_u9vrThJ1Y,9459
151
160
  webscout/Provider/yep.py,sha256=Hul4EtWM9kqx_mYaLdoVdyYqGydta4tNrJUffY0fgKU,16957
152
- webscout/Provider/AISEARCH/DeepFind.py,sha256=WF9y92ep-1Vlxd0TRlOOqrUK7-0ACmpJLV65PjYDG7s,10315
153
- webscout/Provider/AISEARCH/ISou.py,sha256=CWKq0YE0Qt0e5J2MPjlCNgll7k_-5GrK1UI0r-kZZ_M,9982
154
- webscout/Provider/AISEARCH/__init__.py,sha256=mO1mvCXUK7pAkjD7LAg3CFqqr0TbiX_B72e7P7niGIo,104
155
- webscout/Provider/AISEARCH/felo_search.py,sha256=qIk6SarmfTtohU4ouCOgO31zngK3DeYJzDpv7cvhFxE,8959
156
- webscout/Provider/AISEARCH/genspark_search.py,sha256=tr8C5OtI_Z6_sU41vSqSP2buIY4BOlacS2gNaR7o-C8,8154
161
+ webscout/Provider/AISEARCH/DeepFind.py,sha256=MhU5of90tTfiF_DtYA4KC5d2pjbZ43WnIU9ixDpXZng,10324
162
+ webscout/Provider/AISEARCH/ISou.py,sha256=9pL95bLL0f9aoJ36L8yo4bnkqoD_vYGSWi9os8L-b24,9991
163
+ webscout/Provider/AISEARCH/__init__.py,sha256=qVLQBog3PQjK3P9tBoXpyRaWNYFqId7mK_rcwt9svfQ,253
164
+ webscout/Provider/AISEARCH/felo_search.py,sha256=tomKb8G_p80nTryxWQ3XFVFM3POnSgi2zkL27y3KfMg,8968
165
+ webscout/Provider/AISEARCH/genspark_search.py,sha256=dtI_8RHVncWWCbKgbXxwqrFKGsJe0V5mXBuDHuMjiVQ,8163
166
+ webscout/Provider/AISEARCH/hika_search.py,sha256=s2Ou-1o5DaYb6gCwCLD1jgFbqKQSivhF38NNCRsmQfM,6765
167
+ webscout/Provider/AISEARCH/iask_search.py,sha256=np0QsK34E7S6AH2LPO9rEb0P-XLlQn6YsAXuCMeSj9U,17752
168
+ webscout/Provider/AISEARCH/monica_search.py,sha256=G8buO5HfKTt_Yj5CQ6RGzhCtifYF17ocK7_PcdbFD-c,9217
169
+ webscout/Provider/AISEARCH/scira_search.py,sha256=Y2iZhO0F9397dAkgvb_ngTpMFg_F_15OuBxyJxYasIE,11292
170
+ webscout/Provider/AISEARCH/webpilotai_search.py,sha256=sgxlknhIU90A_yyaq67udZTmuC5xftG0iDa_D2DVZCs,11904
157
171
  webscout/Provider/HF_space/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
158
172
  webscout/Provider/HF_space/qwen_qwen2.py,sha256=IulE7bAMSbR530pFTanWzMFb4UJ9qF_NKoGiHkXxcjc,7612
173
+ webscout/Provider/OPENAI/__init__.py,sha256=b1pM-FElCwrK5fpSvinYIawFFvYC7FRxj6u54Tqeowk,451
174
+ webscout/Provider/OPENAI/base.py,sha256=oxJNrH4hQaRNb-hWDbMXhoO2xD0Y1T8KKyN9bP1Qw2k,1467
175
+ webscout/Provider/OPENAI/c4ai.py,sha256=33hzcHrzjkpNCVUDvNOMcug624BNLlYvmQVEEeQxa5s,12837
176
+ webscout/Provider/OPENAI/chatgptclone.py,sha256=GbOaylrQXMe5SCQt8YtuzcpxF3dPPx68P0I25IM-8wo,16923
177
+ webscout/Provider/OPENAI/deepinfra.py,sha256=HsUzmG7Z_0bT-JZduOISYsXKVsQVSNOHLBGInanMME4,12265
178
+ webscout/Provider/OPENAI/exaai.py,sha256=ZpXpAmkQBXARI2ljLKSmjQCLu_ZQ5VBVcH2pZmXYtFg,14621
179
+ webscout/Provider/OPENAI/exachat.py,sha256=gPw3bGVe9AMbWqUww2vQI8KE3WSUo1UKoiIXa3Dw094,14383
180
+ webscout/Provider/OPENAI/freeaichat.py,sha256=U3GIbn4oW6yaFaZMe_yMmlHVQX3E_juZ3eBUGyMR_Pg,11482
181
+ webscout/Provider/OPENAI/glider.py,sha256=8zVIG0_gSgPk7zhidDpDKPSgtg6NBOdp0wrDV60Lvwc,12546
182
+ webscout/Provider/OPENAI/heckai.py,sha256=_cJwT_qzNQvRWz4AJuDaTyg7jdBQsGGxh34hbMnCIF4,11247
183
+ webscout/Provider/OPENAI/llmchatco.py,sha256=sAw9mVnS6srsIJnXEt186gKsEUMXMvAvkpMG0Z5_W38,14800
184
+ webscout/Provider/OPENAI/netwrck.py,sha256=51P4OyXiWtdjS0oFHt9ePrRx1t6TojtZtvPNLaEAPsw,12230
185
+ webscout/Provider/OPENAI/scirachat.py,sha256=S_NohU-7grhkovbfVzXcSfsp9CgkVwSdx-zPB9tSs1s,17561
186
+ webscout/Provider/OPENAI/sonus.py,sha256=xoLhgN8kuIgjA01a4ripT4KqZz7RVB5DqINibo472pk,10198
187
+ webscout/Provider/OPENAI/typegpt.py,sha256=73Ho_n18elOZlbRpm161hG9ol8EBq7QS7U4KQGNKlSA,13542
188
+ webscout/Provider/OPENAI/utils.py,sha256=3lForhUB5j2sgwwGHzdjAMZqtaOtmhqb6TsplCmfKQk,6860
189
+ webscout/Provider/OPENAI/venice.py,sha256=DY7Ppn5y1WWj99OXfDf3tN-I6y1giahkSAPEpQVOWxc,15449
190
+ webscout/Provider/OPENAI/wisecat.py,sha256=scsajQl3ECwoEbgmmIjl9oofuJ7x8q2LdaZGVmzVX9M,12998
191
+ webscout/Provider/OPENAI/x0gpt.py,sha256=-OFNa9wS8txvffrrhwkzfLEPWItD3c-I-17mPSr2GAc,13547
192
+ webscout/Provider/OPENAI/yep.py,sha256=UVEsW--nWugWP_Km5vDWuGGapbYrX_4uVH7mf97Gr5E,13282
159
193
  webscout/Provider/TTI/__init__.py,sha256=K6J27GHg3Fv9xB13dGwgLWIow_EbZY1yKEAxohaoaKU,309
160
194
  webscout/Provider/TTI/AiForce/__init__.py,sha256=R8r6XYBUoGB_26jSyjGwHpw8GtZ0wbnkBoHxu26T_QU,685
161
195
  webscout/Provider/TTI/AiForce/async_aiforce.py,sha256=5O7tKyLgG3FVr-Tx9llZavCU9fOklrcnG210k4TvUwg,8317
@@ -240,9 +274,9 @@ webstoken/sentiment.py,sha256=yHtaHXJNS_sH1UTHZsOIgyhdijr8oi1pMlg_QE2wtxw,8202
240
274
  webstoken/stemmer.py,sha256=VXWkBpPaH328WEQxw9e9ff-p2e27xDdbpVSy0nTnXYE,2624
241
275
  webstoken/tagger.py,sha256=p4ScFnxn5sShYDVRoHK5pn_mzaDTsEtx3EHRvuvOlfE,2306
242
276
  webstoken/tokenizer.py,sha256=XJ-d1MFRp0Trw6gtOtZ8_wAcaSQidnSCHLNpV1-OFJc,6016
243
- webscout-7.9.dist-info/LICENSE.md,sha256=hyfFlVn7pWcrvuvs-piB8k4J8DlXdOsYje9RyPxc6Ik,7543
244
- webscout-7.9.dist-info/METADATA,sha256=iW8b4jnDr3wZfwkgQkBBoChPjdn8U5xxh-7CHhjdmnM,32697
245
- webscout-7.9.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
246
- webscout-7.9.dist-info/entry_points.txt,sha256=7thMsVUoHiXGoIH1NeoocKpxlszWflNsNyrnDqGzvO0,70
247
- webscout-7.9.dist-info/top_level.txt,sha256=KQtbgkA3gxcsADB0hIIx-heydmEYXpAY7xn3LjwDx0E,19
248
- webscout-7.9.dist-info/RECORD,,
277
+ webscout-8.1.dist-info/LICENSE.md,sha256=hyfFlVn7pWcrvuvs-piB8k4J8DlXdOsYje9RyPxc6Ik,7543
278
+ webscout-8.1.dist-info/METADATA,sha256=2fANW6S4SWTdbTZUgmdfSaCgaAQc3SicRqZ_0f8JYDQ,24621
279
+ webscout-8.1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
280
+ webscout-8.1.dist-info/entry_points.txt,sha256=7thMsVUoHiXGoIH1NeoocKpxlszWflNsNyrnDqGzvO0,70
281
+ webscout-8.1.dist-info/top_level.txt,sha256=KQtbgkA3gxcsADB0hIIx-heydmEYXpAY7xn3LjwDx0E,19
282
+ webscout-8.1.dist-info/RECORD,,
@@ -1,207 +0,0 @@
1
- import uuid
2
- import requests
3
- import json
4
- import os
5
- import re
6
- from typing import Any, Dict, Optional, Generator, Union
7
-
8
- from webscout.AIutel import Optimizers
9
- from webscout.AIutel import Conversation
10
- from webscout.AIutel import AwesomePrompts, sanitize_stream
11
- from webscout.AIbase import Provider, AsyncProvider
12
- from webscout import exceptions
13
- from webscout.litagent import LitAgent
14
-
15
- class Flowith(Provider):
16
- """
17
- A class to interact with the Flowith AI chat API.
18
- """
19
-
20
- AVAILABLE_MODELS = [
21
- "gpt-4o-mini",
22
- "deepseek-chat",
23
- "deepseek-reasoner",
24
- "claude-3.5-haiku",
25
- "llama-3.2-11b",
26
- "llama-3.2-90b",
27
- "gemini-2.0-flash",
28
- "o1",
29
- "o3-mini",
30
- "gpt-4o",
31
- "claude-3.5-sonnet",
32
- "gemini-2.0-pro",
33
- "claude-3.7-sonnet"
34
-
35
- ]
36
-
37
- def __init__(
38
- self,
39
- is_conversation: bool = True,
40
- max_tokens: int = 2048,
41
- timeout: int = 30,
42
- intro: str = None,
43
- filepath: str = None,
44
- update_file: bool = True,
45
- proxies: dict = {},
46
- history_offset: int = 10250,
47
- act: str = None,
48
- model: str = "claude-3.5-haiku"
49
-
50
- ):
51
- """Initializes the Flowith API client."""
52
- if model not in self.AVAILABLE_MODELS:
53
- raise ValueError(f"Invalid model: {model}. Choose from: {self.AVAILABLE_MODELS}")
54
-
55
- self.url = "https://edge.flowith.net/ai/chat?mode=general"
56
-
57
- # Set up headers for the API request
58
- self.headers = {
59
- "authority": "edge.flowith.net",
60
- "accept": "*/*",
61
- "accept-encoding": "gzip, deflate, br, zstd",
62
- "accept-language": "en-US,en;q=0.9,en-IN;q=0.8",
63
- "content-type": "application/json",
64
- "origin": "https://flowith.io",
65
- "referer": "https://edge.flowith.net/",
66
- "responsetype": "stream",
67
- "sec-ch-ua": '"Chromium";v="134", "Not:A-Brand";v="24", "Microsoft Edge";v="134"',
68
- "sec-ch-ua-mobile": "?0",
69
- "sec-ch-ua-platform": '"Windows"',
70
- "sec-fetch-dest": "empty",
71
- "sec-fetch-mode": "cors",
72
- "sec-fetch-site": "cross-site",
73
- "user-agent": LitAgent().random() # Use LitAgent for user-agent
74
- }
75
-
76
- self.session = requests.Session()
77
- self.session.headers.update(self.headers)
78
- self.session.proxies.update(proxies)
79
-
80
- self.is_conversation = is_conversation
81
- self.max_tokens_to_sample = max_tokens
82
- self.timeout = timeout
83
- self.last_response = {}
84
- self.model = model
85
- self.node_id = str(uuid.uuid4()) # Generate a new UUID for node ID
86
-
87
- self.__available_optimizers = (
88
- method
89
- for method in dir(Optimizers)
90
- if callable(getattr(Optimizers, method)) and not method.startswith("__")
91
- )
92
- Conversation.intro = (
93
- AwesomePrompts().get_act(
94
- act, raise_not_found=True, default=None, case_insensitive=True
95
- )
96
- if act
97
- else intro or Conversation.intro
98
- )
99
-
100
- self.conversation = Conversation(
101
- is_conversation, self.max_tokens_to_sample, filepath, update_file
102
- )
103
- self.conversation.history_offset = history_offset
104
-
105
- def clean_response(self, text):
106
- """Remove text between <think> tags and other specific text patterns."""
107
- # Remove text between <think> tags
108
- text = re.sub(r'<think>.*?</think>', '', text, flags=re.DOTALL)
109
-
110
- return text.strip()
111
-
112
- def decode_response(self, content):
113
- """Try to decode the response content using multiple encodings."""
114
- encodings = ['utf-8', 'latin1', 'iso-8859-1', 'cp1252']
115
- for encoding in encodings:
116
- try:
117
- return content.decode(encoding)
118
- except UnicodeDecodeError:
119
- continue
120
- # If all encodings fail, try to decode with 'latin1' as it can decode any byte
121
- return content.decode('latin1')
122
-
123
- def ask(
124
- self,
125
- prompt: str,
126
- stream: bool = False, # This parameter is kept for compatibility
127
- raw: bool = False,
128
- optimizer: str = None,
129
- conversationally: bool = False,
130
- ) -> Union[Dict[str, Any], Dict[str, str]]:
131
- conversation_prompt = self.conversation.gen_complete_prompt(prompt)
132
- if optimizer:
133
- if optimizer in self.__available_optimizers:
134
- conversation_prompt = getattr(Optimizers, optimizer)(
135
- conversation_prompt if conversationally else prompt
136
- )
137
- else:
138
- raise Exception(f"Optimizer is not one of {self.__available_optimizers}")
139
-
140
- # Payload construction - using stream=False for simpler handling
141
- payload = {
142
- "model": self.model,
143
- "messages": [{"content": conversation_prompt, "role": "user"}],
144
- "stream": True, # Set to False for direct response
145
- "nodeId": self.node_id
146
- }
147
-
148
- try:
149
- # Simple non-streaming request
150
- response = self.session.post(self.url, json=payload, timeout=self.timeout)
151
-
152
- if response.status_code != 200:
153
- raise exceptions.FailedToGenerateResponseError(
154
- f"Request failed with status code {response.status_code}"
155
- )
156
-
157
- # Get the response text using our multi-encoding decoder
158
- response_text = self.decode_response(response.content).strip()
159
-
160
- # Clean the response
161
- cleaned_text = self.clean_response(response_text)
162
- self.last_response = {"text": cleaned_text}
163
-
164
- # Update conversation history
165
- self.conversation.update_chat_history(prompt, cleaned_text)
166
-
167
- return {"text": cleaned_text}
168
-
169
- except requests.RequestException as e:
170
- raise exceptions.FailedToGenerateResponseError(f"Request failed: {str(e)}")
171
-
172
- def chat(
173
- self,
174
- prompt: str,
175
- stream: bool = False, # Parameter kept for compatibility
176
- optimizer: str = None,
177
- conversationally: bool = False,
178
- ) -> str:
179
- # Always use non-streaming mode
180
- response = self.ask(prompt, False, optimizer=optimizer, conversationally=conversationally)
181
- return self.get_message(response)
182
-
183
- def get_message(self, response: dict) -> str:
184
- assert isinstance(response, dict), "Response should be of dict data-type only"
185
- return response["text"]
186
-
187
- if __name__ == "__main__":
188
- print("-" * 80)
189
- print(f"{'Model':<50} {'Status':<10} {'Response'}")
190
- print("-" * 80)
191
-
192
- for model in Flowith.AVAILABLE_MODELS:
193
- try:
194
- test_ai = Flowith(model=model, timeout=60)
195
- response = test_ai.chat("Say 'Hello' in one word")
196
- response_text = response
197
-
198
- if response_text and len(response_text.strip()) > 0:
199
- status = "✓"
200
- # Truncate response if too long
201
- display_text = response_text.strip()[:50] + "..." if len(response_text.strip()) > 50 else response_text.strip()
202
- else:
203
- status = "✗"
204
- display_text = "Empty or invalid response"
205
- print(f"{model:<50} {status:<10} {display_text}")
206
- except Exception as e:
207
- print(f"{model:<50} {'✗':<10} {str(e)}")