昨天有网友说,有长期记忆笔记的需求,而 Smart Connections 经常出现 api 报错——这可能由于作者更新所致,致中英文混杂识别错误。
SO,略看了代码(代码太多,就 main.js 文件就 4000 多行代码),我们做以下修改,可以避免所谓的“api 错误”。
1、避免中英混杂报错:找到函数 SMART_TRANSLATION,增加中文提示 ```
(相关资料图)
"zh":{"pronous":["我","笔记","我的笔记","我的","my","i","us","we"],"prompt":"根据我的笔记","initial_message":"Hi,我是ChatGPT,可以通过智能连接访问您的笔记。问我一个关于你笔记的问题,我会尽力回答。",},
2、看起来更舒适:当然,不修改并不影响使用,修改只是看起来更舒适——修改函数 render_chat_input 的占位符,比如:尝试”根据我的笔记“,或”总结[[这篇笔记]]“,或”/文件夹/重要任务“
3、减少不断的继续:修改函数 request_chatgpt_completion 中的 max_tokens 参数,最大不能超过 4096,但并不建议太大,因为有时候我们的问题有占用了 tokens,导致返回错误——个人认为对半分,2000 就可以了。
4、修改创意性:该设置要不要修改看自己的需求,要更准确的就 request_chatgpt_completion 中的 temperature 参数往小调,参数范围是 0-1。
5、上下文过长导致的 api 报错:get_context_for_prompt(nearest)函数中,作者将 MAX_SOURCES 和 MAX_CHARS 设置为 20 和 10000。而根据作者的说明,最大是 16000 字符或 4K tokens——也就是说,你可以将这两值改得更大,比如将 MAX_CHARS 改成 16000,那么连续上下文就可以 更长,我们就可以输入更多的内容进行聊天。当然,你也可以修改 MAX_SOURCES,增加聊天次数。
6、点击“+”,新建对话,可以避免上下文过长导致的 api 报错。
7、修改完成之后,保存,重新 OB,甚至修改任务设置之后最好重启 OB,否则可能失效或报错。
8、可能有些笔记读取失败,那你可能需要 Retry failed files only,然后 Manual Save
9、需要注意的是 Smart Connections 并不是像 LLM 模型一样进行训练,它只是关键词的关联,然后通过用 chatgpt 去处理。所以,根据自身笔记去获取的内容,可能没有想象中那么完美——ChatGPT API 通过 LLM 模型训练自定义知识库 AI 聊天机器人正在测试,后继会更新该内容。
标签: