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

XFEstudio/gpt4free

Fix unittests

082c1522
hlohaus <983577+hlohaus@users.noreply.github.com>
提交于

代码差异

6 个文件 +31 -19
Modified etc/tool/commit.py +1 -1
@@ -31,7 +31,7 @@ from g4f import debug
31 31 debug.logging = True
32 32
33 33 # Constants
34 DEFAULT_MODEL = "claude-3.7-sonnet"
34 DEFAULT_MODEL = "gpt-4o"
35 35 FALLBACK_MODELS = []
36 36 MAX_DIFF_SIZE = None # Set to None to disable truncation, or a number for character limit
37 37 MAX_RETRIES = 3
Modified etc/unittest/models.py +1 -0
@@ -13,6 +13,7 @@ class TestProviderHasModel(unittest.TestCase):
13 13 for model, providers in __models__.values():
14 14 for provider in providers:
15 15 if issubclass(provider, ProviderModelMixin):
16 provider.get_models() # Update models
16 17 if model.name in provider.model_aliases:
17 18 model_name = provider.model_aliases[model.name]
18 19 else:
Modified g4f/Provider/Liaobots.py +1 -1
@@ -303,7 +303,7 @@ class Liaobots(AsyncGeneratorProvider, ProviderModelMixin):
303 303 # xAI
304 304 "grok-3-reason": "grok-3-reason",
305 305 "o3-mini": "o3-mini-2025-01-31",
306 "qwen-3-235b": "qwen3-235b-a22b",
306 "qwen3-235b": "qwen3-235b-a22b",
307 307 }
308 308
309 309 _auth_code = None
Modified g4f/Provider/hf_space/Qwen_Qwen_3.py +18 -9
@@ -7,6 +7,7 @@ import uuid
7 7 from ...typing import AsyncResult, Messages
8 8 from ...providers.response import Reasoning, JsonConversation
9 9 from ...requests.raise_for_status import raise_for_status
10 from ...errors import ModelNotSupportedError
10 11 from ..base_provider import AsyncGeneratorProvider, ProviderModelMixin
11 12 from ..helper import get_last_user_message
12 13 from ... import debug
@@ -32,17 +33,25 @@ class Qwen_Qwen_3(AsyncGeneratorProvider, ProviderModelMixin):
32 33 "qwen3-1.7b",
33 34 "qwen3-0.6b",
34 35 }
36 model_aliases = {
37 "qwen3-235b": default_model,
38 "qwen3-30b": "qwen3-30b-a3b"
39 }
35 40
36 41 @classmethod
37 42 async def create_async_generator(
38 cls,
39 model: str,
40 messages: Messages,
41 proxy: str = None,
42 conversation: JsonConversation = None,
43 thinking_budget: int = 38,
44 **kwargs
43 cls,
44 model: str,
45 messages: Messages,
46 proxy: str = None,
47 conversation: JsonConversation = None,
48 thinking_budget: int = 38,
49 **kwargs
45 50 ) -> AsyncResult:
51 try:
52 model = cls.get_model(model)
53 except ModelNotSupportedError:
54 pass
46 55 if conversation is None:
47 56 conversation = JsonConversation(session_hash=str(uuid.uuid4()).replace('-', ''))
48 57
@@ -73,7 +82,7 @@ class Qwen_Qwen_3(AsyncGeneratorProvider, ProviderModelMixin):
73 82
74 83 async with aiohttp.ClientSession() as session:
75 84 # Send join request
76 async with session.post(cls.api_endpoint, headers=headers_join, json=payload_join) as response:
85 async with session.post(cls.api_endpoint, headers=headers_join, json=payload_join, proxy=proxy) as response:
77 86 await raise_for_status(response)
78 87 (await response.json())['event_id']
79 88
@@ -92,7 +101,7 @@ class Qwen_Qwen_3(AsyncGeneratorProvider, ProviderModelMixin):
92 101 }
93 102
94 103 # Send data stream request
95 async with session.get(url_data, headers=headers_data, params=params_data) as response:
104 async with session.get(url_data, headers=headers_data, params=params_data, proxy=proxy) as response:
96 105 is_thinking = False
97 106 async for line in response.content:
98 107 decoded_line = line.decode('utf-8')
Modified g4f/Provider/hf_space/__init__.py +2 -0
@@ -55,11 +55,13 @@ class HuggingSpace(AsyncGeneratorProvider, ProviderModelMixin):
55 55 models = []
56 56 image_models = []
57 57 vision_models = []
58 cls.model_aliases = {}
58 59 for provider in cls.providers:
59 60 models.extend(provider.get_models(**kwargs))
60 61 models.extend(provider.model_aliases.keys())
61 62 image_models.extend(provider.image_models)
62 63 vision_models.extend(provider.vision_models)
64 cls.model_aliases.update(provider.model_aliases)
63 65 models = list(set(models))
64 66 models.sort()
65 67 cls.models = models
Modified g4f/models.py +8 -8
@@ -631,45 +631,45 @@ qwen_2_5_vl_72b = Model(
631 631 best_provider = Blackbox
632 632 )
633 633
634 # qwen-3
634 # qwen3
635 635 qwen_3_235b = Model(
636 name = 'qwen-3-235b',
636 name = 'qwen3-235b',
637 637 base_provider = 'Qwen',
638 638 best_provider = IterListProvider([DeepInfraChat, HuggingSpace, Liaobots])
639 639 )
640 640
641 641 qwen_3_32b = Model(
642 name = 'qwen-3-32b',
642 name = 'qwen3-32b',
643 643 base_provider = 'Qwen',
644 644 best_provider = IterListProvider([DeepInfraChat, HuggingSpace])
645 645 )
646 646
647 647 qwen_3_30b = Model(
648 name = 'qwen-3-30b',
648 name = 'qwen3-30b',
649 649 base_provider = 'Qwen',
650 650 best_provider = IterListProvider([DeepInfraChat, HuggingSpace])
651 651 )
652 652
653 653 qwen_3_14b = Model(
654 name = 'qwen-3-14b',
654 name = 'qwen3-14b',
655 655 base_provider = 'Qwen',
656 656 best_provider = IterListProvider([DeepInfraChat, HuggingSpace])
657 657 )
658 658
659 659 qwen_3_4b = Model(
660 name = 'qwen-3-4b',
660 name = 'qwen3-4b',
661 661 base_provider = 'Qwen',
662 662 best_provider = HuggingSpace
663 663 )
664 664
665 665 qwen_3_1_7b = Model(
666 name = 'qwen-3-1.7b',
666 name = 'qwen3-1.7b',
667 667 base_provider = 'Qwen',
668 668 best_provider = HuggingSpace
669 669 )
670 670
671 671 qwen_3_0_6b = Model(
672 name = 'qwen-3-0.6b',
672 name = 'qwen3-0.6b',
673 673 base_provider = 'Qwen',
674 674 best_provider = HuggingSpace
675 675 )