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

XFEstudio/gpt4free

Refactor media rendering to yield messages only if content parts exist

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

代码差异

2 个文件 +11 -11
Modified g4f/models.py +6 -7
@@ -8,7 +8,7 @@ from .Provider import (
8 8 ### No Auth Required ###
9 9 Chatai,
10 10 Cloudflare,
11 Copilot,
11 Ollama,
12 12 DeepInfra,
13 13 HuggingSpace,
14 14 Grok,
@@ -31,7 +31,6 @@ from .Provider import (
31 31 ### Needs Auth ###
32 32 Azure,
33 33 BingCreateImages,
34 CopilotAccount,
35 34 Gemini,
36 35 GeminiCLI,
37 36 GeminiPro,
@@ -153,7 +152,7 @@ default = Model(
153 152 best_provider = IterListProvider([
154 153 OIVSCodeSer0501,
155 154 OIVSCodeSer2,
156 Copilot,
155 Ollama,
157 156 DeepInfra,
158 157 OperaAria,
159 158 GLM,
@@ -181,7 +180,7 @@ default_vision = VisionModel(
181 180 HuggingSpace,
182 181 GeminiPro,
183 182 HuggingFaceAPI,
184 CopilotAccount,
183 Ollama,
185 184 OpenaiAccount,
186 185 Gemini,
187 186 ], shuffle=False)
@@ -191,7 +190,7 @@ default_vision = VisionModel(
191 190 gpt_4 = Model(
192 191 name = 'gpt-4',
193 192 base_provider = 'OpenAI',
194 best_provider = IterListProvider([Copilot, Yqcloud, WeWordle, OpenaiChat])
193 best_provider = IterListProvider([Yqcloud, WeWordle, OpenaiChat])
195 194 )
196 195
197 196 # gpt-4o
@@ -223,7 +222,7 @@ gpt_4o_mini_tts = AudioModel(
223 222 o1 = Model(
224 223 name = 'o1',
225 224 base_provider = 'OpenAI',
226 best_provider = IterListProvider([Copilot, OpenaiAccount])
225 best_provider = IterListProvider([OpenaiAccount])
227 226 )
228 227
229 228 o1_mini = Model(
@@ -294,7 +293,7 @@ gpt_oss_120b = Model(
294 293 dall_e_3 = ImageModel(
295 294 name = 'dall-e-3',
296 295 base_provider = 'OpenAI',
297 best_provider = IterListProvider([CopilotAccount, OpenaiAccount, MicrosoftDesigner, BingCreateImages])
296 best_provider = IterListProvider([OpenaiAccount, MicrosoftDesigner, BingCreateImages])
298 297 )
299 298
300 299 gpt_image = ImageModel(
Modified g4f/tools/media.py +5 -4
@@ -94,10 +94,11 @@ def render_messages(messages: Messages, media: list = None) -> Iterator:
94 94 # Render content parts
95 95 if isinstance(message.get("content"), list):
96 96 parts = [render_part(part) for part in message["content"] if part]
97 yield {
98 **message,
99 "content": [part for part in parts if part]
100 }
97 if parts:
98 yield {
99 **message,
100 "content": [part for part in parts if part]
101 }
101 102 else:
102 103 # Append media to the last message
103 104 if media is not None and idx == len(messages) - 1: