Skip to content

Latest commit

 

History

History
223 lines (137 loc) · 14.7 KB

README.md

File metadata and controls

223 lines (137 loc) · 14.7 KB

调用 大语言模型调用库 智能回复普通对话。

版本新功能

新点子征集中,如果你有什么好点子都可以来Github Issue中提出。

4.2

新增Assistant模式。 现在可以对接ChatGPT Assistant 和 百度智能云千帆AppBuilder 了。可以通过该功能,为官方兔兔提供知识库。 该功能不是开箱即用功能的,你需要对AI(至少对千帆AppBuilder或者ChatGPT Assistant)有一定了解,并在对应的网站创建了能够工作的App,再来将其应用在兔兔上。

官方兔兔使用度智能云千帆AppBuilder配合本插件实现AI对话,你可以调戏一下官方兔兔了解本功能的效果。

如果你也想要添加一个助手,请阅读下面的 助手模式 章节。

4.1.3

为了适配官兔,经典模式被重做,主要变化是:

  1. 强制保持Context,为10句历史对话
  2. 支持私聊
  3. 修复了一些Prompt问题,优化他在ERNIE-Speed下的表现。(ERNIE-Speed是免费模型)

4.0.0

通过公用库集成百度文心一言(千帆大模型)

从4.0版本开始,本插件不再自带ChatGPT和相关配置,升级前请备份你的ApiKey等配置内容,ChatGPT的调用,改为通过新的官方插件共用库:大语言模型调用库实现。 安装升级本插件时,兔兔会自动查找并安装该公用库,请您移步到该插件,查看该插件的说明配置ChatGPT。

因为使用了“大语言模型调用库”,现在本插件可以支持使用文心一言了,这样大家就可以不用科学上网就直接开始兔兔聊天。

更新后,所有频道配置和全局配置的模型设置都被重置,您需要先去配置“大语言模型调用库”,然后回到本插件的配置项中,重新选择每个频道和全局使用的模型,现在,模型选项将会被拆分为两个,经济型模型和高性能模型,具体说明请参见下面的通用配置章节。

对于有Prompt开发兴趣的朋友,本插件现在提供了一个Prompt工作台,可供用户调整和编辑自己的Prompt。请查看下面的【Prompt工作台】章节了解详情。

更早的版本

非常希望大家尝试一下角色扮演模式,并给出反馈

通用配置

新增了一个总开关和频道独立开关,关闭后不再响应消息。

新增了一个黑名单列表(频道级别配置中),输入用户QQ号后,可以忽略该用户的消息。 可以将其他机器人的QQ号填入其中防止机器人互相聊天。

现在,模型选项将会被拆分为两个,经济型模型和高性能模型。 其中经济型模型指的是价格比较便宜的模型,有些比较简单但是频繁使用的日常杂活,比如判断对话话题等,插件会使用这个模型,来节省大家的钱包。 而高性能模型,则是功能强大,价格不菲的模型,用来完成一些重要的任务,比如生成对话等。

也就是说,如果你都设置为GPT-3.5,那么就相当于以前的GPT-3.5模式,如果一个设置为GPT-3.5一个设置为GPT-4,就相当于以前的GPT-3.5/4-Mixed模式。 纯GPT-4模式已经取消,因为真的没什么用。

一个新的模式:跑团模式加入到插件中,但是只开发了一半,还在测试中。

AI视觉

新增一个开关:AI视觉,打开以后,你还需要在下面的·AI视觉模型·配置项中选择一个支持AI视觉的模型。目前仅'gpt-4-vision-preview','gpt-4o'等模型支持,具体请看OpenAI的官方文档。

Alt text

打开以后,如果这次对兔兔的提问包含图片,则会转而使用AI视觉模型。否则还是使用原来的模型。在经典模式和ChatGPT请问模式中,你必须要让图片和文本是同一条消息发出才行,在手机上可能不太好操作。在角色扮演模式下,则没有这个限制,你可以先发图,再提问。

AI视觉需要升级官方插件:大语言模型调用库到1.2版本及以上。

经典模式

在通过关键词等唤起兔兔但不能触发其他任何功能时,将会进入此功能。可以使用 兔兔chat 开始一句问题来强制触发从而压制其他插件的事件响应。

上下文固定为该频道/私聊最近的10句话。

新增配置“阿米娅正在思考中”,默认打开,打开该配置项,兔兔才会回复“阿米娅正在思考中”。因为现版本下兔兔的响应速度已经很快了,不需要刻意去等待,因此将其改为可选。

  • predef_context

    • 2.0新增的的配置项目。你可以在其中添加多个先导内容,这些内容会确保每次请求都包含,不会随着对话刷新掉。
    • 你可以通过这些句子给兔兔设置一个角色扮演场景。(注意,要不要遵守还得看AI怎么想)。
    • 如果想不提供任何先导词,请设置一个空的先导词列表。
  • stop_words

    • 因为AI并不会严格遵守先导词的规定,因此有时候他还是会回复一些诸如:“作为一个人工智能助手,我XXXX”等的语句,您可以在这里设置一系列字符串,只要系统检测到兔兔的回复里包含任意一个给定的字符串,就会转而回复:“很抱歉博士,但是我不能回答您的这个问题。是否可以请博士换一个问题呢?”,注意不要填写太过于泛用的词汇,防止正常的内容被拦截。

2.2版本起,你可以私聊兔兔触发本插件。

触发该功能后,会剔除一句话开头的:“兔兔”,“阿米娅”,“Amiya”。这样,如果用户用“兔兔地球为什么是圆的?”来触发发问,AI不会再去思考什么是“兔兔地球”。

如果API出错,兔兔现在会回复一条内容来告诉用户,具体如下:

错误 回复
API超出调用频率限制 很抱歉博士,但是您问的问题太多了,请让我休息一会儿。
API没有给出任何回复 很抱歉博士,可能我回答您的问题会有一些困难。是否可以请博士换一个问题呢
回复中包含智能助手自称 很抱歉博士,但是我不能回答您的这个问题。是否可以请博士换一个问题呢?
网络错误导致无法连接到ChatGPT 很抱歉博士,但是我现在暂时无法回答您的问题。
其他错误 很抱歉博士,您的问题有一些困难。是否可以请博士换一个问题呢?

助手模式

助手模式和经典模式很类似,只不过是使用大语言模型库中的Assistant,而不是直接调用API。也因此,上下文和提示词都由助手API进行维护。

如果你也想要创建一个Amiya助手,你可以使用百度千帆AppBuilder。在他的控制台创建一个应用。

在右侧的模型选择下拉框中选择Speed系列模型(这些模型是免费的,但是很笨)。 在左下角的角色指令中,填入本插件目录下的 /templates/deep-cosplay/amiya-template-assistant.txt 的全部内容。这是一份兔兔角色扮演的身份指示范例。

范例

保存该助手,然后将他的app_id以及你的key,填写到大语言模型调用库中。

配置完成后重启兔兔,再在本插件的配置中的默认助手选框,选择你刚刚添加的助手。

现在助手模式就可以使用了。如果你还想要其他进阶能力比如知识库等,就要你自行探索了。

角色扮演模式

启用该模式后,兔兔的行为将会发生变化。

打开后,兔兔会随机回复群里的对话,不需要前导词,具体有两种模式:

  1. 在某人说了一句话后,长时间没人回复,兔兔会有几率接上这句话。
  2. 如果短时间内有大量对话,兔兔会通过AI判断一下他们是否属于同一个话题,如果是,那么他也会有几率就这个话题回复一句。

现在你仍然可以通过前导词或群内at的形式发起和兔兔的对话,但是现在不再需要回复兔兔的话。

  1. 任何人使用前导词或者at了兔兔,那么只要兔兔耐心值还未耗尽,那么兔兔必定会回复这句话。
  2. 其他用户也可以随意说话,兔兔也会参考其他用户的对话来主动参与讨论和回复。

基于上面的改动,兔兔只会对同一个群维护一个上下文了。 但是,上下文不代表话题,你或者其他群友,可以通过和兔兔聊天来聊到另一个话题上。

也因为这个原因,兔兔现在会更侧重角色扮演而不是回答问题。

兔兔有一个耐心值的设定,兔兔说话会导致兔兔的耐心值下降,幅度取决于当前群内对话的激烈程度,对话越激烈,下降的越慢。设计上是希望通过这个方式让兔兔不要太过于频繁的说话,但是同时还能跟上群内讨论的节奏。

现在,几乎不需要怎么配置,兔兔就可以表现得很自然并且不怎么花钱。

请问模式

新增关键词ChatGPT请问文心一言请问,当一句话以ChatGPT请问或者文心一言请问开头时(不需要at兔兔或者添加前缀,不区分大小写),将会调用原始API,不会带有Prompt工程,并且不会触发其他的附加能力(AI视觉除外),该功能不支持连续对话和上下文。

该功能不需要配置,他的优先级高于任何一个模式,可以直接触发。

典孝急模式

新增了一个典孝急模式供大家娱乐,这个模式只能在频道配置级别选择,不可以全局配置。 选中这个模式后,兔兔会在有人连续发送2条以上消息时,根据消息内容,回复典孝急乐蚌批赢麻中的一个。 因为这个任务不需要什么智商,所以默认固定调用3.5API。

Prompt工作台

本插件现在提供了一个Prompt工作台,如下图所示:

Alt text

在该工作台,可以实时查看兔兔调用的记录和使用的Prompt,你可以在对话日志页面针对某一次对话编辑模板并反复重复执行,直到调节到合适的模板,然后访问编辑模板页面,将最终修改的模板保存应用。通过修改模板,你甚至可以让兔兔扮演另外一个人(比如嘴臭凯尔希)。 有什么建议也可以在最下方的链接一并提出。

登录时要输入的是兔兔的url和链接密钥,和你在兔兔控制台输入的一样。本网站为静态部署网站,你输入的url和密码不会被保存。

其他功能以及注意事项

现在本插件不再需要代码部署才能使用了,但是请注意,官方插件“大语言模型库”有他自己的部署要求。

经过修改后的插件,可能不能再用于QQ频道。如果您不是QQ群用户,请测试后使用。

拦截其他插件

2.5版本修改了几个插件的行为,防止其他查询插件干扰ChatGPT回答,如果你不需要这个功能,请到全局配置中关闭。注意,修改该配置后需要重启兔兔生效。

在以前,你说 兔兔过年好, 兔兔会弹出干员年的信息。任何夹杂了年,夕,令,或者一些常用字的问话也经常弹出干员提示。 这是因为官方插件(或者你安装了其他第三方干员信息查询插件)的判断词太宽导致的。

2.5版本起,插件可以通过开启特定配置项,强制覆盖这些插件的命令词。比如现在,你必须要说兔兔查询过年好,才能弹出干员年的信息框了。 受影响的插件如下所示,会随着版本逐渐添加:

插件名称 功能&关键词 调整结果
明日方舟干员资料 (官方原版插件) 在聊天中包含干员名称弹出干员卡片 必须同时包含查询和干员名称
干员资料-水月皮肤 在聊天中包含干员名称弹出干员卡片 必须同时包含查询和干员名称
兔兔互动/兔兔互动-水月皮肤 信赖, 关系, 好感, 我的信息, 个人信息 弹出用户状态卡片 整句消息必须以<关键字>开头,如兔兔关系XXXX或者@Amiya 好感XXXX
兔兔互动/兔兔互动-水月皮肤 签到 执行签到 整句消息必须以签到开头,如兔兔签到或者@Amiya 签到XXXX
兔兔互动/兔兔互动-水月皮肤 我错了, 对不起, 抱歉 回复一句话并增加好感 被禁用
兔兔互动/兔兔互动-水月皮肤 阿米驴, 小驴子, 驴子 等,回复一句话并降低好感 被禁用
兔兔功能/兔兔功能-水月皮肤 功能, 帮助, 说明, help 弹出用户功能卡片 整句消息必须以<关键字>开头,如兔兔功能或者@Amiya 帮助

其他注意事项

从3.0版本起,插件要求兔兔版本 >= v6.2.0,否则无法安装 从4.0版本起,插件要求兔兔版本 >= v6.4.2,否则无法安装

从1.X版本升级到2.0版本的用户需要手动删除旧的配置文件让程序重新生成新版配置文件,因为配置文件的格式发生了改变,记得备份你的Key。

下一个版本的开发计划

新模式锐意开发中,如果你有什么好点子都可以来Github Issue中提出。

鸣谢

兔妈账户没额度了,不维护原来那个插件了,经过兔妈授权,我拿过来继续更新,感谢兔妈的技术支持。

角色扮演模式模板的灵感,来源于B站视频BV1ZX4y1o7Nj的复杂模板。

项目地址:Github

遇到问题可以在这里反馈(Github)

如果上面的连接无法打开可以在这里反馈(Gitee)

Logo作者:Sesern老师

版本 变更
3.4.5 修复了3.5API下错误的输出QQ昵称的问题(因为3.5太蠢,因此不带入QQ昵称防止AI弄错)。
3.4.6 为ask_amiya函数加入model参数,让其他插件调用的时候可以复写model,适配新版兔兔
4.0.0 适配公用大模型调用库
4.1.0 加入AI视觉支持
4.1.1 修复了经典模式和文心一言不兼容的问题
4.1.2 修复字符集问题
4.1.3 修复经典模式的问题,现在经典模式默认自带context
4.2.0 新增Assistant模式
4.2.1 为Assistant模式添加识图的支持
4.2.2 角色扮演模式现在可以使用助手而不是直接调用Api, 移除了对statistics库的依赖

详细版本变更记录