当前位置: 首页 > news >正文

AI驱动的轻量级笔记应用Blinko

在这里插入图片描述

什么是 Blinko ?

Blinko 是一个创新的开源项目,专为想要快速捕捉和整理瞬间想法的个人而设计。Blinko 允许用户在灵感迸发的瞬间无缝记录想法,确保不会错过任何创意火花。

Blinko 的设计初衷是让笔记记录变得更简单,让用户专注于内容本身,而不会被繁琐的管理任务所困扰。Blinko 帮助用户轻松捕捉和管理他们的想法,设计上分为两个核心部分:“闪念”“笔记”

“闪念” 专为记录灵光一闪而打造,用户无需担心格式或复杂操作,即可即刻记下即兴想法。这些记录可设置为每隔一段时间自动清除,确保内容不会过度堆积,从而保持该部分的整洁和高效。

“笔记” 部分提供了更有条理的管理系统,用户可以使用标签对笔记进行分类,并利用批量操作轻松地组织和分类大量笔记。

🚀主要功能:

  • AI 增强的笔记检索 🤖:借助 Blinko 的先进 AI 驱动的 RAG(检索增强生成)技术,您可以使用自然语言查询快速搜索和访问您的笔记,轻松找到所需内容。

  • 数据拥有权 🔒:您的隐私至关重要。所有笔记和数据都安全存储在您自托管的环境中,确保您对信息的完全控制。

  • 高效快速 🚀:即时捕捉想法,并以纯文本形式存储,方便访问,完全支持 Markdown 格式,便于快速格式化和无缝共享。

  • 轻量架构,强大性能 💡:基于 Next.js 构建,Blinko 提供流畅、轻量的架构,具备强大的性能,同时不牺牲速度或效率。

  • 开放协作 🔓:作为一个开源项目,Blinko 欢迎社区的贡献。所有代码透明且可在 GitHub 上获取,促进合作精神和持续改进。

  • 完全免费 🎉Blinko 是且将始终是免费的,没有隐藏费用或锁定在付费墙后的高级功能。

如果不想安装,可以去看看官方的 Live Demo

  • 地址:https://blinko-demo.vercel.app
  • 账号:blinko
  • 密码:blinko

安装

在群晖上以 Docker 方式安装。

本文写作时, latest 版本对应为 0.0.26

采用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'services:blinko-website:image: blinkospace/blinko:latestcontainer_name: blinko-website# restart: unless-stoppedenvironment:NODE_ENV: production# NEXTAUTH_URL: http://localhost:1111# NEXT_PUBLIC_BASE_URL: http://localhost:1111NEXTAUTH_SECRET: my_ultra_secure_nextauth_secretDATABASE_URL: postgresql://postgres:mysecretpassword@postgres:5432/postgresdepends_on:postgres:condition: service_healthy# Make sure you have enough permissions.volumes:- ./data:/app/.blinko restart: alwayslogging:options:max-size: "10m"max-file: "3"ports:- 1111:1111healthcheck:test: ["CMD", "curl", "-f", "http://localhost:1111/"]interval: 30s timeout: 10s   retries: 5     start_period: 30s postgres:image: postgres:14container_name: blinko-postgresrestart: always# ports:#   - 5435:5432volumes:  - ./db:/var/lib/postgresql/dataenvironment:POSTGRES_DB: postgresPOSTGRES_USER: postgresPOSTGRES_PASSWORD: mysecretpasswordTZ: Asia/Shanghaihealthcheck:test:["CMD", "pg_isready", "-U", "postgres", "-d", "postgres"]interval: 5stimeout: 10sretries: 5
  • 容器 blinko-postgres 的环境变量
可变
POSTGRES_DB指定要创建的数据库名称
POSTGRES_USER定义 PostgreSQL 数据库的用户名
POSTGRES_PASSWORD设置用于连接 PostgreSQL 数据库的密码
TZ设置时区
  • 容器 blinko-website 的环境变量
可变
NODE_ENV设置 Node.js 的运行环境。通常设为 production 用于生产环境
NEXTAUTH_URL指定 NextAuth.js 的回调 URL,用于处理身份验证。在生产环境中应更改为实际域名
NEXT_PUBLIC_BASE_URL公开的基础 URL,客户端可以访问,用于构建 API 请求的基础路径。在生产环境中也应设置为实际域名
NEXTAUTH_SECRET设置用于加密会话和生成 JWT 的秘密字符串
DATABASE_URL定义数据库连接字符串,用于连接 PostgreSQL 数据库。格式为 postgresql://用户名:密码@主机:端口/数据库名

然后执行下面的命令

# 新建文件夹 blinko 和 子目录
mkdir -p /volume1/docker/blinko/{data,db}# 进入 blinko 目录
cd /volume1/docker/blinko# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:1111 就能看到登录界面

第一次需要点 Sign Up 注册账号

登录成功后的主界面

设置中文

Settings --> Language 中找到 简体中文

不需要刷新

现在回到 闪念,可以开始记录你的新想法

链接能够直接提取 title 等信息

支持右键菜单

手机上的效果相当哇塞

AI 驱动(失败)

默认情况下,AI 并没有启用

虽然 AI服务商 只能是 OpenAI,但因为可以输入 接口地址,所以老苏打算用其他的 AI 来模拟 OpenAI

文章传送门:

  • 长文本大模型API服务kimi-free-api
  • 大模型接口管理和分发系统One API

  • 使用 Blinko ai :启用;
  • AI 服务商:只能选 OpenAI
  • 人工智能模型:选择 gpt-3.5-turbo,因为 One API 中模型只设置了 kimigpt-3.5-turbo
  • API Key:用 One API 的令牌;
  • 接口地址:用 One API 的地址;但是要注意,要求必须用 https 开头,格式为 https://域名/v1

设置完成后

回到首界面,右下角会多出一个图标

但是聊天时,返回了错误

Error: Error: Error: 503 当前分组 default 下对于模型 text-embedding-ada-002 无可用渠道 (request id: 2024111016093058572008963658571)

说明还需要用到 Embedding 模型。继续用 M3E 来模拟 text-embedding-ada-002

文章传送门:开源文本嵌入模型M3E

这次返回了另一个错误

Error: Error: 422 bad response status code 422 (request id: 2024111017481662117653978385149)

M3E 容器中的日志更明确

172.17.0.1:33778 - "POST /v1/embeddings HTTP/1.1" 422 Unprocessable Entity

说明请求的格式正确,但是由于含有语义错误无法响应。看来虽然都是嵌入式模型,但两者存在差异。

暂时没想到怎么解决这个问题,或者等待作者支持其他的 AI模型吧。

即便暂时用不上 AI 搜索,Blinko 从设计理念上,也不失为一款很好的轻量级笔记软件。

参考文档

blinko-space/blinko: An open-source, self-hosted personal note tool prioritizing privacy, built using TypeScript .
地址:https://github.com/blinko-space/blinko

Blinko HomePage
地址:https://blinko-doc.vercel.app/

Blinko live demo
地址:https://blinko-demo.vercel.app

相关文章:

AI驱动的轻量级笔记应用Blinko

什么是 Blinko ? Blinko 是一个创新的开源项目,专为想要快速捕捉和整理瞬间想法的个人而设计。Blinko 允许用户在灵感迸发的瞬间无缝记录想法,确保不会错过任何创意火花。 Blinko 的设计初衷是让笔记记录变得更简单,让用户专注于内…...

一文搞懂 UML 类图

面向对象设计 主要就是使用UML的类图,类图用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据 一、UML类图简介 统一建模语言 UML …...

Zabbix 7 最新版本安装 Rocky Linux 8

前言 本实验主要在Rocky Linux 中安装Zabbix,其他centos8、Debian、Ubuntu、Alma Linux都可以安装,就是在中间件有点不同。Nginx就要配置一下,官网给的教程也算是很规范的,就是在MySQL上要自己安装,他没有告诉我们&am…...

使用HTML、CSS和JavaScript创建动态雪人和雪花效果

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 ✨特色专栏&#xff1a…...

redis bind 127.0.0.1和bind 10.34.56.78的区别

绑定到 127.0.0.1,默认情况下,Redis 只会接受来自本地主机的连接。其他地址的则无法成功连接。如果绑定到主机的IP地址,则是可以被其他主机连接的。 可以通过iptables规则,进一步限制对redis的访问。 1、允许本地回环接口链接 …...

基于点云的 3D 目标检测模型 PointPillars 部署 tensorRT

PointPillars 3D 目标检测模型部署 tensorRT 一直想折腾一下基于点云的目标检测模型,但由于没有实际项目或工作需要,搞也搞的不够深入,把开源的模型跑一下似乎好像做过又好像没有做过。内心一直想搞一下,选定了 PointPillars 这个…...

centos查看硬盘资源使用情况命令大全

在 CentOS 系统中,你可以使用几个命令来查看硬盘的资源和使用情况。以下是一些常用的命令: 1. df 命令 df (disk free) 用于显示文件系统的磁盘空间占用情况。 df -h-h 参数表示以人类可读的格式(如 GB, MB)显示。输出会显示每…...

Solon MVC 的 @Mapping 用法说明

在 Solon Mvc 里,Mapping 注解一般是配合 Controller 和 Remoting,作请求路径映射用的。且,只支持加在 public 函数 或 类上。 1、注解属性 属性说明备注value路径与 path 互为别名path路径与 value 互为别名method请求方式限定(defall)可用…...

uni-app表单⑪

文章目录 十七、用户登录-登录界面搭建一、结构样式代码编写 十八、用户登录-表单验证一、userRulesMixin 文件使用二、验证规则编写 十七、用户登录-登录界面搭建 一、结构样式代码编写 uni-forms 插件下载 下载地址:https://ext.dcloud.net.cn/plugin?id2773 s…...

PyQt5 加载UI界面与资源文件

步骤一: 使用 Qt Designer 创建 XXX.ui文件 步骤二: 使用 Qt Designer 创建 资源文件 步骤三: Python文件中创建相关类, 使用 uic.loadUi(mainwidget.ui, self ) 加载UI文件 import sys from PyQt5 import QtCore, QtWidgets, uic from PyQt5.QtCore import Qt f…...

【MySQL】数据库知识突破:数据类型全解析与详解

前言:本节内容讲述MySQL的数据类型, 我们在学习之前的建表的时候已经用过各种各样的数据类型。 比如int、varchar、char类型等等。其中它们是对表的结构的操作, 并没有对数据的内容进行操作,所以它叫做DDL。另外,还有…...

使用Golang实现开发中常用的【实例设计模式】

使用Golang实现开发中常用的【实例设计模式】 设计模式是解决常见问题的模板,可以帮助我们提升思维能力,编写更高效、可维护性更强的代码。 单例模式: 描述:确保一个类只有一个实例,并提供一个全局访问点。 优点&…...

【Java学习】电脑基础操作和编程环境配置

CMD 在Windows中用命令行的方式操作计算机。 打开CMD Win R输入CMD按下回车键 Win E 进入我的电脑 常用的CMD命令 盘符名称冒号 说明:盘符切换 举例:E:回车,表示切换到E盘 dir 说明:查看当前路径下的内容 cd目录 说明&a…...

AVL树解析

目录 一. AVL的概念 二 AVL树的插入 2.1先按二叉搜索树的规则插入 2.2 AVL的重点:平衡因子更新 3.1 更新后parent的平衡因子等于0。 3.2 更新后parent的平衡因子等于1 或 -1,需要继续往上更新。 3.3 更新后parent的平衡因子等于2 或 -2,需…...

栈和队列(Java)

一.栈(Stack) 1.定义 栈是限定仅在表尾进行插入或删除操作的线性表 一般的表尾称为栈顶 表头称为栈底 栈具有“后进先出”的特点 2.对栈的模拟 栈主要具有以下功能: push(Object item):将元素item压入栈顶。 pop()&am…...

C#设计原则

文章目录 项目地址一、开放封闭原则1.1 不好的版本1.2 将BankProcess的实现改为接口1.3 修改BankStuff类和IBankClient类二、依赖倒置原则2.1 高层不应该依赖于低层模块2.1.1 不好的例子2.1.2 修改:将各个国家的歌曲抽象2.2 抽象不应该依于细节2.2.1 不同的人开不同的车(接口…...

easyfs 简易文件系统

easyfs easyfs 简易文件系统文件系统虚拟文件系统 VFS简易文件系统 easyfs磁盘布局超级块 easyfs 文件系统结构磁盘上的索引结构索引节点Inode 和 DiskInode 之间的关系举例说明读取文件的过程( /hello ) 参考文档 easyfs 简易文件系统 文件系统 常规文…...

【架构论文-1】面向服务架构(SOA)

【摘要】 本文以我参加公司的“生产线数字孪生”项目为例,论述了“面向服务架构设计及其应用”。该项目的目标是构建某车企的数字孪生平台,在虚拟场景中能够仿真还原真实产线的动作和节拍,实现虚实联动,从而提前规避问题&#xff…...

刚刚!更新宁德时代社招Verify测评语言理解数字推理SHL题库、网盘资料、高分答案

宁德时代社招入职的Verify测评主要分为两大块:语言理解和数字推理。语言理解部分包括阅读理解、逻辑填空和语句排序,要求在17分钟内完成30题。数字推理部分包括数字序列、数学问题解决和图表分析,同样要求在17分钟内完成18题。这些测评题目旨…...

C++笔记---智能指针

1. 什么是智能指针 1.1 RALL设计思想 RAII(Resource Acquisition Is Initialization,资源获取即初始化)是一种资源管理类的设计思想,广泛应用于C等支持对象导向编程的语言中。它的核心思想是将资源的管理与对象的生命周期紧密绑定…...

XCTF-web-easyupload

试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)

宇树机器人多姿态起立控制强化学习框架论文解析 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架&#xff08;一&#xff09; 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面&#xff0c;避免重复抓取&#xff0c;以节省资源和时间。 在分布式环境下&#xff0c;增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路&#xff1a;将增量判…...

ip子接口配置及删除

配置永久生效的子接口&#xff0c;2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...

以光量子为例,详解量子获取方式

光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学&#xff08;silicon photonics&#xff09;的光波导&#xff08;optical waveguide&#xff09;芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中&#xff0c;光既是波又是粒子。光子本…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...