Erishen
-
基于 Electron + React + Vite 的 AI UI 生成工作台,用自然语言描述需求,LLM 转为声明式 UI spec 并编译成真实 React 组件实时预览
起点 我一开始以为,AI UI 生成的问题,是「如何让 LLM 写出更好的 React」。 后来发现,真正的问题恰恰是:不应该让 LLM 直接写 React。 SpecPulse 最终走了一条不同的路径: SpecPulse 是我为验证这条路径搭的动手项目:用自然语言描述需求,LLM 把它转成一份声明式的 UI spec一棵 JSON …阅读全文 →
-
分布式订单系统演进:Spring Boot + React 如何从单体到抗住高并发
spring-order 是一个 Spring Boot + React 的订单系统演示项目。它沿 P0→P4 逐步演进,用 @Version 乐观锁、Redis 分布式锁、Kafka 事务 Outbox、Resilience4j 与 nginx + Prometheus/Grafana 可观测性,逐层解决高并发下的超卖、重复下单与数据一…阅读全文 →
-
cicdkit 工程实践:一个用纯 Go 标准库打造的本地 CI/CD 单二进制平台
一台 MacBook,桌面干净,没有 Jenkins 的托盘图标,没有 GitHub Actions 的公网 runner 客户端,也没有 PostgreSQL 或 MySQL 的守护进程。打开浏览器,点一个按钮——镜像构建、推送、k3s 发布、服务探测——一条链路在几分钟内跑完。所有状态存在本地一阅读全文 →
-
Text2SQL 确定性管线 + ReAct 双路径:datapulse AI BI 工作台架构解析
Text2SQL 确定性管线 + ReAct 双路径:datapulse AI BI 工作台架构解析 引言:AI BI 的痛点与双路径设计的起点 用 LLM 做 BI 分析,听起来很诱人,做起来全是坑。开发者最常遇到的三个问题几乎一模一样: 幻觉。 LLM 在数据库没有数据的时候,依然会自信地编出一个数字。 SQL 不可信。 即使生成了查…阅读全文 →
-
纯本地只读视频索引:blake3 内容去重与 Range 预览,我如何做到绝不改动一个原文件
从「一坨文件」到「只读视频索引」:一个本地优先的工程实践 速览 本地优先的只读索引:扫描多目录视频,构建可查询、可去重的媒体数据集,绝不修改原文件。 内容去重:blake3 精确哈希+ 首尾 1MB 快速哈希双模式; 指纹增量扫描避免全量重扫。 安全预览:Range 请求原生播放 + 签名短时 tokenid …阅读全文 →
-
本地优先的 Markdown 索引:从零依赖 Rust 到只读安全的设计抉择
本地优先的 Markdown 索引:从零依赖 Rust 到只读安全的设计抉择 引言:一个本地优先者的痛点 作为长期践行本地优先哲学的开发者,我始终相信:数据应当由自己完全掌控,工具应当简单可靠,且不应依赖不可控的外部服务。但在日常的 Markdown 文档管理中,一个棘手的问题始终困扰着我。 我的文档散落在多个目…阅读全文 →
-
本地照片索引:4 个设计决策,把”文件堆”变成可查询的数据集
决策一:增量扫描——为什么不全量重扫 直觉做法 最朴素的想法:每次扫描时,遍历所有图片,重新解码、计算 blake3 哈希、计算 aHash、分析元数据,然后写入数据库。 痛点 我的照片库有 10 万+ 张图。全量解码和哈希需要约 8 分钟。如果我只拍了一张新照片,仍然要等 8 分钟才能看到结果。这在用户体验上是不可接受的。 实际做法 我…阅读全文 →
-
从 SQLite 到 LLM 重排:一个 Rust RAG 服务的七层设计决策
做本地 RAG 的开发者,大概都经历过这样的折腾:想跑一个纯本地的文档检索服务,结果发现内存态索引重启就丢,得接持久化向量库;向量检索搞定了,又得配 Ollama 做重排;再后来发现检索质量不稳定,还得上 pgvector……最后部署的时候,容器镜像大得离谱。阅读全文 →
-
AutoGen PSE 架构解析:用 Planner/Specialist/Evaluator 模式构建可靠的多智能体协作系统
PSE 模式的灵感来自软件工程中的角色分工: Planner → 相当于 Tech Lead:拆解需求、制定计划、分配任务、做交付决策。不做具体执行。 Specialist → 相当于 Developer:负责编写具体的交付物。只执行被分配的任务。 Evaluator → 相当于 Code Reviewer:…阅读全文 →
-
从 RBAC 鉴权长成的小型微服务系统:Spring Cloud + 零依赖 JWT + CRM + 审计 + BFF
架构总览 7 个后端服务 + 1 个 Next.js 前端: 服务 端口 职责 eureka-server 8761 服务注册中心 config-server 8888 配置中心 gateway-service 4100 PEP:JWT 校验 + 权限裁决 + 审计旁路 + trace ID auth-se…阅读全文 →