XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet
公开
关注 0 Fork 0 Star 1
返回提交历史

XFEstudio/gpt4free

perf(startup): defer heavy scraper and document parsing imports to speed up startup

1bcc9c55
Anand Mall <anand@example.com>
提交于

代码差异

10 个文件 +10 -12
Modified g4f/Provider/Pollinations.py +2 -2
@@ -28,9 +28,9 @@ from ..providers.response import (
28 28 PreviewResponse,
29 29 )
30 30 from ..tools.media import render_messages
31 from ..tools.run_tools import AuthManager
31 from ..tools.auth import AuthManager
32 32 from ..cookies import get_cookies_dir
33 from ..tools.files import secure_filename
33 from ..files import secure_filename
34 34 from ..config import AppConfig
35 35 from .template.OpenaiTemplate import OpenaiTemplate, read_response
36 36 from .. import debug
Modified g4f/Provider/audio/PollinationsAudio.py +0 -1
@@ -12,7 +12,6 @@ from ...providers.base_provider import AsyncGeneratorProvider, ProviderModelMixi
12 12 from ...requests.aiohttp import get_connector
13 13 from ...requests.defaults import DEFAULT_HEADERS
14 14 from ...requests.raise_for_status import raise_for_status
15 from ...tools.run_tools import AuthManager
16 15 from ...image import to_bytes
17 16 from ...tools.media import merge_media
18 17 from ..helper import filter_none, format_media_prompt
Modified g4f/Provider/local/Ollama.py +0 -1
@@ -9,7 +9,6 @@ from typing import Optional
9 9 from ..template import OpenaiTemplate
10 10 from ...requests import StreamSession, raise_for_status
11 11 from ...cookies import get_cookies
12 from ...tools.run_tools import AuthManager
13 12 from ...typing import AsyncResult, Messages
14 13 from ...config import AppConfig
15 14 from ...errors import MissingAuthError
Modified g4f/Provider/needs_auth/Cohere.py +0 -1
@@ -7,7 +7,6 @@ from ...typing import AsyncResult, Messages
7 7 from ...requests import StreamSession, raise_for_status, sse_stream
8 8 from ...providers.response import FinishReason, Usage
9 9 from ...errors import MissingAuthError
10 from ...tools.run_tools import AuthManager
11 10 from ..base_provider import AsyncGeneratorProvider, ProviderModelMixin
12 11 from ... import debug
13 12
Modified g4f/Provider/needs_auth/LMArena.py +1 -1
@@ -34,7 +34,7 @@ from ...typing import AsyncResult, Messages, MediaListType
34 34 from ...requests import get_args_from_nodriver, raise_for_status, merge_cookies
35 35 from ...requests import StreamSession
36 36 from ...cookies import get_cookies_dir
37 from ...tools.files import secure_filename
37 from ...files import secure_filename
38 38 from ...errors import (
39 39 ModelNotFoundError,
40 40 CloudflareError,
Modified g4f/client/__init__.py +3 -2
@@ -16,8 +16,7 @@ from ..providers.response import *
16 16 from ..errors import NoMediaResponseError
17 17 from ..providers.retry_provider import IterListProvider
18 18 from ..providers.asyncio import to_sync_generator
19 from ..Provider import PollinationsImage
20 from ..tools.run_tools import async_iter_run_tools, iter_run_tools
19
21 20 from .stubs import (
22 21 ChatCompletion,
23 22 ChatCompletionChunk,
@@ -385,6 +384,7 @@ class Completions:
385 384 if ignore_stream:
386 385 kwargs["ignore_stream"] = True
387 386
387 from ..tools.run_tools import iter_run_tools
388 388 response = iter_run_tools(
389 389 provider,
390 390 model=model,
@@ -783,6 +783,7 @@ class AsyncCompletions:
783 783 if ignore_stream:
784 784 kwargs["ignore_stream"] = True
785 785
786 from ..tools.run_tools import async_iter_run_tools
786 787 response = async_iter_run_tools(
787 788 provider,
788 789 model=model,
Modified g4f/image/copy_images.py +1 -1
@@ -14,7 +14,7 @@ from urllib.parse import urlparse
14 14 from ..typing import Optional, Cookies, Union
15 15 from ..requests.aiohttp import get_connector
16 16 from ..image import MEDIA_TYPE_MAP, EXTENSIONS_MAP, is_safe_url
17 from ..tools.files import secure_filename
17 from ..files import secure_filename
18 18 from ..providers.response import ImageResponse, AudioResponse, VideoResponse, quote_url
19 19 from . import is_accepted_format, extract_data_uri
20 20 from .. import debug
Modified g4f/providers/helper.py +1 -1
@@ -5,7 +5,6 @@ import string
5 5 from pathlib import Path
6 6
7 7 from ..typing import Messages, Cookies, AsyncIterator, Iterator
8 from ..tools.files import get_bucket_dir, read_bucket
9 8 from .response import JsonResponse, HiddenResponse
10 9 from .. import debug
11 10
@@ -19,6 +18,7 @@ def to_string(value) -> str:
19 18 elif "name" in value:
20 19 return ""
21 20 elif "bucket_id" in value:
21 from ..tools.files import get_bucket_dir, read_bucket
22 22 bucket_dir = Path(get_bucket_dir(value.get("bucket_id")))
23 23 return "".join(read_bucket(bucket_dir))
24 24 return ""
Modified g4f/providers/retry_provider.py +1 -1
@@ -9,7 +9,7 @@ from .types import BaseProvider, BaseRetryProvider, ProviderType
9 9 from .response import ProviderInfo, JsonConversation, is_content
10 10 from .base_provider import get_async_provider_method
11 11 from .. import debug
12 from ..tools.run_tools import AuthManager
12 from ..tools.auth import AuthManager
13 13 from ..config import AppConfig
14 14 from ..errors import RetryProviderError, RetryNoProviderError
15 15
Modified g4f/tools/media.py +1 -1
@@ -14,7 +14,7 @@ from ..image import (
14 14 is_valid_audio,
15 15 to_data_uri,
16 16 )
17 from .files import get_bucket_dir, read_bucket
17 from ..files import get_bucket_dir
18 18
19 19
20 20 def render_media(