webscout 5.2__py3-none-any.whl → 5.4__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/AIauto.py +8 -12
- webscout/AIutel.py +10 -10
- webscout/Agents/Onlinesearcher.py +5 -5
- webscout/Agents/functioncall.py +123 -97
- webscout/DWEBS.py +99 -77
- webscout/Local/_version.py +2 -2
- webscout/Provider/Andi.py +1 -21
- webscout/Provider/BasedGPT.py +1 -21
- webscout/Provider/Blackboxai.py +1 -21
- webscout/Provider/Chatify.py +175 -0
- webscout/Provider/Cloudflare.py +1 -22
- webscout/Provider/Cohere.py +2 -23
- webscout/Provider/DARKAI.py +0 -1
- webscout/Provider/Deepinfra.py +2 -16
- webscout/Provider/EDITEE.py +3 -26
- webscout/Provider/Gemini.py +1 -24
- webscout/Provider/Groq.py +0 -2
- webscout/Provider/Koboldai.py +0 -21
- webscout/Provider/Llama.py +4 -21
- webscout/Provider/NetFly.py +21 -61
- webscout/Provider/OLLAMA.py +0 -17
- webscout/Provider/Openai.py +2 -22
- webscout/Provider/Perplexity.py +1 -2
- webscout/Provider/Phind.py +3 -508
- webscout/Provider/RUBIKSAI.py +11 -5
- webscout/Provider/Reka.py +4 -21
- webscout/Provider/TTS/streamElements.py +1 -22
- webscout/Provider/TTS/voicepod.py +11 -8
- webscout/Provider/ThinkAnyAI.py +17 -78
- webscout/Provider/Youchat.py +3 -20
- webscout/Provider/__init__.py +17 -8
- webscout/Provider/ai4chat.py +14 -8
- webscout/Provider/cerebras.py +199 -0
- webscout/Provider/{Berlin4h.py → cleeai.py} +68 -73
- webscout/Provider/{liaobots.py → elmo.py} +75 -106
- webscout/Provider/felo_search.py +29 -87
- webscout/Provider/geminiapi.py +198 -0
- webscout/Provider/genspark.py +222 -0
- webscout/Provider/julius.py +3 -20
- webscout/Provider/koala.py +1 -1
- webscout/Provider/lepton.py +194 -0
- webscout/Provider/turboseek.py +4 -21
- webscout/Provider/x0gpt.py +182 -0
- webscout/Provider/xdash.py +2 -22
- webscout/Provider/yep.py +391 -149
- webscout/YTdownloader.py +2 -3
- webscout/__init__.py +2 -2
- webscout/exceptions.py +2 -1
- webscout/transcriber.py +195 -140
- webscout/version.py +1 -1
- {webscout-5.2.dist-info → webscout-5.4.dist-info}/METADATA +47 -134
- webscout-5.4.dist-info/RECORD +98 -0
- webscout/voice.py +0 -34
- webscout-5.2.dist-info/RECORD +0 -93
- {webscout-5.2.dist-info → webscout-5.4.dist-info}/LICENSE.md +0 -0
- {webscout-5.2.dist-info → webscout-5.4.dist-info}/WHEEL +0 -0
- {webscout-5.2.dist-info → webscout-5.4.dist-info}/entry_points.txt +0 -0
- {webscout-5.2.dist-info → webscout-5.4.dist-info}/top_level.txt +0 -0
webscout/Provider/EDITEE.py
CHANGED
|
@@ -1,34 +1,11 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import uuid
|
|
3
|
-
from selenium import webdriver
|
|
4
|
-
from selenium.webdriver.chrome.options import Options
|
|
5
|
-
from selenium.webdriver.common.by import By
|
|
6
|
-
from selenium.webdriver.support import expected_conditions as EC
|
|
7
|
-
from selenium.webdriver.support.ui import WebDriverWait
|
|
8
|
-
import click
|
|
9
1
|
import requests
|
|
10
|
-
from requests import get
|
|
11
|
-
from uuid import uuid4
|
|
12
|
-
from re import findall
|
|
13
|
-
from requests.exceptions import RequestException
|
|
14
|
-
from curl_cffi.requests import get, RequestsError
|
|
15
|
-
import g4f
|
|
16
|
-
from random import randint
|
|
17
|
-
from PIL import Image
|
|
18
|
-
import io
|
|
19
|
-
import re
|
|
20
|
-
import json
|
|
21
|
-
import yaml
|
|
22
2
|
from webscout.AIutel import Optimizers
|
|
23
3
|
from webscout.AIutel import Conversation, Proxy
|
|
24
4
|
from webscout.AIutel import AwesomePrompts, sanitize_stream
|
|
25
5
|
from webscout.AIbase import Provider, AsyncProvider
|
|
26
6
|
from webscout import exceptions
|
|
27
7
|
from typing import Any, AsyncGenerator, Dict
|
|
28
|
-
|
|
29
|
-
import httpx
|
|
30
|
-
import random
|
|
31
|
-
proxy = Proxy()
|
|
8
|
+
|
|
32
9
|
|
|
33
10
|
class Editee(Provider):
|
|
34
11
|
"""
|
|
@@ -116,7 +93,7 @@ class Editee(Provider):
|
|
|
116
93
|
|
|
117
94
|
def _get_session(self):
|
|
118
95
|
"""Gets the editeecom_session value."""
|
|
119
|
-
res =
|
|
96
|
+
res = self.session.get("https://editee.com/chat-gpt")
|
|
120
97
|
if res.cookies.get_dict():
|
|
121
98
|
first_cookie_name, session_value = next(iter(res.cookies.get_dict().items()))
|
|
122
99
|
return session_value
|
|
@@ -159,7 +136,7 @@ class Editee(Provider):
|
|
|
159
136
|
"user_input": conversation_prompt
|
|
160
137
|
}
|
|
161
138
|
|
|
162
|
-
response =
|
|
139
|
+
response = self.session.post(self.api_endpoint, headers=self.headers, json=payload, timeout=self.timeout)
|
|
163
140
|
if not response.ok:
|
|
164
141
|
raise exceptions.FailedToGenerateResponseError(
|
|
165
142
|
f"Failed to generate response - ({response.status_code}, {response.reason}) - {response.text}"
|
webscout/Provider/Gemini.py
CHANGED
|
@@ -1,33 +1,10 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import uuid
|
|
3
|
-
from selenium import webdriver
|
|
4
|
-
from selenium.webdriver.chrome.options import Options
|
|
5
|
-
from selenium.webdriver.common.by import By
|
|
6
|
-
from selenium.webdriver.support import expected_conditions as EC
|
|
7
|
-
from selenium.webdriver.support.ui import WebDriverWait
|
|
8
|
-
import click
|
|
9
|
-
import requests
|
|
10
|
-
from requests import get
|
|
11
|
-
from uuid import uuid4
|
|
12
|
-
from re import findall
|
|
13
|
-
from requests.exceptions import RequestException
|
|
14
|
-
from curl_cffi.requests import get, RequestsError
|
|
15
|
-
import g4f
|
|
16
|
-
from random import randint
|
|
17
|
-
from PIL import Image
|
|
18
|
-
import io
|
|
19
|
-
import re
|
|
20
|
-
import json
|
|
21
|
-
import yaml
|
|
22
1
|
from ..AIutel import Optimizers
|
|
23
2
|
from ..AIutel import Conversation
|
|
24
3
|
from ..AIutel import AwesomePrompts, sanitize_stream
|
|
25
4
|
from ..AIbase import Provider, AsyncProvider
|
|
26
|
-
from Helpingai_T2 import Perplexity
|
|
27
5
|
from webscout import exceptions
|
|
28
6
|
from typing import Any, AsyncGenerator, Dict
|
|
29
|
-
import logging
|
|
30
|
-
import httpx
|
|
7
|
+
import logging
|
|
31
8
|
from ..Bard import Chatbot
|
|
32
9
|
import logging
|
|
33
10
|
from os import path
|
webscout/Provider/Groq.py
CHANGED
webscout/Provider/Koboldai.py
CHANGED
|
@@ -1,32 +1,11 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import uuid
|
|
3
|
-
from selenium import webdriver
|
|
4
|
-
from selenium.webdriver.chrome.options import Options
|
|
5
|
-
from selenium.webdriver.common.by import By
|
|
6
|
-
from selenium.webdriver.support import expected_conditions as EC
|
|
7
|
-
from selenium.webdriver.support.ui import WebDriverWait
|
|
8
|
-
import click
|
|
9
1
|
import requests
|
|
10
|
-
from requests import get
|
|
11
|
-
from uuid import uuid4
|
|
12
|
-
from re import findall
|
|
13
|
-
from requests.exceptions import RequestException
|
|
14
|
-
from curl_cffi.requests import get, RequestsError
|
|
15
|
-
import g4f
|
|
16
|
-
from random import randint
|
|
17
|
-
from PIL import Image
|
|
18
|
-
import io
|
|
19
|
-
import re
|
|
20
2
|
import json
|
|
21
|
-
import yaml
|
|
22
3
|
from ..AIutel import Optimizers
|
|
23
4
|
from ..AIutel import Conversation
|
|
24
5
|
from ..AIutel import AwesomePrompts, sanitize_stream
|
|
25
6
|
from ..AIbase import Provider, AsyncProvider
|
|
26
|
-
from Helpingai_T2 import Perplexity
|
|
27
7
|
from webscout import exceptions
|
|
28
8
|
from typing import Any, AsyncGenerator, Dict
|
|
29
|
-
import logging
|
|
30
9
|
import httpx
|
|
31
10
|
#------------------------------------------------------KOBOLDAI-----------------------------------------------------------
|
|
32
11
|
class KOBOLDAI(Provider):
|
webscout/Provider/Llama.py
CHANGED
|
@@ -1,32 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
import uuid
|
|
3
|
-
from selenium import webdriver
|
|
4
|
-
from selenium.webdriver.chrome.options import Options
|
|
5
|
-
from selenium.webdriver.common.by import By
|
|
6
|
-
from selenium.webdriver.support import expected_conditions as EC
|
|
7
|
-
from selenium.webdriver.support.ui import WebDriverWait
|
|
8
|
-
import click
|
|
1
|
+
|
|
9
2
|
import requests
|
|
10
|
-
|
|
11
|
-
from uuid import uuid4
|
|
12
|
-
from re import findall
|
|
13
|
-
from requests.exceptions import RequestException
|
|
14
|
-
from curl_cffi.requests import get, RequestsError
|
|
15
|
-
import g4f
|
|
16
|
-
from random import randint
|
|
17
|
-
from PIL import Image
|
|
18
|
-
import io
|
|
19
|
-
import re
|
|
3
|
+
|
|
20
4
|
import json
|
|
21
|
-
|
|
5
|
+
|
|
22
6
|
from webscout.AIutel import Optimizers
|
|
23
7
|
from webscout.AIutel import Conversation
|
|
24
8
|
from webscout.AIutel import AwesomePrompts, sanitize_stream
|
|
25
9
|
from webscout.AIbase import Provider, AsyncProvider
|
|
26
10
|
from webscout import exceptions
|
|
27
11
|
from typing import Any, AsyncGenerator, Dict
|
|
28
|
-
|
|
29
|
-
import httpx
|
|
12
|
+
|
|
30
13
|
|
|
31
14
|
class LLAMA(Provider):
|
|
32
15
|
def __init__(
|
webscout/Provider/NetFly.py
CHANGED
|
@@ -1,32 +1,16 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import uuid
|
|
3
|
-
from selenium import webdriver
|
|
4
|
-
from selenium.webdriver.chrome.options import Options
|
|
5
|
-
from selenium.webdriver.common.by import By
|
|
6
|
-
from selenium.webdriver.support import expected_conditions as EC
|
|
7
|
-
from selenium.webdriver.support.ui import WebDriverWait
|
|
8
|
-
import click
|
|
9
1
|
import requests
|
|
10
|
-
|
|
11
|
-
from uuid import uuid4
|
|
12
|
-
from re import findall
|
|
13
|
-
from requests.exceptions import RequestException
|
|
14
|
-
from curl_cffi.requests import get, RequestsError
|
|
15
|
-
import g4f
|
|
2
|
+
|
|
16
3
|
from random import randint
|
|
17
|
-
|
|
18
|
-
import io
|
|
19
|
-
import re
|
|
4
|
+
|
|
20
5
|
import json
|
|
21
|
-
|
|
6
|
+
|
|
22
7
|
from webscout.AIutel import Optimizers
|
|
23
8
|
from webscout.AIutel import Conversation
|
|
24
9
|
from webscout.AIutel import AwesomePrompts, sanitize_stream
|
|
25
10
|
from webscout.AIbase import Provider, AsyncProvider
|
|
26
11
|
from webscout import exceptions
|
|
27
12
|
from typing import Any, AsyncGenerator, Dict
|
|
28
|
-
|
|
29
|
-
import httpx
|
|
13
|
+
|
|
30
14
|
|
|
31
15
|
class NetFly(Provider):
|
|
32
16
|
"""
|
|
@@ -121,18 +105,6 @@ class NetFly(Provider):
|
|
|
121
105
|
optimizer: str = None,
|
|
122
106
|
conversationally: bool = False,
|
|
123
107
|
) -> dict:
|
|
124
|
-
"""Chat with AI
|
|
125
|
-
|
|
126
|
-
Args:
|
|
127
|
-
prompt (str): Prompt to be send.
|
|
128
|
-
stream (bool, optional): Whether to stream the response. Defaults to False.
|
|
129
|
-
raw (bool, optional): Whether to return the raw response. Defaults to False.
|
|
130
|
-
optimizer (str, optional): The name of the optimizer to use. Defaults to None.
|
|
131
|
-
conversationally (bool, optional): Whether to chat conversationally. Defaults to False.
|
|
132
|
-
|
|
133
|
-
Returns:
|
|
134
|
-
The response from the API.
|
|
135
|
-
"""
|
|
136
108
|
conversation_prompt = self.conversation.gen_complete_prompt(prompt)
|
|
137
109
|
if optimizer:
|
|
138
110
|
if optimizer in self.__available_optimizers:
|
|
@@ -166,7 +138,8 @@ class NetFly(Provider):
|
|
|
166
138
|
raise exceptions.FailedToGenerateResponseError(
|
|
167
139
|
f"Failed to generate response - ({response.status_code}, {response.reason})"
|
|
168
140
|
)
|
|
169
|
-
|
|
141
|
+
|
|
142
|
+
full_response = ""
|
|
170
143
|
for line in response.iter_lines(decode_unicode=True):
|
|
171
144
|
if line:
|
|
172
145
|
if line.startswith("data: "):
|
|
@@ -175,30 +148,25 @@ class NetFly(Provider):
|
|
|
175
148
|
break
|
|
176
149
|
try:
|
|
177
150
|
data = json.loads(json_data)
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
buffer += content
|
|
182
|
-
# Check for completion marker (period in this case)
|
|
183
|
-
if buffer.endswith(".") or buffer.endswith("\n"):
|
|
184
|
-
yield buffer if raw else dict(text=buffer)
|
|
185
|
-
buffer = "" # Clear the buffer
|
|
151
|
+
content = data["choices"][0]["delta"].get("content", "")
|
|
152
|
+
full_response += content
|
|
153
|
+
yield content if raw else dict(text=content)
|
|
186
154
|
except json.decoder.JSONDecodeError:
|
|
187
155
|
continue
|
|
188
156
|
|
|
189
|
-
|
|
190
|
-
if buffer:
|
|
191
|
-
yield buffer if raw else dict(text=buffer)
|
|
192
|
-
|
|
193
|
-
self.last_response.update(dict(text=buffer))
|
|
157
|
+
self.last_response.update(dict(text=full_response))
|
|
194
158
|
self.conversation.update_chat_history(
|
|
195
159
|
prompt, self.get_message(self.last_response)
|
|
196
160
|
)
|
|
197
161
|
|
|
198
162
|
def for_non_stream():
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
163
|
+
full_response = ""
|
|
164
|
+
for chunk in for_stream():
|
|
165
|
+
if isinstance(chunk, dict):
|
|
166
|
+
full_response += chunk['text']
|
|
167
|
+
else:
|
|
168
|
+
full_response += chunk
|
|
169
|
+
return dict(text=full_response)
|
|
202
170
|
|
|
203
171
|
return for_stream() if stream else for_non_stream()
|
|
204
172
|
|
|
@@ -209,16 +177,6 @@ class NetFly(Provider):
|
|
|
209
177
|
optimizer: str = None,
|
|
210
178
|
conversationally: bool = False,
|
|
211
179
|
) -> str:
|
|
212
|
-
"""Generate response `str`
|
|
213
|
-
Args:
|
|
214
|
-
prompt (str): Prompt to be send.
|
|
215
|
-
stream (bool, optional): Flag for streaming response. Defaults to False.
|
|
216
|
-
optimizer (str, optional): Prompt optimizer name - `[code, shell_command]`. Defaults to None.
|
|
217
|
-
conversationally (bool, optional): Chat conversationally when using optimizer. Defaults to False.
|
|
218
|
-
Returns:
|
|
219
|
-
str: Response generated
|
|
220
|
-
"""
|
|
221
|
-
|
|
222
180
|
def for_stream():
|
|
223
181
|
for response in self.ask(
|
|
224
182
|
prompt, True, optimizer=optimizer, conversationally=conversationally
|
|
@@ -248,9 +206,11 @@ class NetFly(Provider):
|
|
|
248
206
|
"""
|
|
249
207
|
assert isinstance(response, dict), "Response should be of dict data-type only"
|
|
250
208
|
return response["text"]
|
|
209
|
+
|
|
251
210
|
if __name__ == '__main__':
|
|
252
211
|
from rich import print
|
|
253
212
|
ai = NetFly()
|
|
254
|
-
response = ai.chat("tell me about india")
|
|
213
|
+
response = ai.chat("tell me about india", stream=True)
|
|
255
214
|
for chunk in response:
|
|
256
|
-
print(chunk, end="", flush=True)
|
|
215
|
+
print(chunk, end="", flush=True)
|
|
216
|
+
print() # Add a newline at the end
|
webscout/Provider/OLLAMA.py
CHANGED
|
@@ -1,26 +1,9 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import uuid
|
|
3
|
-
import requests
|
|
4
|
-
from requests import get
|
|
5
|
-
from uuid import uuid4
|
|
6
|
-
from re import findall
|
|
7
|
-
from requests.exceptions import RequestException
|
|
8
|
-
from curl_cffi.requests import get, RequestsError
|
|
9
|
-
import g4f
|
|
10
|
-
from random import randint
|
|
11
|
-
from PIL import Image
|
|
12
|
-
import io
|
|
13
|
-
import re
|
|
14
|
-
import json
|
|
15
|
-
import yaml
|
|
16
1
|
from webscout.AIutel import Optimizers
|
|
17
2
|
from webscout.AIutel import Conversation
|
|
18
3
|
from webscout.AIutel import AwesomePrompts, sanitize_stream
|
|
19
4
|
from webscout.AIbase import Provider, AsyncProvider
|
|
20
5
|
from webscout import exceptions
|
|
21
6
|
from typing import Any, AsyncGenerator, Dict
|
|
22
|
-
import logging
|
|
23
|
-
import httpx
|
|
24
7
|
import ollama
|
|
25
8
|
|
|
26
9
|
class OLLAMA(Provider):
|
webscout/Provider/Openai.py
CHANGED
|
@@ -1,32 +1,12 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import uuid
|
|
3
|
-
from selenium import webdriver
|
|
4
|
-
from selenium.webdriver.chrome.options import Options
|
|
5
|
-
from selenium.webdriver.common.by import By
|
|
6
|
-
from selenium.webdriver.support import expected_conditions as EC
|
|
7
|
-
from selenium.webdriver.support.ui import WebDriverWait
|
|
8
|
-
import click
|
|
9
|
-
import requests
|
|
10
|
-
from requests import get
|
|
11
|
-
from uuid import uuid4
|
|
12
|
-
from re import findall
|
|
13
|
-
from requests.exceptions import RequestException
|
|
14
|
-
from curl_cffi.requests import get, RequestsError
|
|
15
|
-
import g4f
|
|
16
|
-
from random import randint
|
|
17
|
-
from PIL import Image
|
|
18
|
-
import io
|
|
19
|
-
import re
|
|
20
1
|
import json
|
|
21
|
-
import yaml
|
|
22
2
|
from ..AIutel import Optimizers
|
|
23
3
|
from ..AIutel import Conversation
|
|
24
4
|
from ..AIutel import AwesomePrompts, sanitize_stream
|
|
25
5
|
from ..AIbase import Provider, AsyncProvider
|
|
26
|
-
|
|
6
|
+
|
|
27
7
|
from webscout import exceptions
|
|
28
8
|
from typing import Any, AsyncGenerator, Dict
|
|
29
|
-
|
|
9
|
+
|
|
30
10
|
import httpx
|
|
31
11
|
#----------------------------------------------------------OpenAI-----------------------------------
|
|
32
12
|
class OPENAI(Provider):
|
webscout/Provider/Perplexity.py
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import json
|
|
2
2
|
import time
|
|
3
|
-
import uuid
|
|
4
3
|
from typing import Iterable, Dict, Any, Generator
|
|
5
4
|
|
|
6
5
|
from os import listdir
|
|
@@ -11,7 +10,7 @@ from json import loads, dumps
|
|
|
11
10
|
from random import getrandbits
|
|
12
11
|
from websocket import WebSocketApp
|
|
13
12
|
from requests import Session, get, post
|
|
14
|
-
|
|
13
|
+
|
|
15
14
|
|
|
16
15
|
from webscout.AIutel import Optimizers
|
|
17
16
|
from webscout.AIutel import Conversation
|