自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LLM实现记忆功能思路与常见记忆模式

除了将消息传递给LLM,还可以将消息进行总结,每次只传递总结的信息,而不是完整的消息。这种模式记忆对于较长的对话最有用,可以避免过度使用token,因为将过去的信息历史以原文的形式保留在提示中暂用太多Token。无论是长期还是短期的互动都可以记忆(模糊记忆)减少长对话中使用Token的数量,能记忆更多轮的对话信息。长对话时效果明显,虽然最初使用Token数量较多,随着对话进行,摘要方法增长速度减慢,与常规缓存内存模型相比具有优势。虽然能同时记忆近期和长远的互动内容,但是记忆的细节部分会丢失;

2026-05-06 18:45:39 275

原创 LCEL表达式与Runnable可运行协议

为了尽可能简化创建自定义链,LangChain 官方实现了一个Runnablestream:将组件的响应块流式返回,如果组件不支持流式则会直接输出。invoke:调用组件并得到对应的结果。batch:批量调用组件并得到对应的结果。astreamstream的异步版本。ainvokeinvoke的异步版本。abatchbatch的异步版本。:除了流式返回最终响应块之外,还会流式返回中间步骤。除此之外,在Runnable中还重写了__or__和__ror__方法(对应 Python 中。

2026-05-02 22:46:24 392

原创 OutputParser输出解析器

虽然整体的问题已经回答了,但是返回的内容都是一个字符串,并不是结构化的数据,某些场合下我们需要的仅仅是对应的返回值,而不是多余的内容,就需要对返回的内容进行结构化、格式化或者解析。例如下方为修改后的提示,尽可能先让大语言模型按照特定的规则输出内容,然后再进行解析因此,如果需要 LLM 理解你想要的格式,需要向 LLM 告知要输出的结构信息,当 LLM 进行推理并输出之后,我们需要对 LLM 约定的格式进行解析,于是就诞生了 输出解析器 的概念。简单拆解:输出解析器 = 预设提示 + 解析功能。

2026-05-01 22:17:43 369

原创 Modal组件及使用技巧

在 LangChain 中,无论是 LLM 亦或者 Chat Model 都可以接受/字符串/消息列表作为参数,内部会根据模型的类型自动转换成字符串亦或者消息列表,屏蔽了不同模型的差异。

2026-05-01 22:17:22 283

原创 Prompt组件以及使用技巧

在 Prompt 组件中,默认使用 f-string 方法来格式化变量。f-string 是 Python 3.6 以后版本中引入的一种特性,用于在字符串中插入表达式的值,语法简洁,直接利用 {} 花括号包裹变量或者表达式,即可执行简单的运算,性能较好,但是只限用在 Python 中。为了适配不同的 LLM,LangChain 封装了 Prompt 组件,并且 Prompt 组件是高可移植性的,同一个 Prompt 可以支持各种 LLM,在切换 LLM 的时候,无需修改Prompt。

2026-05-01 14:19:08 475

原创 LangChain简介

小时候我们都玩过乐高积木,通过堆砌各种颜色和形状的积木,我们可以构建出城堡、飞机、甚至整个城市。现在,想象一下,如果有一个数字世界的乐高,我们可以用这样的 “积木” 来构建智能程序,这些程序能够阅读、理解和撰写文本,与我们对话,甚至自主执行特定的任务。提示词、工具、大语言模型就是一个一个积木块,等待着我们来发掘和搭建,而 LangChain 就是那个让我们将这些语言模型乐高积木组合成有趣应用的工具箱。

2026-05-01 01:40:07 710

原创 Flask-SQLAIchemy和Flask-Migrate扩展的配置与使用

我们使用 db.create_all() 将 ORM 模型映射到数据库的表中,但是如果新增了 ORM 模型,或者更新了 ORM 模型,使用 db.create_all() 都不会重新创建表或是更新表。需要先使用 db.drop_all() 删除数据库中的所有表之后再调用 db.create_all() 才能重新创建,但是这样的话,原来表中的数据就都被删除了,这肯定是不行的,于是就有了数据库迁移。

2026-04-30 09:32:35 446

原创 nodejs使用RustFS容器服务搭建对象存储oss

高性能文件读写多端口服务(默认 9000 为 API 端口,9001 为控制台 / 管理端口)兼容 S3 API,可直接用 S3 SDK 对接支持本地文件系统存储,无需额外数据库。

2026-04-29 21:39:29 664

原创 PyTest配置与API测试用例

上面这段代码会重复测试两次,第1次传递的 query 值为 None,并执行代码;”,并根据参数的不同判断测试结果,以检测代码是否正常运行。在 Pytest 中,fixture 是一种用于为测试函数提供预设数据或设置测试环境的机制。简单来说,可以使用 fixture 来为测试提供预设数据和设置测试环境的功能。文件,则使用的是最接近的 fixture。定义好 fixture 后,在测试函数中,可以使用同名的参数直接使用,Pytest 会自动注入。在 Pytest 中,基础的配置可以放在。

2026-04-29 21:13:27 428

原创 react数据大屏四种适配方案

在数据大屏、可视化面板、全屏展示类项目中,固定比例、等比缩放、无拉伸变形是核心需求。传统的 rem、vw/vh 适配方案在大屏场景下容易出现布局错乱、文字模糊、比例失调等问题。这里实现一个开箱即用、支持 4 种缩放模式的 React Hook:useScreenScale,一行代码实现大屏完美自适应,支持等比缩放、宽铺满、高铺满、强制拉伸四种模式,兼容窗口 resize,真正做到一次集成、全端适配。

2026-03-27 14:51:44 240

原创 vue3基于 Vxe Table 实现可拖拽分组 + 动态求和的高级表格

在企业级后台系统中,表格往往需要支持列拖拽分组、分组内数据求和、虚拟滚动等复杂功能。本文基于 Vue3 + TypeScript + Vxe Table + SortableJS,实现一套可拖拽分组、自动计算分组合计、支持虚拟滚动的高级表格组件,解决海量数据下的分组统计需求。

2026-03-23 13:32:50 439

原创 基于 Element Plus 实现表格虚拟滚动

在前端开发中,当表格数据量达到上万条甚至更多时,直接渲染所有数据会导致 DOM 节点暴增、页面卡顿、滚动不流畅等性能问题。虚拟滚动(Virtual Scrolling)是解决这一问题的核心方案 —— 它只渲染可视区域内的 DOM 节点,通过动态计算和偏移模拟完整列表的滚动效果,大幅降低 DOM 渲染压力。

2026-03-23 11:37:10 539

原创 vue3实现时间根据系统时区转换对应的时间

根据系统时区转换,核心思路是利用 JavaScript 的 Date 对象(天然支持本地时区)处理 UTC 时间与本地时间的转换。后端返回的是 UTC 时间(如带 Z 后缀的 ISO 字符串,如 2026-03-23T08:00:00Z),直接传入 formatLocalTime 即可自动转换为本地时区时间。

2026-03-23 10:31:48 261

原创 vue3+vant4实现移动端年月日时分秒

Vant4 作为主流的移动端 Vue 组件库,其 van-date-picker 组件默认仅支持 “年月日” 选择,无法直接满足 “年月日时分秒” 的时间范围选择需求。本文基于 Vue3 + Vant4 技术栈,实现年月日时分秒组件。

2026-03-13 14:58:22 294

原创 vue3+vant4移动端实现时间范围选择

在移动端业务场景中,日期范围选择是高频需求(如订单筛选、时间区间查询)。本文基于 Vue3 + Vant4 技术栈,从零实现一款 “起始 / 结束时间双选” 的日期选择器组件,解决 “结束时间不能早于起始时间”“日期格式统一”“回显兼容” 等核心问题,适配移动端交互体验。

2026-03-13 14:48:35 463

原创 vue3 + vant移动端实现上拉刷新下拉加载

在移动端开发中,下拉刷新、上拉加载是列表类页面的核心交互需求。这里使用vant UI框架van-pull-refresh + van-list组件来实现这功能。

2026-03-13 14:31:54 191

原创 react组件添加键盘快捷键react-hotkeys-hook

react-hotkeys-hook 基于 React Hooks 设计,核心是 useHotkeys 钩子,能让你在函数组件中一行代码绑定快捷键,支持单键、组合键、多快捷键绑定,还能处理快捷键冲突、禁用 / 启用等场景。

2026-03-04 16:41:08 279

原创 Egg-Sequelize使用

模型对应数据库的表,需放在 app/model 目录下创建AccessUser模型(对应 access_user表)// 定义 access_user 模型const AccessUser = app.model.define('access_user', // 模型名(对应数据库表名,Sequelize 默认小写+下划线)// 主键 IDid: {primaryKey: true, // 主键autoIncrement: true, // 自增comment: '主键',},

2026-03-04 16:20:03 555

原创 react实现后台管理系统路由缓存、动态路由、按钮权限

后台管理系统三大核心功能:路由缓存、动态路由、按钮权限。动态路由是通过后台返回的数据结构通过递归形式转成路由能识别的格式。按钮权限封装高阶组件判断当前角色是否有当前权限码路由缓存使用第三方插入react-activation实现。

2026-03-04 15:13:55 311

原创 node+egg实现用户鉴权

本文介绍了使用Node.js+Egg框架实现用户鉴权功能的方法。主要包括JWT(JSON Web Token)和自定义中间件来实现用户登录验证、Token签发校验及接口权限控制。详细说明了依赖安装(egg-jwt)、插件配置(egg-full-qiniu-plus)和JWT密钥设置等步骤,其中JWT配置包含自定义密钥和Token过期时间(2小时)设置,并提供了可选的跨域配置方案。该方案适合需要实现用户认证和权限控制的Web应用开发。

2026-03-04 13:28:33 169

原创 node+egg文件上传到七牛云

本文介绍了在Egg.js项目中集成七牛云文件上传的实现方案。主要内容包括:1)配置七牛云账号密钥和存储空间信息;2)安装必要的npm依赖包;3)通过配置文件设置七牛云参数和上传限制;4)编写服务层代码封装七牛云SDK,实现文件流式上传和删除功能。方案采用模块化设计,提供统一的接口调用方式,并包含完善的错误处理机制。实现过程中需要注意存储区域配置、文件命名规则以及凭证有效期等技术细节。

2026-03-04 13:16:47 173

原创 react+node低代码可视化拖拽设计器

react 低代码 可视化拖拽设计器 node + egg

2026-02-28 13:36:37 70

原创 node+egg搭建管理系统后台

Sequelize 是一个 Node.js 生态中最流行的 ORM(对象关系映射) 框架,主要用来简化你在 Node.js 项目中与关系型数据库(MySQL、PostgreSQL、SQLite、MSSQL 等)的交互。简单来说,它帮你用 JavaScript/TypeScript 对象 来操作数据库表,而不用直接写复杂的 SQL 语句。id: { type: BIGINT, primaryKey: true, autoIncrement: true, comment: '主键' },

2026-01-21 18:18:08 595

原创 vue3 + element plus实现表头拖拽数组进行汇总

最近在做报表的时候,需要拖拽对应的表头,根据拖拽的表头数据进行汇总, 执行来回拖拽,拖拽借用了Sortable.js这个插件来实现的。汇总通过后台查询的一维数组,拖拽一个表头根据对应的表头字段将一维数组进行分组成树形结构数据。

2026-01-04 17:40:32 741

原创 vue3解决大数据加载页面卡顿问题

核心是利用 vxe-table 内置的大数据优化特性(虚拟滚动、懒加载等)+ 前端渲染优化。

2025-12-18 13:19:40 420

原创 vue3 + ts 输入框对特殊字符进行颜色标识

在后台管理系统中用户输入内容需要对特殊字符进行颜色标识,这里使用到的是elementPlus,因为输入框是字符串无法做颜色标识,只能使用标签形式来做颜色标识。使用定位将渲染元素和输入框重合在一起,输入框背景透明、颜色透明,循环输入元素对每个元素进行判断,是否需要颜色标记,有的话插入一个带class标签span来处理。

2025-12-17 17:42:29 223

原创 react可视化标尺@scena/react-ruler使用

Ruler${< Ruler(value) => ` ${ value } px ` } // 刻度显示为 "50px" "100px" / >px`} // 刻度显示为 "50px" "100px"/>

2025-12-01 17:18:47 974

原创 Vue3后台管理系统通过插槽封装表单搜索展开收起

管理后台开发中搜索条件只展示2行其它的都通过展开收起控制,但是按钮只能默认在右层。这种通过插槽来实现,获取父组件的所有虚拟节点,通过h函数生成真实DOM节点,使用Component来渲染对应的节点。

2025-11-21 10:45:04 307

原创 react antdesign实现表格嵌套表单

主要实现是在每列添加对应的表单控件使用受控组件来实现 <Input value={text} onChange={(e) => handleFieldChange(e, ‘paramName’, index) } 改变当前表格数据来实现数据的改变。一直使用elementui,后期使用antDesign个人感觉封装的很死没有elementui灵活,也可能是自己不熟吧。做个表格嵌套表单弄半天了。官网地址反正我是看半天了。

2025-11-03 16:40:13 371

原创 elementPlus Virtualized Table 虚拟化表格封装成组件解决表格数据量卡顿

elementPlus 提供了Virtualized Table 虚拟化表格解决数据量大表格卡顿问题;封装成VirtualTableList 组件。

2025-10-31 10:06:53 270

原创 react使用@monaco-editor/react实现在线代码编译器

/ 获取 monaco 实例// 配置 YAML 语言(需确保已加载)validate: true, // 启用语法校验schemas: [// 可选:配置 JSON Schema 用于自动补全});

2025-10-28 16:23:06 1183

原创 vue3前端解析excel文件

使用 上传Excel后解析。

2025-10-28 12:41:37 335

原创 vue3 封装图片上传预览组件支持docx、excel、pdf、图片、txt格式

主要是使用vue-office来实现docx和excel、pdf插件来实现预览。

2025-10-16 11:33:31 383

原创 uniapp使用音频录音功能

注意:uniapp提供的uni.getRecorderManager()在h5上面不支持,如果h5想实现录音功能使用navigator.mediaDevices.getUserMedia({ audio: true })API来实现。uniapp就支持全局状态管理功能只要文件下创建store文件。主要根据uniapp官网提供的。

2025-10-15 11:32:14 736

原创 react + ant 封装Crud-根据配置生成对应的页面

react+antDesign每个页面通过配置生成对应的crud页面

2025-10-10 16:48:28 447

原创 react+andDesign+vite+ts从零搭建后台管理系统(四)-全局状态管理zustand

react 全局状态管理 zustand

2025-10-10 11:23:46 266

原创 react+andDesign+vite+ts从零搭建后台管理系统(三)-Layout布局

react+antdesign+vite+ts从零搭建后台管理系统 layout基础布局

2025-10-10 11:01:02 393

原创 react+andDesign+vite+ts从零搭建后台管理系统(二)-reactRouter

react-router-dom

2025-10-09 17:11:11 302

原创 vue3 两份json数据对比不同的页面给于颜色标识

两份数据对比,新的跟旧的数据不一样页面就给于颜色标识。

2025-10-07 15:42:10 648 1

原创 react+andDesign+vite+ts从零搭建后台管理系统(一)

├─ tsconfig.json # typescript 全局配置。│ └─ vite-env.d.ts # vite 声明文件。├─ .prettierrc.js # prettier 配置。└─ vite.config.ts # vite 配置。├─ .env.test # 测试环境配置。├─ .env.dev # 开发环境配置。

2025-09-19 23:10:57 846

空空如也

空空如也

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

TA关注的人

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