- 博客(244)
- 资源 (1)
- 收藏
- 关注
原创 提示词Prompt
本文介绍了Prompt(提示词)的概念及其在AI交互中的应用。Prompt是引导AI模型生成特定输出的输入格式,其设计直接影响模型响应。文章详细解析了Prompt API结构,重点说明Prompt类作为Message对象容器的功能。同时阐述了四大角色:系统角色(设定AI行为规范)、用户角色(用户输入)、助手角色(AI响应)和工具/功能角色(处理特殊功能请求)。最后通过代码示例展示了如何在Java中实现系统角色约束,限制AI仅回答法律相关问题,其他问题统一拒绝回答。该示例验证了通过系统角色设定可有效控制AI的
2026-02-10 20:56:24
651
原创 多模型并存实现流式输出-ChatModel版
本文介绍了流式输出(StreamingOutput)和Server-Sent Events(SSE)技术。流式输出允许服务器逐步返回大模型生成结果,提升用户体验。SSE是一种服务器推送数据到前端的Web技术,通过HTTP长连接实现单向实时通信,适合AI对话等场景。文章对比了SSE与WebSocket的特性差异,并提供了Spring Boot项目配置示例,包括pom依赖、application配置和DashScopeChatModel配置类,实现支持多模型并存的大模型流式输出功能。
2026-02-09 20:30:08
420
原创 ChatClient入门
ChatClient是Spring AI提供的高级API,封装了与AI模型交互的复杂性,支持同步和流式响应。本文介绍了基于Spring Boot构建ChatClient应用的步骤: 创建Maven模块,添加Spring Boot Web和Spring AI Alibaba依赖 配置应用端口和大模型API密钥 实现ChatClientController时,需注意不能直接注入ChatClient,而应使用ChatClient.Builder构建实例 通过chatClient.prompt().user(msg
2026-01-01 23:41:49
643
原创 微服务对接本地大模型
本文介绍了Spring AI项目中集成Ollama本地大模型的实践过程。主要内容包括:1)创建SAA-02Ollama模块并配置pom依赖;2)设置application.yml配置文件参数;3)编写OllamaController实现对话接口;4)启动测试时遇到依赖冲突问题,通过调整依赖版本解决。项目基于SpringBoot 3.x和Java 21开发,整合了阿里云Dashscope和本地Ollama两种AI服务,提供了同步/异步两种对话方式。
2026-01-01 19:11:59
454
原创 Ollama安装大模型
本文介绍了如何使用Ollama平台安装和运行Qwen3和DeepSeek两种大语言模型。首先需要完成Ollama的基础配置,然后可在官网搜索并选择适合自己硬件配置的模型版本(如4B/8B参数模型)。文章详细展示了两种模型的安装命令(ollama run qwen3:4b和ollama run deepseek-r1:8b),并说明了不同参数规模对硬件内存的需求(7B需8GB,13B需16GB等)。最后通过ollama list命令可查看已安装的模型列表。整个过程包含完整的操作截图指导。
2025-12-28 17:30:11
275
原创 LLM大模型工具-Ollama简介与安装
Ollama本地大模型安装指南 Ollama是一个开源框架,用于在本地运行各类开源大语言模型(如Llama、Mistral等)。本文详细介绍了Windows系统下的安装步骤:1)从官网下载安装包;2)建议安装到非C盘目录;3)配置模型存储路径环境变量;4)迁移默认模型目录;5)通过命令验证安装成功。该方案可实现完全离线的AI模型运行,保障数据隐私安全,适合个人电脑或服务器部署。
2025-12-27 21:49:43
337
原创 SAA入门代码
本文介绍了使用Spring AI Alibaba框架开发AI应用的快速入门指南。主要内容包括:1) 环境要求(JDK17+、Maven3.8+及API-KEY获取);2) 创建父工程SpringAIAlibaba及其POM配置,包含Spring Boot、Spring AI和Spring AI Alibaba的版本管理;3) 版本兼容性说明;4) 入门示例SAA-01HelloWorld子模块的创建,展示了基本的依赖配置(spring-boot-starter-web和spring-ai-alibaba-d
2025-12-21 20:54:43
817
原创 阿里百炼平台使用
本文介绍了使用阿里云百炼平台调用通义千问模型的操作流程:1)登录官网控制台;2)在密钥管理模块创建API-KEY;3)在模型广场选择通义千问-Plus模型,获取模型code和API接口信息。整个过程包含详细的界面截图指引,帮助用户快速完成密钥申请和模型调用准备工作。
2025-12-21 17:49:47
409
原创 SAA概述
Spring AI Alibaba (SAA)是基于Spring AI框架深度集成百炼平台的AI开发框架,支持ChatBot、工作流和多智能体应用开发。相比Spring AI和LangChain4J,SAA在Spring Boot集成、多模态支持、RAG方案、向量数据库兼容性等方面表现突出,特别提供了Nacos提示词管理、优化版Chat Memory、工作流支持等特色功能。SAA拥有完善的官方文档、活跃社区和丰富的示例资源,并针对阿里云生态提供专属优化。该框架适合需要深度集成阿里云技术栈的企业级AI应用开发
2025-12-20 22:47:49
321
原创 MySQL中like模糊查询如何优化
在MySQL中可能会导致性能问题,特使是当使用,因为这通常会导致,以下方法可以帮助优化like模糊查询本文以支付交易表t_pay为例。
2025-10-13 14:34:27
307
原创 LoadBalance客户端负载均衡
LB负载均衡(Load Balance)是什么简单的说就是将用户的请求平摊的分配到多个服务上,从而达到系统的HA(高可用),常见的负载均衡有软件Nginx,LVS,硬件 F5等spring-cloud-starter-loadbalancer组件是什么Spring Cloud LoadBalancer是由SpringCloud官方提供的一个开源的、简单易用的客户端负载均衡器,它包含在SpringCloud-commons中用它来替换了以前的Ribbon组件。
2024-06-11 21:38:03
1479
原创 consul做配置中心
consul不仅可做注册中心,还可做配置中心用户级系统级Spring Cloud会创建一个“Bootstrap Context”,作为Spring应用的的父上下文。初始化的时候,负责从外部源加载配置属性并解析配置。这两个上下文共享一个从。
2024-06-10 20:20:05
1022
原创 sc2024项目整合consul
HashiCorp Consul是一款服务网络解决方案,可让团队管理服务之间以及内部部署和多云环境及运行时的安全网络连接。consul提供服务发现、服务治理、流量管理和对网络基础设施设备的自动更新。)Consul使用Go语言开发。
2024-04-22 22:39:42
415
原创 微服务项目sc2024通用Base工程order80
RestTemplate提供了多种便捷访问远程Http服务的方法, 是一种简单便捷的访问restful服务模板类,是Spring提供的用于访问Rest服务的客户端模板工具集。
2024-04-18 22:46:24
891
原创 微服务项目sc2024通用Base工程pay8001
1.2.pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache
2024-04-10 22:32:35
623
原创 微服务项目sc2024第一个子项目
/</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</</Maven刷新后,父工程的pom文件中爆红少了一些,多个modules。
2024-04-10 21:58:16
558
原创 微服务项目sc2024父工程
maven的dependencyManagement位于最顶级的父pom中,主要用于版本管理,而不是直接添加依赖关系。,这是正常的等后续子工程加入后爆红消失。创建db2024的数据库。
2024-04-10 21:43:04
542
原创 RabbitMQ备份交换机与优先级队列
备份交换机可以理解为 RabbitMQ 中交换机的“备胎”,当我们为某一个交换机声明一个对应的备份交换机时,就是为它创建一个备胎,当交换机接收到一条不可路由消息时,将会把这条消息转发到备份交换机中,由备份交换机来进行转发和处理,通常,这样就能把所有消息都投递到与其绑定的队列中,然后我们在备份交换机下绑定一个队列,这样所有那些原交换机无法被路由的消息,就会都进 入这个队列了。当然,我们还可以建立一个报警队列,用独立的消费者来进行监测和报警。
2024-03-10 18:22:17
664
原创 RabbitMQ发布确认高级版
在生产环境中由于一些不明原因,导致 RabbitMQ 重启,在 RabbitMQ 重启期间生产者消息投递失败, 导致消息丢失,需要手动处理和恢复。于是,我们开始思考,如何才能进行 RabbitMQ 的消息可靠投递呢?
2024-03-09 22:20:39
1133
原创 基于插件实现RabbitMQ“延时队列“
在下载rabbitmq_delayed_message_exchange 插件,本文以v3.10.0为例。
2024-02-25 21:47:02
1510
原创 在消息属性上设置TTL实现RabbitMQ“延时队列“
延迟队列存储的对象是对应的延迟消息,所谓“延迟消息”是指当消息被发送以后,并不想让消费者立刻拿到消息,而是等待特定时间后,消费者才能拿到这个消息进行消费应用场景:订单30分钟未支付取消…
2024-01-28 16:45:13
1071
原创 RabbitMQ死信队列
死信队列是一种特殊的消息队列,用来存储无法被正常消费的消息,常被用来实现延迟处理,异常消息处理等,提高了系统的可伸缩性和容错性,能够应对高并发和异常消息。死信队列中的消息被称为,用来分发死信消息的交换机被称为。延迟等待消息重试机制。
2024-01-22 21:39:24
904
原创 RabbitMQ交换机(3)-Topic
RabbitMQ的Topic模式是一种基于主题的消息传递模式。它允许发送者向一个特定的主题(topic)发布消息,同时,订阅者也可以针对自己感兴趣的主题进行订阅。在Topic模式中,主题通过一个由单词和点号组成的字符串来描述。例如,“#.china”表示匹配所有以“china”为结尾的主题,比如“bj.china”或“china”等。( ‘ # ’ 和 ‘ * ’ 会再后面介绍)当一个消息被发布到Topic交换机(Exchange)时,交换机会将消息转发给所有与该主题匹配的队列。
2024-01-18 21:29:05
2687
2
原创 RabbitMQ交换机(2)-Direct
直连(路由)交换机,生产者将消息发送到交换机,并指定消息的Routing Key(路由键)。交换机会将Routing Key与队列绑定进行匹配,如果匹配成功,则将该消息路由到对应的队列中。如果没有匹配成功,该消息将被丢弃或返回给生产者。在Direct模式中,每个消息只能被一个消费者接收。通过使用Exchange和Routing Key来进行消息传输,Direct模式实现了消息的有选择性地路由,提高了消息传输的效率,减少了系统负载.
2024-01-15 20:58:23
997
原创 RabbitMQ交换机(1)
RabbitMQ消息传递模型的核心思想是:。实际上,通常生产者甚至都不知道这些消息传递传递到了哪些队列中。相反,生产者只能将消息发送到交换机(exchange),交换机工作的内容非常简单,一方面它接收来自生产者的消息,另一方面将它们推入队列。交换机必须确切知道如何处理收到的消息。是应该把这些消息放到特定队列还是说把他们放到多个队列中还是说应该丢弃它们,这就的由交换机的类型来决定。
2024-01-13 21:52:59
879
原创 RabbitMQ发布确认
单个确认发布是一种同步确认发布方式,也就是发布一个消息后只有它被确认发布,后续的消息才能继续发布。:发布速度特别慢,因为若是没有确认发布的消息会阻塞所有后续消息的发布。
2024-01-09 22:11:30
1073
1
原创 RabbitMQ不公平分发与预取值
RabbitMQ不设置的话默认采用轮询方式分发消息,你一个我一个(公平);但实际生活中,由于处理速度不同,若还采用轮询方式分发会导致处理速度快的空等待,因此我们采用不公平分发。
2023-12-23 21:42:52
950
原创 RabbitMQ手动应答与持久化
等Worker4接收到消息bb后将其关闭,发现原本该Worker4消费的消息dd并未丢失,重回队列被Worker3消费。模拟一个处理速度快(Worker3),另一个处理速度慢(Worker4)启动生产者后启动2个消费者。
2023-12-17 21:48:30
421
原创 RabbitMQ-hello
1. 生产者代码4.工作队列4.1.生产者代码4.2.消费者代码4.3.说明Worker启动2个worker1,worker2;两者依次消费消息(轮训/轮询)
2023-12-12 07:51:06
279
原创 ARM架构安装RabbitMQ
Erlang是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。Erlang问世于1987年,经过十年的发展,于1998年发布开源版本。Erlang是运行于虚拟机的解释性语言,但是也包含有乌普萨拉大学高性能Erlang计划(HiPE)开发的本地代码编译器,自R11B-4版本开始,Erlang也开始支持脚本式解释器。在编程范型上,Erlang属于多重范型编程语言,涵盖函数式、并发式及分布式。
2023-11-29 20:50:57
2337
原创 M1中安装PD18.3.2
在中直接搜索Paralles Desktop点击右下角的免费下载(Z10 MB)点击安装说明中的第一个选项直接下载链接点击右上角的下载文件下载后# 2.双击解压文件# 3.点击解压后的映像文件# 4.点击安装,再次点击打开,输入密码。
2023-07-31 21:32:38
525
原创 Redis中3大特殊数据结构(2)-HyperLogLog
常用于允许容错的大数据量统计,如统计注册 IP 数,统计页面实时 UV 数,统计每日访问 IP 数,统计用户每天搜索不同词条的个数统计在线用户数,统计PV 数…UV(Unique visitor): 是指从00:00-24:00内相同的客户端的单次或者多次访问标记为一次访问。PV(Page View):即页面浏览量或点击量,相同客户端的每次访问都会使得统计量+1.
2023-06-26 21:43:36
396
原创 Redis的3大特殊数据类型(1)-BitMap
BitMap常用来进行大数据量的二值统计,如疫情期间的感染情况(阳/阴),员工的考勤打卡签到(已打卡/未打卡),图像的二值化(黑/白),用户的活跃情况(活跃/不活跃),总统竞选投票支持情况(支持/不支持)…
2023-06-26 19:24:09
2425
原创 Redis入门(6)-ZSet
Redis中的Zset是(元素不能重但score可重),其中每个元素都有一个分值score,Redis会根据其score对其进行从小到大的排序。
2023-06-25 18:09:26
754
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅