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

XFEstudio/gpt4free

Refactor model alias handling in PollinationsAI; simplify logic for setting model aliases and improve video model filtering

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

代码差异

1 个文件 +4 -12
Modified g4f/Provider/PollinationsAI.py +4 -12
@@ -127,10 +127,10 @@ class PollinationsAI(AsyncGeneratorProvider, ProviderModelMixin):
127 127 if isinstance(model, str) or "image" in model.get("output_modalities", []):
128 128 image_models.append(alias)
129 129 if isinstance(model, dict) and alias != model.get("name"):
130 cls.model_aliases[alias] = model.get("name") if isinstance(model, dict) else model
130 cls.model_aliases[alias] = model.get("name")
131 131
132 132 cls.image_models = image_models
133 cls.video_models = [get_alias(model) for model in new_image_models if "video" in model.get("output_modalities", [])]
133 cls.video_models = [get_alias(model) for model in new_image_models if isinstance(model, dict) and "video" in model.get("output_modalities", [])]
134 134
135 135 text_response = requests.get(cls.nectar_text_models_endpoint if api_key else cls.g4f_text_models_endpoint, timeout=timeout)
136 136 if not text_response.ok:
@@ -156,23 +156,15 @@ class PollinationsAI(AsyncGeneratorProvider, ProviderModelMixin):
156 156
157 157 for model in models:
158 158 alias = get_alias(model)
159 if alias != model.get("name"):
160 cls.model_aliases[alias] = model.get("name")
159 161 if alias not in cls.text_models:
160 162 cls.text_models.append(alias)
161 if alias != model.get("name"):
162 cls.model_aliases[alias] = model.get("name")
163 163 elif model.get("name") not in cls.text_models:
164 164 cls.text_models.append(model.get("name"))
165 165 cls.live += 1
166 166 cls.swap_model_aliases = {v: k for k, v in cls.model_aliases.items()}
167 167
168 except Exception as e:
169 # Save default models in case of an error
170 if not cls.text_models:
171 cls.text_models = [cls.default_model]
172 if not cls.image_models:
173 cls.image_models = [cls.default_image_model]
174 debug.error(f"Failed to fetch models: {e}")
175
176 168 finally:
177 169 if api_key:
178 170 cls._gen_models_loaded = True