Frostime
关注
79553 号成员,2022-03-06 20:31:31 加入
1.6k
个人主页 浏览
440
帖子 + 回帖 + 评论
109h17m
在线时长
  • 这个思源设置让你的一天从正能量开始!

    2025-04-20 16:33

    因为你 useState 没用对。

    //!js
    
    const chat = async () => {
        // Initialize DataView
        let dv = Query.DataView(protyle, item, top);
        // Render the initial elements added (title, prompt, placeholder)
        dv.render();
        const gptReply = dv.useState('gpt-reply', '');
    
        dv.addmd(`#### GPT Direct Send`);
    
        const predefinedPrompt = "今天真是美好的一天,请你激励我度过美好的一天吧!请你用满满的正能量激励我,并且要加入很多的表情,让我的心情愉快!";
    
        dv.addmd(`**You**: ${predefinedPrompt}`); // Display the message being sent
    
        if (gptReply.value) {
            dv.addmd(`**GPT**: ${gptReply.value}`); // Display the previous response
            return;
        }
    
        let respond = dv.addmd(`**GPT**: Thinking...`);
        let id = respond.dataset.id;
    
        try {
            const response = await Query.gpt(predefinedPrompt, {
                stream: true,
                streamInterval: 3,
                streamMsg: (content) => {
                    dv.replaceView(id, dv.md(`**GPT**: ${content}`));
                }
            });
           dv.replaceView(id, dv.md(`**GPT**: ${response}`));
           gptReply.value = response; // 记录 state
        } catch (error) {
            dv.replaceView(id, dv.md(`**GPT**: Error: ${error.message}`));
        }
    }
    
    // Execute the chat function immediately
    return chat();
    
    
  • 这个思源设置让你的一天从正能量开始!

    2025-04-20 16:15

    这里没有必要使用 useState,你只需要进行一次单轮对话就行,没必要把对话记录全都缓存下来。

    你这么做会导致对话的 message 长度越来越长。

    图片.png

  • 这个思源设置让你的一天从正能量开始!

    2025-04-20 16:12

    其实可以把 dv.render 放到最前面

        // Initialize DataView
        let dv = Query.DataView(protyle, item, top);
        // Render the initial elements added (title, prompt, placeholder)
        dv.render();
    
  • 思源笔记比黑曜石好在哪里

    2025-04-14 13:39

    思源有一个好处是随你的笔记量增长,可以通过「关闭笔记本」的方式只打开一部分笔记,从而节省索引空间。

  • 大家来晒晒自己使用自定义块属性的用法?可以通过块属性来聚合有相同属性的块吗?

    2025-03-30 16:59
    1. 可以和模板配合使用,创建含有特定属性的块,这样方便后期查询
    2. 见 QueryView(不过暂时下架了,过几天会重新上架回来)
    3. JS 代码片段;或者嵌入块内执行 JS 查询

    比如我的日记模板里面有一个「总结」部分,里面会自动写入一个自定义属性;这样可以在每周汇总里面通过查询代码,把每天的总结汇总显示。(如果不使用自定义属性也能查询,但是复杂度会高很多)

    图片.png

    图片.png

  • 寻找一个类似思源插件 web 集成的电脑应用

    2025-03-29 12:07

    cherry studio 里面有小程序,基本上也是聚合了一堆网页;不过主要都是 AI 相关的网页。

  • Cherry Studio 支持导出到思源了

    2025-03-29 00:22

    之前做了把 Cherry 导出的 Markdown 重新导入为对话记录的功能,研究的过程中顺手给官方提了一个 issue。

    图片.png

  • Cherry Studio 支持导出到思源了

    2025-03-29 00:18

    因为是我提的 issue

  • 希望能将“布局”中的功能拆分,建立“工作区”功能,谢谢

    2025-03-21 01:35

    目前存在的最类似的功能是,如果你同时安装了文档流插件,可以一键把书签组中所有的内容在文档流中打开。

  • 插件开发求助:思源如何实现创建指定日期的日记

    2025-03-13 00:12

    参考这个:https://github.com/frostime/siyuan-plugin-kits/blob/667c2621ebc6fa11028e4e53e447afc5f00639ea/src/dailynote.ts#L72

    不想自己实现也可以手动安装 npm install @frostime/siyuan-plugin-kits, 然后 import {createDailynote}

  • QueryView 分享 | 查看所有的 Tag

    2025-03-10 23:01

    更新了一下,现在应该可以了

    图片.png

  • 能否在工作空间之间移动笔记?

    2025-03-05 00:50

    F 工具箱插件里有一个跨工作空间发送的功能。

    图片.png

    你开启功能后,同时打开另一个工作空间,填写那个空间的网络端口,可以把一整个目录树全都发过去。

    图片.png

    图片.png

    图片.png

    不过这个功能我自己用的也很少,不保证是否会出问题。建议用之前先给快照打一个标签。

  • 书签 + 插件 2.0:书签子视图

    2025-03-04 17:09

    这个不做考虑。删除的文档随时可以恢复、版本回溯。撤销操作太多,插件没法全都适配上,所以还是手动维护好了。

  • 字节的火山平台可以配置 Deepseek + 联网功能

    2025-02-23 15:46

    gemini 有 flash think 版本,是有思考的。

    OpenAI 的 O1 O3 系列模型也是有思考的。

  • 字节的火山平台可以配置 Deepseek + 联网功能

    2025-02-23 12:14

    claude 就没有免费的。

    Gemini 你可以到谷歌官方的开发者平台上申请 API,有一定免费额度。

  • 字节的火山平台可以配置 Deepseek + 联网功能

    2025-02-23 01:11

    V3 平台,一个 API 聚合的。在国内看过的几个聚合平台里看着还算靠谱吧。

    V API - 为您提供稳定可靠的Openai GPT4 API、Deepseek r1直连转发服务!

    本质上和国外的 OpenRouter ( https://openrouter.ai/ )是类似的定位。

  • 教程 --- 思源 ai 接入字节跳动 API(送 350Wtoken/dp 的 50 元额度,实测赠送余额和付费没有区别,一样快)

    2025-02-21 14:56

    火山方舟大模型体验中心-火山引擎

    字节的模型配置需要填入的是 ep-xxxx 的模型端点,看着比较麻烦。可以在插件 provider 中配置名称重定向。

    图片.png

    图片.png

  • 将反向链接和数据库结合的尝试

    2025-02-20 22:40

    把 stream 模式关掉,然后给我看一下完整的发送和返回的消息数据。

    目前在里面看到了 references 这二者字段里有一些内容,不过这个好像不是 OpenAI 标准格式。

    建议到 github 上面去提,在这里不是很方便。

  • 将反向链接和数据库结合的尝试

    2025-02-20 13:51

    这个兼容标准 OpenAI 格式吗?

    你可以打开开发者模式,或者插件的消息日志,看一下发送和返回过程中是否出了什么问题。

    图片.png

    图片.png

  • AI 配置的问题,怎么配都不对

    2025-02-17 18:38

    API Key 检查一下是否配置正确。

    图片.png

  • SQL 小助手

    2025-02-16 20:45

    试一下这个

    select * from blocks 
    where type = 'p' 
    and markdown like '%![%](assets/%'
    and root_id in (
        select id from blocks 
        where type = 'd' 
        and hpath like '%/工作%'
    )
    limit 999
    

    SQL 里面不要有注释字符串。

  • SQL 小助手

    2025-02-15 13:15

    我是为了方便展示用 Query View 渲染成列表了。你想要这种效果可以把 SQL 代码放到 Query.sql 里查询,然后进行渲染。

    //!js
    const query = async () => {
      let dv = Query.Dataview(protyle, item, top);
      let block = await Query.thisDoc(protyle);
      let blocks = await Query.sql(`
    select distinct D.* from blocks as D 
    where D.type = 'd' and D.id in (
        select def_block_id from refs 
        where block_id in (
            select B.id from blocks as B 
            where B.root_id in (
                select BL.id from blocks as BL 
                join attributes as A on BL.id = A.block_id 
                where A.name like 'custom-dailynote-%' 
                and BL.type = 'd' 
                and A.value >= strftime('%Y%m%d', date('now', '-7 day')) 
                and A.value <= strftime('%Y%m%d', 'now')
            )
        )
    )
    `)
      blocks = await Query.fb2p(blocks);
      dv.addList(blocks, { type: 'o', columns: 2 });
      dv.render();
    }
    return query();
    
  • 将反向链接和数据库结合的尝试

    2025-02-14 23:29

    你可以先引用输入,然后再 SuperRef 数据库的菜单里面点击‘更新’,这样会批量导入所有反向链接。

    image.png

  • 将反向链接和数据库结合的尝试

    2025-02-11 12:31

    不接单。

    我的意思是,父子关系本质上是一种单向的箭头关系。如果你平时不使用双链,完全可以将双链工具视为构建父子文档单向关系的辅助手段。例如,在一个文档中插入指向另一个文档的引用,那么在目标文档中显示的所有“反向链接”,都可以暂时视为该文档的“逻辑子文档”。

    如果你平时已经习惯使用双链功能,也参考我提到的 SuperRef 思路,在引用数据库中添加一个字段,用于标明引用的类型。对于父子关系的引用,你可以将类型明确标注为“父子文档”或其他类似的标识。

  • siyuan 使用 deepseek-r1 白嫖教程(14¥)与使用经验 (绘图,知识讲解)

    2025-02-07 23:43

    话说硅基流动是不是只有新注册才能有赠送啊,我很久以前就注册过用别人的邀请好像没反应。😳

  • siyuan 使用 deepseek-r1 白嫖教程(14¥)与使用经验 (绘图,知识讲解)

    2025-02-07 23:41

    也可以 Ctrl+Shift+L 快捷键打开一个对话。这个快捷键有一个彩蛋是如果你选择了笔记的内容块然后按快捷键的话,会自动把笔记内容也插入到输入框里面。

  • 更新一下 fmisc GPT 对话的功能

    2025-02-05 10:47
    1. 没听明白你想要表达的是什么,把“什么”放到“侧边工具栏”?你想要达成的效果是什么?
    2. 有一个插件叫做“文献引用”,参考他说明文档里面讲的,如何「通过 debug bridge 连接 zotero」
  • 0 基础的 AI 插件开发进入死循环,求救!

    2025-01-27 20:50

    别的先且不说首先你这儿目录结构就是错的,i18n 目录下应该直接就是 json 文件,你额外嵌套了一些无用的目录结构。

    image.png

    然后进去第一行代码也是错的,@siyuan-sdk 是社区的一个第三方库,需要你打包进去才能使用,在思源环境下你是获取不到这个包的。

    image.png

    这里应该改成 require("siyuan");

    内核 API 调用也有问题,第一个函数的 API 是不存在的;而 SQL 查询的 API 的第二个参数 args 实际上也并不存在。

    image.png

    其他的问题也有一大堆,比如大量调用了不存在的 API 例如 this.app.pushNotification 等等。

    你如果完全没有基础,也没有参考,让 AI 直接给你写一个插件是很困难的一件事。

    你可以尝试着把这篇文章,还有插件的一些用法示例喂给 AI,不过也不保证能成功。

    不过说实话,如果你真的完全对开发一点了解都没有,我不是很建议你对这 AI 死磕,大概率不会产出什么好的效果。。