ikechan8370 / chatgpt-plugin

云崽系机器人的智能聊天插件
https://www.yunzai.chat/
GNU General Public License v3.0
965 stars 100 forks source link

加入"伪人"功能 #661

Closed acte9548224 closed 1 month ago

acte9548224 commented 3 months ago

希望实现的大致功能:

使机器人主动读取聊天记录,在不被at的情况下,主动进行发言,参与群聊

一些细节

1.回复概率的配置 : 请求支持设置主动回复频率.由用户配置一定概率,将群聊的每n条消息发送给AI,然后由ai进行总结并进行回复.(可以设置处理消息条数的范围值n 假如配置n∈[4,10],则第4条有小概率回复,第10条必定回复)

  1. 系统提示词的引导 : 内置一段系统提示词,告知AI所处的对话情景是群聊,并给予一定的回复引导.此外,支持用户自定义机器人预设,使机器人一定人设进行回复
  2. AI渠道的配置 : 由用户指定渠道AI,支持Openai,Anthropic,Google在角色扮演中表现较好,请求优先适配(感谢大佬昨天更新Claude官方API适配)
  3. 回复延迟的配置 : 为了更好的模拟人的行为,无需在获得AI响应后立即发送响应内容,请求支持配置AI回复延迟的范围值.在开启伪人模式时,即使机器人被AT,也无需立即回复,并取消"我正在思考如何回复你,请稍等"的响应
  4. 支持表情包回复 : 当机器人触发主动回复或被AT时,有一定概率回复AI响应的内容和表情包(或者只回复表情包) 6.支持截断AI单次回复内容 : 当AI返回流式的响应时,支持检测句子中的逗号和句号,将AI的回复进行截断并且分段发送.尽可能避免较长段落的出现,但也要注意拆分出的短句数量不能过多而导致刷屏,可以在提示词中限制AI回复内容的字数以防止拆分过多. 7.对群消息内容的处理 : 将群消息与发言人匹配后在发给AI(甚至可以从资料卡中获取发言人的某些基本信息如年龄地区等等),防止AI出现前言不搭后语甚至自己回复自己的情况出现 8.对于最终传给AI的消息的处理 : 将之前x轮请求AI的内容以及之前x轮AI回复的内容纳入历史消息,防止AI 回复与之前自相矛盾,当token数达到一定限制时,自动清除历史消息,token的最大值和x的值由用户确定
github-actions[bot] commented 2 months ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] commented 1 month ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] commented 1 month ago

This issue was closed because it has been stalled for 5 days with no activity.