blog
未读本文介绍一种基本通用的方法,为博客添加一个酷炫的 AI 摘要功能.
感谢 @enjoy
大佬开源的后端代码和 @qxchuckle
大佬开源的前端代码,本文在两位大佬的代码基础上修改完成.
AI 摘要后端搭建
使用 Cloudflare Workers 搭建 AI 摘要的后端,进入 cloudflare 的 Workers
和 Pages,创建 worker,输入下面的代码,然后保存并部署
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112function addHeaders(response) { response.headers.set('Access-Contr ...
目前仍可用的镜像(随时可能失效)
12345678910111213sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{ "registry-mirrors": [ "https://docker.m.daocloud.io", "https://huecker.io", "https://dockerhub.timeweb.cloud", "https://noohub.ru" ]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker
使用 Nginx
需要有一台国外服务器, 按下面添加 Nginx 配置即可:
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152server { list ...
最近忙着写论文,苦于图表一旦有所增加或删除就要全部重新编号,就研究了下
Word 怎么对图表进行自动编号。
设置章节编号
一般来说,图表编号是以章节为分割,例如「图
1-1」代表第二章第一张图,所以为了设置每一章节的编号与章节相关联,我们先要设置章节编号。
选中我们的章节标题,将鼠标移动到
样式>标题1,在下拉菜单中选择「更新 标题 1
以匹配所选内容」,将其设置为标题1
然后点击列表,在下拉菜单中点击「定义新的多级列表」
在弹出的窗口中点击「更多」
然后设置「将级别链接到样式」为标题1,并设置好我们需要的编号样式
设置图表编号
插入一张图片,选中图片,在引用里面选择「插入题注」
标签设置为「图表」,位置选择「所选项目下方」,点击编号,勾选「包含章节号」,章节起始样式选择「标题
1 」,分隔符根据自己需要设置。
点击确认之后,可以发现在我们的图片下方已经插入了一条编号,我们还可以修改图片标注和格式。
但是如果我们设置的章节编号样式是汉字「一、二、三……」,就会出现编号是「一.1」,而不是我们想要的「1.1」。
将「一. ...
Nextra 是 Next.js 上的一个框架,可构建以内容为重点的网站。它拥有
Next.js 的所有强大功能,还能轻松创建基于 Markdown 的内容。Nextra Docs
Theme
是一款包含几乎所有现代文档网站所需内容的主题,包括顶部导航栏、搜索栏、页面侧边栏、TOC
侧边栏和其他内置组件等,使用 Nextra + vercel
可以轻松搭建起一个文档站。
部署
fork Nextra 的仓库 shuding/nextra-docs-template:
Nextra docs template (github.com)
fork 完成后,打开 vercel,切换到
Overview 页面,点击 Add New...,选择
Project。
在 Import Git Repository 中选择我们刚刚 fork
的仓库,点击 Import
接下来点击 Deploy 按钮等待部署完成即可。
部署完成后点击 Continue to Dashboard,可以看到 vercel
为我们提供的域名。
打开这个域名,即可访问我们搭 ...
Umami
是一款开源网站统计工具,可以通过插入一行前端代码来实现网站访问量统计。
本文介绍如何使用 vercel 部署 Umami。
Fork Umami 官方仓库
Umami 的官方仓库地址:umami-software/umami:
Umami is a simple, fast, privacy-focused alternative to Google
Analytics. (github.com)
点击 Fork,将该仓库 Fork 到自己的 github 账号中。
创建数据库
Umami 需要数据库,支持 postgresql、mysql 等数据库,这里我们使用
vercel 提供的 postgresql 数据库服务。
登录vercel,切换到
Storage 界面。点击 Create Database。
选择 Postgres
出现以下界面则说明创建成功,复制 postgres url
部署项目
切换到 Overview 页面,点击 Add New...,选择
Project。
在 Import Git Rep ...
Kaggle 每周有 30 个小时的免费
GPU 资源,可以使用 Kaggle 来部署 stable-diffusion 免费享受 AI
绘画服务。
部署代码
注册 Kaggle 后,打开这个链接:stable-diffusion-webui
(kaggle.com)
点击左上角 Cpoy & Edit 按钮
在打开的页面侧边栏 Session options
中按照下图所示设置
配置内网穿透
由于 Kaggle
没有提供外网访问的端口,所以需要配置内外穿透工具,这里使用 ngrok。
通过这个链接获取 authtoken Your
Authtoken - ngrok
然后将 authtoken 填入到下图所示位置
添加模型
如果需要添加模型,可以将模型的下载链接填入到下图所示位置
即可在启动后自动下载模型.
部分模型可能无法下载,可以手动上传到 kaggle
的数据集,然后在下图位置设置数据集路径
启动
点击工具栏 Run -> Run all
等待下载相关依赖和模型文件,这个过程可能需要十几分钟, ...
为了保证数据不丢失,需要定时备份数据,但是如果仅仅是将数据库备份到服务器本地,万一服务器数据损坏,依然无法恢复数据库,本文介绍一种将数据库备份到阿里云盘的方法,保障数据不会丢失。
配置阿里云盘
安装阿里云盘客户端
使用下面的一键安装脚本,安装阿里云盘客户端
Debian / Ubuntu
1sudo curl -fsSL http://file.tickstep.com/apt/pgp | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/tickstep-packages-archive-keyring.gpg > /dev/null && echo "deb [signed-by=/etc/apt/trusted.gpg.d/tickstep-packages-archive-keyring.gpg arch=amd64,arm64] http://file.tickstep.com/apt aliyunpan main" | sudo tee /etc/apt/sources.list.d/tickst ...
事情的起因是 ChatGPT-Next-Web
这一开源项目更新到 v2.12.2 版本时,默认 Claude3
的请求走官方接口,导致无法使用 one-api、new-api 等中转的 Claude3
服务。而使用 vercel
部署时,会自动拉取最新版本的代码,无法指定版本,导致无法部署旧版本的项目。
那么我们如何能够使用 vercel
部署旧版开源项目呢?其实很简单,一般开源项目都是通过 tag
来管理不同版本的代码的,我们只需要根据相应版本的 tag
创建分支,然后让 vercel 拉取指定分支的代码即可。
首先,我们 fork 该仓库并将 fork 后的仓库 clone 到本地。
然后查看所有的 tag
1git tag
接下来根据先要的 tag 来创建新分支
1git checkout tags/<tag_name> -b <branch_name>
然后推送到远程仓库
1git push origin <branch_name>
最后在 vercel 的项目 setting 中修改拉取的分支名 ...
MISC
未读
本文译自:The
origin and virtues of semicolons in programming languages |
nicole@web
在为我的编程语言 Lilac
编写语法时,我正在探索语句终止符的不同选择。 . 很有吸引力,或者 ! 。最终,我可能会做出
“无聊 “的选择,即使用 ; 或大量空白。
但我不禁要问:为什么这么多语言的语句终止符都使用分号?我找到了一些关于为什么要使用语句结束符的好文章,但很少有人讨论分号相对于其他选择的具体优点。
为了弄清分号在编程语言中的起源,我查阅了历史资料。早期的编程语言非常少,因此向前追溯并查看所有早期语言相对容易。这样,我们就能找到第一种将分号作为语句分隔符的语言:ALGOL 58。
在 ALGOL
之前,语言通常使用空白来标记语句,每条语句都在自己的行上。ALGOL
引入了语句分隔符,使程序员可以更灵活地将多条语句放在一行,或将一条语句分散到多行。遗憾的是,当我们深入探究为什么要使用分号时,答案并不多!最初的相关论文只是描述了分号是语句分隔符,却没有说明为什么要使用分号。
那我们该怎么办 ...
访问链接JETBRA.IN CHECKER |
IPFS
挑选一个存活链接,点击进入下述页面
点击左上角的jetbra.zip下载激活工具并解压
使用 vscode 或记事本打开
C:\Users\用户名\AppData\Roaming\JetBrains\产品名\产品名.exe.vmoptions文件
在文件末尾添加
-javaagent:/path/to/ja-netfilter.jar=jetbrains,保存文件
或者解压jetbra.zip后,双击scripts\install-all-users.vbs
或 scripts\install-current-users.vbs
scripts\install-all-users.vbs: 为所有用户安装
scripts\install-all-users.vbs: 为当前用户安装
选择哪个取决于安装 IDE 时选择的方式
执行此脚本会在 IDE 的 vmoptions 文件中添加
-javaagent:/path/to/ja-netfilter.jar=jetbrains,但该方法有 ...