【第三方MN插件】MN ChatGLM,AI辅助学习

所有功能都支持iPad和Mac
除官方签名版本外,安装插件需要在设置中允许“加载未经认证的插件”
安装方式:下载后用mn打开mnaddon文件,或在mn的插件界面导入插件

  • 0.0.8

    1. 新功能,通知窗口可以切换至连续对话
    2. 一些bug修复

    mnchatglm_v0_0_8.mnaddon (224.2 KB)

  • 0.0.7

    1. 当内容超过窗口范围时,自动变为滚动视图,并保持内容在底部
    2. 内容生成完毕时,会显示本次回答消耗的token数

    mnchatglm_v0_0_7.mnaddon (217.2 KB)

  • 0.0.6

    1. 修改执行结果获取方式,一定程度上解决换行问题
    2. 自动模式增加一个忽略短文字开关,开启后小于十个汉字/单词的卡片不会触发
    3. 可被MN Copilot调用
    4. 通知窗口增加一个切换通知位置的按钮,以及按钮调整
    5. bug修复

    mnchatglm_v0_0_6.mnaddon (217.5 KB)

  • 0.0.5

    1. 修复一些bug
    2. prompt按钮逻辑调整
    3. 支持在通知中调用MN Copilot

    mnchatglm_v0_0_5.mnaddon (216.7 KB)

  • 0.0.4

    1. 设置面板改进
    2. 自动模式增加延迟选项,建议设置为0.5s,以避免在双击编辑卡片时触发
    3. 支持点击摘录或创建新摘录下的触发支持颜色过滤

    mnchatglm_v0_0_4.mnaddon (215.8 KB)

  • 0.0.3

    1. 支持为单个prompt设定要使用的模型
    2. 对于通知文本框,如果先选中文字再点击按钮,则只提取选中的文字
    3. 修复一些bug

    mnchatglm_v0_0_3.mnaddon (214.7 KB)

  • 0.0.2

    1. 修复一些bug
    2. 部分按钮调整

    mnchatglm_v0_0_2.mnaddon (215.0 KB)

  • 0.0.1

    mnchatglm_v0_0_1.mnaddon (214.9 KB)

介绍

本插件主要是在AI辅助学习上的一点小尝试。除了简单的网页应用支持,还利用了ChatGLM的API来帮助实现后台自动执行。简单的应用场景:翻译,提取关键词,帮助生成卡片标题等。目前还没想好怎么比较好的实现多卡片的支持,如总结当前子脑图内容。。。

一、网页模式

  • 点击插件logo即可启动网页模式,注册登录即可,网页模式为免费使用

  • 和MN Browser类似,选中文字/卡片后点击机器人按钮,即可根据当前的prompt发起对话(prompt内容请看第四部分)

    CleanShot 2023-09-09 at 22.23.11.gif

    image

二、API模式(暂时不支持连续对话)

  • API模式在本插件中主要是为自动模式设计的,可以实现在选中文字/点击卡片时自动执行当前的prompt(prompt内容请看第四部分),执行结果通知显示

    演示:

    CleanShot 2023-09-09 at 22.27.36.gif

    需要在设置:arrow_right:advance中开启auto action

    开启后插件logo会处于高亮状态,设置中会多出来四个选项:

    1. On New Excerpt:是否在创建新摘录时自动执行,默认开启
    2. On Selection:是否在文档中选中文字时自动执行(注意是在弹窗出现后),默认开启
    3. On Note:是否在点击卡片时自动执行(注意是在弹窗出现后),默认开启
    4. On Web Mode:是否在打开智谱清言网页版开启时自动执行,默认关闭,即在网页模式开启下不执行

    image

三、通知窗口介绍

  1. 自动模式下,会自动调用api执行prompt,执行结果会以通知的形式弹出,通知会持续十秒,到时自动消失,窗口本身为文本输入框,结果可以直接编辑

  2. 窗口除了关闭按钮外,还提供了六个快捷按钮
    image

    举个:chestnut::对执行结果调用大爆炸并设置标题

    CleanShot 2023-09-09 at 22.32.06.gif

  3. 如果对执行结果不满意,重新执行prompt有可能会得到更好的结果,点击后会重新开启十秒的通知倒计时

    重新执行prompt的演示:

    CleanShot 2023-09-09 at 22.34.46.gif

  4. 切换连续对话
    点击通知的“聊天”按钮可进入连续对话模式,以本次的prompt和回答作为上下文,因此可以实现基于当前上下文的继续问答(对于单卡片场景而言作用不是很大,主要是为MN Copilot服务)
    连续对话模式下,会暂时禁用自动模式,关闭窗口自动退出连续对话模式
    连续对话下token的消耗是很快的,因为每次都需要把当前的对话历史都传给服务器才能实现连续对话,因此每一轮问答消耗的token都会比上一轮高(有种利滚利的感觉)
    CleanShot 2023-10-02 at 16.39.32

四、自定义Prompt

  • 插件默认只给了三个最简单的prompt:翻译,标题和关键词,点击按钮切换当前prompt

    点击设置后就会出现自定义prompt的界面,点击对应的prompt,会显示当前prompt的标题和内容,修改后点击保存即可

    prompt目前只有两个变量:{{context}}和{{knowledge}},{{context}}指选中的文字或卡片的特定内容(见文字选择优先级),{{knowledge}}指额外的知识库(见第七部分)

    点击:heavy_plus_sign:按钮添加新的prompt,自行编辑标题和内容,完成后点击保存

    点击delete删除选中的prompt,点击reset回复为默认的prompt

    image

五、API key获取

  • 在设置:arrow_right:advance中有个网址按钮,点击会在窗口中打开开发者工具台(或者电脑打开这个链接),需要注册登录,登录后尽量用全屏模式,在右上角会看到一个查看API keys的按钮,点击进入,目前只有一个API key,点击复制,然后重新打开设置面板,点击paste即可完成api key的输入


    image

六、API调用价格与模型切换

  • ChatGLM主要提供了Pro、Std和Lite三个模型,Pro效果最好但速度最慢,Lite速度最快但可能结果不太好

    价格上Pro是Lite的5倍,但是都不算贵,尤其是注册后直接送18元的余额,可以使用相当长一段时间,即使是用最贵的Pro,每次调用一般也不会超过0.001元,即一块钱足够调用一千次。而最便宜的Lite版,基本每次调用都是最低消费0.0001元,一块钱能用一万次

    插件提供了非常方便的模型切换,默认使用Lite版


    每次回答完成时,都会显示消耗的tokens
    image

七、其他设置及说明

  1. 文字选择优先级,暂时不提供整个卡片的选择,而是有一个选择优先级,摘录优先级最高,如果该卡片没有摘录文字,则尝试获取标题,没有标题则再尝试获取第一个文字评论

    Image.png

  2. 自动模式下,执行结果可能并不令人满意,但即使重新执行,也不一定能得到更好的结果,一部分原因是当前使用的模型不太好(如Lite版),因此设置中允许设置重新执行时要使用的模型。举个例子,平时考虑到速度和价格,可能只使用Lite版,但是Lite版在某些情况下结果不好,这时候可以设置重新执行时使用Pro版,以获取更好的结果。默认重新执行使用的模型是和当前模型一致(即Auto)

    Image.png

  3. 对于通知窗口,如果点击了文本框,则会临时取消通知的自动关闭

  4. 大模型虽然通用,但其对一些专有名词的翻译和理解可能并不准确,因此有时候让它参考一些相关信息进行翻译会得到更好的效果。

    如在以下的:chestnut:中,AI将Rossby wave trains翻译为罗斯by波列火车,这是明显不对的,因此我在知识库中直接告诉它,Rossby wave trains指的是罗斯贝波列,外挂知识库后,这里的翻译就明显对了

    设置面板中点击上方knowledge按钮即可看到知识库输入框(编辑完成后记得保存),执行prompt时会自动将其中的{{knowledge}}替换为知识库中的文本

  5. 自动模式执行prompt时的model选择:

  • 如果当前prompt设置了model,则按prompt的model来。

  • 如果当前的prompt的值为Auto,则按默认的model来。

  • 如果在弹出窗口点击了重新执行,则切换到re-ask对应的model

  • 如果在弹出窗口下方按钮切换了model,则会以选中的model再次执行,并且将默认model切换为选中的model

  1. 自动模式下的颜色过滤
    默认所有颜色都会触发,点击对应的颜色切换是否在该颜色下触发
    image
6 个赞

Hello

支持:fist:

Kind Regards,

Support Team

怎么让它不自己10秒后自动关闭?我点击消息通知框以后还是会自动关闭

目前点击通知文本或者拖动关闭按钮来稍微调一下窗口大小都可以暂停当前通知的倒计时,但是下次生成AI回答时还是会重新开始倒计时。你是想把窗口固定住,除了点关闭按钮外都不会主动关闭是吗

哦哦哦,不是的,现在我掌握了。谢谢。但是还有另个问题就是,AI回答的文本有时候序号或者分段处没有分段,如果变成评论就看起来杂乱无章,能否保持AI网页版回答那样的答案排版呢?

这个只能后面再研究了,从api返回的文本里不好区分换行符

您好,今天点击小机器人不好使了,有时候点击不了,有时一直自动输入同一句话,试了一下0.04也是一样,在脑图:heavy_plus_sign:文本情况下,选中脑图中的单词卡片不好使总是出现之前的一个句子,而选中文本上的单词就可以。不是从文本上摘录的卡片(自己创建)可以正常输入,而且刚刚摘录的,马上去点击也可以使用ai,不会一直出现同一句话

我这边没复现出来你说的情况,可以再具体一点吗

好吧,打扰了,我知道了,它那个优先级变了,自动加载评论去了,不知道是不是我误触了优先加载评论。但是之前刚摘录完一句话(很长的一段,自动生成为评论),然后就卡住了,点击那个:robot:不好使,有两次吧,点击正常的卡片可以,但是那个新建完的不行;退出后再点击新建完的是可以正常加载的。
(插件很好用,神助,非常感激~)

为什么不把auto action的启闭方法链接到双击插件logo的操作上呢,像MN Browser的watch mode那样。是有什么其他的考量吗?

因为目前双击设计有缺陷,包括MN Browser,还没开始优化