在服务器上运行 Briar Mailbox

Briar Mailbox 是 Briar messenger的配套应用,它能让你在 Briar 离线时接收来自联系人的加密消息。当 Briar 重新上线时,它会自动从你的邮箱中同步这些消息。

同样地,你也可以向当前离线的联系人发送加密消息。这些消息会被安全存储,并在对方上线时自动送达。

设置 Mailbox 非常简单:只需在一台备用的 Android 设备上安装 Mailbox 应用,通过扫描二维码将其与你的 Briar 账户关联,然后确保这台设备保持连接电源和 Wi-Fi 即可。

然而,你可能希望这个服务能更加稳定,毕竟一个空闲的 Android 设备在一个家用的网络环境和电源保障的条件下,是有可能下线的。好在,你可以通过 Briar Mailbox 的源代码构建程序包,使其可以在 Linux(例如 Debian、Ubuntu)上运行。

本文介绍如何构建 Brair Mailbox 的 x86 cli 程序,并以 Debian 系统为例说明如何运行一个自启动服务。

Read More

使用 sing-box 搭建 Netflix 节点的小思路

背景

由于本身不需要科学上网,所以平时其实是没有给自己搭建代理的需求的。不过我在 Proton 的订阅包含了 Proton VPN,而可利用该服务实现 Netflix 换区解锁,因此偶尔也有挂 VPN 的场景。

但考虑到一直挂着 VPN 也会导致我访问其他网站的 IP 地址变更,因此希望能选择性地只针对 Netflix 走代理。

再加上虽然我自己不用科学上网,但我也搭建了节点给朋友使用。我也希望能让某节点实现 Netflix 解锁的作用。

偶然想到 sing-box 的出入站规则,加上 Proton VPN 实际是提供 Wireguard 节点配置的,所以搭建一个专门用于 Netflix 解锁的节点是可行的。

Read More

天蓝

看了《葬送的芙莉莲》动画前四集,心情轻松平静。很久没静下心来看这么慢节奏的视频作品了,但它的确有这个魔力。

就像童话故事一样美好。

也许自己正好是处于一个对岁月和衰老有了初认识的年龄,第一集就让我有些伤感,又有些坦然。简单的叙事,像是寓言一样触动人心,不由得让我再次开始思考生命中什么才是重要的?种种烦恼好似幻梦,唯有当下才是永恒。

在时间面前,谁都会老去,没有什么会一成不变,那些骄傲、自负、悔恨、遗憾、欲望都逐渐清晰起来,过去的身在其中,成了现在的一目了然。未来再回首也何尝不会这样?设想一下几十年转眼间就至的终点,此刻的压力和焦虑似乎没必要存在了。

没想到有这样的契机让我在混沌中重回平静,偏爱「等待-煎熬」模式的我终于又稳当了一些。精神内耗也竟然放下了许多。

当下,当然不一定就是好的,但假如还可以,那能珍惜的还是去好好珍惜吧。我想起曾经很不如意的一段时间,还在家里蹲的时候,我妈劝我说,这段能和父母在天天一起的时光这辈子也不多了。

别总盼着过了这一关,因为过了这一关还有下一关,什么时候都不会是「最好」、「最安稳」,过好现在才不可惜。

动画里让我印象深刻的是,那双天蓝色的眼眸,和水晶一样的流星。该逝去的终会逝去,该留下的也能留下。

人生苦短的我们,该放手就放手,该铭记则铭记,别纠结过去,别浪费现在,别焦虑未来。

Read More

Ubuntu 下修改 shell prompt

我每次在云服务商创建新机后,总要改一下 hostname,一是有些云服务商的默认 hostname 有敏感信息,二是修改后 prompt 里的主机名会相应改变,便于登录后区分。

才发现,其实可以直接修改 prompt。好处是,免去修改 hostname 在网络配置上引发的各种小麻烦。

Read More

使用 LangChain + OpenAI GPT 来构建问答知识库的聊天机器人

昨天了解了一下如何用 GPT 来做问答知识库,比如 Supabase 的技术文档可以使用自然语言提问,然后由 AI 给出回答。

自己也动手做了一个小工具来做试验:用了 LangChain 框架,调用 OpenAI 的 GPT-3.5 Turbo 模型进行实现。Embedding 使用 text-embedding-ada-002-v2

基本问题

OpenAI 的 API 简洁易懂,而且 LangChain 提供了抽象,事实上不需要关心 OpenAI 的 API 的用法,只需要关心 LangChain 具体函数 API。

要想构建知识库,则首先要搞清楚下面两个问题:

  1. 模型怎么能知道关于特定文档的知识?
  2. 对话历史记录如何保存?

解决了这两个问题,基本就搭建好了该聊天机器人的基本框架。

Read More

Mastodon