webscout 6.2b0__py3-none-any.whl → 6.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 +191 -176
- webscout/AIbase.py +112 -239
- webscout/AIutel.py +488 -1130
- webscout/Agents/functioncall.py +248 -198
- webscout/Bing_search.py +250 -153
- webscout/DWEBS.py +454 -178
- webscout/Extra/__init__.py +2 -1
- webscout/Extra/autocoder/__init__.py +9 -0
- webscout/Extra/autocoder/autocoder_utiles.py +121 -0
- webscout/Extra/autocoder/rawdog.py +681 -0
- webscout/Extra/autollama.py +246 -195
- webscout/Extra/gguf.py +441 -226
- webscout/Extra/weather.py +172 -67
- webscout/LLM.py +442 -100
- webscout/Litlogger/__init__.py +681 -0
- webscout/Local/formats.py +4 -2
- webscout/Provider/Amigo.py +19 -10
- webscout/Provider/Andi.py +0 -33
- webscout/Provider/Blackboxai.py +4 -204
- webscout/Provider/DARKAI.py +1 -1
- webscout/Provider/EDITEE.py +1 -1
- webscout/Provider/Llama3.py +1 -1
- webscout/Provider/Marcus.py +137 -0
- webscout/Provider/NinjaChat.py +1 -1
- webscout/Provider/PI.py +221 -207
- webscout/Provider/Perplexity.py +598 -598
- webscout/Provider/RoboCoders.py +206 -0
- webscout/Provider/TTI/AiForce/__init__.py +22 -0
- webscout/Provider/TTI/AiForce/async_aiforce.py +257 -0
- webscout/Provider/TTI/AiForce/sync_aiforce.py +242 -0
- webscout/Provider/TTI/Nexra/__init__.py +22 -0
- webscout/Provider/TTI/Nexra/async_nexra.py +286 -0
- webscout/Provider/TTI/Nexra/sync_nexra.py +258 -0
- webscout/Provider/TTI/PollinationsAI/__init__.py +23 -0
- webscout/Provider/TTI/PollinationsAI/async_pollinations.py +330 -0
- webscout/Provider/TTI/PollinationsAI/sync_pollinations.py +285 -0
- webscout/Provider/TTI/__init__.py +3 -4
- webscout/Provider/TTI/artbit/__init__.py +22 -0
- webscout/Provider/TTI/artbit/async_artbit.py +184 -0
- webscout/Provider/TTI/artbit/sync_artbit.py +176 -0
- webscout/Provider/TTI/blackbox/__init__.py +4 -0
- webscout/Provider/TTI/blackbox/async_blackbox.py +212 -0
- webscout/Provider/TTI/{blackboximage.py → blackbox/sync_blackbox.py} +199 -153
- webscout/Provider/TTI/deepinfra/__init__.py +4 -0
- webscout/Provider/TTI/deepinfra/async_deepinfra.py +227 -0
- webscout/Provider/TTI/deepinfra/sync_deepinfra.py +199 -0
- webscout/Provider/TTI/huggingface/__init__.py +22 -0
- webscout/Provider/TTI/huggingface/async_huggingface.py +199 -0
- webscout/Provider/TTI/huggingface/sync_huggingface.py +195 -0
- webscout/Provider/TTI/imgninza/__init__.py +4 -0
- webscout/Provider/TTI/imgninza/async_ninza.py +214 -0
- webscout/Provider/TTI/{imgninza.py → imgninza/sync_ninza.py} +209 -136
- webscout/Provider/TTI/talkai/__init__.py +4 -0
- webscout/Provider/TTI/talkai/async_talkai.py +229 -0
- webscout/Provider/TTI/talkai/sync_talkai.py +207 -0
- webscout/Provider/__init__.py +146 -132
- webscout/Provider/askmyai.py +158 -0
- webscout/Provider/cerebras.py +227 -206
- webscout/Provider/geminiapi.py +208 -198
- webscout/Provider/llama3mitril.py +180 -0
- webscout/Provider/llmchat.py +203 -0
- webscout/Provider/mhystical.py +176 -0
- webscout/Provider/perplexitylabs.py +265 -0
- webscout/Provider/talkai.py +196 -0
- webscout/Provider/twitterclone.py +251 -244
- webscout/Provider/typegpt.py +359 -0
- webscout/__init__.py +28 -23
- webscout/__main__.py +5 -5
- webscout/cli.py +327 -347
- webscout/conversation.py +227 -0
- webscout/exceptions.py +161 -29
- webscout/litagent/__init__.py +172 -0
- webscout/litprinter/__init__.py +831 -0
- webscout/optimizers.py +270 -0
- webscout/prompt_manager.py +279 -0
- webscout/swiftcli/__init__.py +810 -0
- webscout/transcriber.py +479 -551
- webscout/update_checker.py +125 -0
- webscout/version.py +1 -1
- webscout-6.4.dist-info/LICENSE.md +211 -0
- {webscout-6.2b0.dist-info → webscout-6.4.dist-info}/METADATA +34 -55
- webscout-6.4.dist-info/RECORD +154 -0
- webscout/Provider/TTI/AIuncensored.py +0 -103
- webscout/Provider/TTI/Nexra.py +0 -120
- webscout/Provider/TTI/PollinationsAI.py +0 -138
- webscout/Provider/TTI/WebSimAI.py +0 -142
- webscout/Provider/TTI/aiforce.py +0 -160
- webscout/Provider/TTI/artbit.py +0 -141
- webscout/Provider/TTI/deepinfra.py +0 -148
- webscout/Provider/TTI/huggingface.py +0 -155
- webscout/models.py +0 -23
- webscout-6.2b0.dist-info/LICENSE.md +0 -50
- webscout-6.2b0.dist-info/RECORD +0 -118
- /webscout/{g4f.py → gpt4free.py} +0 -0
- {webscout-6.2b0.dist-info → webscout-6.4.dist-info}/WHEEL +0 -0
- {webscout-6.2b0.dist-info → webscout-6.4.dist-info}/entry_points.txt +0 -0
- {webscout-6.2b0.dist-info → webscout-6.4.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Webscout Update Checker
|
|
3
|
+
A utility to check and compare Webscout versions
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
import requests
|
|
7
|
+
import re
|
|
8
|
+
import subprocess
|
|
9
|
+
import sys
|
|
10
|
+
import os
|
|
11
|
+
from packaging import version
|
|
12
|
+
from typing import Optional
|
|
13
|
+
|
|
14
|
+
from webscout.Litlogger import LitLogger, LogFormat, ColorScheme
|
|
15
|
+
|
|
16
|
+
# Initialize logger with custom format
|
|
17
|
+
CUSTOM_FORMAT = """{message}"""
|
|
18
|
+
|
|
19
|
+
logger = LitLogger(
|
|
20
|
+
name="WebscoutUpdate",
|
|
21
|
+
format=CUSTOM_FORMAT,
|
|
22
|
+
color_scheme=ColorScheme.OCEAN,
|
|
23
|
+
level_styles={
|
|
24
|
+
"TRACE": "DIM",
|
|
25
|
+
"DEBUG": "NORMAL",
|
|
26
|
+
"INFO": "BOLD",
|
|
27
|
+
"SUCCESS": "BOLD",
|
|
28
|
+
"WARNING": "BOLD",
|
|
29
|
+
"ERROR": "BOLD",
|
|
30
|
+
"CRITICAL": "BOLD"
|
|
31
|
+
}
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
def get_installed_version() -> Optional[str]:
|
|
35
|
+
"""Get the installed version of webscout"""
|
|
36
|
+
try:
|
|
37
|
+
import importlib.metadata
|
|
38
|
+
return importlib.metadata.version('webscout')
|
|
39
|
+
except ImportError:
|
|
40
|
+
try:
|
|
41
|
+
import pkg_resources
|
|
42
|
+
return pkg_resources.get_distribution('webscout').version
|
|
43
|
+
except Exception:
|
|
44
|
+
logger.error("Could not determine installed version using pkg_resources")
|
|
45
|
+
return None
|
|
46
|
+
except Exception:
|
|
47
|
+
logger.error("Could not determine installed version using importlib.metadata")
|
|
48
|
+
return None
|
|
49
|
+
|
|
50
|
+
def get_webscout_version() -> Optional[str]:
|
|
51
|
+
"""Get the current webscout version from CLI"""
|
|
52
|
+
try:
|
|
53
|
+
result = subprocess.run(['webscout', '--version'],
|
|
54
|
+
capture_output=True,
|
|
55
|
+
text=True,
|
|
56
|
+
timeout=5)
|
|
57
|
+
if result.returncode == 0:
|
|
58
|
+
version_match = re.search(r'\d+\.\d+\.\d+', result.stdout)
|
|
59
|
+
if version_match:
|
|
60
|
+
return version_match.group(0)
|
|
61
|
+
except (subprocess.TimeoutExpired, subprocess.SubprocessError, FileNotFoundError) as e:
|
|
62
|
+
logger.error(f"Failed to get version from CLI: {str(e)}")
|
|
63
|
+
return None
|
|
64
|
+
|
|
65
|
+
def get_pypi_version() -> Optional[str]:
|
|
66
|
+
"""Get the latest version from PyPI"""
|
|
67
|
+
try:
|
|
68
|
+
response = requests.get(
|
|
69
|
+
"https://pypi.org/pypi/webscout/json",
|
|
70
|
+
timeout=10
|
|
71
|
+
)
|
|
72
|
+
response.raise_for_status()
|
|
73
|
+
return response.json()['info']['version']
|
|
74
|
+
except requests.RequestException as e:
|
|
75
|
+
logger.error(f"Failed to fetch PyPI version: {str(e)}")
|
|
76
|
+
except (KeyError, ValueError) as e:
|
|
77
|
+
logger.error(f"Failed to parse PyPI response: {str(e)}")
|
|
78
|
+
return None
|
|
79
|
+
|
|
80
|
+
def version_compare(v1: str, v2: str) -> int:
|
|
81
|
+
"""Compare two version strings"""
|
|
82
|
+
try:
|
|
83
|
+
return -1 if version.parse(v1) < version.parse(v2) else 1
|
|
84
|
+
except version.InvalidVersion:
|
|
85
|
+
return 0
|
|
86
|
+
|
|
87
|
+
def display_version_info(installed: Optional[str], current: Optional[str], latest: Optional[str]) -> None:
|
|
88
|
+
"""Display version information"""
|
|
89
|
+
if installed:
|
|
90
|
+
logger.info(f"Currently using Webscout version {installed}")
|
|
91
|
+
|
|
92
|
+
if latest and installed:
|
|
93
|
+
if version_compare(installed, latest) < 0:
|
|
94
|
+
logger.warning(
|
|
95
|
+
f"A new version of Webscout is available: {latest}\n"
|
|
96
|
+
f"To update, run: pip install --upgrade webscout"
|
|
97
|
+
)
|
|
98
|
+
else:
|
|
99
|
+
logger.success("You're running the latest version!")
|
|
100
|
+
|
|
101
|
+
def check_for_updates() -> None:
|
|
102
|
+
"""Check for Webscout updates"""
|
|
103
|
+
logger.info("Checking for Webscout updates...")
|
|
104
|
+
|
|
105
|
+
installed_version = get_installed_version()
|
|
106
|
+
current_version = get_webscout_version()
|
|
107
|
+
latest_version = get_pypi_version()
|
|
108
|
+
|
|
109
|
+
if not installed_version:
|
|
110
|
+
logger.error("Could not determine installed Webscout version")
|
|
111
|
+
return
|
|
112
|
+
|
|
113
|
+
if not latest_version:
|
|
114
|
+
logger.error("Could not determine latest Webscout version from PyPI")
|
|
115
|
+
return
|
|
116
|
+
|
|
117
|
+
display_version_info(installed_version, current_version, latest_version)
|
|
118
|
+
|
|
119
|
+
if __name__ == "__main__":
|
|
120
|
+
try:
|
|
121
|
+
check_for_updates()
|
|
122
|
+
except KeyboardInterrupt:
|
|
123
|
+
logger.warning("Update check cancelled by user")
|
|
124
|
+
except Exception as e:
|
|
125
|
+
logger.error(f"An unexpected error occurred: {str(e)}")
|
webscout/version.py
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
__version__ = "6.
|
|
1
|
+
__version__ = "6.4"
|
|
2
2
|
__prog__ = "webscout"
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
# HelpingAI License
|
|
2
|
+
Version 3.0
|
|
3
|
+
Copyright (c) 2024 HelpingAI
|
|
4
|
+
All Rights Reserved.
|
|
5
|
+
|
|
6
|
+
## PREAMBLE
|
|
7
|
+
The HelpingAI License (the "License") is designed to govern the use, modification, and distribution of HelpingAI's proprietary assets, including but not limited to artificial intelligence models, software, algorithms, weights, documentation, datasets, and associated materials (collectively, the "Content"). This License aims to balance open innovation with the protection of HelpingAI's intellectual property rights while ensuring responsible and ethical use of AI technology.
|
|
8
|
+
|
|
9
|
+
## 1. DEFINITIONS
|
|
10
|
+
1.1. "Model" means any machine learning model, artificial intelligence system, neural network architecture, or AI-powered solution developed by HelpingAI.
|
|
11
|
+
|
|
12
|
+
1.2. "Weights" refers to the trained parameters, embeddings, model checkpoints, and other numerical values that define the behavior and capabilities of the Model.
|
|
13
|
+
|
|
14
|
+
1.3. "Source Code" means the human-readable form of software, documentation, configuration files, and associated resources.
|
|
15
|
+
|
|
16
|
+
1.4. "Derivative Work" means any work that is based upon or derived from the Content, including but not limited to:
|
|
17
|
+
a) Fine-tuned or adapted versions of the Model
|
|
18
|
+
b) Modified or enhanced versions of the Source Code
|
|
19
|
+
c) Products, services, or applications that incorporate the Content
|
|
20
|
+
d) Adaptations, transformations, or improvements of the Content
|
|
21
|
+
e) Any output generated using the Model or Content
|
|
22
|
+
|
|
23
|
+
1.5. "Commercial Use" means any use of the Content intended for or directed toward:
|
|
24
|
+
a) Commercial advantage or monetary compensation
|
|
25
|
+
b) Revenue generation, either directly or indirectly
|
|
26
|
+
c) Business operations or commercial services
|
|
27
|
+
d) Integration into commercial products or offerings
|
|
28
|
+
|
|
29
|
+
1.6. "End User" means any individual or entity that uses the Content or Derivative Works.
|
|
30
|
+
|
|
31
|
+
## 2. GRANT OF RIGHTS
|
|
32
|
+
Subject to the terms and conditions of this License, HelpingAI hereby grants you a limited, non-exclusive, non-transferable, revocable license to:
|
|
33
|
+
|
|
34
|
+
2.1. Access and use the Content for:
|
|
35
|
+
a) Research and evaluation purposes
|
|
36
|
+
b) Educational and academic use
|
|
37
|
+
c) Personal, non-commercial projects
|
|
38
|
+
d) Open-source contributions (subject to Section 3)
|
|
39
|
+
|
|
40
|
+
2.2. Create and use Derivative Works for non-commercial purposes, provided that:
|
|
41
|
+
a) You comply with all restrictions in Section 3
|
|
42
|
+
b) You maintain appropriate attribution
|
|
43
|
+
c) You ensure responsible and ethical use
|
|
44
|
+
|
|
45
|
+
2.3. Distribute the Content or Derivative Works to third parties, provided that:
|
|
46
|
+
a) You maintain all copyright notices and attributions
|
|
47
|
+
b) You include a complete, unmodified copy of this License
|
|
48
|
+
c) You clearly document any modifications made
|
|
49
|
+
d) You comply with all restrictions in Section 3
|
|
50
|
+
e) You ensure recipients agree to this License
|
|
51
|
+
|
|
52
|
+
## 3. RESTRICTIONS AND LIMITATIONS
|
|
53
|
+
3.1. **Commercial Use Restrictions**
|
|
54
|
+
You may not use the Content or any Derivative Works for Commercial Use without:
|
|
55
|
+
a) Obtaining a separate commercial license from HelpingAI
|
|
56
|
+
b) Paying applicable fees and royalties
|
|
57
|
+
c) Receiving written authorization
|
|
58
|
+
|
|
59
|
+
3.2. **Model Usage Restrictions**
|
|
60
|
+
You may not:
|
|
61
|
+
a) Use the Model to train or develop competing AI models or services
|
|
62
|
+
b) Extract, reverse engineer, or decompile the Model's architecture or weights
|
|
63
|
+
c) Remove, disable, or circumvent any access controls or security measures
|
|
64
|
+
d) Use the Model for military purposes, weapons development, or harmful applications
|
|
65
|
+
e) Use the Model to generate harmful, discriminatory, or illegal content
|
|
66
|
+
f) Use the Model in safety-critical applications without explicit written permission
|
|
67
|
+
g) Use the Model in ways that violate privacy or data protection laws
|
|
68
|
+
h) Create autonomous systems that could cause harm to individuals or society
|
|
69
|
+
|
|
70
|
+
3.3. **Distribution Restrictions**
|
|
71
|
+
You may not:
|
|
72
|
+
a) Redistribute the Model's weights or checkpoints without explicit permission
|
|
73
|
+
b) Create hosted APIs or services that provide direct access to the Model
|
|
74
|
+
c) Bundle or integrate the Content with commercial products or services
|
|
75
|
+
d) Sublicense or transfer rights to the Content to third parties
|
|
76
|
+
e) Distribute the Content in ways that could harm HelpingAI's interests
|
|
77
|
+
|
|
78
|
+
3.4. **Branding and Attribution**
|
|
79
|
+
You must:
|
|
80
|
+
a) Maintain all HelpingAI branding, logos, notices, and watermarks
|
|
81
|
+
b) Include the following attribution in all Derivative Works:
|
|
82
|
+
"Powered by HelpingAI technology, licensed under the HelpingAI License v3.0"
|
|
83
|
+
c) Not use HelpingAI's name, logos, or trademarks to endorse or promote products
|
|
84
|
+
d) Not suggest any official association with HelpingAI without permission
|
|
85
|
+
|
|
86
|
+
## 4. INTELLECTUAL PROPERTY
|
|
87
|
+
4.1. HelpingAI retains all rights, title, and interest in and to the Content, including:
|
|
88
|
+
a) All intellectual property rights
|
|
89
|
+
b) Patents, trademarks, and trade secrets
|
|
90
|
+
c) Proprietary methods and algorithms
|
|
91
|
+
d) Future improvements and modifications
|
|
92
|
+
|
|
93
|
+
4.2. This License does not grant you any rights to HelpingAI's:
|
|
94
|
+
a) Patents or patent applications
|
|
95
|
+
b) Trademarks or service marks
|
|
96
|
+
c) Trade secrets or proprietary information
|
|
97
|
+
d) Other intellectual property except as expressly stated
|
|
98
|
+
|
|
99
|
+
4.3. Derivative Works:
|
|
100
|
+
a) You retain ownership of original portions of Derivative Works you create
|
|
101
|
+
b) HelpingAI retains all rights to the underlying Content
|
|
102
|
+
c) You grant HelpingAI a perpetual license to any improvements or feedback
|
|
103
|
+
|
|
104
|
+
## 5. DATA COLLECTION AND PRIVACY
|
|
105
|
+
5.1. Data Collection:
|
|
106
|
+
a) HelpingAI may collect usage data and performance metrics
|
|
107
|
+
b) Analytics may be used to improve the Content
|
|
108
|
+
c) Collection will comply with applicable privacy laws
|
|
109
|
+
|
|
110
|
+
5.2. Privacy Requirements:
|
|
111
|
+
a) You must comply with all applicable privacy laws and regulations
|
|
112
|
+
b) You must provide appropriate privacy notices to End Users
|
|
113
|
+
c) You must obtain necessary consents for data collection
|
|
114
|
+
d) You must implement appropriate data security measures
|
|
115
|
+
|
|
116
|
+
## 6. WARRANTY DISCLAIMER
|
|
117
|
+
THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO:
|
|
118
|
+
a) WARRANTIES OF MERCHANTABILITY
|
|
119
|
+
b) FITNESS FOR A PARTICULAR PURPOSE
|
|
120
|
+
c) NON-INFRINGEMENT
|
|
121
|
+
d) ACCURACY OR COMPLETENESS
|
|
122
|
+
e) ABSENCE OF ERRORS OR DEFECTS
|
|
123
|
+
f) COMPATIBILITY WITH OTHER SOFTWARE
|
|
124
|
+
g) SECURITY OR PERFORMANCE
|
|
125
|
+
|
|
126
|
+
## 7. LIMITATION OF LIABILITY
|
|
127
|
+
7.1. IN NO EVENT SHALL HELPINGAI BE LIABLE FOR ANY:
|
|
128
|
+
a) DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
|
|
129
|
+
b) LOSS OF PROFITS OR BUSINESS OPPORTUNITIES
|
|
130
|
+
c) BUSINESS INTERRUPTION OR LOST DATA
|
|
131
|
+
d) PERSONAL INJURY OR PROPERTY DAMAGE
|
|
132
|
+
e) ANY OTHER DAMAGES OR LOSSES
|
|
133
|
+
|
|
134
|
+
7.2. THIS LIMITATION APPLIES TO:
|
|
135
|
+
a) CONTRACT OR TORT CLAIMS
|
|
136
|
+
b) BREACH OF WARRANTY
|
|
137
|
+
c) ANY OTHER LEGAL THEORY
|
|
138
|
+
d) ALL USES OF THE CONTENT
|
|
139
|
+
|
|
140
|
+
## 8. TERMINATION
|
|
141
|
+
8.1. Automatic Termination:
|
|
142
|
+
a) This License terminates automatically upon any breach
|
|
143
|
+
b) No notice is required for termination
|
|
144
|
+
c) All rights granted immediately cease
|
|
145
|
+
|
|
146
|
+
8.2. Upon Termination:
|
|
147
|
+
a) Cease all use of the Content
|
|
148
|
+
b) Destroy all copies and installations
|
|
149
|
+
c) Stop distribution of Derivative Works
|
|
150
|
+
d) Certify compliance with termination terms
|
|
151
|
+
|
|
152
|
+
8.3. Survival:
|
|
153
|
+
a) Sections 4, 6, 7, 9, and 10 survive termination
|
|
154
|
+
b) Obligations to protect intellectual property continue
|
|
155
|
+
c) Liability limitations remain in effect
|
|
156
|
+
|
|
157
|
+
## 9. GOVERNING LAW AND JURISDICTION
|
|
158
|
+
9.1. This License shall be governed by and construed in accordance with:
|
|
159
|
+
a) The laws of the United States of America
|
|
160
|
+
b) The State of California
|
|
161
|
+
c) Without regard to conflicts of law principles
|
|
162
|
+
|
|
163
|
+
9.2. Dispute Resolution:
|
|
164
|
+
a) Exclusive jurisdiction in Santa Clara County, California
|
|
165
|
+
b) Agreement to personal jurisdiction
|
|
166
|
+
c) Waiver of jury trial
|
|
167
|
+
d) Prevailing party entitled to attorney fees
|
|
168
|
+
|
|
169
|
+
## 10. EXPORT COMPLIANCE
|
|
170
|
+
10.1. You must comply with all applicable:
|
|
171
|
+
a) Export control laws and regulations
|
|
172
|
+
b) Trade sanctions and embargoes
|
|
173
|
+
c) International trade restrictions
|
|
174
|
+
d) Anti-boycott regulations
|
|
175
|
+
|
|
176
|
+
10.2. You may not export the Content to:
|
|
177
|
+
a) Prohibited countries or regions
|
|
178
|
+
b) Restricted end users
|
|
179
|
+
c) Prohibited end uses
|
|
180
|
+
|
|
181
|
+
## 11. MODIFICATIONS TO LICENSE
|
|
182
|
+
11.1. License Updates:
|
|
183
|
+
a) HelpingAI may modify this License at any time
|
|
184
|
+
b) Changes effective upon posting
|
|
185
|
+
c) Continued use constitutes acceptance
|
|
186
|
+
|
|
187
|
+
11.2. Notification:
|
|
188
|
+
a) Material changes will be announced
|
|
189
|
+
b) Users should regularly review terms
|
|
190
|
+
c) Opt-out requires discontinuing use
|
|
191
|
+
|
|
192
|
+
## 12. SUPPORT AND UPDATES
|
|
193
|
+
12.1. No Obligation:
|
|
194
|
+
a) HelpingAI has no obligation to provide support
|
|
195
|
+
b) Updates and maintenance are discretionary
|
|
196
|
+
c) Services may be modified or discontinued
|
|
197
|
+
|
|
198
|
+
12.2. Available Support:
|
|
199
|
+
a) Documentation and resources provided "as is"
|
|
200
|
+
b) Community forums may be available
|
|
201
|
+
c) Commercial support requires separate agreement
|
|
202
|
+
|
|
203
|
+
<!-- ## 13. CONTACT INFORMATION
|
|
204
|
+
For licensing inquiries, permissions, or compliance:
|
|
205
|
+
- Website: https://helpingai.co
|
|
206
|
+
- Email: license@helpingai.co
|
|
207
|
+
- Address: [Company Address] -->
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
Last Updated: NOVEMBER 2024
|
|
211
|
+
END OF LICENSE
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: webscout
|
|
3
|
-
Version: 6.
|
|
3
|
+
Version: 6.4
|
|
4
4
|
Summary: Search for anything using Google, DuckDuckGo, phind.com, Contains AI models, can transcribe yt videos, temporary email and phone number generation, has TTS support, webai (terminal gpt and open interpreter) and offline LLMs and more
|
|
5
5
|
Author: OEvortex
|
|
6
6
|
Author-email: helpingai5@gmail.com
|
|
7
7
|
License: HelpingAI
|
|
8
|
-
Project-URL:
|
|
9
|
-
Project-URL:
|
|
10
|
-
Project-URL: Tracker, https://github.com/OE-LUCIFER/Webscout/issues
|
|
8
|
+
Project-URL: Source, https://github.com/HelpingAI/Webscout
|
|
9
|
+
Project-URL: Tracker, https://github.com/HelpingAI/Webscout/issues
|
|
11
10
|
Project-URL: YouTube, https://youtube.com/@OEvortex
|
|
12
11
|
Classifier: Development Status :: 5 - Production/Stable
|
|
13
12
|
Classifier: Intended Audience :: Developers
|
|
@@ -25,8 +24,8 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
|
25
24
|
Requires-Python: >=3.7
|
|
26
25
|
Description-Content-Type: text/markdown
|
|
27
26
|
License-File: LICENSE.md
|
|
28
|
-
Requires-Dist:
|
|
29
|
-
Requires-Dist:
|
|
27
|
+
Requires-Dist: mistune
|
|
28
|
+
Requires-Dist: tenacity
|
|
30
29
|
Requires-Dist: curl-cffi
|
|
31
30
|
Requires-Dist: nest-asyncio
|
|
32
31
|
Requires-Dist: g4f>=0.2.2.3
|
|
@@ -47,21 +46,17 @@ Requires-Dist: playsound
|
|
|
47
46
|
Requires-Dist: ollama
|
|
48
47
|
Requires-Dist: pyfiglet
|
|
49
48
|
Requires-Dist: pillow
|
|
50
|
-
Requires-Dist: requests-html
|
|
51
49
|
Requires-Dist: bson
|
|
52
50
|
Requires-Dist: cloudscraper
|
|
53
51
|
Requires-Dist: emoji
|
|
54
52
|
Requires-Dist: openai
|
|
55
53
|
Requires-Dist: prompt-toolkit
|
|
56
|
-
Requires-Dist: fake-useragent
|
|
57
54
|
Requires-Dist: primp
|
|
58
55
|
Requires-Dist: pyreqwest-impersonate
|
|
59
56
|
Requires-Dist: lxml-html-clean
|
|
60
57
|
Requires-Dist: gradio-client
|
|
61
58
|
Requires-Dist: psutil
|
|
62
|
-
Requires-Dist: colorlog
|
|
63
59
|
Requires-Dist: yaspin
|
|
64
|
-
Requires-Dist: cerebras-cloud-sdk
|
|
65
60
|
Provides-Extra: dev
|
|
66
61
|
Requires-Dist: ruff>=0.1.6; extra == "dev"
|
|
67
62
|
Requires-Dist: pytest>=7.4.2; extra == "dev"
|
|
@@ -74,9 +69,9 @@ Requires-Dist: unicorn; extra == "local"
|
|
|
74
69
|
|
|
75
70
|
<div align="center">
|
|
76
71
|
<!-- Replace `#` with your actual links -->
|
|
77
|
-
<a href="https://t.me/
|
|
78
|
-
<a href="https://www.instagram.com/
|
|
79
|
-
<a href="https://www.linkedin.com/in/
|
|
72
|
+
<a href="https://t.me/official_helpingai"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
|
|
73
|
+
<a href="https://www.instagram.com/oevortex/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
|
|
74
|
+
<a href="https://www.linkedin.com/in/oe-vortex-29a407265/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
|
|
80
75
|
<a href="https://buymeacoffee.com/oevortex"><img alt="Buy Me A Coffee" src="https://img.shields.io/badge/Buy%20Me%20A%20Coffee-FFDD00?style=for-the-badge&logo=buymeacoffee&logoColor=black"></a>
|
|
81
76
|
</div>
|
|
82
77
|
|
|
@@ -121,7 +116,11 @@ Requires-Dist: unicorn; extra == "local"
|
|
|
121
116
|
* **GGUF Conversion & Quantization:** Convert and quantize Hugging Face models to GGUF format.
|
|
122
117
|
* **Autollama:** Download Hugging Face models and automatically convert them for Ollama compatibility.
|
|
123
118
|
* **Function Calling (Beta):** Experiment with function calling capabilities for enhanced AI interactions.
|
|
124
|
-
|
|
119
|
+
* **[SwiftCLI](webscout/swiftcli/Readme.md):** A powerful and elegant CLI framework that makes it easy to create beautiful command-line interfaces.
|
|
120
|
+
* **[LitPrinter](webscout/litprinter/Readme.md):** Provides beautiful, styled console output with rich formatting and colors
|
|
121
|
+
* **[LitLogger](webscout/litlogger/Readme.md):** Simplifies logging with customizable formats and color schemes
|
|
122
|
+
* **[LitAgent](webscout/litagent/Readme.md):** Powerful and modern user agent generator that keeps your requests fresh and undetectable
|
|
123
|
+
* **[Text-to-Image](webscout/Provider/TTI/README.md):** Generate high-quality images using a wide range of AI art providers
|
|
125
124
|
|
|
126
125
|
## ⚙️ Installation
|
|
127
126
|
```python
|
|
@@ -819,17 +818,6 @@ with WEBS() as WEBS:
|
|
|
819
818
|
___
|
|
820
819
|
</details>
|
|
821
820
|
|
|
822
|
-
### 🖼️ Text to Images - DeepInfraImager, PollinationsAI, BlackboxAIImager, AiForceimager, NexraImager, HFimager, ArtbitImager, NinjaImager, WebSimAI, AIUncensoredImager
|
|
823
|
-
|
|
824
|
-
**Every TTI provider has the same usage code, you just need to change the import.**
|
|
825
|
-
|
|
826
|
-
```python
|
|
827
|
-
from webscout import DeepInfraImager
|
|
828
|
-
bot = DeepInfraImager()
|
|
829
|
-
resp = bot.generate("AI-generated image - webscout", 1)
|
|
830
|
-
print(bot.save(resp))
|
|
831
|
-
```
|
|
832
|
-
|
|
833
821
|
### 🗣️ Text to Speech - Voicepods, StreamElements
|
|
834
822
|
|
|
835
823
|
```python
|
|
@@ -938,9 +926,9 @@ ai.tool_registry.register_tool(
|
|
|
938
926
|
parameters={
|
|
939
927
|
"type": "object",
|
|
940
928
|
"properties": {
|
|
941
|
-
"location": {"
|
|
929
|
+
"location": {"title": "Location", "type": "string"}
|
|
942
930
|
},
|
|
943
|
-
"required": ["location"]
|
|
931
|
+
"required": ["location"]
|
|
944
932
|
},
|
|
945
933
|
)
|
|
946
934
|
|
|
@@ -1021,8 +1009,7 @@ meta_ai = Meta(fb_email=fb_email, fb_password=fb_password)
|
|
|
1021
1009
|
# Text prompt with web search
|
|
1022
1010
|
response = meta_ai.ask("what is currently happning in bangladesh in aug 2024")
|
|
1023
1011
|
print(response["message"]) # Access the text message
|
|
1024
|
-
print("Sources:", response["sources"]) # Access sources (if
|
|
1025
|
-
any)
|
|
1012
|
+
print("Sources:", response["sources"]) # Access sources (if any)
|
|
1026
1013
|
|
|
1027
1014
|
# Image generation
|
|
1028
1015
|
response = meta_ai.ask("Create an image of a cat wearing a hat.")
|
|
@@ -1357,36 +1344,28 @@ if __name__ == "__main__":
|
|
|
1357
1344
|
main()
|
|
1358
1345
|
```
|
|
1359
1346
|
|
|
1360
|
-
### LLAMA3, pizzagpt, RUBIKSAI, Koala, Darkai, AI4Chat, Farfalle, PIAI, Felo, Julius, YouChat, YEPCHAT, Cloudflare, TurboSeek, Editee, AI21, Chatify, Cerebras, X0GPT, Lepton, GEMINIAPI, Cleeai, Elmo, Genspark, Upstage, Free2GPT, Bing, DiscordRocks, GPTWeb, LlamaTutor, PromptRefine, AIUncensored, TutorAI, ChatGPTES, Bagoodex, ChatHub, AmigoChat, AIMathGPT, GaurishCerebras, NinjaChat, GeminiPro
|
|
1347
|
+
### LLAMA3, pizzagpt, RUBIKSAI, Koala, Darkai, AI4Chat, Farfalle, PIAI, Felo, Julius, YouChat, YEPCHAT, Cloudflare, TurboSeek, Editee, AI21, Chatify, Cerebras, X0GPT, Lepton, GEMINIAPI, Cleeai, Elmo, Genspark, Upstage, Free2GPT, Bing, DiscordRocks, GPTWeb, LlamaTutor, PromptRefine, AIUncensored, TutorAI, ChatGPTES, Bagoodex, ChatHub, AmigoChat, AIMathGPT, GaurishCerebras, NinjaChat, GeminiPro, Talkai, LLMChat, AskMyAI, Llama3Mitril, Marcus, PerplexityLabs, TypeGPT, Mhystical
|
|
1361
1348
|
|
|
1362
1349
|
Code is similar to other providers.
|
|
1363
1350
|
|
|
1364
1351
|
### `LLM`
|
|
1365
1352
|
|
|
1366
1353
|
```python
|
|
1367
|
-
from webscout.LLM import LLM
|
|
1368
|
-
|
|
1369
|
-
#
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
#
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
# Define the messages to be sent
|
|
1381
|
-
messages = [
|
|
1382
|
-
{"role": "user", "content": user_input}
|
|
1354
|
+
from webscout.LLM import LLM, VLM
|
|
1355
|
+
|
|
1356
|
+
# Chat with text
|
|
1357
|
+
llm = LLM("meta-llama/Meta-Llama-3-70B-Instruct")
|
|
1358
|
+
response = llm.chat([{"role": "user", "content": "What's good?"}])
|
|
1359
|
+
|
|
1360
|
+
# Chat with images
|
|
1361
|
+
vlm = VLM("cogvlm-grounding-generalist")
|
|
1362
|
+
response = vlm.chat([{
|
|
1363
|
+
"role": "user",
|
|
1364
|
+
"content": [
|
|
1365
|
+
{"type": "image", "image_url": "cool_pic.jpg"},
|
|
1366
|
+
{"type": "text", "text": "What's in this image?"}
|
|
1383
1367
|
]
|
|
1384
|
-
|
|
1385
|
-
# Use the mistral_chat method to get the response
|
|
1386
|
-
response = llm.chat(messages)
|
|
1387
|
-
|
|
1388
|
-
# Print the response
|
|
1389
|
-
print("AI: ", response)
|
|
1368
|
+
}])
|
|
1390
1369
|
```
|
|
1391
1370
|
|
|
1392
1371
|
## 💻 Local-LLM
|
|
@@ -1563,9 +1542,9 @@ python -m webscout.webai webai --provider "phind" --rawdog
|
|
|
1563
1542
|
|
|
1564
1543
|
<div align="center">
|
|
1565
1544
|
<!-- Replace `#` with your actual links -->
|
|
1566
|
-
<a href="https://t.me/
|
|
1567
|
-
<a href="https://www.instagram.com/
|
|
1568
|
-
<a href="https://www.linkedin.com/in/
|
|
1545
|
+
<a href="https://t.me/official_helpingai"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
|
|
1546
|
+
<a href="https://www.instagram.com/oevortex/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
|
|
1547
|
+
<a href="https://www.linkedin.com/in/oe-vortex-29a407265/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
|
|
1569
1548
|
<a href="https://buymeacoffee.com/oevortex"><img alt="Buy Me A Coffee" src="https://img.shields.io/badge/Buy%20Me%20A%20Coffee-FFDD00?style=for-the-badge&logo=buymeacoffee&logoColor=black"></a>
|
|
1570
1549
|
</div>
|
|
1571
1550
|
|