Skip to content

Commit b667eff

Browse files
HyiKiwebws
authored andcommitted
fix: baidu error_code 336006
change the summary role from system to user
1 parent 54fdf40 commit b667eff

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

app/client/platforms/baidu.ts

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -77,17 +77,24 @@ export class ErnieApi implements LLMApi {
7777

7878
async chat(options: ChatOptions) {
7979
const messages = options.messages.map((v) => ({
80-
// "error_code": 336006, "error_msg": "the role of message with odd index in the messages must be assistant",
81-
role: v.role === "system" ? "assistant" : v.role,
80+
// "error_code": 336006, "error_msg": "the role of message with even index in the messages must be user or function",
81+
role: v.role === "system" ? "user" : v.role,
8282
content: getMessageTextContent(v),
8383
}));
8484

8585
// "error_code": 336006, "error_msg": "the length of messages must be an odd number",
8686
if (messages.length % 2 === 0) {
87-
messages.unshift({
88-
role: "user",
89-
content: " ",
90-
});
87+
if (messages.at(0)?.role === "user") {
88+
messages.splice(1, 0, {
89+
role: "assistant",
90+
content: " ",
91+
});
92+
} else {
93+
messages.unshift({
94+
role: "user",
95+
content: " ",
96+
});
97+
}
9198
}
9299

93100
const modelConfig = {

0 commit comments

Comments
 (0)