自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tiantiantbtb的博客

阿米阿米阿乌

  • 博客(825)
  • 资源 (1)
  • 问答 (3)
  • 收藏
  • 关注

原创 gcc处理源码编译过程

gcc -E hello.c -o hello.i # 等价于 gcc -E hello.c > hello.i 如果gcc -E hello.c 会在控制台输出预处理的文本。gcc hello.o -o hello # Windows 下写 -o hello.exe。# 1 预处理:展开 #include、宏替换、去注释 hello.c -> hello.i。# 3 汇编:汇编翻译成机器码目标文件 hello.s -> hello.o。

2026-09-11 13:24:17 198

原创 一问一答、记忆、工具 —— 大模型对话是怎么回事

历史包袱 —— 早年可以要求模型一次给多个候选答案。

2026-08-21 02:03:14 337

原创 人人都可以理解训练模型-机器学习

训练 = 让程序反复试错,把公式里的未知数自己算出来。传统编程:你写好逻辑,机器执行。训练模型:你给出输入和期望输出,机器自己反推出中间的逻辑。剩下所有的名词——梯度、反向传播、Transformer、注意力机制——都是在这个骨架上加复杂度,没有一个跳出了「猜一个数,看差多少,往对的方向挪一点,重复」这个循环。

2026-08-10 04:44:40 376

原创 A社区正式上线

一直想自己开发一个技术论坛,工作之余,历时4月,初步完成,名字以女儿的口头禅命名Amamaw,就叫A社吧。

2026-07-12 09:35:56 270

原创 CF人机验证实现

整体流程Vue 显示验证框→ 验证成功后得到 token→ Vue 将用户名、密码、token 一起提交给 Spring Boot→ Spring Boot 调 Cloudflare 验证 token→ 验证通过后再校验用户名和密码,后端必须调用 Cloudflare 的siteverify接口,否则可以绕过。

2026-07-10 10:41:02 221

原创 CF的邮箱路由收信转发

那么你就可以拥有admin@xxx.com邮箱,但是这个邮箱并非真实存在,他好比一个路由,是用来收信转发的,也就是说你必须要有一个真实的邮箱,当有人给admin@xxx.com发邮件时会转发到你的真实邮箱,但是admin@xxx.com 不能用来收信。- ✅ 收信/转发:你可以建 admin@xxx.com,把发到它的邮件自动转发到你的真实信箱(比如 556677@qq.com)。CF 会自动帮你加 MX + SPF 记录。什么叫路由收信转发,就是例如 xxx.com是你的域名,挂载CF上面。

2026-07-09 16:27:42 242

原创 Ubuntu中3种定时任务

cron # 最常用,周期性执行任务systemd timer # 更现代,适合服务级定时任务at # 只执行一次的定时任务。

2026-06-12 16:39:30 432

原创 SpringBoot生产级日志配置

适用:Spring Boot 3.x(Java 17)、单体应用、日志落服务器文件。lombok——。

2026-06-08 15:37:00 466

原创 SpringBoot配置绑定到Bean的几种方式

在启动类或者配置类加@ConfigurationPropertiesScan(basePackages="com.xxx.xxx.xxx")//@Configuration 用@Configuration也可以 也会被Spring管理。还有一种方式可以去掉Bean上面的 @Component或者@Configuration。还有一种用法,也可以去掉Bean上面的@Component或者@Configuration。@Component//类必须被Spring管理。演示类中含有对象的赋值。

2026-06-06 04:33:47 300

原创 SpringBoot关于外部化配置

classpath:resources/application.yml 和resources/config/application.yml config中的优先级更高。file:./application.yml 就是和.jar包同级 和./config/application.yml 也是config中的优先级最高。如果都有 外部配置高于内部配置 系统环境变量高于所有application.yml 命令行参数覆盖一切。一些常用的命令行参数。

2026-06-06 01:32:17 548

原创 自定义starter 可以导入SpringBoot直接使用

org.springframework.boot.autoconfigure.AutoConfiguration.imports文件。resources下创建 META-INF 再创建spring包。mvn clean install 打包。在其他SpringBoot中引入。自定义一个空的Maven项目。

2026-06-05 16:56:14 92

原创 SpringBoot 3.5.4 整合Quartz 定时任务

Scheduled适合简单固定定时任务,不能动态新增,不能暂停/恢复定时任务,不能动态删除定时任务下面是一个简单的SpringBoot+Quartz示例依赖写个JOB配置 JobDetail 和 Trigger上面代码就是固定5秒执行一次System.out.println("Quartz 定时任务执行:" + LocalDateTime.now());和简单定时任务没有什么区别如果希望JOB中注入Service定时执行Service中的任务。

2026-06-05 15:21:17 218

原创 SpringBoot3.5.4 AOP环绕通知使用

默认AOP是同步的,如果你希望异步。注解的AOP配置 环绕通知。

2026-06-04 15:56:59 233

原创 Ubuntu命令练习

cp a.txt b.txt #把a.txt复制一份并改名为b.txt。chmod +x xxx.txt # 给所有用户(属主、组、其他)添加执行权限。# 复制目录 -a (包含-r) 并会把其他权限 软连接复制。cd /home/hrui #进入/home/hrui目录。ssh -L 本地端口1:远程地址1:远程端口1 \。-L 本地端口2:远程地址2:远程端口2 \。-L 本地端口3:远程地址3:远程端口3 \。# 同时给属主和组添加执行权限(去掉其他)

2026-05-16 07:56:20 466

原创 FastAPI示例

【代码】FastAPI示例。

2026-04-28 04:07:02 260

原创 python解释器安装

关于具体悬着64-bit 还是32 还是ARM64 可以查看电脑属性。简单说就是让你的windows可以执行python命令。下载双击安装 添加到环境变量。

2026-04-27 10:07:17 82

原创 Tool / MCP / Skill / CLI

"input": {"content": "你是城市查询助手。可用工具:getCityById。错误处理规则:ok=false 时按 hint 执行。},"content": "1号城市是哪里"},"tools": ["description": "按 id 查城市信息。id 为正整数,通过 listCities 获取。","id": {"description": "城市 id"},不管应用侧怎么包装,最终发给 LLM 的 JSON 只有一种结构"tools": [

2026-04-22 10:48:45 721

原创 为什么重写 ChatMemoryRepository 而不重写 Advisor

/ 审计日志@Component));// ...这种场景你动 Advisor 是正确的——审计不是存储问题。"存到哪里"→ Repository 的事,你决定。"什么时候做什么"→ Advisor 的事,官方多半已经写好。两者各守边界,才能做到"换存储"和"加拦截"互不影响。

2026-04-20 08:51:14 536

原创 ChatModel 与 ChatClient 关系完整指南

本文所有 API 签名 / 类关系 / 方法列表均通过javap反编译 Spring AI 1.1.4 jar 实际验证。

2026-04-20 01:27:27 550

原创 Spring AI Advisors & Chat Memory 完整指南

场景做法审计日志入库实现,在beforeafter钩子里把 userId / prompt / response / token 写 DB内容脱敏对模型输出做正则替换(手机号 →短期缓存相同 prompt 直接返回缓存结果(省 token 和延迟)限流按 userId 限制 QPS 或 token 用量指标采集接 Micrometer,输出到 Prometheus。

2026-04-20 01:03:01 935

原创 Maven 父子工程 SpringBoot 多模块

在父工程添加依赖依赖统一版本,子模块引入即可。

2026-04-18 20:04:29 244

原创 OpenClaw 主程序 2026.4.5 升到 2026.4.9

影响的是 shell completion/cache,不影响核心 gateway 运行。失败目前更像是 4.9 CLI 补全流程误碰了缺失的。

2026-04-10 09:19:04 283

原创 Docker 快速通关

Docker 可以帮助我们完成应用的运行(run)构建(build)和分享(share)。把应用和环境打包起来让应用在不同机器上尽量保持一致方便部署、迁移和分发app1app2app1:宿主机 88 端口映射到容器内部 80app2:宿主机 99 端口映射到容器内部 80如果使用 Docker 默认网络,那么容器内部的app1想访问app2curl http://宿主机IP:99这就很绕,明明两个容器就在同一台机器里,却非要先绕到宿主机端口再访问。

2026-04-03 13:15:09 538

原创 从 Python 和 Node.js 的流行看 Java 的真实位置

Python 火,是因为 AI 火。Node.js 火,是因为前后端同语言方便。Java 没没落,只是更适合企业级、稳定、长期维护的场景。如果你是 Java 程序员,不用焦虑。主业把 Java 打牢,顺手学一点 Python,了解一点 Node.js,就够了。Python 火,是因为 AI 火。Node.js 火,是因为前后端同语言方便。Java 没有没落,只是在企业级、稳定性、长期维护这些场景里继续发挥作用。Java 不是被淘汰了,而是从“万能默认选项”变成了“企业级主力选项”。

2026-04-01 16:36:52 326

原创 Python 环境安装与 Linux 控制入门

我会尽量用 Java 程序员容易理解的方式来讲。

2026-04-01 16:00:51 479

原创 Linux 与 Shell 自动化运维基础知识记录

Shell(壳)是一个命令行解释器,它是用户与操作系统内核进行交互的接口。你输入命令Shell 接收并解释这些命令Shell 调用操作系统内核执行最后返回执行结果Shell 就像是你和 Linux 之间的“翻译员”。whatis ls意思是:查看ls是做什么的。

2026-04-01 14:18:55 484

原创 Linux 中 `source` 和 `systemctl daemon-reload` 的区别与踩坑点

在 Linux 里,source和都是“重新加载”的意思,但它们作用的对象完全不同。source这两个命令很常见,也很容易混。

2026-04-01 13:45:55 592

原创 Ubuntu 22.04 中 cron 和 systemd timer 的区别与使用

定时重启 nginx。这很适合拿来理解 systemd timer,因为它能很直观看到“service + timer”的组合。

2026-03-31 23:54:22 942

原创 微信无法登录openclaw恢复操作

本文记录 OpenClaw 中插件在登录态丢失、微信链接不可用、扫码登录失败时的恢复流程。2026-03-23 版本 OpenClaw 更新后曾出现微信插件失效,但在 2026-03-24 版本中已恢复。本文目标是先判断问题类型,再选择最小影响的修复方式,避免不必要的全量重装。

2026-03-27 23:29:28 718

原创 Vibe Coding

Vibe Coding(氛围编程)由 OpenAI 联合创始人 Andrej Karpathy 在 2025 年 2 月提出。不写代码,只描述需求AI 生成代码你看一眼觉得差不多就行“Vibe” = 感觉、氛围。意思是凭感觉编程,不再逐行写代码、逐行审查。

2026-03-27 15:52:41 1028

原创 Agent Skill 的两种实现方式

文章摘要: Agent系统中Skill的两种实现方式: Skill作为Tool暴露给模型(常见方式) 模型单次调用,内部封装多步骤逻辑(如搜索、生成、审校等) 遵循标准Tool Calling协议 Skill作为子Agent(Multi-Agent系统) 每个Skill是独立Agent,拥有自己的提示词和工具 可自主进行多轮Tool Calling直至任务完成 核心区别在于执行粒度: Tool模式:单次调用+内部封装 Agent模式:自主决策+多轮交互 本质都是对复杂能力的封装,前者适合简单场景,后者适合复

2026-03-27 15:36:29 978

原创 一次讲清楚Tool Calling和MCP

主流 Agent 框架(Spring AI、LangChain、Dify、OpenClaw 等)通常采用预定义工具模式(Predefined Tools)。开发者提前实现工具函数↓注册到 Agent 框架↓模型只负责选择调用哪个工具↓框架执行真实代码工具文件作用read读取文件write写入文件exec执行 Shell 命令应用代码补丁MCP ToolMCP 协议动态扩展工具用户提问↓Agent 合并 [内置工具 + MCP 工具]↓发送给模型↓。

2026-03-27 09:29:15 1455

原创 Ubuntu 22.04 高级运维与架构规范手册

Unit][Service]# 安全加固[Install]systemctl daemon-reload # 重新加载 unit 文件(每次改完必须执行)systemctl enable myapp # 开机自启systemctl start myapp # 启动systemctl status myapp # 查看状态journalctl -u myapp -f # 实时看日志journalctl -u myapp --since "1 hour ago" # 看最近1小时日志。

2026-03-27 01:20:29 487

原创 Spring Boot 中如何自定义一个 Starter

属性类 → 自动配置类 → 注册文件完成这三步,就可以实现一个完整的 Spring Boot Starter。

2026-03-26 23:49:56 532

原创 一次完整的 Agent 调用链路:从浏览器到本地工具执行

Agent 需要调用本地工具,在服务器上创建这个文件。本文记录的完整执行链路。

2026-03-26 15:29:55 760

原创 Agent Tool Calling 协议说明(OpenAI 兼容)

主流 Agent 框架(Spring AI、LangChain、Dify、OpenClaw 等)通常采用预定义工具模式(Predefined Tools)。开发者提前实现工具函数↓注册到 Agent 框架↓模型只负责选择调用哪个工具↓框架执行真实代码工具文件作用read读取文件write写入文件exec执行 Shell 命令应用代码补丁MCP ToolMCP 协议动态扩展工具用户提问↓Agent 合并 [内置工具 + MCP 工具]↓发送给模型↓。

2026-03-26 14:45:54 708

原创 OpenClaw 版本更新与回退运维记录

更新时间:2026-03-24用于生产环境运维参考。

2026-03-24 13:37:19 821

原创 self‑improving‑agent 安装与配置指南(OpenClaw)

长期记忆错误反思用户偏好学习持续进化AI → 反思 → 学习 → 改进。

2026-03-24 10:08:51 1303

原创 OpenClaw 连接微信最新教程(2026)

确认登录后,微信账号就会连接到 OpenClaw。如果 OpenClaw 回复消息,说明连接成功。此时可以直接在微信中与 OpenClaw 对话。OpenClaw 会直接在微信中回复。命令执行完成后,终端会显示二维码。扫描 VPS 终端中的二维码。否则无法使用该方式登录。

2026-03-24 08:27:16 1406 3

原创 agent-browser 安装笔记(OpenClaw)

【代码】agent-browser 安装笔记(OpenClaw)

2026-03-23 16:27:38 1216

oracle数据库win32 win64 linux64

win32 win64 linux64

2022-04-10

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除