Fastchat部署对话模版问题

#4
by wulindong1997 - opened
  • fastchat/conversation.py代码中添加模版
# Internlm2-chat template
register_conv_template(
    Conversation(
        name="internlm2-chat",
        system_template="""<|im_start|>system
{system_message}""",
        system_message="",
        roles=("<|im_start|>user", "<|im_start|>assistant"),
        sep_style=SeparatorStyle.INTERN2,
        sep="<|im_end|>",
        stop_token_ids=[2, 92542],
        stop_str='<|im_end|>'
    )
)
elif self.sep_style == SeparatorStyle.INTERN2:
            ret = "<s>"
            for role, message in self.messages:
                if message:
                    ret += role + "\n" + message + self.sep + "\n"
                else:
                    ret += role + "\n"
            return ret
  • 测试的模版输出
    <|im_start|>user
    Hello!<|im_end|>
    <|im_start|>assistant
    Hi!<|im_end|>
    <|im_start|>user
    How are you?<|im_end|>
    <|im_start|>assistant

但是在部署完成之后,调用api response中经常会出现. <eoa> <eoh>等字符,很奇怪。
请求:

{
  "model": "internlm2-7b",
  "messages": [
    {
      "role": "user",
      "content": "你知道我是谁吗"
    }
  ],
  "stream": false
}

回答:

"message": {
        "role": "assistant",
        "content": " 对不起,我无法识别您的身份。您可以告诉我一些关于您的信息吗?<eoh>\n"
      }

求解答

Sign up or log in to comment