- 博客(96)
- 收藏
- 关注
原创 langchain应用
本文系统介绍了大模型应用开发的四大场景(Prompt、Agent、RAG、Fine-tuning)及其选择策略,重点剖析了RAG和Agent架构的实现原理与关键技术。在RAG部分详细讲解了文件解析、切割、知识检索和重排序等核心环节;Agent部分则深入解析了其五大核心组件(LLM、Memory、Tools、Planning、Action)的协同机制。文章还全面阐述了LangChain框架的核心价值与组件体系,包括统一接口、链式调用、记忆管理等特性,并提供了从环境搭建到实际开发的完整指南。
2026-03-21 14:20:31
457
原创 Prompt概述
摘要:提示词(prompt)是引导AI模型输出的关键输入内容,包括系统提示词(定义角色规则)、用户提示词(用户输入)和上下文提示词(历史记忆等)。优质提示词需明确角色、任务、背景、约束和输出格式五要素。提示词设计质量直接影响模型输出效果,其安全风险如提示词注入也需防范。通过优化提示词可更好发挥通用大模型的潜力,而不需改动模型本身。
2026-01-28 11:51:43
357
原创 LangChain概述
LangChain是一个大模型应用编排框架,解决Prompt管理、流程编排和能力增强三大问题。核心概念包括:LLM封装、Prompt参数化、固定流程编排(Chain)、知识检索(RAG)和动态决策(Agent)。通过统一接口封装模型,支持Prompt复用和变量注入;Chain实现多步骤推理;RAG通过向量检索引入外部知识解决模型幻觉;Agent则支持动态工具调用。典型应用场景:固定业务流程用Chain,知识问答用RAG,复杂决策用Agent。完整应用体系从基础能力(LLM+Prompt)到多步骤推理(Cha
2026-01-27 09:58:22
781
原创 Spring AI概述
本文系统介绍了AI大模型的应用开发技术。首先梳理了AI发展的三个阶段,重点解析了大语言模型(LLM)的本质是基于Transformer架构的概率推断系统。其次详细阐述了四种大模型应用技术架构,包括Prompt问答、Agent+Function Calling、RAG和Fine-tuning。随后重点讲解了SpringAI框架在Java生态中的实现,包括对话机器人开发、会话记忆管理和提示词工程等关键技术。最后深入探讨了RAG(检索增强生成)技术,包括向量模型配置、相似度计算工具类实现以及完整的RAG测试流程。
2026-01-27 09:54:08
552
1
原创 ELK 全链路核心知识
ELK(Elasticsearch+Logstash+Kibana)是一套完整的日志管理解决方案,旨在解决分布式系统中日志分散、格式不统一、难以分析和可视化的问题。
2025-12-31 11:37:13
968
原创 DDD(领域驱动设计)基础知识体系
本文介绍了领域驱动设计(DDD)的核心概念与方法论。DDD是一种关注复杂业务领域的软件开发思想,通过战略设计(领域、子域、界限上下文)和战术设计(实体、值对象、聚合、领域服务等构建模块)来组织系统架构。重点阐述了8个关键战术设计模式:实体(唯一标识的可变对象)、值对象(不可变的属性集合)、聚合(一致性边界)、聚合根(访问入口)、领域服务(跨聚合操作)、领域事件(业务状态变化)、仓储(持久化抽象)和工厂(复杂对象创建)。这些模式共同构成了DDD的核心实践框架,帮助开发者构建高内聚、低耦合的业务模型。
2025-11-17 15:08:15
1047
原创 Mysql多表查询
从左表中取出每一条记录,去右表中与所有的记录进行匹配: 匹配必须是某个条件在左表中与右表中相同最终才会保留结果,否则不保留.:左表 [inner] join 右表 on 左表.字段 = 右表.字段;条件字段就是代表相同的业务含义(如my_student.c_id和my_class.id): 没有on之后的内容,这个时候系统会保留所有结果。
2025-11-17 10:26:19
568
原创 Java内存模型——JMM
JMM(Java内存模型)是Java定义的并发编程规范,用于解决多线程环境下的数据一致性问题。它通过抽象主内存(存储共享变量)和线程本地内存(存储变量副本)的概念,规定了线程间通信的八种同步操作(如read/write等)。JMM保证了三大特性:原子性(基础操作)、可见性(volatile/synchronized实现修改同步)和有序性(禁止指令重排序)。happen-before原则进一步确保了操作顺序。JMM的跨平台设计屏蔽了系统差异,通过内存屏障等技术实现线程安全,既简化了多线程编程,又增强了程序可移
2025-09-26 15:51:56
715
原创 Java虚拟机——JVM
JVM是Java虚拟机,负责将字节码转换为机器码以屏蔽操作系统差异。类加载器采用双亲委派机制动态加载类。JVM运行时数据区包括:程序计数器(线程执行指示器)、方法区(存储类信息、常量等,JDK8后改为元空间)、栈(线程私有,存储方法调用和局部变量)以及堆(存放对象实例,分为新生代、老年代)。本地方法栈用于处理Native方法调用。堆内存不足会引发OOM错误,垃圾回收主要在新生代和老年代进行。
2025-09-20 15:42:41
901
原创 分布式锁详解
分布式锁是协调分布式系统互斥访问共享资源的机制,需满足互斥、高可用和可重入等基本条件。其应用场景包括防止超卖、避免重复处理任务和保证数据一致性等。常见实现方式包括:基于MySQL的悲观锁/乐观锁(性能较差)、基于Redis的SETNX和Redission(性能高,支持锁续期和可重入)以及基于ZooKeeper的临时顺序节点(可靠性最高,利用监听机制)。三者对比中,ZooKeeper的可靠性最佳但实现复杂,Redis性能最优但需处理续期问题,数据库方案则简单但性能最差。选择时需根据实际场景权衡性能与可靠性。
2025-09-11 15:57:40
1034
原创 背包问题详解
本文介绍了背包问题的三种经典模型(0/1背包、完全背包、多重背包)及其解法。0/1背包通过动态规划解决,核心是状态转移和空间优化;完全背包采用正序循环实现无限次使用;多重背包使用二进制优化。文章以"数组平分"和"零钱兑换"为例,详细解析了0/1背包和完全背包的实现思路,包括状态定义、转移方程、初始化和剪枝优化,并提供了对应的Java代码实现。两种问题都通过将原问题转化为背包问题,利用动态规划高效求解。
2025-09-11 11:13:42
316
原创 Mysql索引
摘要:索引是数据库优化查询性能的数据结构,类似书籍目录,能快速定位数据。索引可提高查询效率、优化排序分组、实现唯一约束。主要类型包括主键索引、唯一索引、普通索引、联合索引等。适用场景:有唯一性限制的字段、常用作查询条件的字段、排序分组字段。不适用场景:数据量少、字段重复值多、频繁更新的字段。使用EXPLAIN分析SQL执行计划可优化查询。常见索引失效情况包括模糊查询、使用函数、表达式计算、类型转换、违反最左匹配原则、OR条件组合不当等。
2025-08-22 11:25:37
769
原创 Mysql事务特性
摘要:MySQL事务的四大特性(ACID)通过不同机制实现:原子性由undolog保证,记录操作前的数据用于回滚;持久性通过redolog实现,采用顺序写提高性能;隔离性通过MVCC或锁机制实现,解决脏读、不可重复读和幻读问题;一致性由前三者共同保证。MySQL默认自动提交事务,异常时通过undolog回滚。redolog采用WAL技术,先写日志再异步刷盘。隔离级别包括读未提交、读已提交、可重复读(默认)和串行化,通过ReadView控制事务可见性。MVCC利用版本链管理并发事务的数据访问。
2025-08-21 14:54:59
783
原创 Java—注解
本文介绍了Java注解的基本概念和应用实现。注解是Java5引入的特殊注释,本质是继承Annotation的接口,通过@Target、@Retention等元注解定义作用范围和生命周期。文章重点演示了如何创建并解析自定义注解:1)定义@EncryptMethod注解标记需要加密的字段;2)通过AOP切面实现注解解析,使用反射获取字段值并进行AES加密处理;3)切面支持方法参数、返回值及集合类型数据的加密。该实现展示了注解在数据安全领域的典型应用模式,包括编译期扫描和运行期反射处理两种解析方式。
2025-08-15 13:30:36
288
原创 Java—CompletableFuture 详解
摘要:CompletableFuture是Java8引入的异步编程工具,扩展了Future功能,支持回调处理和任务编排,避免了回调地狱问题。它实现了Future和CompletionStage接口,提供supplyAsync、runAsync等方法创建异步任务,并通过thenApply、thenAccept等方法处理结果。相比传统Future,CompletableFuture支持更灵活的链式调用和异常处理,是Java异步编程的重要工具。
2025-08-14 17:07:30
574
原创 Java—CAS操作
摘要: CAS(Compare-And-Swap)是无锁编程的核心技术,通过比较内存值(V)与预期值(A)决定是否原子更新为新值(B)。Java通过Unsafe类的compareAndSwap方法实现CAS,底层依赖CPU指令(如cmpxchg),但需谨慎使用以避免内存安全问题。典型应用如JUC包的原子类(如AtomicInteger),通过自旋确保操作成功。CAS存在三大问题:1)ABA问题(值被多次修改后复原,可通过版本号解决);2)自旋开销(长时间竞争消耗CPU);3)单变量限制(多变量需封装为对象,
2025-08-11 15:25:58
928
原创 分布式锁的三种实现方式
分布式锁是分布式系统中控制共享资源访问的同步机制,确保同一时间只有一个进程能执行关键操作。主要实现方式包括:1)基于MySQL的实现,通过唯一索引或行锁机制,简单但存在单点问题和性能瓶颈;2)基于Redis的实现,利用SETNX命令和Redission框架,支持自动续期、可重入等特性,性能较高;3)基于Zookeeper的实现,依靠临时顺序节点和监听机制,可靠性强但性能较低。选择方案时需权衡可靠性、性能和实现复杂度,Zookeeper适合高可靠场景,Redis适合高并发需求,MySQL方案则适用于简单场景。
2025-08-08 11:06:47
1078
原创 Java反射
本文介绍了Java反射机制及其应用场景。反射允许程序在运行时动态访问和操作类、方法、字段等信息,广泛应用于框架开发中。重点分析了反射在Spring框架中的两大核心应用:IoC(控制反转)通过反射实现依赖注入,降低对象耦合度;AOP(面向切面编程)则利用反射实现动态代理,在方法调用前后添加额外功能。文章详细阐述了三种依赖注入方式(接口注入、setter注入、构造函数注入)的实现原理,并通过代码示例展示了反射在动态代理中的具体应用。通过反射机制,Spring等框架实现了灵活的对象管理和功能扩展。
2025-08-05 13:59:56
818
原创 微服务常用的基础知识
【摘要】本文系统介绍了微服务架构中的核心组件及其应用,涵盖服务发现、配置管理、流量控制、分布式事务、消息队列等关键技术。主要内容包括:1)Nacos的服务注册发现和动态配置管理机制;2)Sentinel的流量控制和熔断降级功能;3)Seata的分布式事务解决方案;4)RabbitMQ的消息队列模型;5)SpringCloud Gateway的API网关实现;6)MongoDB的非关系型数据库特性;7)RBAC权限控制模型;8)ELK日志分析技术栈;9)Feign的HTTP客户端调用;10)Git版本控制常用
2025-06-26 18:01:59
886
原创 RuoYi-Cloud
RuoYi-Cloud 是一个 Java EE 分布式微服务架构平台,基于经典技术组合(Spring Boot、Spring Cloud & Alibaba、Vue、Element),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源。
2025-05-13 16:53:24
2490
原创 论文笔记——BiLLP框架
Large Language Models are Learnable Planners for Long-TermRecommendation论文阅读笔记
2025-03-17 20:01:41
876
1
原创 SpringBoot+Redis+Mybatis-plus黑马点评
SpringBoot+Redis+Hutool+Mybatis-plus实现黑马点评
2025-03-01 20:02:15
1051
原创 SpringBoot+Redis+Mybatis苍穹外卖
SpringBoot+Vue+Mybatis+Mysql+Redis+Nginx实现苍穹外卖
2025-02-20 19:18:25
838
原创 智能交通(8)——腾讯开悟智能交通信号灯调度赛道
本文档用于记录参加腾讯开悟智能信号灯调度赛道的模型优化过程。官方提供了dqn和target_dqn算法,模型的优化在官方提供的代码基础上进行。
2024-12-05 21:31:40
1941
1
原创 论文笔记——Graph Bottlenecked Social Recommendation
论文精度及其代码复现——Graph Bottlenecked Social Recommendation
2024-09-27 09:18:58
1797
1
原创 智能交通(7)—Deep-QLearning-Agent-for-Traffic-Signal-Control
A framework where a deep Q-Learning Reinforcement Learning agent tries to choose the correct traffic light phase at an intersection to maximize traffic efficiency.
2024-08-09 13:31:29
943
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅