Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
陈曦
sub2api
Commits
e3f1fd9b
Commit
e3f1fd9b
authored
Mar 14, 2026
by
Ethan0x0000
Browse files
fix: handle strings.Builder write errors in assistant parsing
parent
ece0606f
Changes
1
Show whitespace changes
Inline
Side-by-side
backend/internal/pkg/apicompat/chatcompletions_to_responses.go
View file @
e3f1fd9b
...
...
@@ -232,6 +232,10 @@ func parseAssistantContent(raw json.RawMessage) (string, error) {
}
var
b
strings
.
Builder
write
:=
func
(
v
string
)
error
{
_
,
err
:=
b
.
WriteString
(
v
)
return
err
}
for
_
,
p
:=
range
parts
{
typ
,
_
:=
p
[
"type"
]
.
(
string
)
text
,
_
:=
p
[
"text"
]
.
(
string
)
...
...
@@ -240,17 +244,31 @@ func parseAssistantContent(raw json.RawMessage) (string, error) {
switch
typ
{
case
"thinking"
,
"reasoning"
:
if
thinking
!=
""
{
b
.
WriteString
(
"<thinking>"
)
b
.
WriteString
(
thinking
)
b
.
WriteString
(
"</thinking>"
)
if
err
:=
write
(
"<thinking>"
);
err
!=
nil
{
return
""
,
err
}
if
err
:=
write
(
thinking
);
err
!=
nil
{
return
""
,
err
}
if
err
:=
write
(
"</thinking>"
);
err
!=
nil
{
return
""
,
err
}
}
else
if
text
!=
""
{
b
.
WriteString
(
"<thinking>"
)
b
.
WriteString
(
text
)
b
.
WriteString
(
"</thinking>"
)
if
err
:=
write
(
"<thinking>"
);
err
!=
nil
{
return
""
,
err
}
if
err
:=
write
(
text
);
err
!=
nil
{
return
""
,
err
}
if
err
:=
write
(
"</thinking>"
);
err
!=
nil
{
return
""
,
err
}
}
default
:
if
text
!=
""
{
b
.
WriteString
(
text
)
if
err
:=
write
(
text
);
err
!=
nil
{
return
""
,
err
}
}
}
}
...
...
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