Posts

生成式通用人工智能的主要推动力

transformer

transformer在长序列文本数据模式提取和海量数据处理方面碾压RNN

预训练模型

预训练模型成功的应用到NLP领域

默认会化过期时间 开源的EMQ设置的会话过期时间为 5 分钟,最大消息数为 1000 条,且不保存 QoS 0 消息。 针对这两点,MQTT 5.0 提供了 Clean Start 和 Session Expiry Interval 这两个连接字段来控制会话的生命周期 Session Expiry Interval Session Expiry Interval 同样位于 CONNECT 报文的可变报头,不过它是一个可选的连接 属性。 它被用来指定会话在网络断开后能够在服务端保留的最长时间,如果到达过期时间但网络连接仍未恢复, 服务端就会丢弃对应的会话状态。它有三个典型的值: 没有指定此属性或者设置为 0,表示会话将在网络连接断开时立即结束。 设置为一个大于 0 的值,则表示会话将在网络连接断开的多少秒之后过期。 设置为 0xFFFFFFFF,即 Session Expiry Interval 属性能够设置的最大值时,表示会话永不过期。 服务端使用 Client ID 来唯一地标识每个会话,如果客户端想要在连接时复用之前的会话,那么必须使用与此前一致的 Client ID 我们需要正确地评估持久会话对服务器资源的影响,会话过期时间越长,服务端需要花费的存储资源就可能越多。 虽然服务端通常并不会无限制地为客户端缓存消息,以 EMQX 为例,默认情况下每个客户端会话中能够缓存的最大消息数量为1000 数据存储 路由数据是物联网连接集群中的核心数据,它存储设备订阅主题与集群节点的映射关系,在消息发布时根据消息主题信息查找所有匹配的节点, 用于集群内节点间的消息派发。在EMQX的实现中,路由数据存在于集群中的所有节点上。客户端的主题订阅数据,则只保存在连接所在的节点上, 用于节点内部派发消息到客户端。当客户端连接到集群某个节点订阅某个新的主题时,就会生成一条路由数据,该数据最终会同步到集群所有节点上, 每个节点都可以通过本地查询找到任意主题对应的订阅节点列表。当客户端发布消息时,连接所在节点会根据消息主题检索路由数据得到所有订阅 节点的信息,然后将消息派发到这些节点上. OPC OPC UA 是一种面向工业自动化的机器到机器通信协议,由 OPC 基金会开发维护。OPC UA 提供一种标准化的方式, 使不同的设备和系统能够互相通信。 Neuron OPC UA 插件可作为客户端访问 KEPServerEX、Industrial Gateway OPC Server、Prosys Simulation Server、Ignition 等 OPC UA 服务器, 也可以直接访问硬件设备的内置 OPC UA Server,如西门子 S7-1200 型 PLC 的内置 Server、 欧姆龙 NJ 系列 PLC 的内置 Server 等。

WebGPU is the new GPU API that available in browser. It’s one of the only 2 APIs that currently available to access the GPU from browser (the other is WebGL). WebGPU is the successor to WebGL, providing better compatibility with modern GPUs, support for general-purpose GPU computations, faster operations, and access to more advanced GPU features. WebGL基本问题 WebGL has some fundamental issues that needed addressing: Since WebGL’s release, a new generation of native GPU APIs have appeared — the most popular being Microsoft’s Direct3D 12, Apple’s Metal, and The Khronos Group’s Vulkan — which provide a multitude of new features.

学习英语

重要的是speaking和writing

学习编程

重要的是交付一个可以工作的产品和项目

分词器(Tokenizer) tokenization算法大致经历了从word/char到subword的进化. 目前有三种主流的Subword分词算法,分别是Byte Pair Encoding (BPE), WordPiece和Unigram Language Model Back in the ancient times, before 2013, we usually encoded basic unigram tokens using simple 1’s and 0’s in a process called One-Hot encoding. word2vec improved things by expanding these 1’s and 0’s into full vectors (aka word embeddings). BERT improved things further by using transformers and self-attention heads to create full contextual sentence embeddings. 传统的词编码:one-hot 分布式词编码:word embedding word2vec CBOW模型是在已知当前词上下文context的前提下预测当前词w(t),类似阅读理解中的完形填空; 而Skip-Gram模型恰恰相反,是在已知当前词w(t)的前提下,预测上下文context。

启动开发环境

git clone [email protected]:penpot/penpot.git
pushd penpot
./manage.sh run-devenv

检查进程运行状态

docker exec -ti penpot-devenv-main bash
root@87691e4f990c:/home# sudo -EH -u penpot tmux ls
penpot: 4 windows (created Sat Apr  8 10:27:39 2023) (attached)

Arduino开发板包默认安装位置

C:\Users\bigo\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.1

Arduino

来源:索钧–同仁堂主任医师,索延昌之子,师从国医方和谦

食物

粥: 薏米一把,绿豆一把,莲子一把

七成饱,饮食有节,细嚼慢咽,每口嚼二十到三十下。

按摩:三阴交,中脘,足三里

腹式呼吸

丹田撞树,一定要是树,感受到和大自然的直接互动

心血

空心拳叩击膻中穴

运动

双手并排保持端平,向下做深蹲,然后站立

养生八字

童心,蚁食,鬼欲,猴行

以太网连接企业VPN内网,企业VPN内网没有外网访问权限。 显示当前的网络连接 ipconfig Windows IP 配置 以太网适配器 以太网: 连接特定的 DNS 后缀 . . . . . . . : 本地链接 IPv6 地址. . . . . . . . : fe80::7c5d:6dec:3f55:ca9f%19 IPv4 地址 . . . . . . . . . . . . : 10.177.105.14 子网掩码 . . . . . . . . . . . . : 255.255.255.128 默认网关. . . . . . . . .

地点:深圳市龙华区的深圳书城 诺贝尔文学奖得主索尔·贝娄对书有一个定义,书是什么?书是广阔生活的保证人。  距离2023年还有3个半小时,我想请朋友们坐下来,在这么多“广阔生活的保证人”的陪伴下,咱们聚在一起聊聊天。今天晚上,我给你准备了22个故事,咱们开始。   《电动车与书店》  我要讲的第一个故事,是一个“补窟窿”的故事。  它就发生在我此刻所在的深圳市龙华区。  这个故事的主人公,我不知道他的姓名,我们就叫他“龙华哥”吧。他37岁,原来开工厂,这两年生意失败,工厂关了,还欠了200万的债。  这大概就是人生谷底的样子吧。  怎么办呢?偶然有一天,他发现,深圳的街头,地铁口到处都停着电动车,许多电动车的座椅上都有破洞。你想,一个多雨的亚热带城市,下雨之后,有洞的座椅坐上去,一裤子的水,会给骑车的人带来很多麻烦。于是他想到了一个对别人有用的活儿——去把这些电动车车座的破洞补上。  他就带着一些皮革贴,满大街去找电动车,补好破洞之后,再贴上一张收款二维码,上面写着:“坐凳给您补好了,扫码支付,金额您随意。”  这话听着耳熟。酒桌上常见的词儿:“我干了,您随意。”  等他忙完一天回家,打开手机,发现真的不断有人开始付款,有3块、5块、8块、20块,还有人留言感谢。  第1天操作,总共31笔,收了184块钱。要知道,他补座椅用的皮革贴,每一张的成本在一毛钱左右,所以贴了100张出去,也才10块钱的成本。诶,这个事儿能干!  第二天,收款562块,刨去皮革贴的成本30块,地铁日票25块,挣了大概有500元。  一个新的生计就这么找到了。  我不知道这个故事给你什么感受?是数字化技术带来了新的生意方式?还是中国人的道德水准在普遍性提高?  而我,倒是从这个故事中再一次看到了一个“做事的人”该有的样子。  拜托深圳的朋友,如果你的电动车恰好也被他补过洞,如果你给他打过钱,还有他的联系方式的话,帮我问候一声。就跟他说,罗胖,也被他这个故事激励到了。  这个故事给我的启发是:面对困难,有三种结果。最好的,当然是打赢困难,其次是被困难击败,但还有没有更糟糕的结果呢?  有。那就是被困难定义。   什么叫被困难定义?守株待兔的故事,大家都知道吧?那个人在树前赢了一次,就把自己定义成了“可以靠运气活下去的人”。被锁死在一次成败之中,这太糟糕了。  而我们故事当中的这位“龙华哥”,迅速地摆脱了“失败的工厂主”这个定义,开始在别处寻找机会。从制造业的工厂主,到满大街去补车座,这是多大的跨度?这是一种多么强悍的摆脱定义、重启自己的能力?  龙华区有一句话:“无奋斗,不龙华。”这就是我们中国人眼里奋斗者的样子,也是我们这代人心目中深圳精神的样子:遇到难处,一边对他人的困境保持同理心,一边不挑不拣,先从身边的小事做起。这样,很多原来看不见的,身边的小机会就会生动地浮现出来。  因为这个故事,当龙华区的朋友邀请我们把跨年演讲放到这里,我们马上就接受了邀请。场地就定在龙华文体中心,一座刚刚落成的体育馆。  但万万没想到,刚刚被这个“补窟窿”的故事激励到,马上就轮到我们自己补窟窿了。  每年,准备跨年演讲,都有一个月的闭关期。2022年11月底,当我们来到深圳的时候,全国还在大面积封控。  你可以回想一下:一个月前,那个时候的社会氛围和自己的心境。  有一天看场地,我站在体育馆里,突然觉得,坏了。  我完全没法想象:今年还能做那种大集会、大舞台、大屏幕式的演讲。即使深圳本地的防疫情况允许,即使我还有勇气像去年那样,一个人面对一万个空座位讲,而如果那个时候的你,还被困在家里,看见这个场景,你会作何感想?我又情何以堪?  我们准备了半年的跨年演讲,就在一个月前,突然变得非常尴尬。简直是进退维谷。  刚才我讲了一个“补窟窿”的故事。现在,我自己突然就面对这么大一个窟窿要补。怎么办?  正当一筹莫展的时候,那天,我们走出原定的龙华文体中心,一扭头,就看见了这座深圳书城,也就是我今天站的这个地方。一打听,这里居然还是全国首家5G智慧书城。  灵光一闪,一个新想法就冒出来了:今年能不能干脆不用大舞台?也不搞大集会?我就在这个书城里,边走边讲。观众也不用多,因为这里有书香的加持,更重要的是,我可以走到真实的观众中间。  过去这三年,我们多缺和真实的人近距离、面对面相处的机会啊。

torch.multinominal方法可以根据给定权重对数组进行多次采样,返回采样后的元素下标 参数说明 input :权重,也就是取每个值的概率,可以是1维或2维。可以不进行归一化。 num_samples : 采样的次数。如果input是二维的,则表示每行的采样次数 replacement :默认值值是False,即不放回采样。如果replacement =False,则num_samples必须小于input中非零元素的数目 按权重采样 从四个元素中随机选择两个,每个元素被选择到的概率分别为:[0.2, 0.2, 0.3, 0.3]: >>> weights = torch.Tensor([0.9, 0.25, 0.1, 0.15]) # 采样权重 >>> torch.multinomial(weights, 2) tensor([0, 1]) >>> torch.multinomial(weights, 2) tensor([1, 3]) >>> torch.multinomial(weights, 2) tensor([0, 3]) >>> torch.multinomial(weights, 2) tensor([3, 1]) >>> torch.multinomial(weights, 2) tensor([1, 0]) >>> torch.multinomial(weights, 2) tensor([1, 0]) >>> torch.multinomial(weights, 2) tensor([0, 1]) >>> torch.multinomial(weights, 2) tensor([0, 2]) >>> torch.multinomial(weights, 2) tensor([3, 0]) >>> torch.

https://upload.wikimedia.org/wikipedia/commons/3/37/Netfilter-packet-flow.svg

XDP

下载 Docker 二进制文件(离线安装包) 下载地址:https://download.docker.com/linux/static/stable/x86_64/ 注:本文使用 /x86_64/docker-18.06.1-ce.tgz,注意对应操作系统类型。 tar tf docker-20.10.9.tgz docker/ docker/containerd-shim-runc-v2 docker/dockerd docker/docker-proxy docker/ctr docker/docker docker/runc docker/containerd-shim docker/docker-init docker/containerd tar zxf docker-18.06.1-ce.tgz sudo cp docker/* /usr/bin/ sudo dockerd & 验证是否安装成功,执行docker info命令 docker info 注册成系统服务 /etc/systemd/system/docker.service [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target docker.socket firewalld.service Wants=network-online.target Requires=docker.socket [Service] Type=notify # the default is not to use systemd for cgroups because the delegate issues still # exists and systemd currently does not support the cgroup feature set required # for containers run by docker ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.

Quit docker-desktop

wsl --shutdown

Export Docker Desktop data

wsl --export docker-desktop-data D:\data.tar
wsl --unregister docker-desktop-data

Import the exported data to your desired location

wsl --import docker-desktop-data D:\wsl\docker-desktop-data  d:\data.tar --version 2

restart docker-desktop

λ wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu2                Running         2
  docker-desktop-data    Running         2
  docker-desktop         Running         2

每隔几年 ,我总要把《明朝那些事儿》最后一章拿来读读,给自己的人生纠偏,而唯一的准星,就是自己本心。最后一章内容如下: “其实历史和小说不一样,因为历史的答案,所有人都知道,崇祯同志终究是要死的,而且肯定是吊死,他不会撞墙,不会抹脖子,不会喝敌敌畏,总而言之,我不说,你们都知道。 所以结局应该是固定的,没有支线。 但是,我的结局,并不是这个。换句话说,我的文章,有两个结局,这只是第一个。 我读了十五年历史,尊重历史,所以这篇文章从头至尾,不能说无一字无来历,但大多数,都是有出处的。我不敢瞎编。 所以第二个结局,也是真实的,只不过比较奇特,它一直在我的脑海里,最后,我决定把这个比较奇特的结局写出来。 第二个结局徐宏祖出生的时候,是万历十五年。 在这个特定的年龄出生,真是缘分,但外面的世界,跟徐宏祖并没有多大关系,他的老家在江阴,山清水秀,不用搞政治,也不怕被人砍,比较清净。 当然,清净归清净,在那年头,要想出人头地,青史留名,只有一条路——考试(似乎今天也是)。 徐宏祖不想考试,不想出人头地,不想青史留名,他只想玩。 按史籍说,是从小就玩,且玩得比较狠,比较特别,不扔沙包,不滚铁环,只是四处瞎转悠,遇到山就爬,遇到河就下,人极小,胆子极大。 此外,他极其讨厌考试,长大后,让他去考科举,死都不去。该情节,放在现在,大致相当于抗拒高考。 这号人,当年跟今天的下场,估计是差不多,被拉回家打一半死不活,绝无幸免。 然而徐宏祖的父母没有打他,非但没有打他,还告诉他,你要想玩,就玩吧,做自己喜欢做的事情就行。 这种看似惊世骇俗的思想,似乎很不合理,但对徐家人而言,很合理。 对了,应该介绍一下徐宏祖同志的家世,虽然他的父母,并非什么大人物,也没名气,但他有一位祖先,还算是很有名的,当然,不是好名。 在徐宏祖出生前九十年,徐家的一位先辈进京赶考,路上遇到了一位同伴,叫做唐寅,又叫唐伯虎。 没错,他就是徐经。 后来的事情,之前讲过,据说是徐经作弊,结果拉上了唐伯虎,大家一起完蛋,进士没考上,连举人都没了,所以徐经同志痛定思痛,对坑害了无数人(主要是他)的科举制度深恶痛绝,教育子孙,要与这个万恶的制度决裂,爱考不考,去他娘的。 对这段百年恩怨,徐宏祖是否了解,不清楚,但他会用,那是肯定的。更重要的是,徐家虽说没有级别,还有点钱,所以他决定,索性不考了,出去旅游。 刚开始,他旅游的范围,主要是江浙一带,比如紫金山、太湖、普陀山等等。后来愈发勇猛,又去了雁荡山、九华山、黄山、武夷山、庐山等等。 但这里,存在着一个问题——钱。 旅行家和大侠的区别在于,旅行家是要花钱的,列一下,大致包括以下费用:交通费、住宿费、导游费、餐饮费、门票费,如果地方不地道,还有个挨宰费。 我说过,徐家是有钱的,但只是有点钱,没有很多钱,大约也就是个中产阶级。按今天的标准,一年去旅游一次,也就够了,但徐宏祖的旅行日程是:一年休息一次。 他除了年底回家照顾父母外,一年到头都在外面,但就这么个搞法,他家竟然还过得去。 原因很简单,比如交通费,他不坐火车、也不坐汽车(想坐也没),少数骑马,多靠步行(骑马爬山试试)。 住宿费,基本不需要,徐宏祖去的地方,当年大都没有人去,别说三星级,连孙二娘的黑店都没有,树林里、悬崖上,打个地铺,也就睡了。 餐饮费,也没有,我考察过,徐宏祖同志去的地方,也没什么餐馆,每次他出发的时候,都是带着干粮,而且他很扛饿,据说能扛七八天,至于喝水,山里面,那都是矿泉水。 门票费也是不用了,当年谁要能在徐宏祖同志去的地方,设个点收门票,那只能说明,他比徐宏祖还牛,该收。 挨宰费是没有的,但挨宰是可能的,且比较敞亮,从没有暗地加价坑钱,都是拿刀,明着来抢。要知道,没门票的地方,固然没有奸商,却很可能有强盗。 据本人考证,徐宏祖最大的花销,是导游费用。作为一个旅行家,徐宏祖很清楚,什么都能省,这笔钱是不能省的,否则走到半山腰,给你挖个坑,让你钻个洞,那就休息了。 就这样,家境并不十分富裕的徐宏祖,穿着俭朴的衣服,没有随从,没有护卫,带着干粮,独自前往名山大川,风餐露宿,不怕吃苦,不怕挨饿,一年只回一次家,只为攀登。 从俗世的角度,徐宏祖是个怪人,这人不考功名,不求做官,不成家立业,按很多人的说法,是毁了。 我知道,很多人还会说,这种生活荒谬,是不符合常规的,是不正常的,是缺根弦的,是精神有问题的。 我认为,说这些话的人,是吃饱了,撑的,人只活一辈子,如何生活,都是自己的事,自己这辈子浑浑噩噩地没活好,厚着脸皮还来指责别人,有多远,就去滚多远。 徐宏祖旅行的唯一阻力,是他的父母。他的父亲去世较早,只剩他的母亲无人照料。圣人曾经教导我们:父母在,不远游。 所以在出发前,徐宏祖总是很犹豫,然而他的母亲找到他,对他说了这样一番话:“男儿志在四方,当往天地间一展胸怀!” 就这样,徐宏祖开始了他伟大的历程。 他二十岁离家,穿着布衣,没有政府支持,没有朋友帮助,独自一人,游历天下二十余年,他去过的地方,包括湖广、四川、辽东、西北,简单地说,全国十三省,全部走遍。 他爬过的山,包括泰山、华山、衡山、嵩山、终南山、峨眉山,简单地说,你听过的,他都去过,你没听过的,他也去过。 此外,黄河、长江、洞庭湖、鄱阳湖,金沙江、汉江,几乎所有江河湖泊,全部游历。 在游历的过程中,他曾三次遭遇强盗,被劫去财物,身负刀伤,还由于走进大山,无法找到出路,数次断粮,几乎饿死。最悬的一次,是在西南。 当时,他前往云贵一带,结果走到半路,突然发现交通中断,住处被当地土著围,过了几天,外面又来了明军,又开始围,围了几天,就开始打,打了几天,就开始乱。徐宏祖好歹是见过世面的,跑得快,总算顺利脱身。 在旅行的过程中,他还开始记笔记,每天的经历,他都详细记录下来,鉴于他本人除姓名外,还有个号,叫做霞客,所以后来,他的这本笔记,就被称为《徐霞客游记》。 崇祯九年(1636),五十岁的徐宏祖决定,再次出游,这也是他的最后一次出游,虽然他自己没有想到。 正当他考虑出游方向的时候,一个和尚找到了他。 这个和尚的法号,叫做静闻,家住南京,他十分虔诚,非常崇敬鸡足山迦叶寺的菩萨,还曾刺破手指,血写过一本法华经。 鸡足山在云南。 当时的云南鸡足山,算是蛮荒之地,啥也不通,要去,只能走着去。 很明显,静闻是个明白人,他知道自己要一个人去,估计到半路就歇了,必须找一个同伴。 徐宏祖的名气,在当时已经很大了,所以他专门找上门来,要跟他一起走。 对徐宏祖而言,去哪里,倒是个无所谓的事,就答应了他,两个人一起出发了。 他们的路线是这样的,先从南直隶出发,过湖广,到广西,进入四川,最后到达云贵。 不用到达云贵,因为到湖广,就出事了。 走到湖广湘江(今湖南),没法走了,两人坐船准备渡江。 渡到一半,遇上了强盗。 对徐宏祖而言,从事这种职业的人,他已经遇到好几次了,但静闻大师,应该是第一次。此后的具体细节不太清楚,反正徐宏祖赶跑了强盗,但静闻在这场风波中受了伤,加上他的体质较弱,刚撑到广西,就圆寂了。 徐宏祖停了下来,办理静闻的后事。 由于路上遭遇强盗,此时,徐宏祖的路费已经不足了,如果继续往前走,后果难以预料。 所以当地人劝他,放弃前进念头,回家。 徐宏祖跟静闻,是素不相识的,说到底,也就是个伴,各有各的想法,静闻没打算写游记,徐宏祖也没打算去礼佛,实在没有什么交情。而且我还查过,他此前去过鸡足山,这次旅行对他而言,并没有太大的意义。 然而他说,我要继续前进,去鸡足山。 当地人问:为什么要去。 徐宏祖答:我答应了他,要带他去鸡足山。 可是,他已经去世了。 我带着他的骨灰去。答应他的事情,我要帮他做到。 徐宏祖出发了,为了一个逝去者的愿望,为了实现自己的承诺,虽然这个逝去者,他并不熟悉。 旅程很艰苦,没有路费的徐宏祖背着静闻的骨灰,没有任何资助,他只能住在荒野,靠野菜干粮充饥,为了能够继续前行,他还当掉了自己所能当掉的东西,只是为了一个承诺。 就这样,他按照原定路线,带着静闻,翻阅了广西十万大山,然后进入四川,越过峨眉山,沿着岷江,到达甘孜松潘。

START PG

version: '2'

services:
  postgresql:
    container_name: pg
    image: postgres:12
    ports:
      - '5432:5432'
    volumes:
      - 'postgresql_data:/var/lib/postgresql/data'
    environment:
      - 'POSTGRES_PASSWORD=!Qsx4rgb'
      - 'PGDATA=/var/lib/postgresql/data/pgdata'

  # adminer:
  #   image: adminer
  #   restart: always
  #   ports:
  #     - 8080:8080

volumes:
  postgresql_data:
    driver: local

安装pgcli

sudo apt install libpq-dev
pip install -U pgcli
export PATH=$PATH:/home/ubuntu/.local/bin
pgcli -U postgres -h localhost

更改配置

postgres@localhost> alter system set autovacuum = off;
postgres@localhost> SELECT pg_reload_conf();
postgres@localhost> show autovacuum;

因为禁用了下列服务:

Application Information Appinfo

导致无法打开系统高级设置,SERVICES.MSC

https://www.elevenforum.com/t/restore-default-services-in-windows-11.3109/

CAN消息总线格式 DBC格式 BO_ 500 IO_DEBUG: 4 IO SG_ IO_DEBUG_test_unsigned : 0|8@1+ (1,0) [0|0] "" DBG 说明: The message name is IO_DEBUG and MID is 500 (decimal), and the length is 4 bytes (though we only need 1 for 8-bit signal) The sender is IO 0|8: The unsigned signal starts at bit position 0, and the size of this signal is 8 (1,0): The scale and offset (discussed later) [0|0]: Min and Max is not defined (discussed later) ””: There are no units (it could be, for instance “inches”) @1+: Defines that the signal is little-endian, and unsigned: Never change this!

three main use cases for metadata repositories: Finding data assets For example, a data architect may want to know which tables in which databases contain a Customer_ID. Tracking lineage (provenance) Many regulations require enterprises to document the lineage of data assets—in other words, where the data for those assets came from and how it was generated or transformed. Impact analysis If developers are making changes in a complex ecosystem, there is always a dan‐ ger of breaking something.