大模型之路2:继续趟一条小路
继续趟一条小路,可谓是充满了曲折,当然,必不可少的还是坑。
吐槽
看过的喷友,其实你看完以后,大概率也就是和我一起骂骂街,因为....我也的确没理清楚。
我也不知道做错了什么,就是运行不过去。然后。。。 也不知道做对了什么,看起来好像前进了一点点,但就是没有到达美丽的彼岸。握草
部署环境的时候,似乎是有点坑的。一方面是版本兼容问题。另外我今天还遇到了几个没看懂的坑,感觉就像九九八十一难之后又来到了天坑悬崖边。
环境
安装torch等等就不多说了,任意搜都可以。然后一测试,通了,OK
import torch
x = torch.rand(5,3)
print(x)
torch.cuda.is_available()
测试
我是做了一个实体识别的测试。
# 测试推理和统计正确率
all_acc, all_recall = 0, 0
startRow = 0
read_row = 100
for i in range(startRow, len(txtLines)):if i > startRow + read_row:breaktxt = txtLines[i]print(i)json_item = json.loads(txt)labels = json_item['label']t_dict = {}for k in labels:t_label_dict = labels[k]t_dict[data[k]] = list(t_label_dict.keys())ret = predict(json_item['text'], showMsg = False) # 就是运行聊天,得到聊天结果#print("json_item['text'] = ", json_item['text'])print('label: ', t_dict)try:ret_dict = json.loads(ret)tKeys = list(ret_dict.keys())for k in tKeys:if ret_dict[k] in [ '未提供', '未知' , '无', '' ]:ret_dict.pop(k)print('识别结果', ret_dict)acc, recall = evaluate(t_dict, ret_dict) # 就是我自己写了个简单的统计正确率和召回率all_acc += accall_recall += recallprint('acc= %.2f, recall=%.2f, all_acc=%.2f, all_recall=%.2f'%(acc, recall, all_acc/(i-startRow+1), all_recall/(i-startRow+1)))except Exception as e:print(e)
和预想的其实不一样。因为虽然是大模型,但是他未必会给我返回我想要的实体类型。这一点就比较头大,需要自己处理。
比如 比较理想的情况下是这样,识别结果的类型都是我想要的。
label: {'组织机构': ['老挝家具协会'], '人名': ['育亭·维沙蓬'], '职位': ['会长']}
识别结果 {'地名': '老挝', '公司': '老挝家具协会', '人名': '育亭·维沙蓬', '职位': '会长'}
但是很多时候是下面这样:
label: {"人名":["吴湖帆", "吴待秋", "吴子深", "冯超然"]}
识别结果: {"name":["吴湖帆", "吴待秋", "吴子深", "冯超然"]}
或者是其他我不需要的类型名称,中英文也很随意。即使我在prompt里写上,“用中文”,效果仍然不能十分满意。
或许这也是微调的意义?
实体识别的具体内容可以参考这位网友的博客,计算机博士微调BaiChuan13B来做命名实体识别_baichuan max_new_tokens-CSDN博客
或者github (九零后,真年轻啊):torchkeras/examples/BaiChuan13B_NER——transformers.ipynb at master · lyhue1991/torchkeras · GitHub
但是到了后面,我的运行出错了。
求救
艰难的调试过后,运行到这个地方还是可以的,看起来得到了结果。实际上崩溃才刚开始

接下来的错误。。。我没搞明白

反正就这么错了,提示没有这个文件。关键是,我并没有搞明白从哪里生成这个文件
然后我还想要复现一下,重新训练一次,然后又错了。在Jupyter里,就重新执行了刚才的代码,结果刚刚执行了一次的代码,报错了

也就是说,数据、模型似乎转移了位置。
然后我回到上面,开始重新生成数据集、重新加载模型,发现仍然是这个错误。包括最开始的测试代码也已经不能运行了,都提示这个错误。
只能关闭重新开始,才能行。
然后往下我就不会了。。。。。
【不是每个博文都会有好结果的,看到这里,你是不是也感觉坑 ^_^】
相关文章:
大模型之路2:继续趟一条小路
继续趟一条小路,可谓是充满了曲折,当然,必不可少的还是坑。 吐槽 看过的喷友,其实你看完以后,大概率也就是和我一起骂骂街,因为....我也的确没理清楚。 我也不知道做错了什么,就是运行不过去…...
打造安全医疗网络:三网整体规划与云数据中心构建策略
医院网络安全问题涉及到医院日常管理多个方面,一旦医院信息管理系统在正常运行过程中受到外部恶意攻击,或者出现意外中断等情况,都会造成海量医疗数据信息的丢失。由于医院信息管理系统中存储了大量患者个人信息和治疗方案信息等,…...
imu测试--UDP、PTP
imu测试–UDP、PTP UDP 服务器端口: nc -lu -p 52340;客服端: nc -u 192.168.101.175 52340列出linux所以的开放端口 sudo netstat -tulpn或者$ sudo ss -tulpn状态列显示端口是否处于侦听状态(LISTEN)。 在上面的命令中,标志ÿ…...
软考 系统架构设计师系列知识点之云原生架构设计理论与实践(13)
接前一篇文章:软考 系统架构设计师系列知识点之云原生架构设计理论与实践(12) 所属章节: 第14章. 云原生架构设计理论与实践 第3节 云原生架构相关技术 14.3.2 云原生微服务 1. 微服务发展背景 过去开发一个后端应用最为直接的方…...
2024多功能知识付费源码下载
多功能知识付费源码下载实现流量互导多渠道变现 源码介绍 资源变现类产品的许多优势,并剔除了那些无关紧要的元素,使得本产品在运营和变现能力方面实现了质的飞跃。多领域素材资源知识变现营销裂变独立版本。 支持:视频、音频、图文、文档…...
计算机网络——33多点访问协议
多点访问协议 多路访问链路和协议 两种类型的链路(一个子网内部链路连接形式) 点对点 拨号访问的PPP以太网交换机和主机之间的点对点链路 广播 传统以太网HFC上行链路802.11无线局域网 多路访问协议 单个共享的广播型链路 2个过更多结点同时传送&am…...
基于神经网络的人脸识别系统的设计与实现
基于神经网络的人脸识别系统的设计与实现 摘要: 随着计算技术的快速发展,人脸识别已成为身份验证、安全监控等领域的关键技术。本文旨在设计并实现一个基于神经网络的人脸识别系统,该系统能够自动地从输入图像中检测和识别出人脸。论文首先介…...
远控桌面多任务并发文件保密传输
远程桌面文件传输是一个重要的功能,大多数远控都是用的桌面程序模式,利用系统自带复制粘贴拖拽文件拷贝功能,做一个ole调用对接,可以将很多控制权交给操作系统。 但我做的是浏览器版,浏览器是沙盒原理,为了…...
探索 ZKFair 的Dargon Slayer蓝图,解锁新阶段的潜力
在当前区块链技术的发展中,Layer 2(L2)解决方案已成为提高区块链扩容性、降低交易成本和提升交易速度的关键技术,但它仍面临一些关键问题和挑战,例如用户体验的改进、跨链互操作性、安全性以及去中心化程度。在这些背景…...
open Gauss 数据库-04 openGauss数据库日志管理指导手册
发文章是为了证明自己真的掌握了一个知识,同时给他人带来帮助,如有问题,欢迎指正,祝大家万事胜意! 目录 前言 openGauss 数据库日志管理 1 实验介绍 2 实验目的 3 系统日志 3.1 运行时日志 3.2 安装卸载时日志…...
Redis性能瓶颈与安全隐患排查验证纪实
在写《Redis怎样保证数据安全?》这篇文章,我是有对redis设置密码需要哪些步骤,设置密码的性能损耗有验证的。这就涉及到要对redis的配置做修改。 开始时我是打算采用直接使用redis配置文件的方式。所以我从redis官网下载了一个默认的配置文件…...
【C/C++】C语言实现顺序表
C语言实现顺序表 简单描述代码运行结果 简单描述 用codeblocks编译通过 源码参考连接 https://gitee.com/IUuaena/data-structures-c.git 代码 common.h #ifndef COMMON_H_INCLUDED #define COMMON_H_INCLUDED#define LIST_INIT_CAPACITY 100 //!< 线性表初始化长度 #def…...
零基础快速上手:搭建类ChatGPT对话机器人的完整指南
来自:鸵傲科技开发 随着人工智能技术的飞速发展,对话机器人已经成为我们日常生活中不可或缺的一部分。它们能够实时响应我们的需求,提供便捷的服务。那么,对于零基础的朋友们来说,如何快速搭建一个类似ChatGPT的对话机…...
Java中的取余与取模运算:概念、区别与实例详解
Java中的取余与取模运算:概念、区别与实例详解 引言一、取余运算(Remainder Operation)二、取模运算(True Modulo Operation)三、区别比较四、实战应用 引言 在Java编程中,当我们提到“取余”和“取模”运算…...
Excel制作甘特图
使用Excel表格制作甘特图,可根据任务开始时间和结束时间自动计算工时,并自动用指定颜色填充横道图。 1.新建Excel文档,先设置项目基本信息,包括表格名称,这里设置为“**项目甘特图”;然后添加任务序号列&a…...
Dapr(一) 基于云原生了解Dapr
(这期先了解Dapr,之后在推出如何搭建Dapr,以及如何使用。) 目录 引言: Service Mesh定义 Service Mesh解决的痛点 Istio介绍 Service Mesh遇到的挑战 分布式应用的需求 Multiple Runtime 理念推导 Dapr 介绍 Dapr 特性 Dapr 核心…...
RESTful的优点
优点 1.通过url对资源定位,语义清晰; 2.通过HTTP谓词表示不同的操作,接口自描述; 3.可以对GET、PUT、DELETE请求重试(幂等的); 4.可以对GET请求做缓存; 5.通过HTTP状态码反映服务器端…...
网络检测与监控
1.IP sla 服务等级质量检测,思科私有,提供商与用户之间的协议 可以对带宽、延迟、丢包率、网络抖动进行检测 (1)针对icmp进行检测: r1(config)#ip sla 1 r1(config-ip-sla)#icmp-echo 12.12.12.2 source-ip 12.12…...
基于架构的软件开发方法_1.概述和相关概念及术语
1.体系结构的设计方法概述 基于体系结构的软件设计(Architecture-Based Software Design,ABSD)方法。ABSD方法是由体系结构驱动的,即指由构成体系结构的商业、质量和功能需求的组合驱动的。 使用ABSD方法,设计活动可以…...
读所罗门的密码笔记07_共生思想(中)
1. 在人工智能系统中建立信任 1.1. 人类的大脑容易被个人倾向、干扰因素和确认偏误所影响 1.2. 古莱说,然而,从不同的角度去思考事实、花更长时间来做决策的能力,可能会让人类拥有“密探”一般的智慧 1.3. 我们可以对决策进行批判性思考&a…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
NPOI操作EXCEL文件 ——CAD C# 二次开发
缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...
适应性Java用于现代 API:REST、GraphQL 和事件驱动
在快速发展的软件开发领域,REST、GraphQL 和事件驱动架构等新的 API 标准对于构建可扩展、高效的系统至关重要。Java 在现代 API 方面以其在企业应用中的稳定性而闻名,不断适应这些现代范式的需求。随着不断发展的生态系统,Java 在现代 API 方…...
