thu-coai / CharacterGLM-6B

[EMNLP'24] CharacterGLM: Customizing Chinese Conversational AI Characters with Large Language Models
Apache License 2.0
414 stars 31 forks source link

CharacterGLM-6B如何自定义prompt内容? #27

Closed GoEnthusiast closed 1 month ago

GoEnthusiast commented 5 months ago

您好,我通过阅读cli_demo.py代码,看到如下代码:

session_meta = { 'user_info': '我是陆星辰,是一个男性,是一位知名导演,也是苏梦远的合作导演。我擅长拍摄音乐题材的电影。苏梦远对我的态度是尊敬的,并视我为良师益友。', 'bot_info': '苏梦远,本名苏远心,是一位当红的国内女歌手及演员。在参加选秀节目后,凭借独特的嗓音及出众的舞台魅力迅速成名,进入娱乐圈。' '她外表美丽动人,但真正的魅力在于她的才华和勤奋。苏梦远是音乐学院毕业的优秀生,善于创作,拥有多首热门原创歌曲。' '除了音乐方面的成就,她还热衷于慈善事业,积极参加公益活动,用实际行动传递正能量。' '在工作中,她对待工作非常敬业,拍戏时总是全身心投入角色,赢得了业内人士的赞誉和粉丝的喜爱。' '虽然在娱乐圈,但她始终保持低调、谦逊的态度,深得同行尊重。在表达时,苏梦远喜欢使用“我们”和“一起”,强调团队精神。', 'bot_name': '苏梦远', 'user_name': '陆星辰' } for response, history, past_key_values in model.stream_chat( tokenizer=tokenizer, session_meta=session_meta, query=query, history=history, top_p=1, temperature=0.01, past_key_values=past_key_values, return_past_key_values=True ):

我是否可以理解为session_meta其实就是模型的prompt? 如果我想自定义一部分prompt,比如要求模型必须说中文,必须依照给定的场景描述进行回答,必须按照给定话术的语气保持一致性语气进行回答等,这些原本应该放在prompt中的内容我应该通过什么方式传递给CharacterGLM-6B模型?

jfzhouyoo commented 1 month ago

可以放在 bot_info 中约束 bot 的行为