duzhuo's-blog

学无止境

错误提示

1
2
3
4
5
6
7
8
Traceback (most recent call last):
File "/home/duzhuo/src/scraper-test/.venv/bin/sqlacodegen", line 5, in <module>
from sqlacodegen.main import main
File "/home/duzhuo/src/scraper-test/.venv/lib/python3.11/site-packages/sqlacodegen/main.py", line 11, in <module>
from sqlacodegen.codegen import CodeGenerator
File "/home/duzhuo/src/scraper-test/.venv/lib/python3.11/site-packages/sqlacodegen/codegen.py", line 9, in <module>
from inspect import ArgSpec
ImportError: cannot import name 'ArgSpec' from 'inspect' (/usr/lib/python3.11/inspect.py)

来自GPT的错误分析:您遇到的错误消息是由于 inspect.ArgSpec 类在 Python 3.11 中被移除了。ArgSpec 类在 Python 3.5 中已被弃用,并在 Python 3.11 中被移除。

当前使用的sqlacodegen版本为2.3.0.post1。是pypi上面的默认release版本。

解决方法

编辑 .venv/lib/python3.11/site-packages/sqlacodegen/codegen.py

找到from inspect import ArgSpec替换成from inspect import FullArgSpec as ArgSpec

或者升级sqlacodegen版本到3.0.0 rc3以上。来源:https://github.com/agronholm/sqlacodegen/issues/239#issuecomment-1871370700

原文链接:https://medium.com/@koutsiyrgken/the-streaming-revolution-how-ais-real-time-language-models-are-changing-the-game-d9d0beb18ae2

翻译:GPT

在人工智能和自然语言处理领域,大型语言模型已经成为焦点。这些模型由先进的算法和海量数据集驱动,能够理解和生成类似人类的文本。然而,在大型语言模型的领域中,有一个重要的区别——流式模型与非流式模型。理解这一差异至关重要,尤其是在涉及实时应用时。

大型语言模型的崛起

大型语言模型,如GPT-3及其后继者,改变了我们与技术互动的方式。它们使得聊天机器人、虚拟助手和内容生成引擎变得更加对话化、信息化和上下文感知。但是,为了有效地利用这些模型,理解流式与非流式模型的范式非常重要。

非流式大型语言模型

首先,让我们了解非流式大型语言模型。这些模型类似于传统的文本生成器,需要在生成响应之前提供整个输入。换句话说,它们将输入作为一个整体进行处理,然后生成相应的输出。这种方法适用于实时交互不是主要关注点的任务。

例如,当你在搜索引擎中输入查询时,搜索引擎通常会使用非流式模型来处理你的查询并返回搜索结果。对于大多数用户来说,接收搜索结果的延迟可以忽略不计,因此实时处理不是首要任务。

流式大型语言模型

另一方面,流式大型语言模型旨在处理连续的、实时的或互动的输入。它们以流式方式处理数据,使其能够在输入到达时实时提供响应。这使得它们非常适合低延迟和即时互动至关重要的应用。

阅读全文 »

为什么要使用松香

松香是腐蚀性低,不会腐蚀电路元件和烙铁头,其熔点为127℃,活性可持续到315℃。

松香有很高的抗氧化性能,可以在焊接过程中去除氧化膜、防止焊接面再次氧化。

购买哪种松香

Snipaste_2024-05-31_08-09-06.png

松香的使用

空心的低温焊锡丝中通常自带松香。

盒装的松香使用时可以先将烙铁头上挂上锡,然后快速沾一下固态松香,再按到需要焊接的部分就可以轻松焊接。

也可溶解在酒精中使用(我没试过,一般直接用焊油焊膏但是清洁麻烦)。

在每次使用完烙铁后也可以放到松香中烫一下进行清洁,烙铁上面多余的锡会掉下来以达到清洁目的。

阅读全文 »

什么是GSI

以下内容来自于 AOSP文档

通用系统映像 (GSI) 是指已针对 Android 设备调整配置的系统映像。GSI 被视为“纯 Android”实现,它包含未经修改的 Android 开源项目 (AOSP) 代码,任何搭载 Android 9 或更高版本的 Android 设备都能顺利运行这种代码。

GSI 用于运行 VTS 和 CTS-on-GSI 测试。为确保运行最新版 Android 的设备正确实现供应商接口,您需要将 Android 设备的系统映像替换为 GSI,然后使用供应商测试套件 (VTS) 和兼容性测试套件 (CTS) 来测试设备。

掌玩mini的简单介绍

  • 8.4英寸全贴合屏幕 1920*1200 虽然显示效果不咋地用来读读文档够用
  • Helio G99 上古soc几百块要什么自行车
  • 8+128 要什么自行车
  • sim卡sd卡
  • 有3.5mm耳机孔 单扬声器垃圾水平
  • 5000mAh 18w(实测根本没有)
  • 做工有点差边框可能有异响 论坛反馈可能有断触情况需要自行拆机垫胶带

刷入GSI

注意!!! 进行一下操作前需要刷入官方国际版20230818固件,否则可能会无限重启

需要准备的工具的链接

spflashtools 降级刷入工具

mtk_usb_all 联发科驱动

阅读全文 »

起因

前几天突然发现一台服务器掉线了…打开后台一看一整页全部都是Abuse Report,服务器也被suspend。在面板发现服务器被冻结前处于很长一段时间的满负载状态,Ticket内容显示这个ip被举报有扫描行为。

通过提交工单请求解冻之后登录,过一段时间发现tor这个用户被盗用并且启动了一个叫blitz64的服务。

后面通过删除被修改的crontab条目并重启修复,但是因为我忘了修改密码又被冻结了。^_^

修复过程因为比较匆忙没有记录,这里附上参考资料。

My VPS is under attack

Hacked Server

记一次ubuntu虚拟机被挖矿木马攻击的过程

阅读全文 »

准备

刷入底包

Snipaste_2024-02-24_12-19-51.png

打开晶晨刷机工具,设置→导入镜像。

Snipaste_2024-02-24_12-22-46.png

点击开始后准备接入线。

1000070790.jpg

关闭电源!!! 插入刷机神器,双公线一头插入盒子靠近网口的那个usb口,另一头接入电脑usb口(2.0的可能好一点)。先在烧录工具上点开始,接入线,然后打开盒子上的电源开关等待烧录工具的提示即可。

刷入Armbian镜像到U盘

阅读全文 »

当前环境

Step1 从仓库下载二进制文件并解压

1
2
3
4
5
6
cd /usr/bin
## 没有curl可以使用opkg安装或者用wget替代
curl -O https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.42/AdGuardHome_linux_arm64.tar.gz
tar -zxvf ./AdGuardHome_linux_arm64.tar.gz
rm -rf ./AdGuardHome_linux_arm64.tar.gz
cd ./AdGuardHome

Step2 启动AdGuardHome并进入后台

1
./AdGuardHome

出现类似下面的提示就代表AdGuardHome已经启动

这样大概就是成功了,现在我们的AdGuardHome还不能开机运行,需要配置守护进程。

Step3 配置开机启动

阅读全文 »

当前环境

  • Linux armbian 5.15.139-ophub #1 SMP PREEMPT Mon Nov 20 22:33:18 EST 2023 aarch64 aarch64 aarch64 GNU/Linux
  • 使用的软件源 Ubuntu Ports 23.04 luner

问题详情

1
2
3
4
5
6
7
8
root@armbian:/etc/wireguard# sudo wg-quick up wg0
[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.0.8.9/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] resolvconf -a wg0 -m 0 -x
/usr/bin/wg-quick: line 32: resolvconf: command not found
[#] ip link delete dev wg0

解决步骤

问题是由无法调用 resolvconf命令产生的 我们通过直接安装来解决 不同发行版的软件包可能不同

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
root@armbian:/etc/wireguard# sudo apt install openresolv
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package openresolv is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'openresolv' has no installation candidate
root@armbian:/etc/wireguard# resolvconf
Command 'resolvconf' not found, but can be installed with:
apt install systemd-resolved
root@armbian:/etc/wireguard# apt install systemd-resolved

...succeed

root@armbian:/etc/wireguard# systemctl start wg-quick@wg0
0%