NLP 开源形近字算法之相似字列表(番外篇)
创作目的
国内对于文本的相似度计算,开源的工具是比较丰富的。
但是对于两个汉字之间的相似度计算,国内基本一片空白。国内的参考的资料少的可怜,国外相关文档也是如此。
本项目旨在抛砖引玉,实现一个基本的相似度计算工具,为汉字 NLP 贡献一点绵薄之力。
推荐阅读:
NLP 中文形近字相似度计算思路
中文形近字相似度算法实现,为汉字 NLP 尽一点绵薄之力
当代中国最贵的汉字是什么?
NLP 开源形近字算法补完计划(完结篇)
NLP 开源形近字算法之形近字列表(番外篇)
开源项目在线化 中文繁简体转换/敏感词/拼音/分词/汉字相似度/markdown 目录
需求
有时候我们并不是需要返回两个字的相似,而是需要返回一个汉字的相似列表。
实现思路
我们可以分别计算所有的汉字之间的相似度,然后保留最大的前100个,放在字典中。
然后实时查询这个字典即可。
实现方式
bihuashu_2w.txt
中我们主要需要的是对应的 2W 常见汉字。
hanzi_similar_list.txt
用来存放汉字和相似字的映射关系。
数据初始化
public static void main(String[] args) {final String path = "D:\\code\\coin\\nlp-hanzi-similar\\src\\main\\resources\\hanzi_similar_list.txt";// 读取列表List<String> lines = FileUtil.readAllLines("D:\\code\\coin\\nlp-hanzi-similar\\src\\main\\resources\\nlp\\bihuashu_2w.txt");// 所有的单词Set<String> allWordSet = new HashSet<>();for(String line : lines) {String word = line.split(" ")[0];allWordSet.add(word);}// 循环对比for(String word : allWordSet) {List<String> list = getSimilarListData(word, allWordSet);String line = word +" " + StringUtil.join(list, "");FileUtil.append(path, line);}
}
- 优先级队列取前 100 个
我们通过优先级队列存储:
private static List<String> getSimilarListData(String word, Set<String> wordSet) {PriorityQueue<SimilarListDataItem> items = new PriorityQueue<>(new Comparator<SimilarListDataItem>() {@Overridepublic int compare(SimilarListDataItem o1, SimilarListDataItem o2) {// 相似度大的放在前面return -o1.getRate().compareTo(o2.getRate());}});for(String other : wordSet) {if(word.equals(other)) {continue;}// 对比double rate = HanziSimilarHelper.similar(word.charAt(0), other.charAt(0));SimilarListDataItem item = new SimilarListDataItem(other, rate);items.add(item);}final int limit = 100;List<String> wordList = new ArrayList<>();for(SimilarListDataItem item : items) {wordList.add(item.getWord());if(wordList.size() >= limit) {break;}}return wordList;
}
相似字的获取
初始化好数据之后,一切就变得非常简单:
- 接口定义
/*** 数据接口-相似列表* @author binbin.hou* @since 1.3.0*/
public interface IHanziSimilarListData {/*** 返回数据信息* @param word 单词* @return 结果* @since 1.3.0*/List<String> similarList(String word);}
- 数据获取
public class HanziSimilarListData implements IHanziSimilarListData {private static volatile Map<String, List<String>> map = Guavas.newHashMap();@Overridepublic List<String> similarList(String word) {if(MapUtil.isEmpty(map)) {initDataMap();}return map.get(word);}private void initDataMap() {if(MapUtil.isNotEmpty(map)) {return;}//DLCsynchronized (map) {if(MapUtil.isEmpty(map)) {List<String> lines = StreamUtil.readAllLines("/hanzi_similar_list.txt");for(String line : lines) {String[] words = line.split(" ");// 后面的100个相近词List<String> list = StringUtil.toCharStringList(words[1]);map.put(words[0], list);}}}}}
便利性
为了用户使用方便,我们在 HanziSimilarHelper
中添加 2 个工具类方法:
/*** 相似的列表* @param hanziOne 汉字一* @param limit 大小* @return 结果* @since 1.3.0*/
public static List<String> similarList(char hanziOne, int limit) {return HanziSimilarBs.newInstance().similarList(hanziOne, limit);
}
/*** 相似的列表* @param hanziOne 汉字一* @return 结果* @since 1.3.0*/
public static List<String> similarList(char hanziOne) {return similarList(hanziOne, 10);
}
测试效果
我们使用看一下效果:
我们来看一下【爱】的形近字。
List<String> list = HanziSimilarHelper.similarList('爱');
Assert.assertEquals("[爰, 爯, 受, 爭, 妥, 憂, 李, 爳, 叐, 雙]", list.toString());
开源地址
为了便于大家使用学习,项目已开源。
https://github.com/houbb/nlp-hanzi-similar
小结
一个字的形近字可以做很多有趣的事情,这个要看大家的想象力。
实现方式也不难,最核心的还是相似度的计算。
我是老马,期待与你的下次重逢。
相关文章
- Flutter 笔记 | Flutter 事件与通知
原始指针事件处理 命中测试 在移动端,各个平台或UI系统的原始指针事件模型基本都是一致,即:一次完整的事件分为三个阶段:手指按下、手指移动、和手指抬起,而更高级别的手势(如点击、双击、拖动等…...
2023/5/28 21:45:47 - Dubbo入门案例
1.基于以下图实现服务 提供者、消费者 2.前期工作 父POM <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLo…...
2023/5/28 21:35:13 - 进程间通信之信号量
进程间通信之信号量 1. 问题2. 什么是信号量(考点,重点关注)3. 信号量的使用4. 实例1. 问题 程序中,有时存在一种特殊代码,最多只允许一个进程执行该部分代码。 这部分区域,称为“临界区”. 然而在多进程并发执行时,当一个进程进入临界区,因某种原因被挂起时,其他进程就…...
2023/5/28 21:33:05 - Cookie(三) -- Cookie案例 -- 记住上一次访问时间
目录 1. 案例需求: 2. 案例代码: 3. CookieUtils工具类: 1. 案例需求: 访问一个Servlet,如果是第一次访问,则提示:您好,欢迎您首次访问。 如果不是第一次访问,则提示:欢迎回来,您上次访问时间为:显示时间字符串。...
2023/5/28 21:32:00 - 网络安全做红队攻防 35 岁以后可以干嘛?
35岁之后不是都当技术总监,CTO了或者自己创业了吗? 不会,单渗透测试来说,到后期更多是经验的积累。同一个事情,经验老道师傅的可能用更少的命令,发更少的请求完成这个事情,更隐蔽,更…...
2023/5/28 21:27:27 - Java中数据库加密的方式
前言 在现今互联网时代,数据安全已经成为了我们必须要面对的重要课题。对于Java开发人员而言,在实现数据库的加密时需要考虑到很多方面,比如性能、安全性、成本等等。在本篇博客中,我们将会介绍Java中常用的几种数据库加密方式&a…...
2023/5/28 21:26:59 - 云计算——云计算服务类型
作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页 前言 本章将会讲解的云计算的服务类型。 一.云计算的服务类型 1.基础设施既服务IaaS&…...
2023/5/28 21:25:08 - 多线程和多进程
线程和进程 最近经常看到多线程和多进程,这两个概念在某些方向还是很像的,但是进程和线程到底有啥联系,又有啥区别,很多人并没有完全弄明白,最近学操作系统的时候,老师经常叫线程为进程的进程,…...
2023/5/28 21:20:14 - Android进阶 View事件体系(三):典型的滑动冲突情况和解决策略
Android进阶 View事件体系(三):典型的滑动冲突情况和解决策略 内容概要 本篇文章为总结View事件体系的第三篇文章,前两篇文章的在这里: Android进阶 View事件体系(一):概要介绍和实…...
2023/5/28 21:17:16 - ATA-3000系列功率放大器在精密微流体控制中的典型应用
ATA-3000系列功率放大器在精密微流体控制中的典型应用 压电陶瓷精密微流体控制应用: 精密微流体控制在医药配比、遗传基因与生物工程、航空航天、军工国防等方面具有广泛的应用,特别是在大流量伺服阀先导控制领域,具有重要作用。随着压电陶瓷…...
2023/5/28 21:15:38 - server-2016理论点
♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️树高千尺,落叶归根人生不易&…...
2023/5/28 21:13:44 - 哈希应用: 位图 + 布隆过滤器
文章目录 哈希应用: 位图 布隆过滤器1. 位图1.1 提出问题1.2 位图概念1.3 位图实现1.4 位图应用1.4.1 变形题1代码 1.4.2 变形题21.4.3 找文件交集思路1思路2 1.4.4 总结 1.5 位图优缺点 2. 哈希切割3. 布隆过滤器3.1 提出问题3.2 布隆过滤器概念3.3 布隆过滤器的各个接口3.3.…...
2023/5/28 21:05:06 - 什么是用户态和内核态?用户态切换内核态会有什么影响?
一、什么是用户态和内核态? 简单来讲,像使用java开发时,调用java中封装的普通方法程序时属于用户态,而操作内存或者cpu比如 new Thread()创建一个线程,Class.forName(xxx.class)这种属于内核态 用户态和内核态是操作系…...
2023/5/28 21:00:52 - opencv_c++学习(二十七)
一、单目相机模型 上图为针孔相机成像原理,蓝色坐标中的O即为镜头光心。成像原理与小孔成像相同。 单目相机映射关系如下: 将上式进行变换,就可以从三位空间映射到2维平面的公式。 相机的畸变公式如下: 二、模型投影函数 vo…...
2023/5/28 20:56:28 - STM32之温湿度LCD显示并上传服务器
目录 项目需求 项目框图 硬件清单 LCD1602介绍及实战 硬件接线 引脚封装 代码实现 DHT11介绍及实战 硬件接线 引脚封装 代码实现 项目设计及实现 项目设计 项目实现 项目需求 使用温湿度传感器模块( DHT11 )获取温度及湿度,…...
2023/5/28 20:54:01 - 如何使用Vuex来管理应用程序的状态?
嘿,你好啊!你想知道如何用Vuex来管理你的应用程序的状态吗?这听起来像是一个严肃的问题,但其实我们可以把它变得非常有趣! 首先,我们需要安装Vuex。你可以通过运行以下命令来安装Vuex: npm in…...
2023/5/28 20:53:20 - 华为OD机试之过滤组合字符串(Java源码)
过滤组合字符串 题目描述 每个数字关联多个字母,关联关系如下: 0 关联 “a”,”b”,”c”1 关联 “d”,”e”,”f”2 关联 “g”,”h”,”i”3 关联 “j”,”k”,”l”4 关联 “m”,”n”,”o”5 关联 “p”,”q”,”r”6 关联 “s”,”t”7 关联 “u”…...
2023/5/28 20:50:23 - 【C++】static在类中修饰成员变量成员函数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、定义:二、特性:1. 静态成员为所有类对象所共享,不属于某个具体的对象,存放在静态区2. 静态成员变量必须在类外定…...
2023/5/28 20:43:10 - python基础知识(二):变量和常用数据类型
目录 1. 变量1.1 变量的定义1.2 变量的命名规则 2. 常用数据类型2.1 字符串2.1.1 字符串的常用方法2.1.1.1 title()方法:将字符串中的单词首字母大写2.1.1.2 upper()方法:将字符串中的单词字母全大写2.1.1.3 lower()方法:将字符串中的单词字母…...
2023/5/28 20:42:39 - SpringBoot2-核心技术(一)
SpringBoot2-核心技术(一) 了解SpringBoot配置文件的使用 文章目录 SpringBoot2-核心技术(一)了解SpringBoot配置文件的使用一、文件类型1. properties2. yaml 二、yaml的基本使用1. 基本语法2. 数据类型2.1 字面量 2.2 对象2.3 …...
2023/5/28 20:40:28 - JSP(一) -- 简单入门
目录 1. JSP 简介 2. JSP和HTML以及Servlet的适用场景 3. 简单入门 1. JSP 简介 JSP全称是Java Server Page,它和Servlet一样,也是sun公司推出的一套开发动态web资源的技术,称为JSP/Servlet规范。 JSP的本质其实就是一个特殊的 Servlet。 JSP的原理:...
2023/5/28 20:38:15 - SpringBoot集成ElasticSearch
文章目录 前言一、ElasticSearch本地环境搭建二、SpringBoot整合ElasticSearch1.pom中引入ES依赖2.application.yaml配置elasticsearch3.ElasticSearchClientConnect连接ES客户端工具类4.ElasticSearchResult封装响应结果5.Person实体类6.Person实体类7.ElasticsearchControlle…...
2023/5/28 20:34:04 - 数据结构入门(C语言版)图的概念和功能函数实现
图的概念和功能函数实现 前言1.图的定义和术语1.1 定义1.2 常用术语 2.图的存储结构2.1 图的数组(邻接矩阵)存储表示2.2 图的邻接表存储表示 3.图的遍历3.1 深度优先搜索3.2 广度优先搜索3.3 示例 4.连通网的最小生成树4.1 克鲁斯卡尔(Kruskal)算法4.2 普里姆(Prim)算法 5.图的…...
2023/5/28 20:25:06 - 初识linux之简单了解TCP协议与UDP协议
目录 一、理解源IP地址和目的IP地址 二、端口号 1. 为什么要有端口号 2. 理解端口号 3. 源端口号和目的端口号 三、初步了解TCP协议和UDP协议 1. 初步认识TCP协议 2. 初步认识UDP协议 3. 可靠传输与不可靠传输 四、网络字节序 1. 网络字节序的概念 2. 如何形成网络…...
2023/5/28 20:21:28 - 数据大航海时代,奇安信如何构筑数据安全的“天盾”?
你知道你的数据正在“被动”泄露吗? 随着ChatGPT技术的快速落地,数据安全面临的挑战越来越多。数据安全供应商Cyberhaven近期发布的一份研究显示,在2023年初的一周内,每十万名员工中机密业务数据被输入ChatGPT199次。用户可能没有…...
2023/5/28 20:20:46 - 矿井水除总氮工艺详解
一、项目概述 项目背景: 1、水资源浪费长期以来,采煤对地下水造成了严重破坏。绝大部分矿井水,被以直排方式,流入河道、田野,这不仅造成水资源的白白浪费,也污染了环境。社会对此反响强烈的同时,煤矿企业也…...
2023/5/28 20:19:59 - Glide预加载图片preload失效问题修复!
背景 项目中有这样一个需求:在APP中展示一个操作指引,这是三张服务端下发的图片。 为了提高用户体验,想要先下载图片,然后下载完成之后,再对图片进行展示,这样用户就不必看到加载图片时的空白状态。 实现方案 这里我打算新写一个工具类,专门用来处理类似的请求。同时…...
2023/5/28 20:18:48 - 从零开始学习JavaScript:轻松掌握编程语言的核心技能①
从零开始学习JavaScript:轻松掌握编程语言的核心技能 一,JavaScript 简介为什么学习 JavaScript?JavaScript 用法 二,JavaScript 输出JavaScript 显示数据JavaScript:直接写入 HTML 输出流 三,JavaScript 语法JavaScr…...
2023/5/28 20:15:31 - Nacos源码-从Demo出发研究事件驱动与观察者模式的应用
在我们分析 Nacos 源码时,会看见大量的事件发布的动作,不管是客户端注册/下线、服务改变、服务订阅等等都是利用了事件发布。 下面我在自己的项目中,引入Nacos的依赖进行一个简单的demo的演示,我个人认为其和spring容器的listene…...
2023/5/28 20:14:34 - 只做笔记有必要买apple pencil吗?好写的电容笔排行榜
随着科技的发展,出现了许多新的电子器件和数码器件。比如智能手机,比如ipad,比如电容笔等等。但实际上,想要让ipad发挥出最大的作用,就必须要有一支好的电笔。就像是我们在ipad上写字,总是要手写࿰…...
2023/5/28 20:14:14
最新文章
- Flutter 笔记 | Flutter 事件与通知
原始指针事件处理 命中测试 在移动端,各个平台或UI系统的原始指针事件模型基本都是一致,即:一次完整的事件分为三个阶段:手指按下、手指移动、和手指抬起,而更高级别的手势(如点击、双击、拖动等…...
2023/5/28 21:45:47 - Dubbo入门案例
1.基于以下图实现服务 提供者、消费者 2.前期工作 父POM <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLo…...
2023/5/28 21:35:13 - 进程间通信之信号量
进程间通信之信号量 1. 问题2. 什么是信号量(考点,重点关注)3. 信号量的使用4. 实例1. 问题 程序中,有时存在一种特殊代码,最多只允许一个进程执行该部分代码。 这部分区域,称为“临界区”. 然而在多进程并发执行时,当一个进程进入临界区,因某种原因被挂起时,其他进程就…...
2023/5/28 21:33:05 - Cookie(三) -- Cookie案例 -- 记住上一次访问时间
目录 1. 案例需求: 2. 案例代码: 3. CookieUtils工具类: 1. 案例需求: 访问一个Servlet,如果是第一次访问,则提示:您好,欢迎您首次访问。 如果不是第一次访问,则提示:欢迎回来,您上次访问时间为:显示时间字符串。...
2023/5/28 21:32:00 - 网络安全做红队攻防 35 岁以后可以干嘛?
35岁之后不是都当技术总监,CTO了或者自己创业了吗? 不会,单渗透测试来说,到后期更多是经验的积累。同一个事情,经验老道师傅的可能用更少的命令,发更少的请求完成这个事情,更隐蔽,更…...
2023/5/28 21:27:27 - Java中数据库加密的方式
前言 在现今互联网时代,数据安全已经成为了我们必须要面对的重要课题。对于Java开发人员而言,在实现数据库的加密时需要考虑到很多方面,比如性能、安全性、成本等等。在本篇博客中,我们将会介绍Java中常用的几种数据库加密方式&a…...
2023/5/28 21:26:59 - 云计算——云计算服务类型
作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页 前言 本章将会讲解的云计算的服务类型。 一.云计算的服务类型 1.基础设施既服务IaaS&…...
2023/5/28 21:25:08 - 多线程和多进程
线程和进程 最近经常看到多线程和多进程,这两个概念在某些方向还是很像的,但是进程和线程到底有啥联系,又有啥区别,很多人并没有完全弄明白,最近学操作系统的时候,老师经常叫线程为进程的进程,…...
2023/5/28 21:20:14 - Android进阶 View事件体系(三):典型的滑动冲突情况和解决策略
Android进阶 View事件体系(三):典型的滑动冲突情况和解决策略 内容概要 本篇文章为总结View事件体系的第三篇文章,前两篇文章的在这里: Android进阶 View事件体系(一):概要介绍和实…...
2023/5/28 21:17:16 - ATA-3000系列功率放大器在精密微流体控制中的典型应用
ATA-3000系列功率放大器在精密微流体控制中的典型应用 压电陶瓷精密微流体控制应用: 精密微流体控制在医药配比、遗传基因与生物工程、航空航天、军工国防等方面具有广泛的应用,特别是在大流量伺服阀先导控制领域,具有重要作用。随着压电陶瓷…...
2023/5/28 21:15:38 - server-2016理论点
♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️树高千尺,落叶归根人生不易&…...
2023/5/28 21:13:44 - 哈希应用: 位图 + 布隆过滤器
文章目录 哈希应用: 位图 布隆过滤器1. 位图1.1 提出问题1.2 位图概念1.3 位图实现1.4 位图应用1.4.1 变形题1代码 1.4.2 变形题21.4.3 找文件交集思路1思路2 1.4.4 总结 1.5 位图优缺点 2. 哈希切割3. 布隆过滤器3.1 提出问题3.2 布隆过滤器概念3.3 布隆过滤器的各个接口3.3.…...
2023/5/28 21:05:06 - 什么是用户态和内核态?用户态切换内核态会有什么影响?
一、什么是用户态和内核态? 简单来讲,像使用java开发时,调用java中封装的普通方法程序时属于用户态,而操作内存或者cpu比如 new Thread()创建一个线程,Class.forName(xxx.class)这种属于内核态 用户态和内核态是操作系…...
2023/5/28 21:00:52 - opencv_c++学习(二十七)
一、单目相机模型 上图为针孔相机成像原理,蓝色坐标中的O即为镜头光心。成像原理与小孔成像相同。 单目相机映射关系如下: 将上式进行变换,就可以从三位空间映射到2维平面的公式。 相机的畸变公式如下: 二、模型投影函数 vo…...
2023/5/28 20:56:28 - STM32之温湿度LCD显示并上传服务器
目录 项目需求 项目框图 硬件清单 LCD1602介绍及实战 硬件接线 引脚封装 代码实现 DHT11介绍及实战 硬件接线 引脚封装 代码实现 项目设计及实现 项目设计 项目实现 项目需求 使用温湿度传感器模块( DHT11 )获取温度及湿度,…...
2023/5/28 20:54:01 - 如何使用Vuex来管理应用程序的状态?
嘿,你好啊!你想知道如何用Vuex来管理你的应用程序的状态吗?这听起来像是一个严肃的问题,但其实我们可以把它变得非常有趣! 首先,我们需要安装Vuex。你可以通过运行以下命令来安装Vuex: npm in…...
2023/5/28 20:53:20 - 华为OD机试之过滤组合字符串(Java源码)
过滤组合字符串 题目描述 每个数字关联多个字母,关联关系如下: 0 关联 “a”,”b”,”c”1 关联 “d”,”e”,”f”2 关联 “g”,”h”,”i”3 关联 “j”,”k”,”l”4 关联 “m”,”n”,”o”5 关联 “p”,”q”,”r”6 关联 “s”,”t”7 关联 “u”…...
2023/5/28 20:50:23 - 【C++】static在类中修饰成员变量成员函数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、定义:二、特性:1. 静态成员为所有类对象所共享,不属于某个具体的对象,存放在静态区2. 静态成员变量必须在类外定…...
2023/5/28 20:43:10 - python基础知识(二):变量和常用数据类型
目录 1. 变量1.1 变量的定义1.2 变量的命名规则 2. 常用数据类型2.1 字符串2.1.1 字符串的常用方法2.1.1.1 title()方法:将字符串中的单词首字母大写2.1.1.2 upper()方法:将字符串中的单词字母全大写2.1.1.3 lower()方法:将字符串中的单词字母…...
2023/5/28 20:42:39 - SpringBoot2-核心技术(一)
SpringBoot2-核心技术(一) 了解SpringBoot配置文件的使用 文章目录 SpringBoot2-核心技术(一)了解SpringBoot配置文件的使用一、文件类型1. properties2. yaml 二、yaml的基本使用1. 基本语法2. 数据类型2.1 字面量 2.2 对象2.3 …...
2023/5/28 20:40:28 - JSP(一) -- 简单入门
目录 1. JSP 简介 2. JSP和HTML以及Servlet的适用场景 3. 简单入门 1. JSP 简介 JSP全称是Java Server Page,它和Servlet一样,也是sun公司推出的一套开发动态web资源的技术,称为JSP/Servlet规范。 JSP的本质其实就是一个特殊的 Servlet。 JSP的原理:...
2023/5/28 20:38:15 - SpringBoot集成ElasticSearch
文章目录 前言一、ElasticSearch本地环境搭建二、SpringBoot整合ElasticSearch1.pom中引入ES依赖2.application.yaml配置elasticsearch3.ElasticSearchClientConnect连接ES客户端工具类4.ElasticSearchResult封装响应结果5.Person实体类6.Person实体类7.ElasticsearchControlle…...
2023/5/28 20:34:04 - 数据结构入门(C语言版)图的概念和功能函数实现
图的概念和功能函数实现 前言1.图的定义和术语1.1 定义1.2 常用术语 2.图的存储结构2.1 图的数组(邻接矩阵)存储表示2.2 图的邻接表存储表示 3.图的遍历3.1 深度优先搜索3.2 广度优先搜索3.3 示例 4.连通网的最小生成树4.1 克鲁斯卡尔(Kruskal)算法4.2 普里姆(Prim)算法 5.图的…...
2023/5/28 20:25:06 - 初识linux之简单了解TCP协议与UDP协议
目录 一、理解源IP地址和目的IP地址 二、端口号 1. 为什么要有端口号 2. 理解端口号 3. 源端口号和目的端口号 三、初步了解TCP协议和UDP协议 1. 初步认识TCP协议 2. 初步认识UDP协议 3. 可靠传输与不可靠传输 四、网络字节序 1. 网络字节序的概念 2. 如何形成网络…...
2023/5/28 20:21:28 - 数据大航海时代,奇安信如何构筑数据安全的“天盾”?
你知道你的数据正在“被动”泄露吗? 随着ChatGPT技术的快速落地,数据安全面临的挑战越来越多。数据安全供应商Cyberhaven近期发布的一份研究显示,在2023年初的一周内,每十万名员工中机密业务数据被输入ChatGPT199次。用户可能没有…...
2023/5/28 20:20:46 - 矿井水除总氮工艺详解
一、项目概述 项目背景: 1、水资源浪费长期以来,采煤对地下水造成了严重破坏。绝大部分矿井水,被以直排方式,流入河道、田野,这不仅造成水资源的白白浪费,也污染了环境。社会对此反响强烈的同时,煤矿企业也…...
2023/5/28 20:19:59 - Glide预加载图片preload失效问题修复!
背景 项目中有这样一个需求:在APP中展示一个操作指引,这是三张服务端下发的图片。 为了提高用户体验,想要先下载图片,然后下载完成之后,再对图片进行展示,这样用户就不必看到加载图片时的空白状态。 实现方案 这里我打算新写一个工具类,专门用来处理类似的请求。同时…...
2023/5/28 20:18:48 - 从零开始学习JavaScript:轻松掌握编程语言的核心技能①
从零开始学习JavaScript:轻松掌握编程语言的核心技能 一,JavaScript 简介为什么学习 JavaScript?JavaScript 用法 二,JavaScript 输出JavaScript 显示数据JavaScript:直接写入 HTML 输出流 三,JavaScript 语法JavaScr…...
2023/5/28 20:15:31 - Nacos源码-从Demo出发研究事件驱动与观察者模式的应用
在我们分析 Nacos 源码时,会看见大量的事件发布的动作,不管是客户端注册/下线、服务改变、服务订阅等等都是利用了事件发布。 下面我在自己的项目中,引入Nacos的依赖进行一个简单的demo的演示,我个人认为其和spring容器的listene…...
2023/5/28 20:14:34 - 只做笔记有必要买apple pencil吗?好写的电容笔排行榜
随着科技的发展,出现了许多新的电子器件和数码器件。比如智能手机,比如ipad,比如电容笔等等。但实际上,想要让ipad发挥出最大的作用,就必须要有一支好的电笔。就像是我们在ipad上写字,总是要手写࿰…...
2023/5/28 20:14:14 - chatgpt国内免费镜像网站优选集合
目录 chatGpt 国内镜像网站集合 chatgpt接入微信 chatgpt接入谷歌浏览器 chatgptAI绘画 chatgpt不足之处: 最后 chatGpt 这个说实话,不用我介绍大家也都懂。不如玩一个有意思的,这里我让chatGpt自己介绍一下他自己: 嗨&…...
2023/5/28 20:57:53 - 【ChatGPT】从零开始构建基于ChatGPT的嵌入式(Embedding) 本地(Local) 智能客服问答机器人模型
目录 方案流程 1. Embeddings 介绍 术语:微调 vs 嵌入 一句话理解便是:embedding model 可以将文本转换为固定长度的连续向量。 架构流程图 3、Qdrant云数据库的搭建 3.1、初识Qdrant 3.2、创建云数据库 3.3、通过curl 接口访问 4、写入测试数…...
2023/5/28 17:16:05 - 【ChatGPT】在20分钟内使用 LangChain + Ray构建自托管问答服务
This is part 3 of a blog series. In this blog, we’ll show you how to build an LLM question and answering service. In future parts, we will optimize the code and measure performance: cost, latency and throughput. 这是博客系列的第 3 部分。在本博客中,我们将…...
2023/5/28 15:14:53 - 【ChatGPT】Turbocharge LangChain: guide to 20x faster embedding | LangChain: 嵌入速度提高 20 倍的指南
目录 Why do I need to parallelize this?为什么我需要并行化它? Stages of our Data Pipeline 数据管道的各个阶段 Execution...
2023/5/28 15:06:52 - 最新ChatGPT GPT-4 相似匹配Embedding技术详解(附ipynb与python源码及视频讲解)——开源DataWhale发布入门ChatGPT技术新手从0到1必备使用指南手册(一)
目录 前言最新ChatGPT GPT-4 相似匹配Embedding技术详解1. 何为Embedding2. 相关API2.1 LMAS Embedding API2.2 ChatGPT Style 3. Embedding应用3.1 QA3.2 聚类3.3 推荐 相关文献 参考资料其它资料下载 前言 如果您想提高ChatGPT中文本处理的效率和精度,那么Embedd…...
2023/5/28 12:45:09 - ChatGPT的access_token获取(最新!!!)
ChatGPT的access_token获取(最新!!!) 序言 最近在搞移动应用开发,心血来潮写了个chatGPT的app,但是接口只能用官网提供的,我自己的号没有免费额度,朋友的号也就5$的额度…...
2023/5/28 12:19:58 - 【ChatGPT】ChatGPT 在智能客服产品如何落地?
目录 简介 智能客服产品的典型特征 人力密集: 数据密集: 流程可定义:...
2023/5/28 12:15:11 - 【ChatGPT】ChatGPT使用指南——句词分类
目录 ChatGPT使用指南——句词分类 1. NLU基础 1.1 句子级别的分类 1.2 Token级别的分类 2. 相关API...
2023/5/28 11:56:24 - 【ChatGPT】技术原理:ChatGPT怎么工作?
目录 简介:ChatGPT的工作原理概述 Transformer 架构原理...
2023/5/28 10:39:46 - 【ChatGPT】ChatGPT基础科普——知其一点所以然
目录 ChatGPT基础科普——知其一点所以然 语言的本质 从图灵测试到ChatGPT 1. LM 2. Transformer 3. GPT...
2023/5/28 10:09:26 - ChatGPT使用指南——相似匹配
目录 ChatGPT使用指南——相似匹配 1. 何为Embedding 2. 相关API 2.1 LMAS Embedding API 2.2 ChatGPT Style 3. Embedding应用...
2023/5/28 8:55:00 - 【ChatGPT】使用 LangChain 和 Ray 实现 100 行代码构建 LLM 开源搜索引擎【1】
目录 Introduction Building the index 构建索引 Accelerating indexing using Ray 使用 Ray 加速索引编制 Serving Conclusion...
2023/5/28 8:53:34 - 【ChatGPT】ChatGPT使用指南——文本生成
目录 ChatGPT使用指南——文本生成 1 引言 2 文本摘要任务 2.1 什么是文本摘要? 2.2 常见的文本摘要技术 2.3 基于OpenAI接口的文本摘要实验 3 文本纠错任务 3.1 什么是文本纠错? 3.2 常见的文本纠错技术 3.3 基于OpenAI接口的文本纠错实验 4…...
2023/5/28 8:24:05 - ChatGPT商业应用——LLM是星辰大海
目录 ChatGPT商业应用——LLM是星辰大海 1. 研究背景 1.1 研究背景 1.2 研究方法...
2023/5/28 7:59:04 - 国内可直接访问ChatGPT体验站,已稳定2个月 (域名被拦截解决方案)
新体验地址:https://zizhu888.cn/chatgpt/index.html ChatGPT体验站3月初上线,上线后,PV最高时3000,UV2000,付费用户有小300个 上线后,前前后后遇到了不少坑爹问题,下面是最近PV访问曲线图&am…...
2023/5/28 7:33:09 - AIGC——使用Cursor对比直接使用chatGPT有哪些技巧
Cursor对比直接使用chatGPT有哪些优势 1. 聊聊it团队经常面临的问题2. 试想一些AI辅助的应用场景3. 看回现实可用的工具及其使用3.1 加载文件作为对话上下文3.2 源码工程辅助阅读3.3 批量文件式输入口3.4 规范核查工具 4 通用思路4.1 提供解决方案思路4.2 借助chatGPT构建全流程…...
2023/5/28 4:27:19 - ChatGPT中文版Prompt提示工程超详细指南《提示工程高级技巧与技术》Github最新破万星项目Meta AI前工程师解密百万年薪提示工程师GPT-4模型优化利器(二)不定期更新
提示工程高级技巧与技术 前言Introduction 导言零样本提示少样本提示少样本提示的限制 Chain-of-Thought Prompting 链式思考(CoT)提示零样本COT提示 Zero-shot COT 自我一致性生成知识提示自动提示工程师(APE)Active-Prompt方向性…...
2023/5/28 0:42:10 - 【ChatGPT】ChatGPT使用指南——文本推理
目录 ChatGPT使用指南——文本推理 1. 什么是推理(Reasoning)? 2. 导入ChatGPT 3. 测试ChatGPT的推理能力...
2023/5/27 23:40:23 - ChatGPT免费使用的方法有哪些?
目录 一、ChatGpt是什么? 二、ChatGPT国内免费使用的方法: 第一点:电脑端 第二点:手机端 三、结语: 一、ChatGpt是什么? ChatGPt是美国OpenAI [1] 研发的聊天机器人程序 。更是人工智能技术驱动的自然语…...
2023/5/27 23:37:06 - 用ChatGPT辅助处理Excel
在日常工作中,我们经常需要处理大量的Excel表格,而在处理Excel表格时,常常会遇到重复、冗余、不清晰的数据等问题,导致我们耗费大量的时间和精力。 在这种情况下,现代技术的应用提供了更加高效的解决方案,…...
2023/5/27 18:32:31 - Pycharm安装ChatGPT插件
文章目录 前言一、安装ChatGPT插件二、使用步骤1.打开NexChatGPT2.发送请求 总结 前言 通过安装ChatGPT插件,您可以在PyCharm中更轻松、高效地使用ChatGPT模型进行开发,从而提高您的工作效率和准确性。 一、安装ChatGPT插件 打开PyCharm,单…...
2023/5/27 17:28:47 - 它来了!ios版ChatGPT
ChatGPT 的 iOS 版终于来了,不过目前只支持 iOS 美丽国区,你需要使用美丽国区账号才能下载使用。 目录 前提使用总结 前提 一部苹果手机一个美丽国苹果账号一个可以正常访问ChatGPT网页版的网络环境一个ChatGPT账号 使用 登录准备好的美丽国苹果账号。…...
2023/5/27 10:28:02 - 好用的IntelliJ IDEA ChatGPT插件:NexChatGPT
随着ChatGPT的爆火,ChatGPT给我们的生产生活带来一定的影响,ChatGPT相关的工具插件潮水般的涌现。ChatGPT对IT的影响也不小,尤其是自动化编程,今天介绍几款IntelliJ IDEA中ChatGPT插件。 一、NexChatGPT NexChatGPT是一款开箱即…...
2023/5/27 0:48:49 - 2023小狐狸ChatGPT源码1.9小程序 带绘画 带分销流量主系统智能客服AI源码+教程
2023全开源ChatGPT微信小程序,狐狸版本1.9,5.12已更新,增加绘画功能,带流量主带付费购买次数,可邀请好友获得问答次数 看广告获得问答次数 付费购买获得问答次数 狐狸版号1.9(最 新版)…...
2023/5/26 17:51:14 - 【国内chatgpt使用方法合集】(5月26日已更新)
写在前面 Hello大家好, 我是【麟-小白】,一位软件工程专业的学生,喜好计算机知识。希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正࿰…...
2023/5/26 17:44:47 - 【ChatGPT】GPT-5 下一代:即将到来的7种能力将改变人工智能和技术的未来 | OpenAI
GPT-5 下一代:即将到来的7种能力将改变人工智能和技术的未来 | OpenAI 文章目录 GPT-5 下一代:即将到来的7种能力将改变人工智能和技术的未来 | OpenAI第一:扩展多模式理解。第二:交互式多媒体。第三:为具备一般能力的机器人提供动力。第四:自主人工智能模型开发。第五:…...
2023/5/26 11:55:09 - 玩转ChatGPT:论文辅助写作(附Claude测评)
一、写在前面 嘿!嘿!嘿!大家好,今天我们来聊一下使用GPT们进行论文辅助写作。不过,我要先交代一下,GPT的使用门槛比较高,不少童鞋都用不上。所以,我极力推荐一个平替产品——Claude…...
2023/5/26 11:26:08 - [持续更新]使用chatgpt的几种方法~
1. monica 使用edge浏览器或者chrome浏览器,直接在官网下载即可,网址直通: bing: https://www.microsoft.com/zh-cn/edge/download?formMA13FJ google: Google Chrome 网络浏览器 备注:你需要先搭上梯子哈 安装打…...
2023/5/26 10:39:41 - 苹果手机爽了!一招搞定ChatGPT Plus,超级稳!
大家好,我是五竹。 昨天用苹果手机尝试了一下,借助App Store(苹果应用商店)升级 Plus,成功了!一共升级了三个号!有两个一气呵成,轻松搞定。最后一个可能触发风控了,但第…...
2023/5/26 9:58:09 - ChatGPT账号注册,为什么总是提示Access Denied you do not have acces
问题:提示Access denied 无法登录登录的时候,提示Access denied,You do not have access to chat.openai.com.原因登录出现这个界面,说明你的IP被OpenAI拉黑了,OpenAI对比较频繁访问的云主机商屏蔽了相关的IP出口段,所…...
2023/5/26 9:00:56