迁移前博客目录
Linux笔记Linux系统相关 Linux文件系统 Linux环境变量 Linux设定定时程序 Linux文件操作 Linux重定向和管道命令 Linux手动编译软件 grep的用法 Linux创建账户并赋予管理员权限 Linux更改用户/组id Linux挂载命令mount详解 Linux修改MAC地址 Linux软件 终端复用神器tmux的使用 anaconda3的安装和使用 jupyter notebook的安装和使用 Linux安装JupyterLab conda打包环境并迁移 使用jupyter nbconvert后台执行jupyter notebook Slurm任务调度系统的使用 环境配置笔记Linux相关 CentOS 7升级gcc版本 yum安装软件报错lvm.LibLVMError: (0, ‘’) linux编译编译错误‘GLIBCXX_3.4.20’ not found linux升级cmake Ubantu安装深度学习环境全记录 R语言相关 R语言安装外源包编译报错:‘for’ loop initial declarations...
【实用工具】使用 tmux 保存和恢复会话
动机在日常开发中,我会使用 Tmux 来管理多个终端窗口和会话。而如果服务器重启,通常需要重新手动建立会话。tmux-resurrect 和 tmux-continuum 这两个插件的组合可以让你: tmux-resurrect: 手动保存和恢复 tmux 会话 tmux-continuum: 自动保存会话,并在 tmux 启动时自动恢复 两者结合使用,可以实现真正的”无缝工作”体验——即使系统重启,你的工作环境也能完整恢复。 安装1. 安装 TPM (Tmux Plugin Manager)首先需要安装 tmux 插件管理器: 1git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm 2. 配置 ~/.tmux.conf1vi ~/.tmux.conf 在末尾添加以下配置: 123456789101112131415161718192021222324252627# 插件列表set -g @plugin 'tmux-plugins/tpm'set -g @plugin...
【实用工具】使用 Tailscale 搭建虚拟局域网
什么是 TailscaleTailscale 是基于 WireGuard 协议构建的零配置 VPN 解决方案(zero-config VPN solution)。它可以: 自动建立点对点加密连接(peer-to-peer encrypted connection) 无需复杂的防火墙配置(firewall configuration) 支持 NAT 穿透(NAT traversal) 提供简单的设备管理界面 环境概览在我们的场景中: 公司 Windows 工作站:内网 IP 172.22.26.185,作为 Subnet Router 家中 Mac:通过 Tailscale 访问工作站和公司内网 iPhone:移动端访问 安装 Tailscale在 Windows 工作站上安装 访问 Tailscale 官网 下载 Windows 版本安装包 运行安装程序,按提示完成安装 首次运行时会要求登录,可以使用 Google、Microsoft 或 GitHub 账号 登录后,工作站会自动加入你的 Tailscale 网络(Tailscale network) 在 Mac...
【博客搭建】将博客与图床从自建 Nginx 迁移到宝塔面板的Nginx
虽然自建 Nginx 纯净高效,但为了追求可视化管理和企业级安全特性,我决定将 Web 服务迁移到 宝塔面板 Nginx! 迁移前备份宝塔面板的 Nginx 和 Ubantu 系统 apt 安装的 Nginx 会引起冲突,因此需要先卸载系统上安装的 Nginx 。首先将所有旧的 Nginx 配置文件(/etc/nginx)打包,确保数据无失: 1234# 停止旧服务并创建备份文件sudo service nginx stopmkdir ~/nginx_confsudo cp -r /etc/nginx ~/nginx_conf/ 卸载系统 Nginx使用 purge 确保移除所有旧 Nginx 文件和配置,为宝塔环境腾出干净空间: 12sudo apt purge nginx nginx-common -ysudo apt autoremove -y 部署宝塔 Nginx 与站点创建登录宝塔面板,安装 LNMP 环境,然后创建两个站点。 由于需要维持 Cloudflare Tunnel 的自定义端口,需要在宝塔的 “添加站点” 时使用...
【LLM】深入理解LLM的 Chat Template
为什么需要 Chat Template?大语言模型本质上是文本续写器(text continuation model)。它们并不天然理解”对话”这个概念,只能处理纯文本。因此,我们需要一种标准化的方式来告诉模型: 哪段文本是系统提示(system prompt) 哪段文本是用户输入(user input) 哪段文本是助手回复(assistant response) 如何处理工具调用(tool calls) Chat Template 就像是对话的格式说明书,确保训练和推理时使用完全一致的格式。 Chat Template 的结构让我们看一个来自 Qwen3-4B-Instruct 模型的真实例子: 1234567{ "chat_template": "{%- if tools %}\n {{- '<|im_start|>system\\n' }}...", "eos_token":...
【实用工具】重温vim
Vim的模式系统Vim最独特的特性是其模式系统 (modal system)。理解这些模式是掌握Vim的关键: 1. 普通模式 (Normal Mode)这是Vim的默认模式,用于导航和执行命令。在这个模式下,键盘上的每个按键都是一个命令。 2. 插入模式 (Insert Mode)在这个模式下,你可以像在传统文本编辑器中一样输入文本。按 i 进入插入模式,按 Esc 返回普通模式。 3. 可视模式 (Visual Mode)用于选择文本。按 v 进入字符可视模式,V 进入行可视模式,Ctrl+v 进入块可视模式。 4. 命令模式 (Command Mode)按 : 进入命令模式,可以执行复杂的命令,如保存文件、查找替换等。 常用操作启动和退出12345vim filename # 打开文件:q # 退出:q! # 强制退出不保存:wq # 保存并退出:w #...
【旅行】2025国庆丽水
D1 - 10月4日 9:11 G7349 → 11:47到丽水 午餐:? 导航到”龙泉市上垟镇源底村” - 车程2小时 丽水 → 龙泉源底村 住宿:龙泉市区:锻造青年公寓 - ¥276/晚 D2 - 10月5日 12:30前从龙泉出发 龙泉宝剑厂 → 云中大漈 导航至”云中大漈游客中心” - 车程约2小时 云中大漈 4pm停止入场,5:30pm清场 住宿:云和/景宁县城:景宁凤凰大酒店 - ¥513/晚 D3 - 10月6日 千佛山 → 松阳 住宿:松阳:全季酒店(丽水松阳大厦店)- ¥480/晚 D4 - 10月7日 陈家铺村 → 杨家堂村 → 松阳老城 住宿:松阳民宿 D5 - 10月8日 松阳 → 丽水城区 有时间可去古堰画乡
【实用工具】重温tmux
tmux是我在大四时接触到的终端复用工具,之前一直都是那几个新建/切换窗格的操作,最近折腾gemini被迫又学了几个,在此记录一下 tmux配置文件1vim ~/.tmux.conf 输入以下配置: 123456789101112# 启用 256 色支持set -g default-terminal "screen-256color"# 添加 True Color (24-bit color) 支持# 这会告诉 tmux,对于像 xterm-256color 这样的终端,请启用 Tc (True Color) 能力set-option -ga terminal-overrides ",xterm-256color:Tc"# mouse mode# 用鼠标点击来切换并激活不同的窗格 (pane)。# 用鼠标滚轮来上下滚动当前窗格内的内容(就像在普通的终端里一样)。# 用鼠标拖动窗格的边框来调整它们的大小。set -g mouse on 在tmux任意窗格中: 1tmux source-file...
【实用工具】Linux Clash 安装与配置
使用Gemini CLI必须要服务器有外网环境,这也是我一直想搞的,开整!Github上找了个开源项目:https://github.com/nelvko/clash-for-linux-install 下载项目12git clone --branch master --depth 1 https://gh-proxy.com/https://github.com/nelvko/clash-for-linux-install.gitcd clash-for-linux-install 修改默认配置文件 复制Mac中的配置文件到resources/config.yaml文件 Mac的文件地址为/Users/tianlejin/.config/clash/阿里加速器.yaml 1vi resources/config.yaml 安装1sudo bash...
【实用工具】Vibe Coding方案总结
最近尝试了很多 AI 工具进行 vibe coding,这几天折腾了Cursor、Claude Code,Claude Code Router,Cline,Gemini CLI,Github Copilot,Cherry Studio。感觉折腾还挺浪费时间的,其实用下来应该都能满足我现在的使用场景。在此做个总结! Cursor当我第一次在B站上看到这个工具的介绍时,简直惊为天人,感觉自己有了这玩意儿已经无敌了。前期一直在用这个,换了三个号各白嫖了14天,轻度使用了6周,从难以驾驭到开发了第一个应用,算是我 Vibe Coding的启蒙软件。后来Cursor因为计费问题风评下降。刚好我的白嫖的三个号也已经到期,一直白嫖也不是办法,充钱又不太可能😂,就没再用啦。 【对于充钱方案的评价】代码能力:强使用成本:高(充钱)/低(白嫖)折腾成本:低(充钱)/高(白嫖,每14天要重新设置rules,MCP等)推荐指数:⭐️⭐️⭐️ Claude Code + GLM 4.5Claude Code + GLM 4.5是我使用的第二套 Vibe...
【实用工具】Claude Code 安装和使用指南
Claude Code 是一个强大的命令行工具,允许开发者直接在终端中与 Claude AI 进行交互,并委托编程任务。 安装全局安装1npm install -g @anthropic-ai/claude-code 配置 GLM4.5 接入修改 ~/.bashrc 文件,添加以下环境变量: 1234export ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropicexport ANTHROPIC_AUTH_TOKEN=e9b52fc2cc26478198ac676f708ee5b9.OmzYBLQdNJhX6WUJexport ANTHROPIC_MODEL=glm-4.5export...
【LLM】ChatGPT 训练范式
Stage 1: PT(Continue PreTraining),增量预训练 使用百科类文档类数据集,用来在领域数据集上增量预训练或二次预训练,期望能 把领域知识注入给模型...
【Linux】Docker实战
前文介绍了一大堆docker的用法,眼花缭乱。本篇文章以搭建轻量级单细胞分析环境为例,在实战中更加深刻地理解docker的用法。 首先可以自己去 docker pull 一个scanpy官方的镜像作为基础镜像,后面Dokerfile中再FROM gcfntnu/scanpy:latest就会首先检查本地是否已有这个镜像,如果本地存在,则会直接使用。 Dokerfile: 12345678# 基于现有的scanpy镜像构建单细胞分析环境FROM gcfntnu/scanpy:latest# 设置工作目录WORKDIR /workspace# 设置启动容器时执行的默认命令CMD ["/bin/bash"] 启动Dokerfile的命令1234567# 从Dockerfile构建镜像,`.`为Dockerfile所在位置docker build -t sc-analysis:latest .# 使用构建好的镜像调试容器docker run -it --rm \ -v $(pwd):/workspace \ --name sc-env \ ...
【Linux】Docker的使用
核心概念:容器、镜像与仓库 镜像 (Image): Docker 镜像打包了运行应用程序所需的一切,包括代码、函数库、环境变量和配置文件。 容器 (Container): 容器是镜像运行中的实例。如果将镜像视为面向对象编程中的“类 (Class)”,容器则是这个类的“对象 (Object)”。我们可以通过一个镜像创建任意数量的容器。每个容器都在一个隔离的环境中运行,拥有自己的文件系统、网络和进程空间,但它们共享主机的操作系统内核。这使得容器非常轻量且启动迅速。 仓库 (Registry): 镜像仓库是专门用来集中存放和分发 Docker 镜像的地方。最知名的公开仓库是 Docker Hub,它托管了海量的官方和用户分享的镜像。此外,还有许多国内的镜像仓库(或称为“镜像站”),它们可以提供更快的镜像下载速度。 Docker 安装与配置1. 一键安装可以参考 Docker 官方的示例:https://get.docker.com。 下载安装脚本1curl -fsSL https://get.docker.com -o...
【实用工具】Linux安装JupyterLab
引言JupyterLab相对于jupyter notebook来说是用过之后就再也不想换回去的存在。Linux安装jupyter lab的过程如下 安装方法 pip安装 12pip install jupyterlab # 安装jupyterpip install jupyterlab-language-pack-zh-CN # 安装汉化包,需要自己选择语言 生成jupyterlab配置文件,路径为~/.jupyter/jupyter_lab_config.py 1jupyter lab --generate-config 创建并确认密码,会生成~/.jupyter/jupyter_server_config.json 1jupyter lab password 查看文件内容,如下图,复制password后的一串字符 1less ~/.jupyter/jupyter_server_config.json 修改配置文件 1vim ...
【实用工具】通过 VS Code Tunnel远程登陆服务器
引言VS Code Tunnel 功能可以让我们通过安全隧道连接到远程机器 连接程Linux服务器:使用 Code CLI 命令1. 在远程机器安装 CLI 下载12curl -Lk 'https://code.visualstudio.com/sha/download?build=stable&os=cli-alpine-x64' --output vscode_cli.tar.gztar -xf vscode_cli.tar.gz 解压后直接是一个名为code的可执行程序 创建隧道1./code tunnel 首次运行时,会提示接受服务器许可条款,或者可以使用:1./code tunnel --accept-server-license-terms 安装为服务,这样就可以后台持续运行1234567# 需要先安装 D-Bus 服务sudo apt install dbus-user-session# 启动 D-Bus 服务systemctl --user enable dbus --now# 重启系统# 启动 code cli 服务./code...
【Agent】MCP协议介绍
什么是MCP?MCP(Model Context Protocol)是由Anthropic开发的开放标准协议,旨在让AI助手能够安全、标准化地连接到各种外部数据源和工具。简单来说,MCP就像是AI助手的“工具箱”,通过这个协议,AI 大模型可以访问文件系统、数据库、API服务等外部资源,大大扩展了AI的能力边界。 MCP架构原理MCP采用客户端-服务器架构: MCP Client:通常是AI助手(如Claude Desktop、Cline、Cursor等) MCP Server:提供特定功能的服务程序 传输层:负责客户端和服务器之间的通信 MCP传输层模式1. Stdio (Standard Input/Output) 工作原理:使用标准输入/输出流进行进程间直接通信,提供最优性能且无网络开销 需要自己装mcp server的环境 配置示例1234567891011{ "mcpServers": { "github": { "command":...
【LLM】兼容OpenAI API服务使用指南
引言 在本地部署好 vLLM 之后,它会启动一个 兼容 OpenAI 格式的 API 服务。 vLLM 在内部用 FastAPI 写了一个 Web 服务,挂载了和 OpenAI API 风格一致的路由,比如: /v1/completions /v1/chat/completions /v1/models 本文将以部署在 http://172.22.215.77:6080 的服务为例,详细介绍 vLLM 的 API 路由结构、各个地址的含义,以及常用接口的调用示例。 在 http://172.22.215.77:6080/docs 可以查看由 FastAPI 自动生成的交互式 API 文档界面。 API 路由结构vLLM 的接口分为以下几类: 1. 基础运维类 GET /health → 健康检查,返回服务状态。(一般不需要 Key) GET /ping / POST /ping → Ping 测试。 GET /load → 查看服务负载信息。 GET /metrics → 导出监控指标。 GET /version → 查看服务版本。 2. Token...
【LLM】使用vLLM本地部署大模型
本文以最新的医学领域最强模型Baichuan-M2-32B为例,记录使用vLLM部署大模型并创建API服务。 创建uv环境123uv init# 添加modelscope包uv add modelscope 下载模型 去modelscope官网,找到对应模型的网页:https://www.modelscope.cn/models/baichuan-inc/Baichuan-M2-32B 12# 用modelscope下载完整模型modelscope download --model baichuan-inc/Baichuan-M2-32B 默认情况下,模型被下到了这里 1~/.cache/modelscope/hub/models/baichuan-inc/Baichuan-M2-32B 自定义模型下载位置: 1modelscope download --model baichuan-inc/Baichuan-M2-32B --local_dir /mnt/nfs_share/tlj/llms/models/ 安装环境 uv安装pytorch uv pip...
【LLM】OpenAI的response API介绍
背景 此前已经介绍过了OpenAI的 Chat Completions API 或 Assistants API。然而从 2024 年底开始,OpenAI 推出了 Responses API,并且明确这是未来的统一入口。 官方规划是: Responses API 将逐步取代 Assistants API,并可能在几年内覆盖 Chat Completions 的大部分场景。 本文将介绍新 API 与旧 API 再功能与用法伤的区别。 功能对比 对比维度 Chat Completions API / Assistants API(旧) Responses API(新) 功能覆盖 文本/多轮对话(Chat),Assistants API 支持工具调用、文件搜索等,但 API 分散 单一接口统一支持对话、多模态、工具调用、文件处理等 多模态输入 GPT-4 Turbo 等支持图片输入,但调用方式不统一 原生支持文本 + 图片 + 文件 + 语音输入 工具调用 function_call(Chat)或 Assistants API...
【LLM】OpenAI的Chat Completions API 和 Assistants API
背景Chat Completions API 和 Assistants API 都是 OpenAI 提供的大语言模型交互 API。 Chat Completions API 是 无状态对话接口 Assistants API 是 有状态智能体接口 核心定位对比 API 核心用途 特点 Chat Completions API 直接调用语言模型进行单轮或多轮对话生成 轻量、灵活、无状态(默认不保存上下文) Assistants API 构建持久化、有工具能力的“智能助手” 有状态(自动保存上下文)、支持工具和文件管理 功能对比 对比维度 Chat Completions API Assistants API 会话管理 默认无状态,需要客户端手动管理 messages 内置 threads 和 messages,自动保存会话历史 工具调用 通过 function_call 手动声明和解析 内置工具(code interpreter、file search 等)+...
【LLM】通过API调用LLM的三种方式
本文将以OpenAI接口为例,介绍调用大模型API的三种方式,从最高级的封装到最原始的http请求,依次介绍LangChain、OpenAI官方SDK、requests请求。 LangChain 封装调用代码示例: 12345678910111213import osfrom langchain_openai import ChatOpenAIllm = ChatOpenAI( temperature=0.2, model_name=os.environ.get("QWEN_MODEL_NAME"), openai_api_key=os.environ.get("QWEN_API_KEY"), openai_api_base=os.environ.get("QWEN_API_URL"), max_tokens=int(os.environ.get("MAX_TOKENS", 1000)))response =...
【LLM】LLM的量化与微调方法
引言 现代大语言模型(如 LLaMA、ChatGLM、Qwen)动辄拥有数十亿甚至上万亿参数。以 FP16 精度存储时: 模型规模 显存占用 7B 参数 ~14 GB 13B 参数 ~26 GB 70B 参数 ~140 GB 这意味着多数人无法在消费级显卡(如 RTX 3090/4090,24GB)上加载完整模型,并且推理延迟高,难以部署到边缘设备 量化(Quantization) 就是解决这一问题的关键技术:通过降低模型权重的精度(如从 16 位压缩到 4 位),大幅减少模型体积和显存需求。 模型量化的概念 量化是将高精度数值(如 FP32/FP16)转换为低精度表示(如 INT8、INT4)的过程。 常见量化方式对比 精度 每参数位数 压缩比(相比 FP32) 显存需求(以7B 模型为例) FP32 32 bit 1x 28 GB FP16 16 bit 2x 14 GB INT8 8 bit 4x 7 GB INT4 4 bit 8x 3.5 GB 4-bit...
【Agent】Agent的开发工具介绍
AI Agent的定义AI Agent是一种能够自主感知环境、制定决策并执行行动以实现特定目标的智能系统。在大模型时代,AI Agent通常由大语言模型驱动,具备以下四大核心要素: 规划(Planning):能够分解复杂任务,制定执行计划 记忆(Memory):具备短期和长期记忆能力,能够学习和积累经验 工具(Tools):能够调用外部工具和API,扩展自身能力 执行(Action):能够在环境中执行具体的行动 AI Agent开发工具分类根据功能特点、技术架构和应用场景,我们将当前主流的AI Agent开发工具分为以下几个类别: 编程框架类: LangChain、LangGraph、CrewAI、Semantic Kernel、AutoGen、Phidata 无代码/低代码平台类:Coze、Dify、星辰Agent、Trickle AI、AgentGPT、Gumloop、FlowiseAI 专业化工具类:AutoGPT、GPT Engineer 企业级解决方案类:Superagent、Reworkd AI 集成平台类:Zapier AI...
【Linux】使用 Tinyproxy 让远程服务器走本地网络访问外网
一、背景在日常运维或科研计算中,我们经常遇到远程服务器无法直接访问外网的情况,例如: 服务器所在网络环境有防火墙限制 服务器没有公网 IP 或被限制访问外部 HTTP/HTTPS 资源 此时,可以利用 本地机器的外网网络,通过 SSH 反向端口转发 + HTTP 代理(tinyproxy),让远程服务器“借道”本地网络访问互联网。 二、原理整体思路如下: 本地机器运行 tinyproxy,监听 8888 端口,提供 HTTP 代理服务 SSH 反向隧道将远程服务器的 localhost:8888 映射到本地的 8888 端口 远程服务器设置 http_proxy / https_proxy 环境变量,让 HTTP 请求通过本地代理出网 三、安装与配置1. 本地机器安装 tinyproxy1sudo apt install tinyproxy 2. 启动 tinyproxy 服务1sudo systemctl start tinyproxy 默认会监听 8888 端口,可用以下命令验证: 1sudo lsof...
【Linux】WSL2的Linux子系统网络设置
1. 启用镜像网络模式默认情况下,WSL2 的网络行为与传统虚拟机不同,其内部 IP 地址与宿主 Windows 不同,导致无法直接通过 IP 访问 WSL2 服务。 解决方法是开启镜像网络(mirrored networking),这样 Windows 和 WSL2 将共享同一个 IP 地址。 步骤:在 Windows 用户主目录(如 C:\Users\你的用户名)下新建或修改 .wslconfig 文件,添加如下配置: 1234567[wsl2]networkingMode=mirrored # 开启镜像网络dnsTunneling=true # 开启 DNS Tunneling,解决 DNS 问题autoProxy=true # 自动同步代理设置# firewall=true # 可选,启用 Windows 防火墙# [experimental]# hostAddressLoopback=true # 可选,允许 WSL2 主动访问宿主 编辑完成后,执行以下命令重启...
【Linux】使用WSL给Windows安装Linux子系统
引言如果我在十几年前跟你说「Microsoft Love Linux」,你肯定觉得我鬼打墙了,Windows 和 Linux 可一直都是竞争对手。时任微软 CEO Steve Ballmer 还曾公开宣称 Linux 是「癌症」,毕竟 Linux 作为免费、开源的 Windows 替代品,抢走了微软不少的市场份额和营收。 后来,可能是为了与 VMware 等虚拟化厂商竞争,以及发展云计算平台的需要,微软在 Hyper-V 虚拟化平台上增加了对 Linux 的原生支持,让 Windows 也可以在 Hyper-V 虚拟机中运行 Linux 系统。但是,在 Hyper-V 中运行 Linux 虚拟机需要消耗大量的系统资源,而且宿主机(Host OS)与虚拟机(Guest OS)之间的交互也比较麻烦。 什么是 WSL 2?时间来到 2017 年,事情正在起变化🤣。微软正式发布了「适用于 Linux 的 Windows 子系统」,即人们熟知的 Windows Subsystem for Linux,简称 WSL。 在 2019 年,微软又基于 Hyper-V...
【Agent】Agent的ReAct模式
引言在人工智能领域,AI Agent(智能体)是一种能够感知环境、做出决策并执行行动的系统。随着大语言模型(LLMs)的快速发展,AI Agent在自然语言处理、问答系统和交互式决策任务中的能力显著提升。然而,传统LLMs在推理(如链式思考提示,Chain-of-Thought, CoT)和行动(如调用外部工具或API)方面通常被分开研究,导致在处理需要两者结合的复杂任务时效率低下。ReAct(Reasoning and Acting,推理与行动)模式应运而生,通过将推理和行动交织在一起,使AI Agent能够更智能、更高效地完成任务。 本文将详细探讨ReAct模式的起源、其在AI Agent中的作用,以及基于ReAct的扩展和最新发展。我们将通过清晰的逻辑和示例,帮助读者理解这一技术如何推动AI Agent的进步。 ReAct模式的起源背景与动机ReAct模式最早由Shunyu Yao等人于2022年10月在论文《ReAct: Synergizing Reasoning and Acting in Language...
【实用工具】uv使用指南
引言 入职一个月,感受到科研与工程界的巨大差异,做科研时写的屎山⛰️代码主打一个能跑起来就行,写一大堆脚本,把算法实现了就行。 而到了工业界,新的集群、新的项目、新的模式,感觉自己还有很多需要学习! 今天就从现代的Python包管理器uv开始,规范自己的代码,树立软件工程的思想,重拾本科死去的前端、后端、数据库、计算机网络… 预备知识1. venv venv 是 Python 自带 的一个虚拟环境管理工具,用于创建一套独立的 Python 解释器及其包管理环境。 简单用法: python -m venv .venv会在当前目录下创建一个.venv的文件夹,里面包含里面包含独立的 Python 解释器和 pip 使用source .venv/bin/activate可以激活并使用当前环境 使用pip install在当前环境下安装包 2. pyproject.toml pyproject.toml 是 Python 官方推荐...
【旅行】2025毕业旅行之阿勒泰游记
【6.5-day1】西安-阿勒泰-布尔津县-禾木村 【住】禾木村老村【景点】金山市场、禾木村 早晨4点起床,6点抵达机场,从登上灰机🛫的那一刻起,旅行就已经开始了 前半程比较困倦,后半程到了新疆上空,见到了无比震撼的地貌:有一望无际的沙漠无人区、有沙漠中依河流而建的村庄、有一半沙漠一半农田的奇观…这些更加剧了我们对于神秘阿勒泰的向往 落地阿勒泰拿到车后,先去当地金山市场采购了卡式炉、蔬菜、鸡蛋、面条等 随后直奔禾木,因为阿禾公路没有开通(每年7月开通),只能途经布尔津。中间还发生了个小插曲,开了一百公里发现无人机落在了飞机上😭,因此只能折返回去机场再拿一趟😭😭 到达禾木已是晚上8点,但好在新疆天黑的晚,把车停在村外,进村又坐了一个小时大巴,后又转公交才到达,真不容易🥹 但当我们看到民宿小木屋和村中袅袅炊烟的那一刻,所有疲倦和劳顿都被治愈了😍 ...
【NLP】知识图谱技术简介
概念知识图谱(Knowledge Graph, KG):将知识进行结构化表示。具体来说,知识图谱是一种以实体(Entity)和关系(Relation)为核心的语义网络,通常以三元组 (head entity, relation, tail entity),即 ⟨h, r, t⟩...
【LLM】RAG技术简介
背景大语言模型在训练阶段通常基于大规模语料(如 Common Crawl、Wikipedia、Books、Code等)进行离线学习,因此它们的知识存在以下问题: 静态性:一旦模型训练完毕,知识无法动态更新。 封闭性:模型只能生成其“知道”的内容,对未见信息无法准确回答。 幻觉性(Hallucination):即使模型生成看似合理的内容,也可能完全不符合真实事实。 为此,RAG(Retrieval-Augmented Generation,检索增强生成)框架被提出,用于将外部知识库引入到生成模型推理流程中,通过“检索 → 生成”的两阶段架构,让模型“读过资料再作答”。 RAG 的优势 ✅ 知识实时更新:只需更新知识库,无需重新训练大模型。 ✅ 降低幻觉风险:模型有“证据”可依,减少无中生有。 ✅ 适用于私有数据:支持接入企业文档、数据库、网页等作为知识来源。 ✅ 可控性强:检索模块可以人为控制,比如只让模型访问合规内容。 RAG 的工作流程一个典型的 RAG 系统包含两个核心模块: 检索器(Retriever):从外部知识库(Knowledge...
【Linux】Slurm任务调度系统的使用
📌 什么是 Slurm? 在使用高性能计算(HPC)集群时,Slurm 是最常见的任务调度器之一。 Slurm(Simple Linux Utility for Resource Management)是一个开源的集群资源管理和作业调度系统,用于管理节点资源、调度任务执行,广泛用于科研计算和深度学习训练 🧰 常用命令一览 命令 作用 示例 sinfo 查看当前集群节点状态 sinfo squeue 查看正在运行或排队的任务 squeue -u $USER srun 启动一个交互式任务或直接运行命令 srun --pty bash sbatch 提交一个批处理任务脚本 sbatch job.sh scancel 取消任务 scancel 123456 📝 1. sinfo —— 查看节点状态1sinfo 这个命令可以看到所有节点的状态,如哪些是空闲(idle)、正在使用(alloc)、维护中(down)等。例如: 1234PARTITION AVAIL TIMELIMIT NODES STATE NODELISTcpu* ...
【LLM】LLM相关名词解释
大模型的分类混合推理模型(Hybrid Reasoning Model) 混合推理模型是指结合多种推理方式(如神经网络+符号推理、检索+生成)的语言模型架构,用于提升模型的准确性和复杂任务处理能力。 常见的混合推理方式: 类型 描述 示例 🧠 神经 + 符号推理 结合大模型与符号逻辑系统(如规则树、规划器) 解决数学题、写代码 🔍 检索 + 生成(RAG) 模型先从知识库中检索相关信息,再生成回答 Bing Copilot、GPT+文档上传 🪜 逐步思考 + 工具调用 模型模拟人类逐步思考(CoT),中间步骤可调用外部API、计算器、代码解释器等 AutoGPT、Toolformer、OpenAI GPT-4o 🧭 多模型协同 使用多个模型分工处理子任务,例如一个负责理解,一个负责生成 LLM Agents、多模态推理系统 🎯 举例: 你问模型“上海到北京有多少公里?” 裸模型:根据训练时看到的语料“猜”一个数字(可能错)。 混合推理模型:先调用地图接口查询,再告诉你准确答案。 Retrieval-Augmented...
【博客搭建】把博客从本地Mac mini迁移到服务器
想来想去,还是决定把博客托管到服务器上,放在 Mac mini 上毕竟不是长久之计。开整! 服务器安装必要环境 安装npm 1234567# 添加 Node.js 官方源curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -# 安装 Node.js 和 npmsudo apt install -y nodejs# 确认安装成功node -vnpm -v 安装Hexo CLI 123sudo npm install -g hexo-cli# 确认安装成功hexo -v 安装项目依赖 1234# 进入博客项目目录cd /home/txm/myblog/txm_blog# 会根据 package.json 自动安装所有依赖npm install 生成静态网页并测试本地部署123456# 生成 public/ 文件夹里的静态网站内容hexo clean; hexo g# 部署运行博客,注意这里输入实例端口hexo s -p 50005#...
【旅行】2025春关西旅行随记
本次关西旅行我们规划了9天8晚,在此流水账式地记录下~ Day1-20250415-上海浦东机场✈️关西机场【初见京都】 到达后搭乘 Hello kitty 主题列车🚄 Haruka 从机场前往京都 酒店定在五条地铁站附近。休整片刻后粗门觅食,google map上找了一家评分 4.6 的小店,品尝了前菜(包括海草,鱼罐头以及蒸茄子)、三种海鲜的刺身、汤豆腐、荞麦面。小店很精致,价格也比较不菲。两人花费6100円💴。 晚上步行至鸭川附近,赏京都夜景,又逛了逛便利店,购买日本特产😝 ...
【博客搭建】Mac mini + Cloudflare Tunnel 搭建免费HTTPS图床
📌动机此前用的是七牛云的图床方案, 折腾好久之后,发现这种方案存在问题: 存储空间绑定源站域名,产生的流量是计费的。(计费规则) 存储空间绑定CDN域名,需要备案,备案有需要云服务器,ip等等,手续也十分麻烦 这个方案只能用http,会导致常规状态下图片基本无法显示。想用https的话,有以下限制: 需要ssl证书(这个好解决,可以申请免费证书) 不管国内还是海外,https流量都要收费。(计费规则) 国内https需要域名备案。 🚀新方案:Mac mini + Cloudflare Tunnel 搭建免费HTTPS图床1️⃣ 在本地搭建图片静态服务器(Nginx)12brew install nginxmkdir -p ~/Desktop/blog-imgs # 创建博客图片的文件夹 编辑配置文件 /opt/homebrew/etc/nginx/nginx.conf,添加或修改以下内容: 12345678910server { listen 8080; server_name localhost; location...
【实用工具】使用ImageMagick压缩图片
在整理博客配图、摄影照片或网页图片素材时,图片太大不仅拖慢加载速度,还会占用大量空间。今天介绍一个超级实用的命令行工具:ImageMagick,可以快速、批量压缩或缩放图片 🧰 安装 ImageMagick(macOS)1brew install imagemagick ✂️ 操作示例将图片质量到 50%1234# MacOSmagick input.jpg -quality 50 output.jpg# Ubantu的旧版命令是mogrifymogrify 202505_front.JPEG -quality 30 202505_front.JPEG 将/Users/tianlejin/Desktop/2025-03里的所有图片都压缩到原来质量的50%假设你有一堆 .JPEG 图片在目录 /Users/tianlejin/Desktop/test/,可以这样压缩并输出到 resized 子文件夹: 1234# MacOSmagick mogrify -quality 50...
【实用工具】使用exiftool批量按拍摄时间重命名照片
在整理照片时,通常会遇到一堆混乱命名的文件,例如 IMG_1234.JPG、DSC0001.JPG……我们可以用一行命令,就把所有照片按「拍摄时间」重命名。 本文介绍一个强大却小巧的命令行工具:ExifTool,让你的照片重命名井井有条~ 💡 什么是 ExifTool?exiftool 是一个跨平台的命令行工具,可以读取和写入媒体文件中的元数据(如照片的拍摄时间、设备信息、GPS 等)。我们可以用它从 EXIF 中提取拍摄时间并重命名文件。 🛠 安装 ExifTool(以 macOS 为例)官网下载:https://exiftool.org/ 🌰 例子:将2025-03文件夹内的所有文件按时间戳重命名,精确到秒以下命令将当前目录下的所有 JPG 文件,重命名为拍摄时间的格式,例如 20250312_153045.jpg: 12cd /Users/tianlejin/Desktop/2025-03exiftool '-FileName<CreateDate' -d "%Y%m%d_%H%M%S%%-c.%%e"...
【博客搭建】Hexo博客的type字段
在使用 Hexo 搭建博客时,除了常规的文章(post),我们还常常需要创建各种独立页面,例如“关于我”、“归档”、“标签”、“分类”等。这些页面背后都有一个核心概念 —— type。本篇文章将全面梳理 Hexo 页面中 type 的作用与常见类型,帮助你更好地定制属于自己的博客结构。 🧠 什么是 type?在 Hexo 中,每个页面(Page)都会有一个 type 属性,用于告诉 Hexo 或主题如何渲染这个页面。它相当于是页面的“身份标签”。 如果不指定 type,Hexo 默认使用 page 或 post 类型进行处理。 📦 常见的 type 类型 type 值 用途说明 是否自动识别 常见路径 posts 默认值,表示这是文章(Post) ✅ 是 source/_posts/*.md page 普通独立页面,如 about、links 等 ✅ 是 source/about/index.md 等 tags 标签页面,展示所有标签和相关文章 ❌...
【博客搭建】绑定自定义域名
前提条件 已成功搭建 Hexo 博客,并部署到 GitHub Pages,例如 https://telogen.github.io 已在域名注册商(如阿里云)购买域名,例如 tianlejin.top 在 GitHub 仓库设置域名 打开博客的github仓库(通常是 telogen.github.io) 点击 Settings > Pages 在 Custom domain 中填写你的域名: 1tianlejin.top 点击保存(Save),此时仓库根目录会自动生成一个 CNAME 文件,内容为: 1tianlejin.top 配置域名解析(阿里云为例)登录 阿里云控制台 进入域名解析设置,为主域名添加以下 A记录: 记录类型 主机记录 记录值 说明 A @ 185.199.108.153 GitHub Pages IP A @ 185.199.109.153 GitHub Pages IP A @ 185.199.110.153 GitHub Pages IP A @ 185.199.111.153 GitHub Pages...
【博客搭建】Hexo主题及其他个性化设置
🎨 更换主题安装主题(以 Butterfly 为例)1git clone -b master https://gitee.com/immyw/hexo-theme-butterfly.git themes/butterfly 修改主配置文件 _config.yml:1theme: butterfly _config.yml中的其他配置可以一并进行修改,可以把文件内容丢给AI让其帮忙解释 安装依赖(Butterfly 需要)1sudo npm install hexo-renderer-pug hexo-renderer-stylus --save ⚙️ butterfly主题设置(在 themes/butterfly/_config.yml 中完成)导航栏设置12345menu: 首页: / || fas fa-home 博客: /archives/ || fas fa-archive 摄影: /photography/ || fas fa-camera 关于我: /about/ || fas fa-user 还要使用hexo...
【博客搭建】Hexo项目文件说明
在使用 Hexo 搭建博客时,我们会看到项目目录下自动生成了很多文件和文件夹。理解它们的作用有助于后续的维护与定制。这篇笔记记录一下各个核心文件/文件夹的作用。 🗂️ Hexo 项目结构说明12345678910your-blog/├── _config.yml├── package.json├── scaffolds/├── source/│ ├── _posts/│ └── ...(你自定义的静态资源和页面)├── themes/├── public/├── node_modules/ 📄 _config.yml Hexo 的主配置文件 设置站点标题、语言、部署方式、主题名等信息 📄 package.json Node.js 的项目配置文件 记录 Hexo 的依赖插件与版本信息 📁 scaffolds/ 存放文章模板,如 post.md, page.md, draft.md 创建文章或页面时会以此为基础 📁...
【博客搭建】Hexo的安装和博客初始化
什么是 Hexo?Hexo 是一个快速、简洁、高效的静态博客框架,适合喜欢 Markdown 的人。 安装步骤(基于M4 Mac mini)1. 下载Node.js并安装https://nodejs.org/zh-cn/download 2. 初始化git12345678910# 设置全局 Git 用户名和邮箱git config --global user.name "github账户名称"git config --global user.email "github账户邮箱"# 生成 SSH 密钥ssh-keygen -t rsa -C "github账户邮箱"# 显示 SSH 公钥cat /Users/tianlejin/.ssh/id_rsa.pub# 进入 Settings 页面,选择左边栏的 SSH and GPG keys,点击 New SSH key,将以上输出复制到github网页端的SSH key 3. 安装hexo12# sudo npm install -g [email protected] npm...