firecrawl/anydoc

Convert Word, PowerPoint, Excel, OpenDocument, RTF, EPUB, CSV, and PDF to clean Markdown. Built in Rust, with Node.js and Python bindings.

해결하는 문제

anydoc는 다양한 사무 문서를 깔끔하고 GitHub-Flavored Markdown으로 변환하기 위한 고성능 라이브러리입니다. 다양한 파일 형식 간의 일관성 없는 느린 문서 파싱 문제를 해결하며, LLM 준비에 적합한 단일이고 일관된 출력 형식을 제공합니다.

작동 방식

이 라이브러리는 속도를 위해 순수 Rust로 작성되었으며, 머신러닝 모델이나 외부 서비스에 의존하지 않습니다. 다단계 프로세스를 사용합니다:

  1. 형식 탐지: 파일 확장자에 의존하지 않고, 내용 마커(바이트)를 기반으로 파일 유형을 식별합니다.
  2. 형식 파서: 지원되는 각 형식마다 고유한 파서가 있어 문서를 공유되는 내부 문서 모델(블록, 인라인, 테이블, 자산 포함)로 변환합니다.
  3. GFM 직렬화기: 이 공유 모델은 단일 직렬화기를 통해 Markdown으로 렌더링되어, 모든 입력 형식에서 테이블과 발문과 같은 요소에 대해 동일한 동작을 보장합니다.
  4. PDF 처리: 텍스트 기반 PDF는 pdf-inspector를 사용하여 직접 Markdown으로 변환됩니다.

대상 사용자

  • AI 개발자: 다양한 사무 문서를 포함하는 데이터를 처리해야 하는 RAG 파이프라인 또는 LLM 애플리케이션을 개발하는 사람.
  • 에이전트 워크플로우: 로컬 파일을 읽고 처리할 수 있는 AI 에이전트를 개발하는 개발자로, 제공된 "에이전트 기술" 통합을 활용합니다.
  • 소프트웨어 엔지니어: Node.js, Python, Rust용 바인딩이 있거나 WebAssembly를 통해 브라우저에서 실행할 수 있는 빠르고 로컬이며 일관된 문서에서 마크다운으로 변환하는 도구가 필요한 사람.

주요 특징

  • 광범위한 형식 지원: Word, PowerPoint, Excel, OpenDocument, PDF 등 총 14개 형식을 지원합니다.
  • 극도의 속도: 문서당 중앙값 변환 시간은 5ms 미만입니다.
  • 일관된 출력: 공유 문서 모델을 통해 모든 형식에서 형식(예: 수학식을 위한 LaTeX)이 일관됩니다.
  • 로컬 처리: 핵심 변환을 위해 외부 API 호출이나 ML 모델이 필요 없으며, 브라우저 기반 로컬 변환을 위한 WebAssembly 버전도 제공합니다.
  • 에이전트 준비: 에이전트 기술로 통합되어 AI 에이전트가 문서 읽기 기능을 쉽게 채택할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트