webscout 8.3.1__tar.gz → 8.3.3__tar.gz
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-8.3.1/webscout.egg-info → webscout-8.3.3}/PKG-INFO +141 -99
- {webscout-8.3.1 → webscout-8.3.3}/README.md +137 -98
- {webscout-8.3.1 → webscout-8.3.3}/changelog.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/pyproject.toml +5 -2
- {webscout-8.3.1 → webscout-8.3.3}/webscout/AIutel.py +180 -78
- webscout-8.3.3/webscout/Bing_search.py +417 -0
- webscout-8.3.3/webscout/Extra/gguf.py +1213 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/__init__.py +1 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/genspark_search.py +7 -7
- webscout-8.3.3/webscout/Provider/AISEARCH/stellar_search.py +132 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/ExaChat.py +84 -58
- webscout-8.3.3/webscout/Provider/GeminiProxy.py +140 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/HeckAI.py +85 -80
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Jadve.py +56 -50
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/MCPCore.py +78 -75
- webscout-8.3.3/webscout/Provider/MiniMax.py +207 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Nemotron.py +41 -13
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Netwrck.py +34 -51
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/BLACKBOXAI.py +0 -4
- webscout-8.3.3/webscout/Provider/OPENAI/GeminiProxy.py +328 -0
- webscout-8.3.3/webscout/Provider/OPENAI/MiniMax.py +298 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/README.md +32 -29
- webscout-8.3.3/webscout/Provider/OPENAI/README_AUTOPROXY.md +238 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/TogetherAI.py +4 -17
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/__init__.py +17 -1
- webscout-8.3.3/webscout/Provider/OPENAI/autoproxy.py +1067 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/base.py +17 -76
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/deepinfra.py +42 -108
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/e2b.py +0 -1
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/flowith.py +179 -166
- webscout-8.3.3/webscout/Provider/OPENAI/friendli.py +233 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/mcpcore.py +109 -70
- webscout-8.3.3/webscout/Provider/OPENAI/monochat.py +329 -0
- webscout-8.3.3/webscout/Provider/OPENAI/pydantic_imports.py +1 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/scirachat.py +59 -51
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/toolbaz.py +3 -9
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/typegpt.py +1 -1
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/utils.py +19 -42
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/x0gpt.py +14 -2
- webscout-8.3.3/webscout/Provider/OPENAI/xenai.py +514 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/yep.py +8 -2
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OpenGPT.py +54 -32
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/PI.py +58 -84
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/StandardInput.py +32 -13
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/README.md +9 -9
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/__init__.py +3 -1
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/aiarta.py +92 -78
- webscout-8.3.3/webscout/Provider/TTI/bing.py +231 -0
- webscout-8.3.3/webscout/Provider/TTI/infip.py +212 -0
- webscout-8.3.3/webscout/Provider/TTI/monochat.py +220 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/speechma.py +45 -39
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TeachAnything.py +11 -3
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TextPollinationsAI.py +78 -70
- webscout-8.3.3/webscout/Provider/TogetherAI.py +350 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Venice.py +37 -46
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/VercelAI.py +27 -24
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/WiseCat.py +35 -35
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/WrDoChat.py +22 -26
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/WritingMate.py +26 -22
- webscout-8.3.3/webscout/Provider/XenAI.py +324 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/__init__.py +10 -5
- webscout-8.3.3/webscout/Provider/deepseek_assistant.py +378 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/granite.py +48 -57
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/koala.py +51 -39
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/learnfastai.py +49 -64
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/llmchat.py +79 -93
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/llmchatco.py +63 -78
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/multichat.py +51 -40
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/oivscode.py +1 -1
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/scira_chat.py +159 -96
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/scnet.py +13 -13
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/searchchat.py +13 -13
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/sonus.py +12 -11
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/toolbaz.py +25 -8
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/turboseek.py +41 -42
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/typefully.py +27 -12
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/typegpt.py +41 -46
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/uncovr.py +55 -90
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/x0gpt.py +33 -17
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/yep.py +79 -96
- webscout-8.3.3/webscout/auth/__init__.py +55 -0
- webscout-8.3.3/webscout/auth/api_key_manager.py +189 -0
- webscout-8.3.3/webscout/auth/auth_system.py +100 -0
- webscout-8.3.3/webscout/auth/config.py +76 -0
- webscout-8.3.3/webscout/auth/database.py +400 -0
- webscout-8.3.3/webscout/auth/exceptions.py +67 -0
- webscout-8.3.3/webscout/auth/middleware.py +248 -0
- webscout-8.3.3/webscout/auth/models.py +130 -0
- webscout-8.3.3/webscout/auth/providers.py +279 -0
- webscout-8.3.3/webscout/auth/rate_limiter.py +254 -0
- webscout-8.3.3/webscout/auth/request_models.py +127 -0
- webscout-8.3.3/webscout/auth/request_processing.py +226 -0
- webscout-8.3.3/webscout/auth/routes.py +550 -0
- webscout-8.3.3/webscout/auth/schemas.py +103 -0
- webscout-8.3.3/webscout/auth/server.py +367 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/client.py +121 -70
- {webscout-8.3.1 → webscout-8.3.3}/webscout/litagent/Readme.md +68 -55
- {webscout-8.3.1 → webscout-8.3.3}/webscout/litagent/agent.py +99 -9
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/core/scout.py +104 -26
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/element.py +139 -18
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/core/cli.py +14 -3
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/decorators/output.py +59 -9
- {webscout-8.3.1 → webscout-8.3.3}/webscout/update_checker.py +31 -49
- webscout-8.3.3/webscout/version.py +2 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/webscout_search.py +4 -12
- {webscout-8.3.1 → webscout-8.3.3}/webscout/webscout_search_async.py +3 -10
- {webscout-8.3.1 → webscout-8.3.3}/webscout/yep_search.py +2 -11
- {webscout-8.3.1 → webscout-8.3.3/webscout.egg-info}/PKG-INFO +141 -99
- {webscout-8.3.1 → webscout-8.3.3}/webscout.egg-info/SOURCES.txt +62 -10
- {webscout-8.3.1 → webscout-8.3.3}/webscout.egg-info/entry_points.txt +1 -1
- {webscout-8.3.1 → webscout-8.3.3}/webscout.egg-info/requires.txt +3 -0
- webscout-8.3.1/webscout/Extra/gguf.py +0 -684
- webscout-8.3.1/webscout/Provider/HF_space/__init__.py +0 -0
- webscout-8.3.1/webscout/Provider/HF_space/qwen_qwen2.py +0 -206
- webscout-8.3.1/webscout/Provider/OPENAI/api.py +0 -1320
- webscout-8.3.1/webscout/Provider/OPENAI/autoproxy.py +0 -39
- webscout-8.3.1/webscout/Provider/OPENAI/pydantic_imports.py +0 -172
- webscout-8.3.1/webscout/Provider/TTI/fastflux.py +0 -233
- webscout-8.3.1/webscout/Provider/Writecream.py +0 -246
- webscout-8.3.1/webscout/version.py +0 -2
- {webscout-8.3.1 → webscout-8.3.3}/LEGAL_NOTICE.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/LICENSE.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/MANIFEST.in +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/setup.cfg +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/AIauto.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/AIbase.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Bard.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/DWEBS.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/Act.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/GitToolkit/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/GitToolkit/gitapi/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/GitToolkit/gitapi/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/GitToolkit/gitapi/repository.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/GitToolkit/gitapi/user.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/GitToolkit/gitapi/utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/YTdownloader.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/transcriber.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/channel.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/errors.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/extras.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/https.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/patterns.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/playlist.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/pool.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/query.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/stream.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/YTToolkit/ytapi/video.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/autocoder/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/autocoder/autocoder.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/autocoder/autocoder_utiles.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/gguf.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/async_utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/base.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/cli.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/emailnator.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/mail_tm.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/tempmail/temp_mail_io.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/weather.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/weather.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Extra/weather_ascii.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Litlogger/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Litlogger/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Litlogger/formats.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Litlogger/handlers.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Litlogger/levels.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Litlogger/logger.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AI21.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/DeepFind.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/Perplexity.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/felo_search.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/hika_search.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/iask_search.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/monica_search.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/scira_search.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AISEARCH/webpilotai_search.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Aitopia.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/AllenAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Andi.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Blackboxai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/ChatGPTClone.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/ChatSandbox.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Cloudflare.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Cohere.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Deepinfra.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/ExaAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Flowith.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/FreeGemini.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Gemini.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/GithubChat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/GizAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Glider.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Groq.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/HuggingFaceChat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Hunyuan.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Koboldai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/LambdaChat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Llama3.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Marcus.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OLLAMA.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/Cloudflare.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/FalconH1.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/FreeGemini.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/NEMOTRON.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/PI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/Qwen3.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/TwoAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/ai4chat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/c4ai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/chatgpt.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/chatgptclone.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/chatsandbox.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/copilot.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/exaai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/exachat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/freeaichat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/glider.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/groq.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/heckai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/llmchatco.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/multichat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/netwrck.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/oivscode.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/opkfc.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/sonus.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/standardinput.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/textpollinations.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/typefully.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/uncovrAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/venice.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/wisecat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/OPENAI/writecream.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Openai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Perplexitylabs.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/QwenLM.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/Reka.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/STT/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/STT/base.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/STT/elevenlabs.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/base.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/gpt1image.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/imagen.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/magicstudio.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/piclumen.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/pixelmuse.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/pollinations.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/together.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTI/utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/base.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/deepgram.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/elevenlabs.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/freetts.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/gesserit.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/murfai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/openai_fm.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/parler.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/sthir.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/streamElements.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TTS/utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TwoAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/TypliAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/UNFINISHED/ChatHub.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/UNFINISHED/ChutesAI.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/UNFINISHED/Youchat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/UNFINISHED/fetch_together_models.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/UNFINISHED/liner_api_request.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/UNFINISHED/puterjs.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/UNFINISHED/test_lmarena.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/ai4chat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/akashgpt.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/asksteve.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/cerebras.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/chatglm.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/cleeai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/copilot.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/elmo.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/freeaichat.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/geminiapi.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/hermes.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/julius.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/llama3mitril.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/lmarena.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/meta.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/samurai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/Provider/talkai.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/__main__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/cli.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/conversation.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/exceptions.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/litagent/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/litagent/constants.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/litprinter/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/models.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/optimizers.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/prompt_manager.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/core/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/core/crawler.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/core/search_result.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/core/text_analyzer.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/core/text_utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/core/web_analyzer.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/parsers/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/parsers/html5lib_parser.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/parsers/html_parser.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/parsers/lxml_parser.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/scout/utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/Readme.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/core/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/core/context.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/core/group.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/decorators/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/decorators/command.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/decorators/options.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/exceptions.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/plugins/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/plugins/base.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/plugins/manager.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/utils/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/utils/formatting.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/swiftcli/utils/parsing.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/tempid.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/utils.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/zeroart/README.md +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/zeroart/__init__.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/zeroart/base.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/zeroart/effects.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout/zeroart/fonts.py +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout.egg-info/dependency_links.txt +0 -0
- {webscout-8.3.1 → webscout-8.3.3}/webscout.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: webscout
|
|
3
|
-
Version: 8.3.
|
|
3
|
+
Version: 8.3.3
|
|
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-email: OEvortex <helpingai5@gmail.com>
|
|
6
6
|
License: HelpingAI
|
|
@@ -62,6 +62,7 @@ Requires-Dist: psutil
|
|
|
62
62
|
Requires-Dist: aiohttp
|
|
63
63
|
Requires-Dist: zstandard
|
|
64
64
|
Requires-Dist: brotli
|
|
65
|
+
Requires-Dist: litproxy
|
|
65
66
|
Provides-Extra: dev
|
|
66
67
|
Requires-Dist: ruff>=0.1.6; extra == "dev"
|
|
67
68
|
Requires-Dist: pytest>=7.4.2; extra == "dev"
|
|
@@ -71,6 +72,8 @@ Requires-Dist: uvicorn[standard]; extra == "api"
|
|
|
71
72
|
Requires-Dist: pydantic; extra == "api"
|
|
72
73
|
Requires-Dist: python-multipart; extra == "api"
|
|
73
74
|
Requires-Dist: tiktoken; extra == "api"
|
|
75
|
+
Requires-Dist: motor; extra == "api"
|
|
76
|
+
Requires-Dist: jinja2; extra == "api"
|
|
74
77
|
Dynamic: license-file
|
|
75
78
|
|
|
76
79
|
<div align="center">
|
|
@@ -115,8 +118,9 @@ Dynamic: license-file
|
|
|
115
118
|
|
|
116
119
|
<hr/>
|
|
117
120
|
|
|
118
|
-
> [!IMPORTANT]
|
|
121
|
+
> [!IMPORTANT] >
|
|
119
122
|
> **Webscout supports three types of compatibility:**
|
|
123
|
+
>
|
|
120
124
|
> - **Native Compatibility:** Webscout's own native API for maximum flexibility
|
|
121
125
|
> - **OpenAI Compatibility:** Use providers with OpenAI-compatible interfaces
|
|
122
126
|
> - **Local LLM Compatibility:** Run local models with [Inferno](https://github.com/HelpingAI/inferno), an OpenAI-compatible server (now a standalone package)
|
|
@@ -146,12 +150,12 @@ Dynamic: license-file
|
|
|
146
150
|
<summary><b>Search & AI</b></summary>
|
|
147
151
|
<p>
|
|
148
152
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
153
|
+
- **Comprehensive Search:** Leverage Google, DuckDuckGo, and Yep for diverse search results
|
|
154
|
+
- **AI Powerhouse:** Access and interact with various AI models through three compatibility options:
|
|
155
|
+
- **Native API:** Use Webscout's native interfaces for providers like OpenAI, Cohere, Gemini, and many more
|
|
156
|
+
- **[OpenAI-Compatible Providers](webscout/Provider/OPENAI/README.md):** Seamlessly integrate with various AI providers using standardized OpenAI-compatible interfaces
|
|
157
|
+
- **[Local LLMs with Inferno](https://github.com/HelpingAI/inferno):** Run local models with an OpenAI-compatible server (now available as a standalone package)
|
|
158
|
+
- **[AI Search](webscout/Provider/AISEARCH/README.md):** AI-powered search engines with advanced capabilities
|
|
155
159
|
</p>
|
|
156
160
|
</details>
|
|
157
161
|
|
|
@@ -159,10 +163,10 @@ Dynamic: license-file
|
|
|
159
163
|
<summary><b>Media & Content Tools</b></summary>
|
|
160
164
|
<p>
|
|
161
165
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
+
- **[YouTube Toolkit](webscout/Extra/YTToolkit/README.md):** Advanced YouTube video and transcript management with multi-language support
|
|
167
|
+
- **[Text-to-Speech (TTS)](webscout/Provider/TTS/README.md):** Convert text into natural-sounding speech using multiple AI-powered providers
|
|
168
|
+
- **[Text-to-Image](webscout/Provider/TTI/README.md):** Generate high-quality images using a wide range of AI art providers
|
|
169
|
+
- **[Weather Tools](webscout/Extra/weather.md):** Retrieve detailed weather information for any location
|
|
166
170
|
</p>
|
|
167
171
|
</details>
|
|
168
172
|
|
|
@@ -170,14 +174,14 @@ Dynamic: license-file
|
|
|
170
174
|
<summary><b>Developer Tools</b></summary>
|
|
171
175
|
<p>
|
|
172
176
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
177
|
+
- **[GitAPI](webscout/Extra/GitToolkit/gitapi):** Powerful GitHub data extraction toolkit without authentication requirements for public data
|
|
178
|
+
- **[SwiftCLI](webscout/swiftcli/Readme.md):** A powerful and elegant CLI framework for beautiful command-line interfaces
|
|
179
|
+
- **[LitPrinter](webscout/litprinter/Readme.md):** Styled console output with rich formatting and colors
|
|
180
|
+
- **[LitLogger](webscout/litlogger/README.md):** Simplified logging with customizable formats and color schemes
|
|
181
|
+
- **[LitAgent](webscout/litagent/Readme.md):** Modern user agent generator that keeps your requests undetectable
|
|
182
|
+
- **[Scout](webscout/scout/README.md):** Advanced web parsing and crawling library with intelligent HTML/XML parsing
|
|
183
|
+
- **[Inferno](https://github.com/HelpingAI/inferno):** Run local LLMs with an OpenAI-compatible API and interactive CLI (now a standalone package: `pip install inferno-llm`)
|
|
184
|
+
- **[GGUF Conversion](webscout/Extra/gguf.md):** Convert and quantize Hugging Face models to GGUF format
|
|
181
185
|
</p>
|
|
182
186
|
</details>
|
|
183
187
|
|
|
@@ -185,8 +189,8 @@ Dynamic: license-file
|
|
|
185
189
|
<summary><b>Privacy & Utilities</b></summary>
|
|
186
190
|
<p>
|
|
187
191
|
|
|
188
|
-
|
|
189
|
-
|
|
192
|
+
- **[Tempmail](webscout/Extra/tempmail/README.md) & Temp Number:** Generate temporary email addresses and phone numbers
|
|
193
|
+
- **[Awesome Prompts](webscout/Extra/Act.md):** Curated collection of system prompts for specialized AI personas
|
|
190
194
|
</p>
|
|
191
195
|
</details>
|
|
192
196
|
|
|
@@ -227,14 +231,14 @@ uv add "webscout[api]"
|
|
|
227
231
|
uv run webscout --help
|
|
228
232
|
|
|
229
233
|
# Run with API dependencies
|
|
230
|
-
uv run --extra api webscout-server
|
|
234
|
+
uv run webscout --extra api webscout-server
|
|
231
235
|
|
|
232
236
|
# Install as a UV tool for global access
|
|
233
237
|
uv tool install webscout
|
|
234
238
|
|
|
235
239
|
# Use UV tool commands
|
|
236
240
|
webscout --help
|
|
237
|
-
webscout-server
|
|
241
|
+
webscout-server
|
|
238
242
|
```
|
|
239
243
|
|
|
240
244
|
### 🔧 Development Installation
|
|
@@ -249,6 +253,9 @@ uv sync --extra dev --extra api
|
|
|
249
253
|
|
|
250
254
|
# Or with pip
|
|
251
255
|
pip install -e ".[dev,api]"
|
|
256
|
+
|
|
257
|
+
# Or with uv pip
|
|
258
|
+
uv pip install -e ".[dev,api]"
|
|
252
259
|
```
|
|
253
260
|
|
|
254
261
|
### 🐳 Docker Installation
|
|
@@ -308,25 +315,25 @@ uv run --extra api webscout-server
|
|
|
308
315
|
```bash
|
|
309
316
|
# Traditional Python module execution
|
|
310
317
|
python -m webscout --help
|
|
311
|
-
python -m webscout
|
|
318
|
+
python -m webscout-server
|
|
312
319
|
```
|
|
313
320
|
|
|
314
321
|
<details open>
|
|
315
322
|
<summary><b>🔍 Web Search Commands</b></summary>
|
|
316
323
|
<p>
|
|
317
324
|
|
|
318
|
-
| Command
|
|
319
|
-
|
|
320
|
-
| `webscout text -k "query"`
|
|
321
|
-
| `webscout answers -k "query"`
|
|
322
|
-
| `webscout images -k "query"`
|
|
323
|
-
| `webscout videos -k "query"`
|
|
324
|
-
| `webscout news -k "query"`
|
|
325
|
-
| `webscout maps -k "query"`
|
|
326
|
-
| `webscout translate -k "text"`
|
|
327
|
-
| `webscout suggestions -k "query"` | Get search suggestions
|
|
328
|
-
| `webscout weather -l "location"`
|
|
329
|
-
| `webscout version`
|
|
325
|
+
| Command | Description | Example |
|
|
326
|
+
| --------------------------------- | --------------------------- | ----------------------------------------- |
|
|
327
|
+
| `webscout text -k "query"` | Perform a text search | `webscout text -k "python programming"` |
|
|
328
|
+
| `webscout answers -k "query"` | Get instant answers | `webscout answers -k "what is AI"` |
|
|
329
|
+
| `webscout images -k "query"` | Search for images | `webscout images -k "nature photography"` |
|
|
330
|
+
| `webscout videos -k "query"` | Search for videos | `webscout videos -k "python tutorials"` |
|
|
331
|
+
| `webscout news -k "query"` | Search for news articles | `webscout news -k "technology trends"` |
|
|
332
|
+
| `webscout maps -k "query"` | Perform a maps search | `webscout maps -k "restaurants near me"` |
|
|
333
|
+
| `webscout translate -k "text"` | Translate text | `webscout translate -k "hello world"` |
|
|
334
|
+
| `webscout suggestions -k "query"` | Get search suggestions | `webscout suggestions -k "how to"` |
|
|
335
|
+
| `webscout weather -l "location"` | Get weather information | `webscout weather -l "New York"` |
|
|
336
|
+
| `webscout version` | Display the current version | `webscout version` |
|
|
330
337
|
|
|
331
338
|
**Google Search Commands:**
|
|
332
339
|
| Command | Description | Example |
|
|
@@ -361,21 +368,22 @@ After installation, you can use its CLI for managing and using local LLMs:
|
|
|
361
368
|
inferno --help
|
|
362
369
|
```
|
|
363
370
|
|
|
364
|
-
| Command
|
|
365
|
-
|
|
366
|
-
| `inferno pull <model>`
|
|
367
|
-
| `inferno list`
|
|
368
|
-
| `inferno serve <model>`
|
|
369
|
-
| `inferno run <model>`
|
|
370
|
-
| `inferno remove <model>` | Remove a downloaded model
|
|
371
|
-
| `inferno version`
|
|
371
|
+
| Command | Description |
|
|
372
|
+
| ------------------------ | ----------------------------------------------- |
|
|
373
|
+
| `inferno pull <model>` | Download a model from Hugging Face |
|
|
374
|
+
| `inferno list` | List downloaded models |
|
|
375
|
+
| `inferno serve <model>` | Start a model server with OpenAI-compatible API |
|
|
376
|
+
| `inferno run <model>` | Chat with a model interactively |
|
|
377
|
+
| `inferno remove <model>` | Remove a downloaded model |
|
|
378
|
+
| `inferno version` | Show version information |
|
|
372
379
|
|
|
373
380
|
For more information, visit the [Inferno GitHub repository](https://github.com/HelpingAI/inferno) or [PyPI package page](https://pypi.org/project/inferno-llm/).
|
|
381
|
+
|
|
374
382
|
</p>
|
|
375
383
|
</details>
|
|
376
384
|
|
|
377
|
-
> [!NOTE]
|
|
378
|
-
>
|
|
385
|
+
> [!NOTE] > **Hardware requirements for running models with Inferno:**
|
|
386
|
+
>
|
|
379
387
|
> - Around 2 GB of RAM for 1B models
|
|
380
388
|
> - Around 4 GB of RAM for 3B models
|
|
381
389
|
> - At least 8 GB of RAM for 7B models
|
|
@@ -403,13 +411,19 @@ webscout-server --port 8080
|
|
|
403
411
|
# Start with API key authentication
|
|
404
412
|
webscout-server --api-key "your-secret-key"
|
|
405
413
|
|
|
414
|
+
# Start in no-auth mode using command line flag (no API key required)
|
|
415
|
+
webscout-server --no-auth
|
|
416
|
+
|
|
417
|
+
# Start in no-auth mode using environment variable
|
|
418
|
+
$env:WEBSCOUT_NO_AUTH='true'; webscout-server
|
|
419
|
+
|
|
406
420
|
# Specify a default provider
|
|
407
421
|
webscout-server --default-provider "Claude"
|
|
408
422
|
|
|
409
423
|
# Run in debug mode
|
|
410
424
|
webscout-server --debug
|
|
411
425
|
|
|
412
|
-
# Get help for all options
|
|
426
|
+
# Get help for all options (includes authentication options)
|
|
413
427
|
webscout-server --help
|
|
414
428
|
```
|
|
415
429
|
|
|
@@ -420,17 +434,35 @@ webscout-server --help
|
|
|
420
434
|
uv run --extra api webscout-server
|
|
421
435
|
|
|
422
436
|
# Using Python module
|
|
423
|
-
python -m webscout.
|
|
437
|
+
python -m webscout.auth.server
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
#### Environment Variables
|
|
441
|
+
|
|
442
|
+
Webscout server supports configuration through environment variables:
|
|
443
|
+
|
|
444
|
+
```bash
|
|
445
|
+
# Start server in no-auth mode (no API key required)
|
|
446
|
+
$env:WEBSCOUT_NO_AUTH='true'; webscout-server
|
|
424
447
|
|
|
425
|
-
#
|
|
426
|
-
|
|
448
|
+
# Disable rate limiting
|
|
449
|
+
$env:WEBSCOUT_NO_RATE_LIMIT='true'; webscout-server
|
|
450
|
+
|
|
451
|
+
# Start with custom port using environment variable
|
|
452
|
+
$env:WEBSCOUT_PORT='7860'; webscout-server
|
|
427
453
|
```
|
|
428
454
|
|
|
455
|
+
For a complete list of supported environment variables and Docker deployment options, see [DOCKER.md](DOCKER.md).
|
|
456
|
+
|
|
429
457
|
#### From Python Code
|
|
430
458
|
|
|
459
|
+
> **Recommended:**
|
|
460
|
+
> Use `start_server` from `webscout.client` for the simplest programmatic startup.
|
|
461
|
+
> For advanced control (custom host, debug, etc.), use `run_api`.
|
|
462
|
+
|
|
431
463
|
```python
|
|
432
|
-
# Method 1: Using the helper function
|
|
433
|
-
from webscout.client import start_server
|
|
464
|
+
# Method 1: Using the helper function (recommended)
|
|
465
|
+
from webscout.client import start_server
|
|
434
466
|
|
|
435
467
|
# Start with default settings
|
|
436
468
|
start_server()
|
|
@@ -438,7 +470,10 @@ start_server()
|
|
|
438
470
|
# Start with custom settings
|
|
439
471
|
start_server(port=8080, api_key="your-secret-key", default_provider="Claude")
|
|
440
472
|
|
|
441
|
-
#
|
|
473
|
+
# Start in no-auth mode (no API key required)
|
|
474
|
+
start_server(no_auth=True)
|
|
475
|
+
|
|
476
|
+
# Method 2: Advanced usage with run_api
|
|
442
477
|
from webscout.client import run_api
|
|
443
478
|
|
|
444
479
|
run_api(
|
|
@@ -599,6 +634,7 @@ with WEBS() as webs:
|
|
|
599
634
|
for result in results:
|
|
600
635
|
print(f"Title: {result['title']}\nURL: {result['url']}")
|
|
601
636
|
```
|
|
637
|
+
|
|
602
638
|
</p>
|
|
603
639
|
</details>
|
|
604
640
|
|
|
@@ -632,6 +668,7 @@ async def main():
|
|
|
632
668
|
# Run the async function
|
|
633
669
|
asyncio.run(main())
|
|
634
670
|
```
|
|
671
|
+
|
|
635
672
|
</p>
|
|
636
673
|
</details>
|
|
637
674
|
|
|
@@ -646,17 +683,17 @@ The WEBS class provides comprehensive access to DuckDuckGo's search capabilities
|
|
|
646
683
|
|
|
647
684
|
### Available Search Methods
|
|
648
685
|
|
|
649
|
-
| Method
|
|
650
|
-
|
|
651
|
-
| `text()`
|
|
652
|
-
| `answers()`
|
|
653
|
-
| `images()`
|
|
654
|
-
| `videos()`
|
|
655
|
-
| `news()`
|
|
656
|
-
| `maps()`
|
|
657
|
-
| `translate()`
|
|
658
|
-
| `suggestions()` | Search suggestions
|
|
659
|
-
| `weather()`
|
|
686
|
+
| Method | Description | Example |
|
|
687
|
+
| --------------- | ------------------- | -------------------------------------------- |
|
|
688
|
+
| `text()` | General web search | `webs.text('python programming')` |
|
|
689
|
+
| `answers()` | Instant answers | `webs.answers('population of france')` |
|
|
690
|
+
| `images()` | Image search | `webs.images('nature photography')` |
|
|
691
|
+
| `videos()` | Video search | `webs.videos('documentary')` |
|
|
692
|
+
| `news()` | News articles | `webs.news('technology')` |
|
|
693
|
+
| `maps()` | Location search | `webs.maps('restaurants', place='new york')` |
|
|
694
|
+
| `translate()` | Text translation | `webs.translate('hello', to='es')` |
|
|
695
|
+
| `suggestions()` | Search suggestions | `webs.suggestions('how to')` |
|
|
696
|
+
| `weather()` | Weather information | `webs.weather('london')` |
|
|
660
697
|
|
|
661
698
|
<details>
|
|
662
699
|
<summary><b>Example: Text Search</b></summary>
|
|
@@ -679,6 +716,7 @@ with WEBS() as webs:
|
|
|
679
716
|
print(f"URL: {result['url']}")
|
|
680
717
|
print(f"Description: {result['body']}\n")
|
|
681
718
|
```
|
|
719
|
+
|
|
682
720
|
</p>
|
|
683
721
|
</details>
|
|
684
722
|
|
|
@@ -722,6 +760,7 @@ def fetch_formatted_news(keywords, timelimit='d', max_results=20):
|
|
|
722
760
|
news = fetch_formatted_news('artificial intelligence', timelimit='w', max_results=5)
|
|
723
761
|
print('\n'.join(news))
|
|
724
762
|
```
|
|
763
|
+
|
|
725
764
|
</p>
|
|
726
765
|
</details>
|
|
727
766
|
|
|
@@ -742,6 +781,7 @@ with WEBS() as webs:
|
|
|
742
781
|
print(f"Temperature: {weather.get('temperature', 'N/A')}")
|
|
743
782
|
print(f"Conditions: {weather.get('condition', 'N/A')}")
|
|
744
783
|
```
|
|
784
|
+
|
|
745
785
|
</p>
|
|
746
786
|
</details>
|
|
747
787
|
|
|
@@ -781,6 +821,7 @@ if isinstance(available_models, list):
|
|
|
781
821
|
else:
|
|
782
822
|
print(f" {available_models}")
|
|
783
823
|
```
|
|
824
|
+
|
|
784
825
|
</p>
|
|
785
826
|
</details>
|
|
786
827
|
|
|
@@ -814,6 +855,7 @@ if isinstance(available_voices, dict):
|
|
|
814
855
|
if len(available_voices) > 5:
|
|
815
856
|
print(f" ... and {len(available_voices) - 5} more")
|
|
816
857
|
```
|
|
858
|
+
|
|
817
859
|
</p>
|
|
818
860
|
</details>
|
|
819
861
|
|
|
@@ -827,23 +869,22 @@ Webscout offers a comprehensive collection of AI chat providers, giving you acce
|
|
|
827
869
|
|
|
828
870
|
<div class="provider-table">
|
|
829
871
|
|
|
830
|
-
| Provider
|
|
831
|
-
|
|
832
|
-
| `OPENAI`
|
|
833
|
-
| `GEMINI`
|
|
834
|
-
| `Meta`
|
|
835
|
-
| `GROQ`
|
|
836
|
-
| `LLAMA`
|
|
837
|
-
| `DeepInfra`
|
|
838
|
-
| `Cohere`
|
|
839
|
-
| `PerplexityLabs` | Perplexity AI
|
|
840
|
-
| `YEPCHAT`
|
|
841
|
-
| `ChatGPTClone`
|
|
842
|
-
| `TypeGPT`
|
|
872
|
+
| Provider | Description | Key Features |
|
|
873
|
+
| ---------------- | ------------------------ | ---------------------------------- |
|
|
874
|
+
| `OPENAI` | OpenAI's models | GPT-3.5, GPT-4, tool calling |
|
|
875
|
+
| `GEMINI` | Google's Gemini models | Web search capabilities |
|
|
876
|
+
| `Meta` | Meta's AI assistant | Image generation, web search |
|
|
877
|
+
| `GROQ` | Fast inference platform | High-speed inference, tool calling |
|
|
878
|
+
| `LLAMA` | Meta's Llama models | Open weights models |
|
|
879
|
+
| `DeepInfra` | Various open models | Multiple model options |
|
|
880
|
+
| `Cohere` | Cohere's language models | Command models |
|
|
881
|
+
| `PerplexityLabs` | Perplexity AI | Web search integration |
|
|
882
|
+
| `YEPCHAT` | Yep.com's AI | Streaming responses |
|
|
883
|
+
| `ChatGPTClone` | ChatGPT-like interface | Multiple model options |
|
|
884
|
+
| `TypeGPT` | TypeChat models | Multiple model options |
|
|
843
885
|
|
|
844
886
|
</div>
|
|
845
887
|
|
|
846
|
-
|
|
847
888
|
<details>
|
|
848
889
|
<summary><b>Example: Using Meta AI</b></summary>
|
|
849
890
|
<p>
|
|
@@ -871,6 +912,7 @@ response = meta_ai.ask("Create an image of a futuristic city")
|
|
|
871
912
|
for media in response.get("media", []):
|
|
872
913
|
print(media["url"])
|
|
873
914
|
```
|
|
915
|
+
|
|
874
916
|
</p>
|
|
875
917
|
</details>
|
|
876
918
|
|
|
@@ -951,11 +993,10 @@ print(response)
|
|
|
951
993
|
response = client.chat("Find information about quantum computing", tools=tools)
|
|
952
994
|
print(response)
|
|
953
995
|
```
|
|
996
|
+
|
|
954
997
|
</p>
|
|
955
998
|
</details>
|
|
956
999
|
|
|
957
|
-
|
|
958
|
-
|
|
959
1000
|
<details open>
|
|
960
1001
|
<summary><b>GGUF Model Conversion</b></summary>
|
|
961
1002
|
<p>
|
|
@@ -977,29 +1018,30 @@ converter.convert()
|
|
|
977
1018
|
|
|
978
1019
|
#### Available Quantization Methods
|
|
979
1020
|
|
|
980
|
-
| Method
|
|
981
|
-
|
|
982
|
-
| `fp16`
|
|
983
|
-
| `q2_k`
|
|
984
|
-
| `q3_k_l` | 3-bit quantization (large) - balanced for size/accuracy
|
|
1021
|
+
| Method | Description |
|
|
1022
|
+
| -------- | ------------------------------------------------------------- |
|
|
1023
|
+
| `fp16` | 16-bit floating point - maximum accuracy, largest size |
|
|
1024
|
+
| `q2_k` | 2-bit quantization (smallest size, lowest accuracy) |
|
|
1025
|
+
| `q3_k_l` | 3-bit quantization (large) - balanced for size/accuracy |
|
|
985
1026
|
| `q3_k_m` | 3-bit quantization (medium) - good balance for most use cases |
|
|
986
|
-
| `q3_k_s` | 3-bit quantization (small) - optimized for speed
|
|
987
|
-
| `q4_0`
|
|
988
|
-
| `q4_1`
|
|
989
|
-
| `q4_k_m` | 4-bit quantization (medium) - balanced for most models
|
|
990
|
-
| `q4_k_s` | 4-bit quantization (small) - optimized for speed
|
|
991
|
-
| `q5_0`
|
|
992
|
-
| `q5_1`
|
|
993
|
-
| `q5_k_m` | 5-bit quantization (medium) - best balance for quality/size
|
|
994
|
-
| `q5_k_s` | 5-bit quantization (small) - optimized for speed
|
|
995
|
-
| `q6_k`
|
|
996
|
-
| `q8_0`
|
|
1027
|
+
| `q3_k_s` | 3-bit quantization (small) - optimized for speed |
|
|
1028
|
+
| `q4_0` | 4-bit quantization (version 0) - standard 4-bit compression |
|
|
1029
|
+
| `q4_1` | 4-bit quantization (version 1) - improved accuracy over q4_0 |
|
|
1030
|
+
| `q4_k_m` | 4-bit quantization (medium) - balanced for most models |
|
|
1031
|
+
| `q4_k_s` | 4-bit quantization (small) - optimized for speed |
|
|
1032
|
+
| `q5_0` | 5-bit quantization (version 0) - high accuracy, larger size |
|
|
1033
|
+
| `q5_1` | 5-bit quantization (version 1) - improved accuracy over q5_0 |
|
|
1034
|
+
| `q5_k_m` | 5-bit quantization (medium) - best balance for quality/size |
|
|
1035
|
+
| `q5_k_s` | 5-bit quantization (small) - optimized for speed |
|
|
1036
|
+
| `q6_k` | 6-bit quantization - highest accuracy, largest size |
|
|
1037
|
+
| `q8_0` | 8-bit quantization - maximum accuracy, largest size |
|
|
997
1038
|
|
|
998
1039
|
#### Command Line Usage
|
|
999
1040
|
|
|
1000
1041
|
```bash
|
|
1001
1042
|
python -m webscout.Extra.gguf convert -m "mistralai/Mistral-7B-Instruct-v0.2" -q "q4_k_m"
|
|
1002
1043
|
```
|
|
1044
|
+
|
|
1003
1045
|
</p>
|
|
1004
1046
|
</details>
|
|
1005
1047
|
|
|
@@ -1024,8 +1066,8 @@ Contributions are welcome! If you'd like to contribute to Webscout, please follo
|
|
|
1024
1066
|
|
|
1025
1067
|
## 🙏 Acknowledgments
|
|
1026
1068
|
|
|
1027
|
-
|
|
1028
|
-
|
|
1069
|
+
- All the amazing developers who have contributed to the project
|
|
1070
|
+
- The open-source community for their support and inspiration
|
|
1029
1071
|
|
|
1030
1072
|
<hr/>
|
|
1031
1073
|
|