- 博客(61)
- 收藏
- 关注
原创 Agent每轮聊天的历史消息的存入规则
每一个ToolMessage(工具执行结果)的前面,必须紧跟着触发它的哪个AIMessage(包括tool_call请求),如果中间插入了别的人类发言,或者顺序反了,大模型在下一轮读取时就会直接发生逻辑混乱或报错。当前仅当大模型输出的AIMessage中,tool_calls为空且content有文本内容时, 这意味着工具探索全部结束,模型给出了人话最终回复。大模型的每轮对话中,不仅要记住人类说了什么,还要记得它自己为什么去调工具以及工具返回了什么。一条对话线什么时候可以既定事实沉淀进历史库。
2026-06-18 16:02:48
247
原创 调用大模型的输出一般是什么样子的
后什么都拿不到——因为当时大模型满脑子都在想着调工具,根本没写半个字的普通回复。: 它从用户“帮我查查北京的天气”这句话中,自动提取出了结构化参数。这是大模型的“休止符”信号。普通的对话结束时,这里通常会显示。(代表话已经说完了)。: 它精准地选中了你提供给它的。这再次证明了为什么你加了。正如我们刚才推断的,它的。
2026-06-15 19:35:54
203
原创 记一次大模型探索
return "根据搜索,为您找到以下信息:\n" + "\n".join(formatted_results)return f"{city}当前天气:{weather_desc},气温{temp_c}摄氏度"query = f"'{city}' 在'{weather}'天气下最值得去的旅游景点推荐及理由"observation = f"错误:未定义的工具 '{tool_name}'"print(f"用户输入: {user_prompt}\n" + "=" * 40)
2026-06-15 19:00:05
27
原创 这是不是大模型的幻觉
observation = f"错误:未定义的工具 '{tool_name}'""你是一个专业的智能助手。# print("已截断多余的 Thought-Action 对")# print(f"任务完成,最终答案: {final_answer}")# print(f"用户输入: {user_prompt}\n" + "=" * 40)# print(f"模型输出:\n{llm_output}\n")print(f"--- 循环 {i + 1} ---\n")
2026-06-15 18:53:56
42
转载 python中实现DTW算法
3)单调性: 如果 w k − 1 = ( a ′ , b ′ ) w_k-1=(a',b')wk−1=(a′,b′),且w k = ( a , b ) w_k=(a,b)wk=(a,b),则必须满足a − a ′ ≥ 0 a-a' \geq 0a−a′≥0。DTW最初用于识别语音的相似性。现在我们用一个6*6矩阵M表示序列A(1-1-3-3-2-4)和序列B(1-3-2-2-4-4)各个点之间的距离,M ( i , j ) M(i, j)M(i,j) 等于A的第i个点和B的第j个点之间的距离,即。
2024-09-23 17:13:34
1332
1
原创 go exec.Command使用
funccheckRuntimeProcessExit(msg*tcpmsg.Message)bool{+varerrerror+reqBody,err=getRequestBody(msg)+iferr!=nil{+returnfalse+}++arg=fmt.Sprintf("%s%s","psaux|grep-vgrep|grep",reqBody.Version)+cmd=exec.Command("bash","-c",arg)+iferr=cmd.Start();err!=n。
2022-08-01 15:27:15
900
转载 如何分析go程序的性能
(1) shell内置time指令这个方法不算新颖,但是确很实用。time是Unix/Linux内置多命令,使用时一般不用传过多参数,直接跟上需要调试多程序即可。$ time go run test2.go &{{0 0} 张三 0}real 0m0.843suser 0m0.216ssys 0m0.389s上面是使用time对go run test2.go对执行程序坐了性能分析,得到3个指标。real:从程序开始到结束,实际度过的时间; user:程序在用户态度..
2022-04-27 10:42:07
313
原创 TreeMap的floorEntry和ceilingEntry用法区别
floorEntry方法找到第一个小于或等于指定key的Map.EntryceilingEntry方法找到第一个大于或等于指定key的Map.Entry测试代码如下所示public class TreeMapTest { private static NavigableMap<Integer, Integer> rankingMap = new TreeMap<Integer, Integer>(); static { rankingMap.
2022-04-21 15:41:30
3048
原创 java几种排序方式
1. 数组排序Arrrays.sort(list) 默认升序排序Arrays.sort(list, comparator)默认按照comparator中实现的排序定义进行排序,以下面一个例子为例,则是按照test数组的中每一个元素的第二位进行排序,也即是按照6, 2, 4进行排序int [][] test = new int[][]{{5, 6, 1}, {1, 2, 2}, {3, 4, 3}};Arrays.sort(test, Comparator.comparingInt(a -&g
2022-04-20 10:28:59
16353
转载 Golang 应用集成 Prometheus 统计数据支持
基本概念Prometheus 所有采集的监控数据均以指标(metric)的形式保存在内置的时间序列数据库当中(TSDB):属于同一指标名称,同一标签集合的、有时间戳标记的数据流。除了存储的时间序列,Prometheus 还可以根据查询请求产生临时的、衍生的时间序列作为返回结果。样本在时间序列中的每一个点称为一个样本(sample),样本由以下三部分组成:指标(metric):指标名称和描述当前样本特征的 labelsets;时间戳(timestamp):一个精确到毫秒的时间戳;样本值(v
2022-04-11 16:32:17
3047
原创 http.ListenAndServe试验
通过如下代码实现了一个“net/http”包下Hanlder接口的自定义结构体类myHandler, 然后创建了一个针对localhost:8080, path为/test路径的监听package mainimport ( "fmt" "net/http")func main() { testHandler := myHandler{} http.Handle("/test", &testHandler) fmt.Println(http.Liste..
2022-04-11 16:15:27
502
转载 JVM内存模型(通俗易懂)
原文链接:https://blog.youkuaiyun.com/qq_36704549/article/details/1093905661.什么是jvm?(1)jvm是一种用于计算设备的规范,它是一个虚构出来的机器,是通过在实际的计算机上仿真模拟各种功能实现的。(2)jvm包含一套字节码指令集,一组寄存器,一个栈,一个垃圾回收堆和一个存储方法域。(3)JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。JVM在执行
2022-04-09 21:09:21
142
原创 java两个线程交替打印1-100之间的数字
package com.test.thread.test;public class ThreadTest { public static final Object lock = new Object(); static class A implements Runnable { public void run() { for (int i = 1; i <= 100; i++) { synchronized.
2022-04-08 14:59:45
1710
2
转载 深入理解Java内存(图解)--转载
深入理解Java内存(图解)这篇文章是转自Java 内存分配全面浅析_袭烽的博客-优快云博客_java内存分配博文,自己对其中一些东西加入了自己的理解和补充。 进入正题前首先要知道的是Java程序运行在JVM(Java Virtual Machine,Java虚拟机)上,可以把JVM理解成Java程序和操作系统之间的桥梁,JVM实现了Java的平台无关性,由此可见JVM的重要性。所以在学习Java内存分配原理的时候一定要牢记这一切都是在JVM中进行的,JVM是内存分配原理的基础与前提。 简单通.
2022-04-06 11:40:26
553
原创 Redis客户端性能压测工具 redis-benchmark是否支持集群模式
Redis客户端性能压测工具redis-benchmark支持集群模式的官网代码提交记录:https://github.com/redis/redis/commit/dfd3cc5f783630c1611ff2922f6f1f1171be44f5#diff-f37c3eacb5f6ac27e8fa820f102e8b57f0f33c7b46e5ef2ba46b8ad8a56c86a6Redis客户端性能压测工具redis-benchmark对集群模式支持的说明:https://github.co
2021-07-27 10:42:51
2621
转载 Eclipse Memory Analyzer入门学习笔记
原文链接:https://blog.youkuaiyun.com/cc907566076/article/details/79108782Eclipse Memory Analyzer是一个快速而功能丰富的Java堆分析器,可帮助您查找内存泄漏并减少内存消耗。使用内存分析器分析数亿个对象的生产性堆转储,快速计算保留的对象大小,查看谁阻止垃圾收集器收集对象,运行报告以自动提取泄漏的嫌疑人。应用的主要领...
2020-03-10 11:46:37
367
转载 Eclipse Memory Analyzer 的使用教程最实用
原文出处:郭霖,http://blog.youkuaiyun.com/sinyu890807/article/details/42238633?locationNum=4Eclipse Memory Analyzer(MAT)是一款内存分析工具,下载地址这个工具分为Eclipse插件版和独立版两种,如果你是使用Eclipse开发的,那么可以使用插件版MAT,非常方便。如果你是使用Android Stu...
2020-03-10 11:43:46
9917
原创 IBM HeapAnalyzer
大家在开发J2EE应用时可能经常碰到OOM的问题。出现这种问题的原因就是内存消耗殆尽,创建新的对象时没有可分配的内存了。为了找到真正导致OOM的原因,这里将使用IBMheapAnalyzer工具进行定位。首先要知道,IBM heapAnalyzer是通过分析OOM后的Javaheap dump文件的,通过对dump文件的分析找到内存可能泄露的点。了解这个之后,我们首先需要生成dump文件,...
2020-03-09 20:39:53
1592
1
转载 Java基础篇 - 强引用、弱引用、软引用和虚引用
前言Java执行GC判断对象是否存活有两种方式其中一种是引用计数。引用计数:Java堆中每一个对象都有一个引用计数属性,引用每新增1次计数加1,引用每释放1次计数减1。在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于(reachable)可达状态,程序才能使用它。从JDK 1.2版本开始,对象的引用被划分为4种级别,从而使...
2020-03-09 17:43:45
222
转载 用IBM HeapAnalyzer分析二进制dump文件
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.youkuaiyun.com/my201110lc/article/details/82909344附上Eclipse Mat分析dump文件方法:https://www.cnblogs.com/liangzs/p/8489321.html执行命令:./Par...
2019-11-04 22:57:37
689
转载 org.apache.coyote.http11.Http11BaseProtocol 详解
概述这个包支持http1.1协议,内部分为三类:ARP、NIO、普通http,这里只对最基本的普通http(使用java的IO流,而非NIO流)作简单研究根据上一篇提到的coyote的接口,这个包主要有以下几个类:Http11Protocol,实现了ProtocolHandler接口Http11Processor,实现了ActionHook接口InternalInputBuffer,...
2019-04-16 15:04:33
4920
转载 java线程waiting与blocked的区别
java线程中含有waiting与blocked两种状态,两种状态有着明显的区别,本文从jdk源码中两种状态的设计角度和状态进入角度来分析两者的区别。源码分析处于blocked状态的线程等待获取监视器锁以期进入同步代码块/方法中,文档中的在调用Object.wait()方法后重入同步代码块/方法不是很理解。档介绍了导致线程进入Wating状态的原因以及如何退出Wating状态...
2019-04-11 20:19:18
1179
转载 xml解析之sax方式解析xml文件
SAX解析方式会逐行地去扫描XML文档,当遇到标签时会触发解析处理器,采用事件处理的方式解析XML (Simple API for XML) ,不是官方标准,但它是 XML 社区事实上的标准,几乎所有的 XML 解析器都支持它。优点是:在读取文档的同时即可对XML进行处理,不必等到文档加载结束,相对快捷。不需要加载进内存,因此不存在占用内存的问题,可以解析超大XML。缺点是:只能用来读取XML中数...
2019-04-09 18:23:29
551
转载 [转]servlet中的service, doGet, doPost方法的区别和联系
原文地址:http://m.blog.youkuaiyun.com/blog/ghyg525/22928567大家都知道在javax.servlet.Servlet接口中只有init, service,destroy方法但是我们在继承HttpServlet的时候为何一般重写doGet和doPost方法呢下面我们看一下Servlet源代码:注意: JDK只是定义了servlet接口,而实现se...
2019-04-04 11:36:13
165
原创 java反射之Field 设置属性值
进行了如下的实验 import java.lang.reflect.Field;public class User { private String name; private Integer age; private Double height; public String getName() { return name...
2019-02-23 09:59:36
8805
转载 Axis2配置指南
In Axis2, there are three kinds of configuration files to configure the system. The first one is to configure the whole system (global configuration), the second one is to configure a service (service...
2019-01-28 19:32:16
1650
转载 Exception e getMessage()为null情况
有没有遇到过Exception e getMessage()为null情况;如下,获取message为null。 在Exception的父类Throwable中,有getMessage方法,该方法其实返回的就是detailMessage,从上图看出,detailMessage为null,那通过getMessage方法当然就取不到值了。 当然从第一个图中已然发下,e1其...
2019-01-05 15:51:18
8924
2
转载 SSL握手过程实例分析
SSL握手过程实例分析为了更好理解SSL协议的握手过程,结合实例,使用Wireshark抓包分析SSL握手过程中客户端与服务器间的交互过程。本例中服务器为https://www.baidu.com/(180.97.33.108),客户端为本机浏览器(192.168.0.109)。本实例中只有客户端验证服务端,服务端并没有对客户端进行验证,一般相互进行身份认证的情况在登录银行系统时会用到。...
2018-11-29 21:03:59
2596
转载 WEBSERVICE核心之WSDL深入详解
WebService核心之WSDL深入详解 根据上一篇文章开发的Web Service实例生成的WSDL文档如下: XML里两个属性介绍: targetNamespace 相当于java语言里的packagexmlns 相当于java语言里的import 截图详解:...
2018-11-22 22:03:14
500
转载 TLS/SSL工作原理
HTTPS协议的主要功能基本都依赖于TLS/SSL协议,本节分析TLS/SSL协议工作原理。 TLS/SSL的功能实现主要依赖于三类基本算法:散列函数 Hash、对称加密和非对称加密,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性。 散列函数Hash 常见的有 MD5、SHA1、SHA256,该类函数特点是...
2018-11-22 19:09:06
214
转载 HTTPS协议详解:PKI体系
1、RSA身份验证的隐患 身份验证和密钥协商是TLS的基础功能,要求的前提是合法的服务器掌握着对应的私钥。但RSA算法无法确保服务器身份的合法性,因为公钥并不包含服务器的信息,存在安全隐患: 客户端C和服务器S进行通信,中间节点M截获了二者的通信; 节点M自己计算产生一对公钥pub_M和私钥pri_M; C向S请求公钥时,M把自己的公钥pub_M发给了C; ...
2018-11-22 18:58:12
535
转载 关于pfx证书和cer证书
Pfx证书,同时包含了公钥信息和私钥信息 Cer证书只包含公钥信息 如果客户端与网站通信时需要用到私钥(基本所有需要数字证书的网站都会用到私钥),则cer证书是无法正常访问网站的,网站会提示“该页要求客户证书” 由于cer证书只包含公钥信息,一般只能用于解密使用(解密该公钥对应的私钥加密的数据)。 Pfx证书既可以导出为pfx证书,也可以导出...
2018-11-15 20:06:53
41192
7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅