- 博客(40)
- 收藏
- 关注
原创 Spring AI教程 实战篇(一)基于Vue3对接流式对话接口
本篇介绍了SSE技术以及如何在Vue3中发起SSE请求获取流式结果并进行渲染
2024-07-09 22:14:01
3659
5
原创 Spring AI教程(三)Image API之AI自查实现对话和绘图
我们可以通过AI自查手段将文本模型和图片生成模型进行组合实现一个既可以生成文本也可以生成AI的接口。
2024-04-23 16:57:13
970
1
原创 Spring AI教程(三)Image API之绘图快速入门及源码介绍
Spring AI提供了图片生成接口,该接口可以用于与各种专门用于图像生成的人工智能模型进行交互,允许开发人员以最少的代码更在在不同的图像相关模型之间切换。
2024-04-23 16:55:20
1758
原创 Spring AI 教程(一)概述
Spring AI是Spring生态中应用于人工智能领域的应用框架,它的目标是将Spring 生态系统的设计原则(如可移植性、模块化设计)应用于AI领域,并在AI领域中推广使用POJO(Plain Old Java Objects)作为应用的构建模块。
2024-04-22 20:14:52
2200
原创 Spring AI教程(二)Chat API之基于数据库的多Key轮询
Spring AI本身不支持多Key轮询的操作,因此本篇将基于数据库来实现一个多Key轮询。
2024-04-22 20:12:09
1587
1
原创 Spring AI教程(二)Chat API之Prompts模板语法
Spring AI为我们提供了提示词模板,允许我们通过一些模板,快速地动态生成提示词并发起提问。
2024-04-22 20:11:23
2014
1
原创 Spring AI教程(二)Chat API之人设设定
人设设置功能来自于“提示词工程”的理论基础的。目前,提示工程已成为一个较新的学科,应用于开发和优化提示词(Prompt),帮助用户有效地将语言模型用于各种应用场景和研究领域。
2024-04-22 20:10:30
789
1
原创 Spring AI教程(二)Chat API之流式输出
什么是流式对话?流失对话的核心就是流式传输,AI的响应数据是一点一点传过来的,不用等AI将文本全部生成出来了才传过来。一定程度上能够提高使用上的响应速度,给用户一个非常好的体验。
2024-04-22 20:08:07
3937
6
原创 Spring AI教程(二)Chat API之快速入门
Spring AI中的Chat API允许我们通过简单的配置快速地调用大语言模型以对用户的输入文本进行回复响应。
2024-04-22 20:06:33
1241
3
原创 Spring AI - 使用向量数据库实现检索式AI对话
Spring AI 并不仅限于针对大语言模型对话API进行了统一封装,它还可以通过简单的方式实现LangChain的一些功能。本篇将带领读者实现一个简单的检索式AI对话接口。
2024-02-07 21:00:07
6090
13
原创 Spring Security 源码解读(三)Authorization授权
Authorization就是授权的意思,在SpringSecurity中,无论你是采用何种方式进行认证的,其授权服务都可以在我们的Spring应用中使用。
2023-12-20 12:32:41
1310
原创 Spring Security 源码解读(二)Authentication认证
在实际开发中,我们的系统需要有一套认证和授权服务来保证我们系统的安全性,在Java生态中,主要有Spring Security和Apache Shiro两个安全框架可以完成认证和授权的功能。
2023-12-20 12:31:00
2114
原创 Spring Security 源码解读(一)概述
Spring Security 是一个功能强大且高度可定制的身份验证和访问控制框架,是保护Spring应用的事实标准。
2023-12-20 12:28:32
1060
原创 Spring AI -使用Spring快速开发ChatGPT应用
本篇文章将会对SpringAI进行简单的介绍和使用,并通过SpringBoot来集成SpringAI实际开发出一个简单的http对话接口。
2023-11-08 17:08:36
40043
59
原创 自托管文件共享平台 Pingvin-share
是否还在为某盘限速、限制文件上传大小而烦恼?是否为电脑某个不起眼的角落放着几个G的学习资料无处可放而发愁?本篇文章所介绍的Pingvin-share就可以完美解决这些问题。
2023-09-05 07:17:49
692
原创 Java开发ChatGPT应用入门(二)
本篇文章介绍下如何实现ChatGPT对话,包括流式和非流式,同时实现一个简单的非流式ChatGPT对话应用
2023-08-22 19:04:02
2039
原创 JDBC学习(八) --- 连接池技术
数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。一个数据库连接对象均对应一个物理数据库连接,每次操作都打开一个物理连接,使用完都关闭连接,如此一来,对于大量的数据库连接操作就会造成系统性能低下。
2023-08-21 22:59:56
165
原创 JDBC学习(七) --- 批处理
批处理是指你将关联的 SQL 语句组合成一个批处理,并将他们当成一个调用提交给数据库。当你一次发送多个 SQL 语句到数据库时,批处理可以减少通信的资源消耗,从而提高了性能。
2023-08-21 22:56:22
446
原创 JDBC学习(六) --- 事务管理
数据库事务是由若干个 SQL 语句构成的一个操作序列。数据库系统保证在一个事务中的所有 SQL 语句要么全部执行成功,要么全部不执行,即数据库事务具有 ACID 特性。
2023-08-21 22:53:41
320
原创 JDBC学习(五) --- 数据类型及其转换
JDBC 驱动程序将 Java 数据类型转换为适当的 JDBC 类型,然后将其发送到数据库。它为大多数数据类型提供并保持了默认映射。
2023-08-21 22:52:32
658
原创 JDBC学习(四) --- ResultSet结果集
ResultSet是JDBC中的一个接口,用于表示由数据库执行查询操作后返回的结果集。使用ResultSet接口,可以访问查询结果的当前行,并可以逐行移动结果集,从而让我们能够对结果集中的每行数据进行处理。
2023-08-21 22:50:26
2923
原创 JDBC学习(三) --- Statement系列
在JDBC中,Statement、CallableStatement、PreparedStatement接口为我们提供了向数据库发送SQL语句的方法,我们通过调用这些实例对象所具有的方法就能实现对数据库的增删改查等操作了。
2023-08-21 22:47:24
248
原创 JDBC学习(二) --- JDBC连接数据库
当我们的环境搭建好并且MySQL驱动程序添加到依赖后,就可以使用JDBC建立一个数据库连接了,而建立连接只有简单的四个步骤。
2023-08-21 22:43:18
170
原创 JDBC学习(一) --- JDBC简介及环境搭建
JDBC代表Java数据库连接(Java Database Connectivity),它是用于Java编程语言和数据库之间的数据库无关连接的标准Java API,换句话说:JDBC是用于在Java语言编程中与数据库连接的API。
2023-08-21 22:38:27
981
原创 Nginx入门(三)SSL配置
SSL证书是一种数字证书,。它确保传输的数据保持安全,不能被未经授权的人拦截。SSL证书与HTTPS密切相关。HTTPS是一种安全的通信协议,通过使用SSL证书对网站进行加密,确保数据在传输过程中的安全性。而在上篇文章中,我们通过Nginx搭建静态网站并对网站绑定了域名后,我们通过。因此,要想保证网站数据传输的安全性,需要尽可能的使用HTTPS通信协议进行数据传输,而要做到这一点,就需要通过Nginx完成SSL证书的配置。当用户访问一个启用了HTTPS的网站时,浏览器会向服务器请求并接收SSL证书。
2023-08-17 00:07:18
9004
原创 Nginx入门(一)简介及环境搭建
Nginx (engine x) 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
2023-08-16 23:58:34
278
原创 数据库系统原理 关系理论
(1)候选码:候选码是一个属性组,通过该属性组能推出所有的属性。并且该属性组的任意子集都不能推出所有属性了。在满足完全函数依赖的前提下,还必须是最小的属性组。
2023-08-16 23:23:23
218
原创 Go语言学习笔记(六)数组
数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整型、字符串或者自定义类型。相对于去声明 number0, number1, …, number99 的变量,使用数组形式 numbers[0], numbers[1] …, numbers[99] 更加方便且易于扩展。数组元素可以通过索引(位置)来读取(或者修改),索引从 0 开始,第一个元素索引为 0,第二个索引为 1,以此类推。
2023-08-16 23:21:32
83
原创 Go语言学习笔记(五)函数
Go 语言标准库提供了多种可动用的内置的函数。例如,len() 函数可以接受不同类型参数并返回该类型的长度。如果我们传入的是字符串则返回字符串的长度,如果传入的是数组,则返回数组中包含的元素个数。函数是基本的代码块,用于执行一个任务。Go 语言最少有个 main() 函数。你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务。函数声明告诉了编译器函数的名称,返回类型,和参数。默认情况下的函数调用,Go的参数传递属于。
2023-08-16 23:20:42
70
原创 Go语言学习笔记(四)循环结构
Go的循环结构中,只有for循环结构,没有while和do...while循环结构。而Go的for循环结构总共有三种形式,其中一种使用了分号。while循环一样for(;;)一样,即循环体内部需要自己跳出来,否则会陷入死循环for {
2023-08-16 23:19:27
79
原创 Go语言学习笔记(三)分支结构
Go的分支结构与其它高级语言相似,支持if,if-else,if-else嵌套,switch等,Go在这些基础上,还有一个select语句。ififif...elseifelseelsefalseif 嵌套语句ifelse ififelse ifswitchswitchselectselectswitchselectcasecasecase。
2023-08-16 23:15:21
108
原创 Go语言学习笔记(二)基本数据类型
Go的数据类型及相关运算与大多数语言类似。拥有其它编程语言基础的读者,如:JavaScript,Java,C++等上手Go并不会很难,也不需要花大量的时间浪费在编程语言的共性上。
2023-08-16 23:13:38
111
原创 Go语言学习笔记(一)Go环境搭建及入门案例
本系列文章需要有一定的Java基础Go是一种开源的编程语言,由Google开发。它是一种类型安全和内存安全的语言,采用了并发编程的模型,具有高效的垃圾回收机制。Go的优势如下:简单易学:Go语言的语法简洁清晰,易于理解和上手。并发编程:Go语言采用轻量级线程goroutine和channel来实现并发编程,极大地简化了并发编程难度。高效:Go语言的编译速度非常快,生成的二进制文件也非常小;另外,它对于并发编程和网络编程的支持非常强大,能够轻松应对高并发、高吞吐量的场景。
2023-08-16 23:09:01
142
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人