기술나눔

LLM의 gptpdf: gptpdf 소개, 설치 및 사용 방법, 사례 적용에 대한 자세한 안내

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

LLM의 gptpdf: gptpdf 소개, 설치 및 사용 방법, 사례 적용에 대한 자세한 안내

목차

gptpdf 소개

1. 처리과정

첫 번째 단계는 PyMuPDF 라이브러리를 사용하여 PDF의 텍스트가 아닌 모든 영역을 구문 분석하고 다음과 같이 표시하는 것입니다.

두 번째 단계에서는 대규모 시각적 모델(예: GPT-4o)을 사용하여 마크다운 파일을 구문 분석하고 가져옵니다.

gptpdf 설치 및 사용 방법

1. 설치

2. 사용

test.py 코드 해석

3、API

gptpdf 사례 적용


gptpdf 소개

gptpdf는 주로 시각적 대형 언어 모델(예: GPT-4o)을 사용하여 PDF를 마크다운으로 구문 분석하는 도구입니다.우리의 접근 방식은 매우 간단하지만(단지 293줄의 코드) 거의타이포그래피, 수학 공식, 표, 그림, 차트 등을 완벽하게 구문 분석합니다. . 페이지당 평균 가격은 $0.013에 불과하며 GeneralAgent lib를 사용하여 OpenAI API와 상호 작용합니다. pdfgpt-ui는 gptpdf를 기반으로 한 시각화 도구입니다.

Github 주소GitHub - CosmosShadow/gptpdf: GPT를 사용하여 PDF 구문 분석

1、처리 흐름

첫 번째 단계는 PyMuPDF 라이브러리를 사용하여 PDF의 텍스트가 아닌 모든 영역을 구문 분석하고 다음과 같이 표시하는 것입니다.

두 번째 단계에서는 대규모 시각적 모델(예: GPT-4o)을 사용하여 마크다운 파일을 구문 분석하고 가져옵니다.

gptpdf 설치 및 사용 방법

1、설치하다

pip install gptpdf

2、사용

from gptpdf import parse_pdf

api_key = 'Your OpenAI API Key'
content, image_paths = parse_pdf(pdf_path, api_key=api_key)
print(content)

자세한 내용은 test/test.py를 참조하세요.

주소:https://github.com/CosmosShadow/gptpdf/blob/main/test/test.py

test.py 코드 해석

import os

# 从 .env 文件中加载环境变量
import dotenv
dotenv.load_dotenv()

def test_use_api_key():
    from gptpdf import parse_pdf
    pdf_path = '../examples/attention_is_all_you_need.pdf'
    output_dir = '../examples/attention_is_all_you_need/'
    # 从环境变量中获取 OPENAI_API_KEY 和 OPENAI_API_BASE
    api_key = os.getenv('OPENAI_API_KEY')
    base_url = os.getenv('OPENAI_API_BASE')
    # 手动提供 OPENAI_API_KEY 和 OPENAI_API_BASE
    content, image_paths = parse_pdf(pdf_path, output_dir=output_dir, api_key=api_key, base_url=base_url, model='gpt-4o', gpt_worker=6)
    # 输出解析后的内容和图像路径
    print(content)
    print(image_paths)
    # 同时会生成 output_dir/output.md 文件

def test_use_env():
    from gptpdf import parse_pdf
    pdf_path = '../examples/attention_is_all_you_need.pdf'
    output_dir = '../examples/attention_is_all_you_need/'
    # 使用环境变量中的 OPENAI_API_KEY 和 OPENAI_API_BASE
    content, image_paths = parse_pdf(pdf_path, output_dir=output_dir, model='gpt-4o', verbose=True)
    # 输出解析后的内容和图像路径
    print(content)
    print(image_paths)
    # 同时会生成 output_dir/output.md 文件

def test_azure():
    from gptpdf import parse_pdf
    # Azure API Key
    api_key = '8ef0b4df45e444079cd5a4xxxxx' 
    # Azure API 基础 URL
    base_url = 'https://xxx.openai.azure.com/' 
    # Azure 部署的模型 ID 名称(不是 OpenAI 模型名称)
    model = 'azure_xxxx'

    pdf_path = '../examples/attention_is_all_you_need.pdf'
    output_dir = '../examples/attention_is_all_you_need/'
    # 使用提供的 Azure API Key 和基础 URL
    content, image_paths = parse_pdf(pdf_path, output_dir=output_dir, api_key=api_key, base_url=base_url, model=model, verbose=True)
    # 输出解析后的内容和图像路径
    print(content)
    print(image_paths)

if __name__ == '__main__':
    # 取消注释以运行特定的测试函数
    # test_use_api_key()
    # test_use_env()
    test_azure()

3、API

파스_pdf(pdf_path, output_dir='./', api_key=없음, base_url=없음, 모델='gpt-4o', verbose=거짓)
pdf 파일을 마크다운 파일로 구문 분석하고 마크다운 콘텐츠와 모든 이미지 경로 목록을 반환합니다.

  • pdf_경로:pdf 파일 경로

  • 출력 디렉토리 : 출력 디렉토리.모든 이미지 및 마크다운 파일 저장

  • API 키 : OpenAI API 키(선택사항). 제공되지 않으면 OPENAI_API_KEY 환경 변수가 사용됩니다.

  • 기본_URL : OpenAI 기본 URL. (선택 과목). 제공되지 않으면 OPENAI_BASE_URL 환경 변수가 사용됩니다.

  • 모델 : OpenAI API 형식의 다중 모드 대형 모델, 기본값은 "gpt-4o"입니다. 다음과 같은 다른 모델을 사용해야 하는 경우