Living a Simple Life is a Happy Life

有饭吃,自由自在,就非常开心

关于AI发展的几个迷思

| Comments

一些瞎想,随手记下来

迷思1:将来会出现一个科幻小说里面的超级智能体吗?

目前看来是不会的,目前的大模型本质上还是一个token预测器,虽然我们对于这种预测的神奇效果止不住的惊叹,但是看起来顺着这条道路下去,AI并不会产生自我意识。所以未来可能会出现知识极其广博的AI智能体,但是它不会拥有自主意识;没有自主意识,就意味着无法产生自主的创造性能力,所以目前来看我们离科幻小说的世界还比较远。

迷思2: 仅仅靠预测算法和大量的数据投喂,大模型就有如此的威力,未来它的能力能无限提升吗?

目前最大的模型大概已经向10万亿参数迈进,换算一下大概是100TB级别的数据输入,看起来这个量级已经很大了;很多大模型公司训练数据,已经把互联网上能找到的公开非公开的数据都搜罗一遍了;但是目前来看这个数据量还远远没有到达上限;

我们可以类比一下,一个婴儿,只统计他的视觉输入:一条视神经的信息传输数据大概是 1M token/s,他每天有8个小时的不断接受数据的过程,那么10年时间: 1M X 2 X 3600 * 8 * 365 * 10 = 210TB,也就是说,一个人十年的时间,仅仅是视觉上的数据输入,就能超越目前最大的模型参数总量;所以大模型继续靠数据投喂,提升能力还是有很大空间的;

可能会有一天,会有一个边际效应,再投喂大模型更多数据,获取的能力提升微乎其微,那个时候就应该探索新路了,但是看起来那一天还挺远;

迷思3: AI智能体会替代所有的人类工作吗?

目前来看,涉及到脑力劳动的所有工作,都有被替代的风险,除非你是那种有极高创造力的人才,可我们都知道,我们普通人,其实很多工作都是按部就班,没有啥创造力的。或者说,我们自以为有创造力,其实也跟AI的鹦鹉学舌没多大区别,可能还学的不如AI;有一个投票:未来哪些职业会被AI取代-总统、老师、医生、企业高管、水管工人;大家普遍认为:总统和企业高管未来没什么用的,水管工人可不能缺;医生和老师,要看其掌握的技能硬不硬;

什么样的工作难替代呢?

其实可以换一个角度,从目前AI诞生所投喂的数据来分析。目前AI训练的数据主要是文字、音频、视频,所以AI的能力局限于听说读写看;最适合现实世界的,能大规模应用的,就是自动驾驶;而哪些能力是目前的AI不能获取的呢?

答案就是触觉、嗅觉、味觉;我们人类,到目前为止,还没有一个能符号化表示触觉、味觉、嗅觉的解决方案,穷尽人类的语言,也无法描述撸一只猫猫的手感;所以未来最不可能替代的,是需要实际接触现实世界、依赖于触嗅味觉经验的工作,比如品酒师.职业运动员,舞蹈家,外科手术医生,园艺师,可能还有..老中医…但是这类工作实在太小众、太少了…我们真的要有危机感啊;

迷思4: 未来AI可能的下一个突变在哪里?

我想到的有两个吧:

  1. 一个还是效率的提升;我们人脑的功率可能巅峰也就20w,而一个AI训练所耗费的能源,还是太高了,所以以后AI训练,应该还能有新的算法指数级的降低能源消耗

  2. 就是AI自我训练,这个看起来技术路线是能做到的,就是AI以后能自己训练、自己对齐、自己调优,能不断自发展的AI大模型,应该是下一步的研究方向。

关于区块链未来的一些预测

| 0 Comments

最近在翻阅Solana的源码,Solana的POH技术非常有意思,目前它的性能也远远超越了Ethereum,有一些思考和预测记录一下:

  1. POS和POW之争会一直持续下去;
  2. 人们投资数字货币的初衷,是不相信人管理的系统,而相信数学; 所以POW是根基
  3. 但是区块链技术和数字货币要跟现实打通,就必须接受那些有控制欲的人类组织的管理,所以即使没有能源消耗问题,POS一定会有市场
  4. POS链是由人来博弈的,凡是人类争夺控制权的游戏,就一定会有非常多的开局,所以POS链未来会百花齐放,也许每一个国家、每一个公司、每一个组织,甚至每一个人都会发行自己的POS公链
  5. POW链永远只有一条公链占据绝对统治地位,因为这是个完全自由竞争的市场,长期算力一定会汇聚到共识最大的那条链
  6. 最后POW的主场景是价值存储,POS的主场景是应用创新;
  7. POW的链变化少,可能比特币会长期存活并占据C位,而POS技术不断迭代,可能会你方唱罢我登场

如何配置Fail2Ban阻止Web频繁请求

| 0 Comments

这类问题,AI回答已经非常靠谱了;记录一下,仅仅是加强一下记忆;

1. 确认Nginx日志格式

1.1 确保Nginx日志中包含客户端IP($remote_addr),检查Nginx配置(通常位于/etc/nginx/nginx.conf):

1
2
3
4
5
6
http {
    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent"';
    access_log /var/log/nginx/access.log main;
}

1.2 重启Nginx使配置生效:

1
sudosystemctl restart nginx

2. 安装Fail2Ban

1
2
3
4
5
# Ubuntu/Debian
sudo apt update && sudo apt install fail2ban

# CentOS/RHEL
sudo yum install epel-release && sudo yum install fail2ban

3. 创建自定义Filter规则

比如要监控 所有 /hello url下的请求;

新建文件 /etc/fail2ban/filter.d/nginx-url-bruteforce.conf

1
[Definition]failregex=^<HOST> -.*"(GET|POST) /hello/[a-fA-F0-9]{64} HTTP/.*".*ignoreregex=

4. 配置Jail规则

编辑 /etc/fail2ban/jail.local,添加以下内容

1
2
3
4
5
6
7
8
9
10
11
12
[nginx-url-bruteforce]
enabled = true
port = http,https
filter = nginx-url-bruteforce
logpath = /var/log/nginx/access.log
 # 允许的最大尝试次数
maxretry = 5
# 在60秒内超过maxretry则封禁
findtime = 60
# 封禁1小时
bantime = 3600
action = %(action_mwl)s

5. 测试Filter规则

使用 fail2ban-regex 测试正则匹配

1
sudo fail2ban-regex /var/log/nginx/access.log /etc/fail2ban/filter.d/nginx-url-bruteforce.conf

6. 重启Fail2Ban并监控

1
2
sudo systemctl restart fail2ban
sudo fail2ban-client status nginx-url-bruteforce

7. 高级调整(可选)

  • 日志路径:如果日志路径不同,修改 logpath。

  • 封禁时间:调整 bantime(单位:秒,如 86400 封禁1天)。

  • 精确匹配状态码:如需仅封禁500错误,修改 failregex:

用watch命令高亮输出的不同

| 0 Comments

1
watch -d date

-d 参数会将两次输出之间的差异高亮显示;

我赶紧又 man 了一下 watch 命令的选项,又得到了几个对我有用的功能:

-b 参数可以在程序异常退出的时候响铃

-g 参数可以在程序输出发生变化时退出watch命令

还有我最常用的 -n参数,控制watch的间隔

Linux上面很多小命令,是从上世纪70年代的上古UNIX时期一路经过血战竞争才能留到现在的,论设计肯定是精益求精了;

AI未来时代会为我们带来什么

| 0 Comments

最近两年各种AI技术的进步,让人浮想联翩;这也许是关于技术发展的盲目乐观,但爱做梦的人总忍不住去想象未来的科幻场景;

如果AI真的发展到了具有超过人类智慧–注意这里说的是智慧,而不是单纯的智能–的程度,那会对人类社会产生如何的影响呢?

在我看来,这就是一场新时代的文艺复兴;

目前,具有创造力的人类在社会中所占的比例是很小的;这并不是单纯的教育或者智力的问题,而是我们受到的社会物质制约实在太大了;如果给予每个人充分发展的条件,那么我深信,社会上会涌现出数不清的莫扎特,数不清的达芬奇,数不清的爱迪生……

就像网络硬件发展到如今的水平,每个人都能在各类社交平台上秀自己美美的照片,秀自己的日常生活小视频,大家突然发现,自己以及身边的人,都是艺术家;大家也不用等着晚上8点去看几个电视台的综艺节目了,每个人都可以导演自己喜欢的节目;

当AI强大到一定程度后,会出现无比繁荣的共创时代:

  1. 有动手能力的人,也许会一个人完成今天不敢想象的火箭探月工程

  2. 有艺术素养的人,完全可以一个人拍出不朽的影像作品

  3. 有一定专业知识的人,比如程序员,甚至不是自己写APP了,可以为自己订制操作系统,或者软硬件一体产品

未来,是一个一言不合就自己创造工具的时代,今天我们需要数千人协作才能完成的大工程,将来完全可以在AI的帮助下,几个人甚至一个人就能实现媲美今天SpaceX的成就;

未来,科幻片中的天才博士,自己在家后院造一个宇宙飞船,去探索地外文明的故事,也许会在现实中发生;

How to Resize Partition on Linux

| 0 Comments

之前操作Linux,扩容已有分区,一直是手工fdisk删除分区重建搞定的,这种方式不直观且容易出错;最近采用parted操作了以下,发现很直观;

比如我要对 /dev/sda1 从 100GB,扩容至200GB,操作如下

查看当前分区情况

1
2
3
4
5
6
7
# 进入 parted 工具
$ sudo parted
GNU Parted 3.4
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
# 查看磁盘信息
(parted) print /dev/sda

我只有 /dev/sda1 一个分区,因此很好办

根分区扩容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 进入 parted 工具
$ sudo parted /dev/sda
# 查看磁盘信息
(parted) print
# 此时应该只有一个分区,直接扩展这个分区
(parted)resizepart 1
Warning: Partition /dev/sda1 is being used. Are you sure you want to continue?
# 直接输入 yes 确认
Yes/No? yes
# 输入新的结束点
# 这里输入的数值,就是上方输出中 Disk: 后方的数值
End?  [200GB]? 200GB
# 扩展完成之后退出 parted
(parted) quit

用resize2fs 工具扩展文件系统

1
$ sudo resize2fs /dev/sda1

不出意外,应该搞定了;

注意事项

扩容之前,最好用 lsof 查看以下扩容分区,把所有的读写进程都停掉,如果条件允许,umount 这个分区再扩容,更加安全

新纪元共鸣:智能的觉醒-V2

| 0 Comments

基于上一个小说扩写大师; 我将 <新纪元共鸣:智能的觉醒> 这篇文章扩写了一下;

对话的完整过程在这里

这个版本是第二版,虽然有了明显的进步,但是离一篇成熟的作品还很远,我认为目前的ChatGPT能力下,还有许多能够提升的空间;

但是,与其继续优化Promots和交互来提升,我更倾向于提升ChatGPT的能力来做这件事,我期待着GPT5的到来;

文中配图用Dalle3生成;