Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
change
sglang
Commits
c0454b32
Unverified
Commit
c0454b32
authored
Jan 17, 2024
by
Christopher Chou
Committed by
GitHub
Jan 17, 2024
Browse files
Add option to return metadata in async streaming (#18)
parent
8024fc5e
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
6 additions
and
4 deletions
+6
-4
python/sglang/lang/interpreter.py
python/sglang/lang/interpreter.py
+6
-4
No files found.
python/sglang/lang/interpreter.py
View file @
c0454b32
...
@@ -365,11 +365,10 @@ class StreamExecutor:
...
@@ -365,11 +365,10 @@ class StreamExecutor:
for
comp
,
meta_info
in
generator
:
for
comp
,
meta_info
in
generator
:
self
.
text_
+=
comp
self
.
text_
+=
comp
self
.
variables
[
name
]
+=
comp
self
.
variables
[
name
]
+=
comp
self
.
meta_info
[
name
]
=
meta_info
self
.
stream_var_event
[
name
].
set
()
self
.
stream_var_event
[
name
].
set
()
self
.
stream_text_event
.
set
()
self
.
stream_text_event
.
set
()
self
.
meta_info
[
name
]
=
meta_info
self
.
variable_event
[
name
].
set
()
self
.
variable_event
[
name
].
set
()
self
.
stream_var_event
[
name
].
set
()
self
.
stream_var_event
[
name
].
set
()
...
@@ -583,7 +582,7 @@ class ProgramState:
...
@@ -583,7 +582,7 @@ class ProgramState:
else
:
else
:
yield
self
.
get_var
(
name
)
yield
self
.
get_var
(
name
)
async
def
text_async_iter
(
self
,
var_name
=
None
):
async
def
text_async_iter
(
self
,
var_name
=
None
,
return_meta_data
=
False
):
loop
=
asyncio
.
get_running_loop
()
loop
=
asyncio
.
get_running_loop
()
if
self
.
stream_executor
.
stream
:
if
self
.
stream_executor
.
stream
:
...
@@ -607,7 +606,10 @@ class ProgramState:
...
@@ -607,7 +606,10 @@ class ProgramState:
out
=
str
(
self
.
stream_executor
.
variables
[
var_name
][
prev
:])
out
=
str
(
self
.
stream_executor
.
variables
[
var_name
][
prev
:])
prev
+=
len
(
out
)
prev
+=
len
(
out
)
if
out
:
if
out
:
yield
out
if
return_meta_data
:
yield
out
,
self
.
stream_executor
.
meta_info
[
var_name
]
else
:
yield
out
if
self
.
stream_executor
.
variable_event
[
var_name
].
is_set
():
if
self
.
stream_executor
.
variable_event
[
var_name
].
is_set
():
break
break
else
:
else
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment