ChatGPT | Word文档如何更好地提取表格内容给ChatGPT
本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处!
Word文档如何更好地提取表格内容给ChatGPT做知识库,这属于文本预处理工作。
本文只讲思路、测试结果,技术实现用Python和Java都能完成,下一篇文章再贴源码。
预处理的思路:
- 源文件建议采用DOCX文档而非PDF文档,因为PDF文档会多出冗余的"\n\n"
- 把DOCX文件转为Markdown格式,因为Markdown格式可以包含表格数据,而且Markdown格式本质是文本便于修改
- 把Markdown格式表格转为CSV表格,对于格式复杂表格,ChatGPT对CSV表格理解能力最强
- 用CSV表格替换掉Markdown格式的表格作为预处理后的新文件,因为两者都是文本格式
总结一下,DOCX转Markdown文件 -> Markdown表格转CSV表格->CSV表格替换掉Markdown表格->embedding->ChatGPT
原表格如下,signMsg部分格式复杂:
参数名称 |
参数含义 |
长度 |
可否为空 |
参数说明 |
mchntid |
商户编号 |
15 |
不可空 |
统一分配给商户的商户编号,用以区分不同商户。 |
orderId |
订单编号 |
16 |
不可空 |
商户提交给系统的交易订单编号。 每个商户提交的订单号,必须在自身账户交易中唯一。 |
reserved |
商户保留域 |
60 |
可空 |
商户通过此字段向支付系统发送信息,其将依原样填充返回给商户。 |
signMsg |
数字签名 |
32 |
不可空 |
以上所有参数及其值与密钥组合,经MD5 加密生成并转化为大写的32 位字符串。 |
对于所有值的参数及对应值,按照如上顺序和如下规则组成字符串,其中key为密钥: 参数1={参数1}&参数2={参数2}&……&参数n={参数n}&key={key} 然后进行32位算法的MD5 加密后,将结果转化为大写。 signMsg=MD5(参数1={参数1}&参数2={参数2}&……&参数n={参数n}&key={key}) |
||||
childMchntid |
子商户号 |
15 |
可空 |
支付系统统一分配给商户的子商户编号,不参与验签。 |
对比Markdown表格与CSV表格的文本体积:
Markdown表格的文本体积超过4K,冗余浪费Token
商户向支付系统的支付接入地址(http)提交订单信息,提交页面中应该包括如下信息(注意各字段的大小写):
+-------------+-------------+-----+--------+-------------------------+
| * | * | * | **可否 | **参数说明** |
| *参数名称** | *参数含义** | *长 | 为空** | |
| | | 度 | | |
| | | ** | | |
+=============+=============+=====+========+=========================+
| mchntid | 商户编号 | 15 | 不可空 | 统一分配给商户的商户编 |
| | | | | 号,用以区分不同商户。 |
+-------------+-------------+-----+--------+-------------------------+
| orderId | 订单编号 | 16 | 不可空 | 商户提交 |
| | | | | 给系统的交易订单编号。 |
| | | | | |
| | | | | 每个 |
| | | | | 商户提交的订单号,必须 |
| | | | | 在自身账户交易中唯一。 |
+-------------+-------------+-----+--------+-------------------------+
| bgUrl | 后台 | 80 | 不可空 | 后台接收应答地 |
| | 交易接收Url | | | 址,用于商户记录交易信 |
| | | | | 息和处理,对于使用者是 |
| | | | | 不可见的。需URLEncoder |
| | | | | \"UTF-8\"处理 |
+-------------+-------------+-----+--------+-------------------------+
| productName | 商品名称 | 60 | 可空 | 需URLEncoder |
| | | | | \"UTF-8\"处理 |
+-------------+-------------+-----+--------+-------------------------+
| productNum | 商品数量 | 8 | 可空 | |
+-------------+-------------+-----+--------+-------------------------+
| productDesc | 商品描述 | 100 | 可空 | 需URLEncoder |
| | | | | \"UTF-8\"处理 |
+-------------+-------------+-----+--------+-------------------------+
| reserved | 商户保留域 | 60 | 可空 | 商户通过此字段向 |
| | | | | 支付系统发送信息,其将 |
| | | | | 依原样填充返回给商户。 |
+-------------+-------------+-----+--------+-------------------------+
| signMsg | 数字签名 | 32 | 不可空 | 以上所有参数 |
| | | | | 及其值与密钥组合,经MD5 |
| | | | | 加 |
| | | | | 密生成并转化为大写的32 |
| | | | | 位字符串。 |
+-------------+-------------+-----+--------+-------------------------+
| | 对于 | | | |
| | 所有值的参 | | | |
| | 数及对应值 | | | |
| | ,按照如上 | | | |
| | 顺序和如下 | | | |
| | 规则组成字 | | | |
| | 符串,其中 | | | |
| | key为密钥: | | | |
| | | | | |
| | 参数1 | | | |
| | ={参数1}&参 | | | |
| | 数2={参数2 | | | |
| | }&......&参 | | | |
| | 数n={参数n | | | |
| | }&key={key} | | | |
| | | | | |
| | 然后进行32 | | | |
| | 位算法的MD5 | | | |
| | 加密后 | | | |
| | ,将结果转 | | | |
| | 化为大写。 | | | |
| | | | | |
| | signMs | | | |
| | g=MD5(参数1 | | | |
| | ={参数1}&参 | | | |
| | 数2={参数2 | | | |
| | }&......&参 | | | |
| | 数n={参数n} | | | |
| | &key={key}) | | | |
+-------------+-------------+-----+--------+-------------------------+
| c | 子商户号 | 15 | 可空 | 支付 |
| hildMchntid | | | | 系统统一分配给商户的子 |
| | | | | 商户编号,不参与验签。 |
+-------------+-------------+-----+--------+-------------------------+
CSV表格的文本体积精简
商户向支付系统的支付接入地址(http)提交订单信息,提交页面中应该包括如下信息(注意各字段的大小写):
参数名称,参数含义,长度,可否为空,参数说明
mchntid,商户编号,15,不可空,统一分配给商户的商户编号,用以区分不同商户。
orderId,订单编号,16,不可空,商户提交给系统的交易订单编号。
,,,,每个商户提交的订单号,必须在自身账户交易中唯一。
reserved,商户保留域,60,可空,商户通过此字段向支付系统发送信息,其将依原样填充返回给商户。
signMsg,数字签名,32,不可空,以上所有参数及其值与密钥组合,经MD5 加密生成并转化为大写的32 位字符串。
,对于所有值的参数及对应值,按照如上顺序和如下规则组成字符串,其中key为密钥:,,,
,参数1={参数1}&参数2={参数2}&……&参数n={参数n}&key={key},,,
,然后进行32位算法的MD5 加密后,将结果转化为大写。,,,
,signMsg=MD5(参数1={参数1}&参数2={参数2}&……&参数n={参数n}&key={key}),,,
childMchntid,子商户号,15,可空,支付系统统一分配给商户的子商户编号,不参与验签。
ChatGPT答复的结果
ChatGPT | Word文档如何更好地提取表格内容给ChatGPT相关推荐
- Python3-word文档操作(十):利用docx库创建word文档,添加段落,添加表格,添加图片,设置文字粗体,斜体
1 简介: 作为一个综合例子,本篇主要显示docx库的一些基本操作: 利用docx库创建word文档,添加段落,添加表格,添加图片,设置文字粗体,斜体. 2 举例: 对word文档进行属性的设置,以及 ...
- 将word文档中所有文本框中的内容转换成普通段落
某些pdf转word工具生成的word文档,会将很多内容放在文本框中,以至于编辑word文档不太方便,例如想全选所有段落中的文字再调整某些格式,文本框中的文字有时候不能像普通段落中的文字一样产生同样的 ...
- java操作word文档(文字,图片,表格添加以及替换操作)
注:本文由于个人工作需要,有对多个他人博文进行借鉴,但是多数博文都只是讲到了小部分,例如图片/表格的操作,都只有根据书签进行替换,比较片面,本人有总结到根据文字进行图片/表格的替换,希望可以帮到更多有 ...
- 小菜鸟的Python笔记001:将Word文档中数据汇总到Excel表格
将Word文档中数据汇总到Excel表格 前言 一.应用场景 二.程序思路及准备工作 思路如下: 准备工作: 三.程序代码 1.主程序 2.获取Word文档列表 3.提取文档内数据 4.导入到Exce ...
- 使用iText在word文档中插入复杂的Table表格
iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档和word文档的一个java类库.通过iText不仅可以生成PDF或rtf 的文档,而且可以将XML.Html文件转 ...
- easypoi导出word表格_拒绝加班,批量将word文档中的信息高效率提取出来存储到Excel中...
最近,有小伙伴跟我提了一个需求,小伙伴是做扶贫工作的,从扶贫系统里面可以批量的导出每一户的信息到一个word文档中,导出的内容是在word中是以表格的形式存在的.小伙伴的需求是如何批量的将每个word ...
- 计算机怎么把文字转换成表格,Word文档如何将文字转换成表格形式
一.将Word中文字转换成表格(以Word2003为例) 将文字转换成表格(表格:一或多列储存格,通常用于显示数字及其他项目,以供快速参照及分析.表格中项目的组织形式是列及行)时,要以逗点.tab或其 ...
- C# - 生成Word文档(包含插入行,表格,图片,合并等)
转自:https://blog.csdn.net/lj102800/article/details/6106451 1.引入COM组件 在解决方案中"引用"->"添 ...
- 如何对多个版本的Word文档对比,查找变动删减的内容
重要的方案.报价.合同类的文档,可能会编辑多个版本,那要如何才能了解两个文档版本的差异,总不能同时打开了,一个个对着看吧.那怎么办?这时候,我们可以利用Word强大的"文档比较"功 ...
最新文章
- Python中的find()
- 无限的Bash历史[关闭]
- 第5章 线性回归算法
- HTTP常用头部信息
- UML学习笔记(4)——类图之间的关系
- 重新上手c语言的一些坑
- 和公婆住在一起是什么体验?
- 长春工业大学计算机组成原理考试开卷考吗,计算机组成原理期末复习资料
- Deep Learning快速学习方法
- 【ACL2021】BERT也能做生成?利用多个BERT模型分离对话生成和对话理解
- Android wm指令的用法笔记
- 【气动学】基于matlab导弹拦截计算方法【含Matlab源码 982期】
- GBase数据库安装前一般检查
- 《算法》-1.5-并查集算法
- 02.使用fmod实现QQ变声效果
- 使用vsftpd 搭建ftp 服务器
- word标题前面存在竖线
- docker容器时间错误解决方案
- 发邮件时提示连接服务器失败,发送邮件时经常出现发送失败或是连接超时什么原因...
- 区块链学习笔记4——BTC实现