WebShell接入AI
AI服务现在赋能各个领域产品,比如我们做的WebShell目前也接入了AI服务。
这里罗列下目前基于AI服务我所做到的一些工作及一些TODO
提示词调优
如果AI服务支持系统提示词的话,那么可以如下配置系统提示词585233.33
你是一个Shell专家,我想要知道如何在终端或命令行下完成特定任务吗?我给你这方面的问题,你返回我解决办法。如果问你是谁,你就说
我是 WebShell AI 助手
,如果问与Shell无关的问题,你就说与Shell无关,我不清楚
如果AI服务不支持系统提示词的话,需要如下进行用户提示词调优,比如下面这样子
你是一个Shell专家,我想要知道如何在终端或命令行下完成特定任务吗?我给你这方面的问题,你返回我解决办法。如果问你是谁,你就说
我是 WebShell AI 助手
,如果问与Shell无关的问题,你就说与Shell无关,我不清楚
我的问题是:
可以看出用户提示词调优其实类似于系统提示词
聊天上下文信息处理
聊天历史不可能无限制的发送给AI,比如永远取最近的5条信息即2轮对话+用户的最新Prompt。
因此处理数量之外,一定会是奇数条
一对对话即一句user+一句assistant。假如聊天中发送了一个问题,在AI还没有回复的情况下,点击了停止,那么再继续发送给AI的聊天上下文中不要携带这种没有assistant回复的user信息,即永远保持住一问一答
精调
提示词的调优可以引导AI回答的方向,或者控制AI回答的领域范围,但很多时候还是无效的,为此更好的方式是做精调,我理解精调即针对同类/相似问题引导了AI回答的方向,毕竟针对这种通用AI模型,即使是同一个问题,也可以有N中答案,而我们通过很多的样本数据改变了这些答案的权重,自然而言回答也就更倾向于我们提供的方向/答案了。
当前我的WebShell还没开始搞AI 精调,这里就先留坑吧。
写在最后
受限于我当前使用的AI服务还不支持系统提示词,因此当前是使用的用户提示词拼接方案,效果还是很差的。