From 76c368340384df9dccbeda76f8e31774c5626337 Mon Sep 17 00:00:00 2001 From: H Lohaus Date: Sun, 8 Dec 2024 20:39:40 +0100 Subject: =?UTF-8?q?Remove=20webview=20js=20api,=20Add=20unittest=20for=20p?= =?UTF-8?q?rovider=20has=20model,=20Use=20cooki=E2=80=A6=20(#2470)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Remove webview js api, Add unittest for provider has model, Use cookies dir for cache --- g4f/Provider/Airforce.py | 2 +- g4f/Provider/Blackbox.py | 21 ++---- g4f/Provider/Flux.py | 2 +- g4f/Provider/RobocodersAPI.py | 3 +- g4f/Provider/needs_auth/CopilotAccount.py | 5 +- g4f/Provider/needs_auth/MetaAI.py | 2 +- g4f/gui/client/index.html | 26 ++----- g4f/gui/client/static/js/chat.v1.js | 49 ++---------- g4f/gui/client/static/js/highlightjs-copy.min.js | 4 - g4f/gui/server/android_gallery.py | 67 ----------------- g4f/gui/server/js_api.py | 94 ------------------------ g4f/gui/webview.py | 2 - g4f/image.py | 3 +- g4f/models.py | 42 ++--------- 14 files changed, 34 insertions(+), 288 deletions(-) delete mode 100644 g4f/gui/server/android_gallery.py delete mode 100644 g4f/gui/server/js_api.py (limited to 'g4f') diff --git a/g4f/Provider/Airforce.py b/g4f/Provider/Airforce.py index 5e5d5194..474c9f88 100644 --- a/g4f/Provider/Airforce.py +++ b/g4f/Provider/Airforce.py @@ -60,6 +60,7 @@ class Airforce(AsyncGeneratorProvider, ProviderModelMixin): "evil": "any-uncensored", "sdxl": "stable-diffusion-xl-base", "flux-pro": "flux-1.1-pro", + "llama-3.1-8b": "llama-3.1-8b-chat" } @classmethod @@ -85,7 +86,6 @@ class Airforce(AsyncGeneratorProvider, ProviderModelMixin): cls.models = [model for model in cls.models if model not in cls.hidden_models] except Exception as e: debug.log(f"Error fetching text models: {e}") - cls.models = [cls.default_model] return cls.models diff --git a/g4f/Provider/Blackbox.py b/g4f/Provider/Blackbox.py index 9c02f3d7..537a3ea8 100644 --- a/g4f/Provider/Blackbox.py +++ b/g4f/Provider/Blackbox.py @@ -7,21 +7,20 @@ import json import re import aiohttp -import os import json from pathlib import Path from ..typing import AsyncResult, Messages, ImageType from .base_provider import AsyncGeneratorProvider, ProviderModelMixin from ..image import ImageResponse, to_data_uri - +from ..cookies import get_cookies_dir from .helper import format_prompt class Blackbox(AsyncGeneratorProvider, ProviderModelMixin): label = "Blackbox AI" url = "https://www.blackbox.ai" api_endpoint = "https://www.blackbox.ai/api/chat" - + working = True supports_stream = True supports_system_message = True @@ -38,7 +37,7 @@ class Blackbox(AsyncGeneratorProvider, ProviderModelMixin): agentMode = { 'ImageGeneration': {'mode': True, 'id': "ImageGenerationLV45LJp", 'name': "Image Generation"} } - + trendingAgentMode = { "gemini-1.5-flash": {'mode': True, 'id': 'Gemini'}, "llama-3.1-8b": {'mode': True, 'id': "llama-3.1-8b"}, @@ -108,19 +107,11 @@ class Blackbox(AsyncGeneratorProvider, ProviderModelMixin): "flux": "ImageGeneration", } - @classmethod - def _get_cache_dir(cls) -> Path: - # Get the path to the current file - current_file = Path(__file__) - # Create the path to the .cache directory - cache_dir = current_file.parent / '.cache' - # Create a directory if it does not exist - cache_dir.mkdir(exist_ok=True) - return cache_dir - @classmethod def _get_cache_file(cls) -> Path: - return cls._get_cache_dir() / 'blackbox.json' + dir = Path(get_cookies_dir()) + dir.mkdir(exist_ok=True) + return dir / 'blackbox.json' @classmethod def _load_cached_value(cls) -> str | None: diff --git a/g4f/Provider/Flux.py b/g4f/Provider/Flux.py index 05983678..7a00e75a 100644 --- a/g4f/Provider/Flux.py +++ b/g4f/Provider/Flux.py @@ -12,7 +12,7 @@ class Flux(AsyncGeneratorProvider, ProviderModelMixin): url = "https://black-forest-labs-flux-1-dev.hf.space" api_endpoint = "/gradio_api/call/infer" working = True - default_model = 'flux-1-dev' + default_model = 'flux-dev' models = [default_model] image_models = [default_model] diff --git a/g4f/Provider/RobocodersAPI.py b/g4f/Provider/RobocodersAPI.py index d8330024..3a94e271 100755 --- a/g4f/Provider/RobocodersAPI.py +++ b/g4f/Provider/RobocodersAPI.py @@ -14,6 +14,7 @@ except ImportError: from aiohttp import ClientTimeout from ..errors import MissingRequirementsError from ..typing import AsyncResult, Messages +from ..cookies import get_cookies_dir from .base_provider import AsyncGeneratorProvider, ProviderModelMixin from .helper import format_prompt @@ -30,7 +31,7 @@ class RobocodersAPI(AsyncGeneratorProvider, ProviderModelMixin): agent = [default_model, "RepoAgent", "FrontEndAgent"] models = [*agent] - CACHE_DIR = Path(__file__).parent / ".cache" + CACHE_DIR = Path(get_cookies_dir()) CACHE_FILE = CACHE_DIR / "robocoders.json" @classmethod diff --git a/g4f/Provider/needs_auth/CopilotAccount.py b/g4f/Provider/needs_auth/CopilotAccount.py index 497aab98..0dfb9bd4 100644 --- a/g4f/Provider/needs_auth/CopilotAccount.py +++ b/g4f/Provider/needs_auth/CopilotAccount.py @@ -9,4 +9,7 @@ class CopilotAccount(Copilot, ProviderModelMixin): default_model = "Copilot" default_vision_model = default_model models = [default_model] - image_models = models \ No newline at end of file + image_models = models + model_aliases = { + "dall-e-3": default_model + } \ No newline at end of file diff --git a/g4f/Provider/needs_auth/MetaAI.py b/g4f/Provider/needs_auth/MetaAI.py index 568de701..a8b6708e 100644 --- a/g4f/Provider/needs_auth/MetaAI.py +++ b/g4f/Provider/needs_auth/MetaAI.py @@ -29,7 +29,7 @@ class MetaAI(AsyncGeneratorProvider, ProviderModelMixin): label = "Meta AI" url = "https://www.meta.ai" working = True - default_model = '' + default_model = 'meta-ai' def __init__(self, proxy: str = None, connector: BaseConnector = None): self.session = ClientSession(connector=get_connector(connector, proxy), headers=DEFAULT_HEADERS) diff --git a/g4f/gui/client/index.html b/g4f/gui/client/index.html index cd1f72a6..5410b46e 100644 --- a/g4f/gui/client/index.html +++ b/g4f/gui/client/index.html @@ -1,6 +1,5 @@ - @@ -62,9 +61,8 @@ onInit: (el, pswp) => { lightbox.pswp.on('change', () => { const currSlideElement = lightbox.pswp.currSlide.data.element; - let captionHTML = ''; if (currSlideElement) { - el.innerHTML = currSlideElement.querySelector('img').getAttribute('alt'); + el.innerText = currSlideElement.querySelector('img').getAttribute('alt'); } }); } @@ -80,7 +78,6 @@ g4f - gui -
@@ -92,12 +89,6 @@
-
-