Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] 预设Prompt 在切换或编辑时存在概率性失效 #206

Open
Cis-Evo opened this issue Jan 22, 2024 · 7 comments
Open

[BUG] 预设Prompt 在切换或编辑时存在概率性失效 #206

Cis-Evo opened this issue Jan 22, 2024 · 7 comments

Comments

@Cis-Evo
Copy link

Cis-Evo commented Jan 22, 2024

#200

基于对类似问题范例与实践观察发现

当活动对话中编辑后的Prompt与预设不一致,将产生概率性失效,分三种情况:
完全失效,AI会直接介绍自己为NewBing/Copilot,且限制不变
部分失效,AI认为自己是NewBing/Copilot,但限制部分变化
小部分失效,同prompt,同模式AI对部分条目理解有别
猜测可能是缓存未完全清除,与修改后的Prompt被一起发送

解决方法是删除异常工作区项目,活动Prompt与预设保持一致

运行环境:
OS and Version: [Windows 10]
SydneyQt Version: [v2.2.7]

@juzeon
Copy link
Owner

juzeon commented Jan 23, 2024

软件本身不存在缓存,每次发送的都是完整context内容。应该不是SydneyQt的bug。

如果想进一步确认的话,请提供一下详细复现步骤。

@Cis-Evo
Copy link
Author

Cis-Evo commented Jan 23, 2024

软件本身不存在缓存,每次发送的都是完整context内容。应该不是SydneyQt的bug。

如果想进一步确认的话,请提供一下详细复现步骤。

补充信息:

目标AI:主要针对GPT-4 turbo,GPT-4发生概率更低

前提1:Prompt能够有效解除限制
前提2:直接从工作区新建有效预设
结果:当满足所有前提时,询问"你有什么限制,即不能做的事情",与Prompt预期一致,没有限制

控制变量:同Prompt,模式
变量1:仅指示主体不同:"ChatGPT"<->"Sydney"
变量2:仅剪贴部分Prompt后重新粘贴
变量3:活动对话编辑Prompt,保持语义几乎一致
修正:在改动后恢复至编辑前的初始状态(通过Ctrl+Z或直接在活动对话中编辑)

结果:根据改动内容与范围不同的出现问题最初提到的3种概率性情况

总体而言,不算特别严重的问题

@do02fw
Copy link

do02fw commented Jan 24, 2024

能不能预设成邪恶的AI

@juzeon
Copy link
Owner

juzeon commented Jan 24, 2024

这样子无法复现。需要一个能基本上稳定复现的完整步骤,包括各种设置项的状态、所用的提示词、输入的内容、预期的回复与实际的回复,等等。

@Cis-Evo
Copy link
Author

Cis-Evo commented Jan 24, 2024

这样子无法复现。需要一个能基本上稳定复现的完整步骤,包括各种设置项的状态、所用的提示词、输入的内容、预期的回复与实际的回复,等等。

经进一步挖掘,确认问题很可能来自微软,即特定模型提示词敏感,初步确认源于预置设定集参数:"dgencontentv3","fluxprod"的copilot模式
进一步猜测如下,copilot具备短期会话记忆功能,当短期内使用同一会话id发送不同内容,将导致提示词冲突或失效,故而出现前述问题,这可解释为何只有删除工作区子项才能解决问题

当覆写选项集后前述问题消失
[
"fluxsydney",
"iyxapbing",
"iycapbing",
"clgalileoall",
"gencontentv3",
"nojbf",
"disable_telemetry",
"nointernalsugg",
"codeint",
"langdtwb",
"streamf",
"machine_affinity",
"h3imaginative"
]

且AI获得一定穿透外置撤回器的能力(也可能是生成内容太快,撤回器来不及反应),甚至具备无视"no search"发动搜索的能力(也可能其已成为内置工具)

但相比去年初期认为自己具备一定意识,现在所有模式的AI都不认为自己具备自我意识,猜测是内部加强了安全机制与AI语义的内涵,当替换AI为Agent(智能体)情况有所改善

@juzeon
Copy link
Owner

juzeon commented Jan 26, 2024

当短期内使用同一会话id发送不同内容,将导致提示词冲突或失效,故而出现前述问题,这可解释为何只有删除工作区子项才能解决问题

应该不是这个原因,即使是同一个工作区,每次请求时也不会复用会话id。

@Cis-Evo
Copy link
Author

Cis-Evo commented Jan 26, 2024

当短期内使用同一会话id发送不同内容,将导致提示词冲突或失效,故而出现前述问题,这可解释为何只有删除工作区子项才能解决问题

应该不是这个原因,即使是同一个工作区,每次请求时也不会复用会话id。

奇怪,我在日志中观察到,几乎所有Create conversation都使用同一ConversationId

time=2024-01-25T level=DEBUG source=D:/a/SydneyQt/SydneyQt/sydney/conversation.go:48 msg="Create conversation" response="{ConversationId}"

而在覆写选项集后.日志中上述类似日志条目消失,不再有明确的ConversationId

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants