mirror of
				https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web.git
				synced 2025-11-04 16:23:41 +08:00 
			
		
		
		
	fix: baidu error_code 336006
change the summary role from system to user
This commit is contained in:
		@@ -77,17 +77,24 @@ export class ErnieApi implements LLMApi {
 | 
			
		||||
 | 
			
		||||
  async chat(options: ChatOptions) {
 | 
			
		||||
    const messages = options.messages.map((v) => ({
 | 
			
		||||
      // "error_code": 336006, "error_msg": "the role of message with odd index in the messages must be assistant",
 | 
			
		||||
      role: v.role === "system" ? "assistant" : v.role,
 | 
			
		||||
      // "error_code": 336006, "error_msg": "the role of message with even index in the messages must be user or function",
 | 
			
		||||
      role: v.role === "system" ? "user" : v.role,
 | 
			
		||||
      content: getMessageTextContent(v),
 | 
			
		||||
    }));
 | 
			
		||||
 | 
			
		||||
    // "error_code": 336006, "error_msg": "the length of messages must be an odd number",
 | 
			
		||||
    if (messages.length % 2 === 0) {
 | 
			
		||||
      messages.unshift({
 | 
			
		||||
        role: "user",
 | 
			
		||||
        content: " ",
 | 
			
		||||
      });
 | 
			
		||||
      if (messages.at(0)?.role === "user") {
 | 
			
		||||
        messages.splice(1, 0, {
 | 
			
		||||
          role: "assistant",
 | 
			
		||||
          content: " ",
 | 
			
		||||
        });
 | 
			
		||||
      } else {
 | 
			
		||||
        messages.unshift({
 | 
			
		||||
          role: "user",
 | 
			
		||||
          content: " ",
 | 
			
		||||
        });
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    const modelConfig = {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user