自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LangChain开发(九)基于Rag实现文档问答

大语言模型可以对广泛的主题进行推理,但它们的知识仅限于训练时截止日期前得公开数据。如果你想构建能够对私有数据或模型截止日期后引入的数据进行推理的人工智能应用,你需要用特定信息来增强模型的知识。使用Streamlit实现文件上传,这里只实现了pdf和txt文件上传,可以在type参数里面设置多个文件类型,在后面的检索器方法里面针对每个类型进行处理即可。大语言模型所实现的最强大的应用之一是复杂的问答(Q&A)聊天机器人。:实际的RAG链,在运行时接受用户查询,从索引中检索相关数据,然后将其传递给模型。

2025-03-26 22:57:43 1425

原创 LangChain开发(八)自定义工具调用

在构建代理时,需要为其提供一个Tool列表,以便代理可以使用这些工具。除了实际调用的函数之外,Tool属性类型描述namestr在提供给LLM或代理的工具集必须是唯一的str描述工具的功能。LLM或代理将使用此描述作为上下文。可选但建议, 可用于提供更多信息(例如,few_shot示例)或验证预期参数boolean仅对代理相关。当为True时,在调用给定工具后,代理将停止并将结果返回给用户使用@tool装饰器 ——定义自定义工具的最简单方式。

2025-03-26 22:42:39 901

原创 LangChain开发(七)自定义输出格式(JSON/XML/YAML)

虽然一些模型提供商支持内置的方法返回结构化输出,但并非所有都支持。我们可以使用输出解析器来帮助用户通过指示指定任意的JSON模型,查询符合该模式的模型输出,最后将该模式解析为JSON。JsonOutputParser是一个内置选项,用于提示并解析JSON输出。我们还可以添加一些标签以根据我们的需求定制输出。下面使用XMLOutParser来提示模型生成XML输出,然后将该输出解析为可用的格式。以上就是让大模型输出指定格式输出示例。让大模型生成指定结构的数据,结构为。请注意,我们将解析器中的。

2025-03-26 22:41:17 824

原创 LangChain开发(六)多模态输入与自定义输出

这里演示如何将多模态输入直接传递给模型。我们目前期望所有输入都与OpnAI期望的格式相同。对于支持多模态输入的其他模型提供这,我们在类中添加了逻辑以转换为期望格式。一些多模态模型也支持调用功能。要使用此类调用工具,只需以通常的方式将工具绑定到它们,然后使用所需类型的内容块(例如,包含图像数据)调用模型。在本地将url对应的图片base64编码后传给大模型。传入一个url,让大模型描述图片里面有什么。一次性传入多个图片url,让大模型比较分析。适用于大部分支持多模态的模型。只有一部分大模型支持该能力。

2025-03-26 22:39:24 342

原创 LangChain开发(五)消息管理与聊天历史存储

我们也可以使用额外的LLM调用,来在调用链之前生成对话摘要。实际场景中,可以让参数少、消耗资源的模型来生成摘要,然后再把摘要给参数大、消耗资源的模型用来对话# 过往聊天记录总结import ostemp_chat_history.add_user_message("我叫张三,你好")temp_chat_history.add_ai_message("你好")temp_chat_history.add_user_message("我今天心情挺开心")

2025-03-26 22:36:31 896

原创 LangChain开发(四)服务监控(LangSmith、verbose、debug)

与构建任何类型的软件一样,使用LLM构建时,总会有调试的需求。模型调用可能会失败,模型输出可能格式错误,或者可能存在一些嵌套的模型调用,不清楚在哪一步出现错误的输出。标志将导致所有具有回调支持的LangChain组件(链、模型、代理、工具、检索器)打印它们接受的输入和生成的输出。标志将以稍微更易读的格式打印出输入和输出,并将跳过记录某些原始输出(例如LLM调用的令牌使用统计信息),以便可以专注于应用程序逻辑。假如有一个代理,并且希望可视化它所采取的操作和接受到的工具输出。就可上报信息到LangSm。

2025-03-26 22:34:39 627

原创 LangChain开发(三)工作流编排(LCEL)

LCEL(Langchain Expression Language)是一种强大的工作流编排工具,可以从基本组件构建复杂任务链条(chain),并支持诸如流式处理、并行处理和日志记录等开箱即用的功能。LCEL从第一天起就被设计为支持将原型投入生产,无需更改代码,从最简单的“提示 + LLM” 链到最复杂的链(有人成功地在生产中运行了包含数百步的LCEL链)。以下是使用LCEL几个亮点。一流的流式支持当使用 LCEL 构建链时,您将获得可能的最佳时间到第一个标记(直到输出的第一块内容出现所经过的时间)。

2025-03-26 22:31:35 1022

原创 LangChain开发(二)LangChain提示词模板Template使用

提示词模板本质上跟平时大家使用的邮件模板、短信模板没什么区别,就是一个字符串模板,模板可以包含一组模板参数,通过模板参数值可以替换模板对应的参数。发给大语言模型(LLM)的指令。一组问答示例,以提醒AI以什么格式返回请求。发给语言模型的问题。

2025-03-26 22:27:06 976

原创 LangChain开发(一)LangChain介绍和对话demo

LangChain是一个开源的Python AI应用开发框架,它提供了构建基于大模型的AI应用所需的模块和工具。通过LangChain,开发者可以轻松地与大模型(LLM)集成,完成文本生成、问答、翻译、对话等任务。LangChain降低了AI应用开发的门槛,让任何人都可以基于LLM构建属于自己的创意应用。

2025-03-21 20:48:13 1017

原创 【Nacos】从零开始启动Nacos服务(windows/linux)

Nacos 是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。它集成了服务注册与发现、配置管理、分布式协调等功能,广泛应用于微服务架构中。如果你正在开发基于微服务的应用程序,Nacos 绝对是你不可或缺的工具之一。本文将详细介绍如何在 Windows / Linux 系统上安装并启动 Nacos 服务,帮助你快速搭建开发环境。

2025-02-23 23:35:24 2038

原创 如何修改Windows系统Ollama模型存储位置

所以,我们就需要修改Ollama的模型存储位置。注意:系统环境变量修改环境后,以后下载的模型就会保存在系统环境变量设置的问题。方法 3:开始->控制面板->系统和安全->系统->高级系统设置->系统属性->环境变量。方法 1:开始->设置->关于->高级系统设置->系统属性->环境变量。方法 2:此电脑->右键->属性->高级系统设置->环境变量。默认情况下,Ollama 模型会存储在 C 盘用户目录下的。,回车打开系统属性,选择高级选项卡,点击环境变量。环境变量,可以参考下面的示例。

2025-02-20 23:30:22 1998 1

原创 轻松搭建本地大语言模型(五)Dify知识库:本地大语言模型弹药库(deepseek、llama、qwen)

本文主要介绍了如何使用Dify知识库功能实现本地大语言模型基于知识库回答问题,并详细阐述了创建聊天助手、测试聊天、创建知识库、导入文件、设置Embedding模型以及关联知识库等操作步骤。通过这些步骤,用户可以实现大模型根据知识库回答问题,从而弥补模型在离线场景下的知识局限性,提升其准确性和个性化能力。

2025-02-20 23:10:17 1819

原创 轻松搭建本地大语言模型(四)Dify 对接 Ollama:让本地大模型变得触手可及(deepseek、llama、qwen等)

Dify 是一个开源的 LLM 应用开发平台,通过直观的可视化界面,帮助开发者快速构建和部署 AI 应用。以下是详细的安装与使用教程。

2025-02-19 23:41:59 1264

原创 轻松搭建本地大语言模型(三)Dify:低门槛构建 AI 应用的利器

Dify 作为一个开源的 AI 应用开发平台,凭借其低门槛、强大的功能和丰富的插件生态,为开发者提供了一个高效、便捷的解决方案。无论是企业级的智能客服、知识管理,还是个人的自动化办公工具开发,Dify 都能够满足需求。如果你正在寻找一个简单易用且功能强大的。

2025-02-18 23:22:30 831

原创 轻松搭建本地大语言模型(二)Open-WebUI安装与使用

Open-WebUI 是一个功能强大的开源工具,旨在为用户提供一个简洁且功能丰富的界面来管理和使用大语言模型(LLM)。它支持与 Ollama 等后端服务集成,方便用户通过 Web 界面进行模型交互。本文将详细介绍 Open-WebUI 的安装方法和基本使用技巧。

2025-02-18 23:07:53 1556

原创 轻松搭建本地大语言模型(一)Ollama安装与使用

Ollama 提供了简单易用的安装方式,支持多种操作系统,能够帮助用户快速搭建本地大语言模型环境。通过本文的教程,你已经可以轻松安装并使用 Ollama,接下来可以尝试运行不同的模型,探索更多功能。

2025-02-18 21:52:24 851

原创 炫酷年会抽奖开源项目推荐

在年会时,抽奖活动是备受瞩目的环节,选择合适的开源项目可以提升活动的趣味性和互动性。以下是我在今年挑选年会抽奖开源项目的总结。

2025-01-12 21:30:51 1038

原创 企业项目级IDEA编辑器设置类注释、方法注释模板(增加作者和日期)

公司代码规范中,需要在标准JavaDoc注释的基础上加上作者和日期。不使用Java标准的注解,导致IDEA标黄,比如明明存在@author标签,却使用@AuthorAuthor等自定义标签,导致IDEA标黄。明明直接写注释就行了,却要在注释前面加上个标签等自定义标签,导致IDEA标黄。明明下面就是类名,却要在类注释上使用@className标注类名,导致每次修改类名还得改上面的注释。明明可以使用@param标签,却要使用@Param等自定义标签,导致IDEA标黄。

2024-11-17 23:09:56 1794

原创 【国密SM4】基于Hutool的SM4秘钥生成、加密解密(20行代码搞定)

在项目开发中,经常需要使用加密技术,比较常用的就有国密SM4算法。SM4是中国国家密码管理局发布的对称加密算法,目前在各个领域都得到了广泛应用。本文将详细介绍如何使用Hutool框架实现SM4秘钥生成、加解密。对称加密算法:加密和解密使用相同的密钥。分组长度与密钥长度:均为128位(16字节)。加密模式:支持多种模式,如ECB(电子密码本)、CBC(加密分组链接)、CTR(计数器模式)、CFB(密码反馈模式)、OFB(输出反馈模式)等,以适应不同的应用场景。轮函数结构。

2024-11-17 19:39:54 4538

原创 内网Debian\Ubuntu服务器安装dep包,基于apt-rdepends下载相关依赖

的方式下载后,拷贝进内网直接安装,可能会安装不上,因为有些包存在依赖关系,例如A依赖B,我们只下了A,在内网安装的时候就会因为没有安装B而报错,而且有些软件包的依赖比较多,一个一个的报错再解决也不太现实。的输出会包含包名和依赖关系的层级结构。你需要过滤掉重复的包名和无关信息,只保留唯一的包名列表。所以,需要现在联网的环境中将所需的软件包下载完之后,拷贝到内网环境。安装脚本时,在安装A的时候,必须有B,但是B对应的deb我们也已经下载完了。的方式,初步试了一下,也是可以下载到对应的依赖包。

2024-10-07 00:36:15 1444

原创 apt-rdepends -d基于graphviz生成有向图

在中,使用-d或--dotty选项生成的 dotty 图表,可以让你清晰地查看软件包及其依赖的结构。通过该选项,会生成一个描述依赖关系的.dot文件(一个文本文件),然后你可以使用 Graphviz 将其转换为实际的图形,像 PNG 或 PDF。

2024-10-07 00:27:56 281

原创 Debian&Ubentu系统apt依赖分析工具apt-rdepends使用

是一个强大的工具,能够帮助用户了解 Debian 和 Ubuntu 系统中的软件包依赖结构。通过递归显示依赖关系树,它让用户对包管理有了更清晰的认识,从而避免依赖问题导致的系统崩溃或功能丢失。无论你是系统管理员、开发者,还是普通用户,掌握都能够帮助你更好地管理系统包,并有效处理依赖冲突问题。

2024-10-07 00:24:02 1893

原创 基于Docker部署最新版本SkyWalking【10.1.0版本】

由于本地的 JDK 版本与 SkyWalking 对应的 JDK 版本不一致,为了避免兼容性问题并简化环境配置,我们使用 Docker 来部署 Apache SkyWalking。这种方法可以确保在隔离的容器中运行 SkyWalking,从而避免对本地环境的影响。

2024-10-04 23:22:58 2438 5

原创 SkyWalking监控SQL参数

SkyWalking开启记录SQL参数配置

2024-10-04 22:51:21 1108

原创 最新版本SkyWalking【10.1.0】部署

基于当前最新版10.1.0搭建skyWalking。

2024-10-04 22:26:03 2460

原创 CentsOS 7 “Could not resolve host: mirrorlist.centos.org; 未知的错误”问题解决

在VMware安装完CentOS 7镜像后,发现yum无法使用,报错信息如下:已加载插件:fastestmirrorDetermining fastest mirrorsCould not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was14: curl#6 - "Could not resolve host: mirrorlist.centos

2024-08-18 21:43:21 2717 9

原创 基于Docker部署最新版本Jenkins

输入密码等待一会后,会跳转到插件安装界面(我这里选择安装它推荐的插件,大家可以根据自己的需求自己选择)这里如果使用的是旧版本的jenkins在国内会一直下载失败,应该是镜像源问题,需要参考其他文章。创不创建用户都行,不创建的话,后面使用admin登录,密码是上面的默认密码。点保存并完成,后面Jenkins URL的地址还能修改。

2024-08-18 21:36:00 480

原创 Linux配置Maven环境

官网地址:https://maven.apache.org/download.cgi。获取其对应的下载链接(也可以使用下载到本地后,手动上传到服务器的方式)切到自己想要存放的路径后,使用wget下载。使用pwd查看文件路径,ll查看文件名称。这里以当前最新版本3.9.8为例。

2024-08-18 21:29:33 1683

原创 Linux配置JDK8环境变量

官网下载地址:https://www.oracle.com/java/technologies/downloads/?将其下载到本地(我这里下载的是x64 Compressed Archive版本)tar -zxvf 显示以下内容即为成功。需要注册后,登录下载。另:启动jar包命令。

2024-08-18 21:28:11 884

原创 【Redis】Windows设置Redis为开机自启动

Redis作为当前最常用的当前缓存技术,基本上Web应用中都有使用。所以,每次我们在本地启动项目前,都必须将Redis服务端启动。但是,每次都要去启动Redis就很麻烦,有没有办法做到开机自动启动Redis呢?这当然是可以的,本文主要就是介绍Windows系统如何配置开机启动Redis。

2024-05-03 19:53:56 3635 1

原创 使用DataGrip连接DM达梦数据库

达梦数据库虽然提供了官方的数据库管理工具"DM管理工具",但是该软件经常莫名卡顿,影响开发效率和心情。所以,本人一般使用DataGrip进行数据库操作。DataGrip是JetBrains公司开发的一款强大的数据库IDE,支持多种数据库系统。以下是使用DataGrip连接达梦数据库的方式。

2024-05-03 19:24:06 5110

原创 【Redis】Windows系统启动Redis

Windows系统从零开始启动Redis

2024-05-03 19:12:47 5462 1

原创 【链路追踪】xxl-job定时任务日志增加traceId

注入,在生产环境进行日志追溯时比较方便。但是在使用xxl-job进行定时任务管理时,却发现xxl-job线程打印出来的日志没有。注入,同时也增加了统一日志打印,不需要在每个定时任务入口都打印日志(如果不需要也可以去掉)。,查询日志时十分不方便,于是通过使用。通过增加以上类,即可实现。

2023-11-23 23:41:30 1783

原创 【Redisson】基于自定义注解的Redisson分布式锁实现

在项目中,经常需要使用Redisson分布式锁来保证并发操作的安全性。在未引入基于注解的分布式锁之前,我们需要手动编写获取锁、判断锁、释放锁的逻辑,导致代码重复且冗长。为了简化这一过程,我们引入了基于注解的分布式锁,通过一个注解就可以实现获取锁、判断锁、处理完成后释放锁的逻辑。这样可以大大简化代码,提高开发效率。

2023-11-23 23:07:54 1736

原创 【国密SM2】基于Hutool的SM2公私钥生成、签名验签、加密解密(30行代码搞定)

由于在公司项目中需要用到国密SM2秘钥生成、签名、验签功能,找了网上很多的资料,发现其工具类都异常复杂,最终找到了hutool工具包,但其官网的示例也不尽人意。于是,对Hutool提供的SM2类进行封装,封装成了自己使用的Sm2Util工具类,代码量在20行以内,尽可能做到简单易懂。

2023-10-11 00:35:34 19066 4

原创 【SimpleDateFormat】类线程不安全问题分析及解决方案

在日常开发中,我们经常需要去做日期格式转换,可能就会用到类。但是,如果使用不当,就很容易引发生产事故!如果是使用JDK 8+,则直接使用即可。如果使用的是低版本的JDK,则可以使用TheadLocal或解决方案。

2023-10-04 00:01:38 690

原创 MySQL高级篇_16_MVCC多版本并发控制_尚硅谷_宋红康

MVCC(Multiversion concurrency Control),多版本并发控制。顾名思义,MVCC是通过数据行的多版本管理来实现数据库的并发控制。这项技术使得在InnoDB的事务隔离级别下执行一致性读操作有了保证。换言之,就是为了查询一些正在被另一个事务更新的行,并且可以看到它们被更新之前的值,这样在做查询的时候就不用等待另一个事务释放锁。MVCC没有正式的标准,在不同的DBMS中的MVCC的实现方式可能是不同的,也不是普遍使用的(大家可以参考相关的DBMS文档)。

2023-09-10 23:40:30 287

原创 MySQL高级篇_13_事务基础知识_尚硅谷_宋红康

事务是数据库区别于文件系统的重要特性之一,当我们有了事务就会让数据库始终保持一致性,同时我们还能通过事务的机制恢复到某个时间点,这样可以保证已提交到数据库的修改不会因为系统崩溃而丢失。

2023-08-30 23:21:20 1205

原创 RocketMQ、Dashboard部署以及安全设置

以当前最新版:5.1.3为例,下载链接为:https://dist.apache.org/repos/dist/release/rocketmq/5.1.3/rocketmq-all-5.1.3-bin-release.zip。当前,已经为RocketMQ设置了密码,但是,还存在问题,操作面板没有设置密码,操作面板没有设置密码,在实际应用中,也是很危险的。但是在实际使用中,还会对RocketMQ的访问增加密码限制,接下来,进行密码设置。至此,RocketMQ的启动、测试是否启动以及关闭已经说明完毕。

2023-08-15 21:35:01 11314 5

原创 JDK工具之jps详解

JDK(Java Development Kit)是 Java 开发人员必备的工具包,其中包含了许多强大的命令行工具,用于开发、调试和监控 Java 应用程序。其中,jps(Java Virtual Machine Process Status Tool)是一个简单但十分有用的命令行工具,用于查看当前运行的 Java 进程以及它们的相关信息。在本文中,我们将详细了解jps命令及其用法。jps命令用于列出当前系统中正在运行的 Java 进程(Java 虚拟机进程)。

2023-07-26 23:38:05 5507

空空如也

空空如也

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

TA关注的人

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