当前位置: 首页 > web >正文

内容索引之word转md工具 - markitdown

切分文档构建RAG库过程中,langchain、llamaindex更期望处理latex、md类带有显式结构文档。

langchain、llamaindex切分word,有可能将段落中间截断,导致切分后的块语义不完整。

所以,需要先将word转化为md格式,然后再进行切分构建RAG知识库。

目前效果较好的word转md工具,要么是需要付费的商业版,要么借助于LLM转化,而LLM调用同样需要付费。

微软的word转md的开源工具markitdown,可以达到类似效果,适合文档分析和内容索引场景。

这里示例markitdown的下载和使用过程。

1 markitdown安装

1)python环境构建

conda create -n markitdown python=3.12
conda activate markitdown

2)markitdown安装

如果git clone失败,可以直接从如下链接下载,然后pip安装。

https://github.com/microsoft/markitdown/archive/refs/tags/v0.1.2.zip

git clone git@github.com:microsoft/markitdown.git
cd markitdown
pip install -e 'packages/markitdown[all]'

2 markidwon 示例

word文件转md文件

markitdown test.docx > document.md

pdf文件转md文件

markitdown test.pdf > pdf.md

整体看word转pdf后能较好的保持文档结构,pdf转md会丢失文档结构。

reference

---

markdidown

https://github.com/microsoft/markitdown

RAG向量化文档分块方式探索

https://blog.csdn.net/liliang199/article/details/149798215

借助于llm将pdf转化为md文本

https://blog.csdn.net/liliang199/article/details/149808465

http://www.xdnf.cn/news/17847.html

相关文章:

  • Java Record 类 — 简化不可变对象的写法
  • JavaWeb(05)
  • transforms的使用 小土堆pytorch记录
  • 15-docker的企业级私有仓库之docker-harbor
  • 三极管的基极为什么需要下拉电阻
  • docker network 与host的区别
  • GO学习记录四——读取excel完成数据库建表
  • USB基础 -- USB2.0设备插入的过程
  • 《算法导论》第 23 章 - 最小生成树
  • 面试实战 问题二十六 JDK 1.8 核心新特性详解
  • Spring 源码学习(十)—— DispatcherServlet
  • 超实用!ToDesk/网易UU/向日葵:远程办公文件协作效率与安全实测
  • OpenJDK 17 源码 安全点轮询的信号处理流程
  • Spring Boot 整合 Thymeleaf 模板引擎:从零开始的完整指南
  • 数据结构初阶(12)排序算法—插入排序(插入、希尔)(动图演示)
  • 基于R语言的现代贝叶斯统计学方法(贝叶斯参数估计、贝叶斯回归、贝叶斯计算实践过程
  • 为什么 sim(3) 中的尺度 s 与旋转 R 相乘,而不是平移 t?
  • CMake笔记:配置(Configure)、生成(Generate)和构建(Build)
  • 猿大师中间件:Chrome网页内嵌PhotoShop微信桌面应用程序
  • php7 太空船运算符
  • opencv:直方图
  • 【车联网kafka】Kafka核心架构与实战经验(第四篇)
  • mapbox进阶,实现精灵图生成和拆分(小图任意大小,不固定),并简单使用
  • Laravel 使用ssh链接远程数据库
  • 第十六届蓝桥杯青少组C++省赛[2025.8.9]第二部分编程题(1 、庆典队列)
  • 【Java基础|第十八篇】面向对象(八)——包装类
  • Docker安装influxdb以及python基本操作
  • 微店平台平台关键字搜索接口实战:从精准检索到智能推荐实现
  • JetPack系列教程(六):Paging——让分页加载不再“秃”然
  • 职场与生活如何在手机中共存?(二)