自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Daphnis的博客

吹着前奏望着天空..

  • 博客(55)
  • 收藏
  • 关注

原创 大模型应用编排工具Dify之插件探索

本文从部署角度分析了Dify 1.1.3版本的插件体系,重点探讨了离线环境下插件安装的解决方案。研究发现:1)插件运行依赖独立的Python虚拟环境;2)官方插件包无法真正离线安装;3)通过开源项目dify-plugin-repackaging可制作完整离线安装包,需调整Nginx配置后上传安装。文章详细介绍了制作和安装离线插件的具体步骤,总结了插件隔离设计的优点,同时指出官方插件包在离线部署方面的不足。

2025-08-26 20:30:00 1677

原创 基于提示词工程和MCP构建垂直Agent应用

本文介绍了构建大模型智能体(Agent)的关键技术方案,重点阐述了System Prompt的构建方法。首先强调System Prompt是构建Agent最重要的一环,需要综合运用提示词工程技术,包括提供当前时间、角色设定、核心原则等要素。文章详细拆解了构造System Prompt的7个关键步骤:1)当前时间信息;2)角色设定;3)核心原则;4)执行步骤;5)工具清单;6)回答格式;7)注意事项。其中执行步骤和工具清单需要动态生成,根据用户问题识别细分场景后动态调整。最后介绍了构造完整消息数组的方法和解析

2025-08-19 22:00:00 846

原创 大模型开发框架LangChain之构建知识库

本文介绍了一个基于LangChain构建轻量级知识库的方案。采用CSV格式存储运维场景的报错日志、原因分析和修复建议,便于日常维护。通过CSVLoader加载知识库,使用RecursiveCharacterTextSplitter进行文本分块,并改造BAAI-bge-small-zh-v1.5离线Embedding模型进行向量化。最终实现内存存储的知识库检索功能,可准确召回匹配问题的最相关数据,包含元信息和相似度评分。该方案适合小型项目,维护成本低,但需注意分块大小和召回参数对效果的影响。

2025-08-01 21:00:00 809

原创 大模型开发框架LangChain之集成MCP工具

本文介绍了如何利用LangChain框架实现MCP(模型控制协议)服务调用。首先通过FastMCP构建轻量级MCP服务端,定义天气查询和时间获取工具函数。然后创建MCP客户端连接到服务端,获取工具列表。接着使用兼容OpenAI协议的模型初始化智能体(Agent),并配置领域专家级系统提示词。最后构建Agent执行器实现多轮工具调用,展示从用户提问到工具调用再到结果整合的全流程。文章指出MCP将成为增强大模型能力的重要方式,强调系统提示词对工具调用准确性的关键作用,同时提醒注意多轮调用带来的token消耗问题

2025-07-24 22:30:00 574

原创 大模型开发框架LangChain之函数调用

本文介绍了使用LangChain框架构建Agent的方法,解决了Dify平台流程固化、系统过重的问题。作者通过定义天气查询和时间查询两个Python函数,使用LangChain的Tool类进行封装,并详细说明了函数描述和参数命名的重要性。文章展示了如何初始化大语言模型、创建Agent执行器,并通过流式接口处理消息类型(HumanMessage/AIMessage/ToolMessage)。最终实现效果显示Agent能准确提取参数并调用相应工具。提供了完整的代码示例和依赖清单,证明LangChain在函数调用

2025-07-11 21:30:00 696

原创 大模型应用编排工具Dify之常用编排组件

本文主要通过一个实际落地案例,介绍 Dify工作流编排中常用的 问题分类器、参数提取器、知识库和 LLM等组件,其中着重介绍了系统提示词和用户提示词,最后对后台服务如何调用工作流编排进行了说明。

2025-01-22 22:00:00 4896

原创 大模型应用编排工具Dify之自定义工具

dify中提供了自定义工具的能力,工具十分容易复用,在需要的流程编排中进行引用即可。根据笔者的经验和理解,自定义工具有点类似微服务,可以把通用的能力封装到工具里面。同时,工具还提供了测试和鉴权等功能,对开发者比较友好。

2024-12-19 21:30:00 2506

原创 大模型应用编排工具Dify之构建专属FQA应用

通过 dify可以基于开源大模型的能力,并结合业务知识库、工具API和自定义代码等构建特定场景、行业的专属大模型应用。本文通过 dify工作室的**聊天助手-工作流编排**构建了一个基于历史工作日志回答问题的助手,相比原始的大模型答复,通过工作流构建的应用将提供更精准的答案。

2024-12-10 20:15:00 1272

原创 大模型应用编排工具Dify二开之登录Token改造

dify工作室支持在画布上直接编辑业务流程,通过调用开源大模型可以实现特定场景的业务,而且可以迅速更新发布。因此,某些项目要求在产品里面能够直接编辑 dify业务流程,使得现场开发人员能够迅速响应客户需求。另外,方便对 dify进行运维,比如 更新开源大模型认证信息。

2024-11-28 19:15:00 5055 6

原创 大模型应用编排工具Dify二开之接入LLM改造

在大模型项目落地过程中,由于安全、合规和管控等原因不会直接使用原生开源大模型,一般会在开源大模型的基础上添加额外的认证信息或者修改接口访问方式。本次的目标是通过修改 dify源码能够对接**不遵守标准 openai接口协议**,在 header里面添加了**额外认证信息**的开源大模型。

2024-11-15 22:45:00 3735

原创 大模型应用编排工具Dify二开之工具和模型页面改造

最近笔者在做 dify的私有化部署和二次开发相关工作,本文总结界面改造的一些内容。

2024-11-07 21:03:36 10301 7

原创 SpringBoot数据库连接泄露快速排查方法

快速排查SpringBoot Hikari数据库连接池连接泄露的方法,java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30000ms.

2024-08-24 16:26:44 1805

原创 记一次Flink任务无限期INITIALIZING排查过程

环境:Flink-1.16.1,部署模式:Flink On YARN,现象:Flink程序能正常提交到 YARN,Job状态是 RUNNING,而 Task状态一直处于 **INITIALIZING**,排查思路有...

2024-03-07 22:00:00 2648 3

原创 Ambari动态给YARN分配计算节点

YARN可用的计算节点数量并不总是等于 Hadoop集群节点数量,可以根据业务需求分配 YARN计算节点数量。

2024-03-04 20:07:46 761 1

原创 Flink使用 KafkaSource消费 Kafka中的数据

很多 flink相关的书籍和网上的文章讲解如何对接 kafka时都是使用的 FlinkKafkaConsume,'org.apache.flink.streaming.connectors.kafka.FlinkKafkaConsumer' is deprecated ,新版 flink应该使用 KafkaSource来对接 kafka。

2023-03-21 21:22:23 2366

原创 大数据集群搭建方案对比

回顾从前,已经在大数据领域混了5年了,经手了不少大数据集群搭建方案,自己也做过许多大数据平台的运维工作,在这里进行阶段性的总结,主要是 原生Hadoop、CDH、Ambari集群搭建对比。

2023-03-19 12:17:06 1376

原创 离线和实时数仓技术架构梳理

对目前流行的离线数仓和实时数仓架构进行了梳理和对比

2023-03-02 20:00:00 3753

原创 Kafka使用MirrorMaker同步数据的两种方式

CDH对 Kafka MirrorMaker的支持度不错,稳定性也能经得起时间的检验。另外,这种备份方式属于实时备份,很适合对数据完整性和及时性要求较高的项目,能最大程度地确保通过 kafka流转的数据的及时可用。还有一个好处是,当 kafka集群1因为某种原因无法工作时,可以迅速切换到集群2,且两个集群的数据几乎一致。

2022-12-22 12:05:24 4316

原创 HBase Shell启动缓慢及操作耗时长的原因分析与解决

在内网搭了一个 hbase-2.2.6(hadoop-2.7.3)的环境,使用的是其内置的 zookeeper-3.4.10,16010端口对应的 web界面可以正常访问,且各项功能正常。在使用 hbase shell的过程中,首先是 hbase shell启动非常慢,约 210s才成功,其次执行 scan、put、get等命令需要 20s左右才能完成。以笔者的经验,hbase肯定出问题了,不可能这么慢。

2022-11-17 20:00:00 4409 4

原创 Logstash对接 SNMP v2和 v3

老版的 logstash不支持 snmp协议,当时只能自己写插件实现,现在官方支持了,故验证其对 v2c和 v3两个版本 snmp的支持情况,并熟悉其用法。

2022-11-04 20:00:00 1249

原创 Kibana自动优化索引模式字段显示

优化 Kibana Discover页面索引模式中字段的显示效果:0.98-> 98%,10240-> 10KB, 20.1-> $20.1。介绍如何使用脚本实现自动更新,以及如何在界面上手动修改的方法

2022-10-24 21:45:57 1188

原创 DataX VS Kettle,深度对比分析

开源的 ETL工具里面 DataX和 Kettle的人气一直高居不下,datax虽然比较年轻,但这两年发展势头很猛,不时就能听到身边的同事谈起。kettle作为老牌的 etl工具,诞生年限长,功能完善,特别是其开箱即用的数据转换算子,不得不令人叹服。因此,笔者决定对这两款工具进行深入的对比分析,有多深呢,到源码那种。

2022-10-19 20:15:00 18117 1

原创 站在使用者的角度研究 List 源码

站在使用者的角度研究下 List 源码,对其核心方法进行梳理,发现 List除了增删改查,还有部分实用的集合运算。ArrayList作为其实现类之一,方法的实现逻辑较为清晰简洁,在集合运算中还调用了 native方法。在代码风格上也很有借鉴意义,比如 使用 Objects.requireNonNull()方法进行 null判断,使用 'E'来表示本集合元素类型,用 '?'来表示其他未知集合的元素类型。

2022-10-12 22:20:49 399

原创 Elasticsearch生产环境使用总结及扩展

本文从 基本概念、数据类型、查询类型、数据聚合、集群维护等维度对 Elasticsearch进行了总结和介绍,中间融入了一些生产环境的实际经验。

2022-10-07 11:08:12 848

原创 Kibana生产上的常用功能总结

出差现场一个月总结 Kibana生产上的常用功能包含 discover,console,visualize,monitoring等的实用方法

2022-08-26 20:15:00 1908

原创 Java Socket服务端和客户端通讯实例

Java Socket服务端和客户端通讯实例本文在 java socket通讯的基础上,适当扩展了 客户端认证、多客户端支持、心跳检测等功能

2022-08-10 17:52:05 1790

原创 解决 Docker容器因 iptables无法启动的问题

解决 Docker容器因 iptables无法启动的问题driver failed programming external..iptables: No chain/target/match by that name

2022-07-30 16:41:20 8930 8

原创 使用 Zookeeper命令行修改 Kafka Cluster ID

使用 Zookeeper命令行修改 Kafka Cluster IDkafka.common.InconsistentClusterIdException: The Cluster ID q3r3fhGkTya24-s3dfvYUQ doesn't match stored clusterId Some(kguWHlzQQGmCHczV3u38vQ) in meta.properties.

2022-07-27 17:55:06 2620

原创 MySQL高可用和灾备调研

1.高可用和灾备方案概览高可用方案的评价以组件能正常对外提供服务为主,而灾备方案的评价以数据稳定同步和恢复时间尽量短为主,其他的还要求方案实现起来较简单,后期运维服务压力较小等。当下业界比较流行的 mysql高可用灾备方案是主从复制和 galera,这里先对所有的方案进行简要介绍,然后详细介绍 基于主从复制这一种方案。1.1 主从复制使用双节点数据库,搭建单向或者双向的半同步复制(semi sync replication)。在 5.7以后的版本中,由于 lossless replication、

2022-05-04 14:19:33 4623 2

原创 分析升级 OpenSSH后 Linux open files配置不生效问题

1.现象Elasticsearch、Hadoop和 MongoDB等都需要修改 Linux里面最大打开文件数这个配置,即下面的 open files[root@localhost opt]# ulimit -acore file size (blocks, -c) 0data seg size (kbytes, -d) unlimitedscheduling priority (-e) 0file size

2022-04-10 15:59:21 5586 2

原创 解决 OpenSSH开启 PAM后 root用户无法远程登录问题

1.现象OpenSSH版本:8.8p1在 openssh配置文件中开启 pam,如下:UsePAM yes发现在 windows上用远程连接工具无法以 root用户登录,其他的 linux服务器也无法以 ssh的方式登录该服务器。远程连接工具报错:Access denied2.分析从报错来看只能猜测是权限问题,具体原因还需要查看 Linux系统日志,这里简要介绍两个系统日志:/var/log/messages这里存放的是一些常规系统日志,一般的操作都能在这里找到对应日志,但是有的日志

2022-04-08 20:30:00 21875 8

原创 通过 GC工具分析 HiveServer2停顿时间过长问题

1.现象线上环境 HiveServer2报:在前 5分钟内暂停所花的平均时间过长hs2角色日志如下:2.分析看到上面的报错和日志,第一个直觉就是 hs2 GC出问题了,于是使用 jstat命令进行分析:jstat -gcutil 82775 5000 5这里先简单介绍一下 jstat这条命令:​ -gcutil,打印 gc统计信息​ 82775,java进程ID​ 5000,5000ms​ 5,5次所以这条命令的含义为:每间隔 5000ms打印一次 进程 82775的 gc

2022-04-01 20:15:00 3471

原创 数据仓库VS数据湖

1.前言本文将新兴的数据湖技术和数据仓库技术进行了对比,然后简要介绍三种常见的数据湖实施方案。2.数据仓库痛点没有存储非结构化的数据这里并不是说数仓不能存储非结构化的数据,而是数仓的分层模型决定了数据会被规整计算为结构化的数据,然后在处理完成的数据上进行建模、分析等。一般的数仓分层模型:ODS-> DWD-> DWS-> APP。数据分析人员一般会在 APP或 DWS层上进行分析,而不会直接针对 ODS(原始数据层)进行分析。没有保留原始数据企业出于成本考虑,ODS层

2022-03-26 18:34:01 3783

原创 Java连接基于 LDAP认证的 Impala服务

1.前言本文将描述如何根据 impala官方文档使用 java连接 impala。使用的 impala版本:2.12.0。2.下载和安装 JDBC包2.1 下载 JDBC包官网下载地址:Download Impala JDBC Connector这里需要根据 impala的版本选择对应的 jdbc包,impala-2.12.0对应的包如下:打开下载压缩包,可以看到官方给的指引文档:​ Cloudera-JDBC-Driver-for-Impala-Install-Guide.pdf2.2

2022-03-08 20:30:00 1375

原创 解决 HDFS edit log文件损坏问题

1.现象CDH集群 HDFS出现爆红项,具体原因是 JournalNode状态异常,查看角色日志如下:2.分析edit log文件里面存放的是hdfs一些状态信息,从报错来看是某个 edits文件无法读取导致的,结合最近服务器出现过一次集体断电,猜测是 edit log文件损坏了。3.解决查看集群组件状态,JournalNode一共有 3台机器,其中一台状态异常,另外两台状态良好,于是可以把从其中一台状态良好的机器上拷贝 edit log文件到状态异常的机器。具体步骤如下:停止集群所有服

2022-02-23 21:30:00 1074

原创 Hive通过 ZooKeeper开启 HA(高可用)

前言生产上的大数据平台都会配置多个 HiveServer,在使用 JDBC这种方式连接 hive服务时,如果直接连接某个 HiveServer,当其所在机器异常时,就会导致服务不可用。因此,生产上一般都要求使用 ZooKeeper开启 HA,通过 zk去间接访问 hive服务。这里以 CDH 5.X为例介绍 Hive如何通过 ZooKeeper开启 HA。Hive开启 HA(高可用)修改界面配置打开 CDH界面,然后在 Hive配置里面搜索 hive-site,如下:然后添加如下配置项:

2022-02-17 20:00:00 3758

原创 解决 HDFS副本数不足问题

1.现象CDH界面 HDFS出现爆红项,查看详情发现是 副本数不足导致的,如下:HDFS和 CDH版本:2.6.0+cdh5.15.1+28222.分析报错是很明确的:接近 99%的 hdfs块副本缺失。默认情况下 hdfs的副本一般是3个,要求至少有3个 DataNode。出问题的集群是一个测试集群,之前一共有 3台机器,最近由于一台机器故障,现在集群只剩 2台机器了,问题应该就出在这里了。明确一下问题的原因:​ 集群现有的机器数量不满足 3个 DataNode的要求,故导致副本数不足。

2022-01-27 15:56:14 5295

原创 Hive 简明使用教程

1.简介The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data already in storage. A command line tool and JDBC driver are provided t

2022-01-18 15:09:52 2668

原创 NLP 算法工具箱(关键词、实体、摘要、文本相似度)

1.前言本项目包含几种常用 NLP算法的实现:关键词(keyword)、命名实体(named entity)、自动摘要(abstract)、文本相似度比较(text similarity)等。另外,本项目基于 python3,依赖 jieba,tensorflow等第三方库。2.NLP 工具箱简介2.1 关键词在 jieba的基础上,进行了一些封装。可以很方便的在 etc/user_words.dict中添加用户词典,以加强对一些领域特有关键词的识别。调用举例:kw_extract = Key

2022-01-16 11:44:31 1244

原创 CentOS7搭建和维护共享 YUM源

1. 前言虽然互联网上已经有了多个公开的可以直接使用的 yum源,但是针对于内网(局域网)这种无法连接互联网,又需要安装维护多台服务器的场景,就需要搭建一个内网的共享 yum源了。此时,就会涉及如何搭建本地 yum源、从公开 yum源同步 rpm包,以及手动添加 rpm包等操作,这就是本文的主要内容。本文基于 CentOS7.9编写,应用场景为局域网多台服务器。2. 搭建多主机共享的 YUM源2.1 创建本地 YUM源这里使用 CentOS操作系统镜像文件作为本地 yum源的基础 rpm包。

2021-11-27 15:39:12 915

空空如也

空空如也

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

TA关注的人

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