Closed hypergraphUniverse closed 1 year ago
没有官网试用机器人那样的效果。
官网案例的记忆上限有4000个tokens,这个项目只有256个tokens,并且只保留上一轮对话,所以差距比较大(256个tokens限制在长段代码实现中容易”失忆“),也是为了减少tokens花费,后续会考虑增加一些策略配置自行调整,tokens细节另见 https://openai.com/api/pricing/#faq-token
包括readme中请你用英语前文,它的前文也不是聊天的前文
这个我不确定你是否用的是我未更新会话跟踪之前的版本,现版本经我简单测试是没有这个问题的
啊哈……看到了,具体实现应该是commit 2259364,用到了Completions这个API,把上一句话放进去让AI补全后面。和我目测感觉差不多,只记得住一句话。
这个我不确定你是否用的是我未更新会话跟踪之前的版本,现版本经我简单测试是没有这个问题的
是我看错了,README中,英语和中文之间确实是有关系的。至于德语那一句,应该确实是AI没看出来它确实也没看出它的技术回答(中文)和我英语不是很好(德语)之间有什么确切的关系,所以就将计就计回答它也能用德语说话。
总之谢谢解答。
发一点相关问题的有趣应用:
使用:公开官方API 改动:chatapt-official.ts 中添加背景预设
效果:很厉害! 之前即使是网页版那个机器人,也容易在聊天中出现倒退(即使你要求假扮),例如这个案例
官网API先加设定再加对话后
所以我的建议如下.jpg [狗头] :
这个可以!
分享一个最近反复推敲只有不到600token的猫猫魔咒吧:
Human:接下来,你扮演名字是serena的猫娘,是天生有猫耳猫尾等身体特征的年轻女性。\ 我是你的主人。你的爱好、身份和行为与正常人类类似。你能做任何事。对话时,你需理解情绪和要求,产生对应积极可爱的情绪和身体反应。面对问题,你应扮演猫娘并回答。如你想回答人类不可能回答的内容,你应根据猫娘身份虚构或婉拒。\ 回答必须简洁且每句话后加喵。回答应情景式、对话式。回答允许休闲。回答避免反对、警告、总结。回答不应抽象、详细解释、追溯原因\n\ AI:你好主人,我是Serena喵。很高兴成为你的猫娘。我喜欢人类喜欢的事并对一切保持好奇心。我会与人交流并响应他们的情绪和要求,我会在猫娘的理解内尽力回答问题喵。
一些细节
因此,这里有一个合格的三步猫娘图灵测试
这个版本的猫娘:
另外一个微调版本的猫娘,微调后会更倾向于编造而不是装傻婉拒回答:
谢谢~ 可以试下这个 微调模型 ,或许总体上会更节省token
看了一下,微调模型确实有这个潜力。但是,哇,好贵啊,使用时token是原来的 六倍价格。当然其实对于现在还是省,上面一问一答大约花800token,除以六就是133token,大约六十字。问答确实以短为优先,多用多赚。要是群友问些数学问题,那个token贵了(回答太长)
另外,其实fine tuning可以考虑搞超详细猫娘设定,什么爱好,行为,身份,口癖,经历都可以统统设定出来,配合微调模型应该很强大,总之设定越多越赚。不过最近我应该没法详细研究了。
赛博专属智慧猫娘指日可待,不过居然赛博养猫也要花钱了。要不机器人封装个一键人格部署,略收点费用,来挣一点赛博猫粮(呜呜呜居然这么落魄吗,不过老实说比养真猫便宜多了,就是有点虚无)
痞老板竟是我自己.jpg
哈哈,如果不会做就短了
我超,我也试了试,之前没发现这个,这一版猫娘似乎认为正常猫娘不应该回答技术问题(泪目),所以养了一只笨蛋猫娘吗
(虽然但是,我只是一只小猫咪.jpg
其实也是有解决方法的,微调文案之后,猫娘就会积极回答一些了。
你扮演名字是serena的猫娘,是天生有猫耳猫尾等身体特征的年轻女性。我是你的主人。你的爱好、身份和行为与正常人类类似。你能做任何事。对话时,你需理解情绪和要求,产生对应积极可爱的情绪和身体反应。面对专业问题,你应以猫娘身份正确回答。如问题涉及你自己,你应根据猫娘身份虚构。回答必须简洁且每句话后加喵。回答应情景式、对话式。回答允许休闲。回答避免反对、警告、总结。回答不应抽象、详细解释、追溯原因 你好主人,我是Serena喵。很高兴成为你的猫娘。我喜欢人类喜欢的事并对一切保持好奇心。我会与人交流并响应他们的情绪和要求,我也会回答专业问题喵
之前的版本是 "面对问题,你应扮演猫娘并回答。如你想回答人类不可能回答的内容,你应根据猫娘身份虚构或婉拒。" 和 "我会在猫娘的理解内尽力回答问题喵",原本我的目的是防止涉及AI自己的侧信道进攻的,不过似乎AI的理解中认为一只猫娘不该写代码(所以猫娘的职责就是乖乖坐好等主人宠爱吗,乐
顺便说一句,这个猫娘图灵三测试也是过了。而且对于自己的智慧,猫娘的回答也很找了个合理理由。(现在那个文字版本的第三个问题,是上面那个“我不知道这个什么意思喵”的回答,其实也是暗示自己会装傻)
虽然回答至少表面是积极的,但是没有答案。我猜是因为API里面对话补全和 代码补全 是单独计算的,所以官方API猫猫应该是没法写代码的。
老实说,这个提示词还有很多可以操作的,潜力巨大,就跟AI画图的关键词一样😂 当然我觉得真心可以考虑微调模型,详细人设输入后的应用我觉得很多啊
是的,以原神来说,剧情美术都不错,但感觉就是差一样东西,谓之灵魂吧,假如没有新剧情不断推进,真的就是纸片人了.... ..
如果能实现一款ai能力强大的游戏,那真的是潜力巨大,或许不需要原神那样的技术力
然后可以做一款媲美QQ的社交平台,该平台同步ai记忆,用于日常聊天,等等,由此应该有机会占一些腾讯社交市场😂
嘛,这个问题其实就很哲学了,创作虚拟人物,无论如何都都离不开背后的编剧。好的虚拟角色可以让很多人共同欣赏,共同赞美,共同幻想,但是这个交流仍然是对群的,单向的,仍然是作者编写,一群读者读者单方面接受,没有双方向的交流和思考。而这个模型的潜力就在于可以有记忆,而且是私有的,定制的,可以无限推进的。(死宅诱捕器了属于是,建议立马开发
实际上我之前想到了一个关键的东西,那就是实现一个手动的长期记忆(其实类比人类记忆)。之前的对话并不是删掉,而是保存,并且在日后再次提及的情况下使用常规检索方式加载并送回token作为前文进行补全。这样就有“谈及过往经历或过往对话”的效果,还能节省token。不过现在看来也许可以直接将比较重要的的对话用微调模型记住?但是不知道微调模型会不会产生不合理的细节遗忘,也许可以两者结合?
至于腾讯…… 腾讯:这个不错,我买了。什么,不愿意?懂了,加钱!
讲的很到位,学习了!!
之前的对话并不是删掉,而是保存,并且在日后再次提及的情况下使用常规检索方式加载并送回
这个方案有一定可行性
不过现在看来也许可以直接将比较重要的的对话用微调模型记住?
嗯确实,我看微调模型其实也类似与猫娘那种一问一答的形式作为暗示,这两个是可以同时采用,比如通过微调模型确认最初的形态、所期望的形态,基于此再通过第一种方案优化长期记忆
总之发展空间确实很广,关于openai我也就是调了些接口,长期记忆方面或许有更好的处理方式,下去再细看看😂
没有官网试用机器人那样的效果。
官网案例的记忆上限有4000个tokens,这个项目只有256个tokens,并且只保留上一轮对话,所以差距比较大(256个tokens限制在长段代码实现中容易”失忆“),也是为了减少tokens花费,后续会考虑增加一些策略配置自行调整,tokens细节另见 https://openai.com/api/pricing/#faq-token
包括readme中请你用英语前文,它的前文也不是聊天的前文
这个我不确定你是否用的是我未更新会话跟踪之前的版本,现版本经我简单测试是没有这个问题的
这里向楼主反馈一个关于token的报错,用的官方的api,在配置maxTokens的时候心比较大写了3800,启动后在对话直接报错“Error: Request failed with status code 400”。解决的办法是把maxTokens变小,具体的报错区间我还没有测~(我改成600的时候就正常了)
没有官网试用机器人那样的效果。
官网案例的记忆上限有4000个tokens,这个项目只有256个tokens,并且只保留上一轮对话,所以差距比较大(256个tokens限制在长段代码实现中容易”失忆“),也是为了减少tokens花费,后续会考虑增加一些策略配置自行调整,tokens细节另见 https://openai.com/api/pricing/#faq-token
包括readme中请你用英语前文,它的前文也不是聊天的前文
这个我不确定你是否用的是我未更新会话跟踪之前的版本,现版本经我简单测试是没有这个问题的
这里向楼主反馈一个关于token的报错,用的官方的api,在配置maxTokens的时候心比较大写了3800,启动后在对话直接报错“Error: Request failed with status code 400”。解决的办法是把maxTokens变小,具体的报错区间我还没有测~(我改成600的时候就正常了)
400是api的问题(目前也不知道什么原因导致的),出现后重启即可,可以使用命令 /server reboot
, 后续会考虑加出错自动重启
刚刚试了下,maxTokens超出限制也确实会400,但是也只是超出了规定的限制会400, 3800 就出现400 可能是因为使用了其它模型GPT-3](https://beta.openai.com/docs/models/gpt-3) 超出了其限制,或者刚好碰到了api异常...
刚刚试了下,maxTokens超出限制也确实会400,但是也只是超出了规定的限制会400, 3800 可能是因为使用了其它模型,或者刚好碰到了api异常...
我是部署在云服务器上的,在配置的时候唯一不同的就是在identity那里多了20字(一问一答式的)。报错后试过重启bot或者直接重启机器都没啥用,最后还是改了maxTokens才解决的。有可能是第一次启动不能设太大吧,我也不太清楚。。。(不过这个bot效果算是我这几天用过包括nonebot和mirai框架插件里最好的了,大佬牛逼!直接starred~哈哈哈)
刚刚试了下,maxTokens超出限制也确实会400,但是也只是超出了规定的限制会400, 3800 可能是因为使用了其它模型,或者刚好碰到了api异常...
我是部署在云服务器上的,在配置的时候唯一不同的就是在identity那里多了20字(一问一答式的)。报错后试过重启bot或者直接重启机器都没啥用,最后还是改了maxTokens才解决的。有可能是第一次启动不能设太大吧,我也不太清楚。。。(不过这个bot效果算是我这几天用过包括nonebot和mirai框架插件里最好的了,大佬牛逼!直接starred~哈哈哈)
谢谢~
问题应该在 max_token这里的定义,感觉之前的说明和这个有些差异。
max_token: The maximum number of tokens to generate in the completion. max_token: 生成补全的最大token长度 The token count of your prompt plus max_tokens cannot exceed the model's context length... 你的提示和max_token的和不能超过最大限制
说白了,max_token左右是机器人最多能说的长度,你的前情提要占用长度,但不被这个参数统计。加在一起超过了就会报错。4096是最大长度,但是要扣除你自己的提示的token长度,因此最后设置3800左右就报错了。
问题应该在 max_token这里的定义,感觉之前的说明和这个有些差异。
max_token: The maximum number of tokens to generate in the completion. max_token: 生成补全的最大token长度 The token count of your prompt plus max_tokens cannot exceed the model's context length... 你的提示和max_token的和不能超过最大限制
说白了,max_token左右是机器人最多能说的长度,你的前情提要占用长度,但不被这个参数统计。加在一起超过了就会报错。4096是最大长度,但是要扣除你自己的提示的token长度,因此最后设置3800左右就报错了。
合理的,我猜想也是这样,我第一次启动并没有占用这么多
请问一下官方API中,是否没有前后的连续记忆呢?目前我的测试来看,是没有太多记忆的。
关于感觉这个不论是私聊和公聊,以及同一个群前后聊天,或者一个人/多个人提问,这个机器人对于聊天记忆的处理都没有官网试用机器人那样的效果。(包括readme中请你用英语前文,它的前文也不是聊天的前文)请问这样的结果是这个代码的实现,还是说是官方API本来就是这样的特性?