自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 (一)集成django、swagger、docker desktop之创建项目

​初始模板的相关文件都在的一个项目模板里,可以拿来用。下面我们来详细看看是怎么构建的。

2026-07-02 15:46:16 169

原创 搭建RAG易错点

float16 最小正数约 5.96×10⁻⁸,temperature 缩放后 softmax 尾部概率超出此范围,被舍入为 0;bfloat16 下限约 1.17×10⁻³⁸,不会发生截断。Qwen tokenizer 某些版本 pad_token_id=None,传入 generate 会静默出错。没有对概率分布做截断,低概率区域全部参与采样,放大了数值不稳定的风险。

2026-06-30 15:07:31 243

原创 为大模型搭建RAG

【代码】为大模型搭建RAG。

2026-06-30 14:40:16 193

原创 主流开源LLM(Qwen、ChatGLM等)的本地化部署

本文介绍了在Windows系统下部署开源大语言模型(Qwen和ChatGLM)的完整流程。主要内容包括:1)使用conda创建Python 3.10虚拟环境并安装PyTorch等依赖库;2)获取Qwen和ChatGLM模型,提供两种模型的Python调用示例代码;3)通过FastAPI将Qwen模型封装为REST API服务。文中详细说明了环境配置、模型下载、代码实现以及常见问题解决方法,并特别提供了使用国内镜像加速下载的配置方法。所有步骤均包含完整的命令和代码示例,适合初学者快速搭建本地大模型环境。

2026-06-29 13:41:51 205

原创 二十三、访问者模式

随机生成 Gladiolus 或 Chrysanthemum 对象。访问者之一:字符串访问者:记录当前访问的花的类型,并返回描述字符串。访问者之二:蜜蜂访问类:蜜蜂访问不同的花时,打印不同的信息。接着是若干具体被访问者之一,剑兰。首先定义被访问者的接口。具体被访问者之二,菊花。

2026-04-21 13:56:59 184

原创 二十二、模板方法模式

首先是抽象基类,定义模板方法的框架。然后第一个模板方法具体实现类。第二个模板方法具体实现类。

2026-04-21 13:52:12 152

原创 二十一、策略模式

接着有若干具体策略类。

2026-04-20 11:44:50 188

原创 二十、状态模式

窗口上下文类,负责管理当前状态和状态切换。状态接口,定义状态处理行为。根据不同状态执行不同操作。

2026-04-20 11:43:54 93

原创 十九、观察者模式

然后有一个被观察者接口(也称主题接口 Subject)首先是观察者接口,定义更新方法。

2026-04-16 11:29:47 356

原创 十八、中介者模式

首先有个工作接口,声明了工作方法、然后有若干具体工作的类实现工作接口。接着就是我们的中介接口了。

2026-04-15 13:09:23 262

原创 十七、迭代器模式

首先是迭代器接口,定义了迭代器的基本操作,支持双向遍历。接口 定义了集合的基本操作 和 获取迭代器的方法。

2026-04-15 13:08:37 75

原创 十六、解释器模式

首先有一个上下文类,存储解释器所需的共享数据(如XML字符串)最后是具体解释器:用于解释XML格式的数据。接着有一个解释器接口,定义解释操作的规范。

2026-04-14 11:30:25 170

原创 十五、备忘录模式

首先有一个数据状态类。

2026-04-14 11:29:27 176

原创 十四、命令模式

最后就是我们的调用者了。

2026-04-13 13:17:17 157

原创 十三、责任链模式

首先有一个抽象处理者,声明了若干个处理方法。具体处理者,实现了若干个具体处理方法。

2026-04-13 13:16:14 66

原创 十二、代理模式

最后的代理类,也实现接口,并持有接口的引用。首先有一个接口,声明了若干方法。然后是被代理的类实现接口。

2026-04-10 12:38:57 441

原创 十一、享元模式

LetterFactory 和 map 是组合关系,map 是 LetterFactory 的组成部分。LetterFactory 和 Letter 是聚合关系,Letter 可以独立存在;首先有一个享元对象类。

2026-04-10 12:38:02 70

原创 十、外观模式

【代码】十、外观模式。

2026-04-09 14:25:04 189

原创 九、装饰器模式

最后就是装饰器类,实现了IReader接口,用于增强原有读取器的功能。然后有一个被装饰的类,实现了基本的读取功能,是被装饰的原始对象。首先有一个接口, 定义了读取的基本操作。

2026-04-09 14:24:04 266

原创 八、组合模式

当没有子节点时,作为Leaf;当有子节点时,作为Composite。然后是树节点类 - 组合模式中的Component。封装了对树形结构的整体操作,提供更友好的API。最后是树类 - 组合模式的客户端使用类。

2026-04-08 11:25:43 75

原创 七、桥接模式

然后是 iPhone6 手机壳实现类 - 具体的实现部分。iPhone 手机类 - 扩展的抽象部分。抽象手机类 - 抽象部分。首先是手机壳接口 - 实现部分接口。

2026-04-08 11:24:38 156

原创 六、适配器模式

首先有一个客户端期望实现的方法。

2026-04-07 11:05:34 149

原创 五、原型模式

首先有一个抽象创建者。接下来我们看怎么使用。

2026-04-07 11:04:25 234

原创 四、建造者模式

虽然构建一个复杂对象的各个步骤现在已经知道怎么做了,但是各个步骤的执行顺序还没确定,所以还需要一个管理类。首先有个抽象建造者类,声明了若干抽象方法,这些抽象方法就是构建一个复杂对象的各个步骤。然后建造者类继承抽象建造者类,并覆写那些抽象方法。这里的MazeFactory是一个产品工厂类。

2026-04-02 15:02:33 288

原创 三、抽象工厂模式

核心来了,声明一个工厂接口,并在里面声明创建上面若干子类实例的方法。然后有具体的产品类实现这些接口。接着有若干子类继承这些产品类。最后用工厂类实现工厂接口。首先有若干个产品接口。

2026-04-02 15:00:33 184

原创 二、工厂方法模式

然后在子类中覆写父类的抽象方法。

2026-04-01 11:13:52 224

原创 一、单例模式

【代码】一、单例模式。

2026-04-01 11:12:45 285

原创 4.再见,端口号!(eclipse的springboot项目)

上次咱知道了如何创建一个SpringBoot项目,不过要加端口号才能访问,比如,现在我们来看看怎么去掉端口号~

2026-03-31 10:15:47 329

原创 3.springboot,用eclipse轻松创建~

点击控制台,按回车键,就建好初始目录了。看见以下控制台信息就代表成功了。接着在新建的包中新建文件。中对应地方添加以下内容。添加后,右键项目–>

2026-03-31 10:12:27 204

原创 (八)前端,如此简单!---五组结构

js中有五个结构,共同构成了的完整链路。

2026-03-30 15:50:32 59

原创 (七)前端,如此简单!--- 四点读取

因此可以使用 addEventListener 或通过 onXXX 属性来绑定事件处理函数,监听异步操作的生命周期。表示通用的、固定长度的原始二进制数据缓冲区。异步读取 File 或 Blob 的内容。代表文件系统中的文件,继承自 Blob。以字节粒度精确控制内存中的每一位数据。,不可变的原始数据的类文件对象。

2026-03-30 15:37:36 173

原创 (六)前端,如此简单!--- 三类通讯

浏览器内部维护了一个频道注册表,所有使用相同名称创建的 BroadcastChannel 实例都会自动关联到同一个逻辑频道。同一浏览器内通信,用于多标签页数据同步,不经过网络,完全本地。可以发送任意可序列化数据(通过结构化克隆算法)客户端和服务器都能主动发送消息,建立连接后保持长连接。客户端只能接收,支持断线重连和事件 ID 追踪。连接保持打开,双方可随时发送数据。一对多消息分发,不会发送给自己。发起 HTTP 请求,携带。单向通讯,服务器到客户端。

2026-03-27 17:44:42 47

原创 (五)前端,如此简单!---变量

如果值不需要改变 用const需要重新赋值时使用let// 需要改变值i < 10;i++) {// 循环变量需要改变容易引起错误的vari < 5;i++) {// 输出 0、1、2、3、4。同步执行i < 5;i++) { // var 是函数作用域,所有回调都引用同一个 isetTimeout(function() { // 循环会立即执行完毕,i 的值从 0 增加到 5// setTimeout 的回调是异步的,会在 100ms 后执行}, 100);

2026-03-27 17:27:43 50

原创 (四)前端,如此简单!---Promise

如果说 Fetch 解决了“前端如何获取数据”的问题,那么 Promise 解决的则是“拿到数据后如何优雅、可靠地处理异步逻辑”的问题。Promise创建时一定是 pending(等待中),一个 Promise 只能从 pending 变为 fulfilled 或 rejected,且状态一旦改变就不可逆。

2026-03-26 22:56:40 525

原创 (三)前端,如此简单!---fetch 与 XMLHttpRequest

在前端开发中,JavaScript有着控制HTML/CSS、调用API获取数据、处理数据等作用,今天我们来看看获取数据。

2026-03-26 22:39:53 189

原创 (二)前端,如此简单!---自定义404跳转页面

上回说到如何下载Nginx,现在我们来看看怎么自定义还未开发完成的页面,或者进入错误路由时显示的页面。

2026-03-25 20:48:00 369

原创 (一)前端,如此简单!---下载Nginx

对于Linux用户,跟着以下步骤走,就能轻松下载Nginx了。

2026-03-25 20:36:45 194

原创 2.“你要这么说的话,我也可以用 Eclipes 开发项目了!”

上一篇文章我们讲了如何创建 Maven项目,这章我们来看看怎么实现简单的功能。

2026-03-24 22:47:53 156

原创 1.没想到这么简单!使用Eclipse创建一个JFinal项目!

这是因为 端口 80 被占用或没有权限绑定,解决方法就是在包。现在我们已经有了友好的页面,就剩下怎么去访问这个页面了。有报红先不管,在数据库中建表并插入记录,然后运行生成器。然后重新运行就会看见笑脸,代表着运行成功了。,并实现其所有抽象方法,当然要写入口函数。,刷新后会显示出生成的文件,报红也会消失。就是在mysql数据库中库的名称。就能看见404了,这是正确的。,每个数据表都会生成一个文件。首先在启动文件里面实现方法。实现启动文件里面的其它方法。,再在这个包中新建文件。保存后,右键项目–>

2026-03-24 17:51:44 337

原创 六、使用PlantUML绘画包图

【代码】六、使用PlantUML绘画包图。

2026-02-21 13:51:07 72

空空如也

空空如也

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

TA关注的人

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