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

XFEstudio/gpt4free

Default tools models

548f00c8
hlohaus <983577+hlohaus@users.noreply.github.com>
提交于

代码差异

4 个文件 +8 -4
Modified g4f/Provider/__init__.py +1 -0
@@ -384,6 +384,7 @@ class ProviderLoader:
384 384 )
385 385 cls.loaded[name].__name__ = name
386 386 cls.loaded[name].active_by_default = True
387 cls.loaded[name].supports_native_tools = True
387 388 return cls.loaded[name]
388 389 elif name == "OpenaiAPI":
389 390 from g4f.Provider.needs_auth.OpenaiAPI import OpenaiAPI
Modified g4f/Provider/needs_auth/OpenRouter.py +0 -2
@@ -19,10 +19,8 @@ class OpenRouterFree(OpenaiTemplate):
19 19 login_url = "https://openrouter.ai/settings/keys"
20 20 base_url = "https://openrouter.ai/api/v1"
21 21 backup_url = "https://g4f.space/api/openrouter"
22 max_tokens = 8192
23 22 working = True
24 23 active_by_default = True
25 default_model = "openrouter/free"
26 24
27 25 @classmethod
28 26 def get_models(cls, api_key: str = None, **kwargs):
Modified g4f/models.py +2 -0
@@ -132,6 +132,8 @@ default = Model(
132 132 "OrcaRouter",
133 133 "OpenCode",
134 134 "KiloCode",
135 "OpenRouterFree",
136 "GeminiPro",
135 137 ]
136 138 ),
137 139 )
Modified g4f/providers/any_provider.py +5 -2
@@ -440,6 +440,10 @@ class AnyProvider(AsyncGeneratorProvider, AnyModelProviderMixin):
440 440 providers = models.default_vision.best_provider.get_providers()
441 441 else:
442 442 providers = models.default.best_provider.get_providers()
443 if kwargs.get("tools"):
444 providers = [
445 p for p in providers if getattr(p, "supports_native_tools", False)
446 ]
443 447 elif model in RouterConfig.routes:
444 448 async for chunk in ConfigModelProvider(
445 449 RouterConfig.routes.get(model)
@@ -484,7 +488,6 @@ class AnyProvider(AsyncGeneratorProvider, AnyModelProviderMixin):
484 488 except KeyError:
485 489 pass
486 490 if not providers:
487
488 491 def _safe_getattr(p):
489 492 try:
490 493 return __getattr__(p)
@@ -542,7 +545,7 @@ class AnyProvider(AsyncGeneratorProvider, AnyModelProviderMixin):
542 545 f"AnyProvider: Using providers: {[provider.__name__ for provider in providers]} for model '{model}'"
543 546 )
544 547
545 async for chunk in RotatedProvider(providers, False).create_async_generator(
548 async for chunk in RotatedProvider(providers, not model).create_async_generator(
546 549 model, messages, stream=stream, media=media, api_key=api_key, **kwargs
547 550 ):
548 551 yield chunk