File tree 2 files changed +16
-0
lines changed
2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -87,6 +87,13 @@ def get_llama_proxy():
87
87
llama_outer_lock .release ()
88
88
89
89
90
+ _ping_message_factory = None
91
+
92
+ def set_ping_message_factory (factory ):
93
+ global _ping_message_factory
94
+ _ping_message_factory = factory
95
+
96
+
90
97
def create_app (
91
98
settings : Settings | None = None ,
92
99
server_settings : ServerSettings | None = None ,
@@ -138,6 +145,9 @@ def create_app(
138
145
assert model_settings is not None
139
146
set_llama_proxy (model_settings = model_settings )
140
147
148
+ if server_settings .disable_ping_events :
149
+ set_ping_message_factory (lambda : bytes ())
150
+
141
151
return app
142
152
143
153
@@ -302,6 +312,7 @@ def iterator() -> Iterator[llama_cpp.CreateCompletionStreamResponse]:
302
312
iterator = iterator (),
303
313
),
304
314
sep = "\n " ,
315
+ ping_message_factory = _ping_message_factory ,
305
316
)
306
317
else :
307
318
return iterator_or_completion
@@ -470,6 +481,7 @@ def iterator() -> Iterator[llama_cpp.ChatCompletionChunk]:
470
481
iterator = iterator (),
471
482
),
472
483
sep = "\n " ,
484
+ ping_message_factory = _ping_message_factory ,
473
485
)
474
486
else :
475
487
return iterator_or_completion
Original file line number Diff line number Diff line change @@ -195,6 +195,10 @@ class ServerSettings(BaseSettings):
195
195
default = True ,
196
196
description = "Whether to interrupt requests when a new request is received." ,
197
197
)
198
+ disable_ping_events : bool = Field (
199
+ default = False ,
200
+ description = "Disable EventSource pings (may be needed for some clients)." ,
201
+ )
198
202
199
203
200
204
class Settings (ServerSettings , ModelSettings ):
You can’t perform that action at this time.
0 commit comments