Compartilhamento de tecnologia

gptpdf de LLMs: introdução ao gptpdf, métodos de instalação e uso e guia detalhado para aplicações de casos

2024-07-08

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

gptpdf de LLMs: introdução ao gptpdf, métodos de instalação e uso e guia detalhado para aplicações de casos

Índice

Introdução ao gptpdf

1. Processo de processamento

A primeira etapa é usar a biblioteca PyMuPDF para analisar todas as áreas não textuais do PDF e marcá-las, como:

Na segunda etapa, use um modelo visual grande (como GPT-4o) para analisar e obter um arquivo markdown.

Como instalar e usar gptpdf

1. Instalação

2. Uso

Interpretar o código test.py

3、API

Aplicação de caso de gptpdf


Introdução ao gptpdf

gptpdf é uma ferramenta que usa principalmente modelos visuais de linguagem grande (como GPT-4o) para analisar PDF em descontos.Nossa abordagem é muito simples (apenas 293 linhas de código), mas quaseAnalise perfeitamente tipografia, fórmulas matemáticas, tabelas, imagens, gráficos, etc. . O preço médio por página é de apenas US$ 0,013 e usamos a biblioteca GeneralAgent para interagir com a API OpenAI. pdfgpt-ui é uma ferramenta de visualização baseada em gptpdf.

Endereço do GithubGitHub - CosmosShadow/gptpdf: Usando GPT para analisar PDF

1、Fluxo de processamento

A primeira etapa é usar a biblioteca PyMuPDF para analisar todas as áreas não textuais do PDF e marcá-las, como:

Na segunda etapa, use um modelo visual grande (como GPT-4o) para analisar e obter um arquivo markdown.

Como instalar e usar gptpdf

1、Instalar

pip install gptpdf

2、usar

from gptpdf import parse_pdf

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

Para obter mais informações, consulte test/test.py

endereço:https://github.com/CosmosShadow/gptpdf/blob/main/test/test.py

Interpretar o código 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

analisar_pdf(pdf_path, output_dir='./', api_key=Nenhum, base_url=Nenhum, model='gpt-4o', verbose=False)
Analise o arquivo pdf em um arquivo markdown e retorne o conteúdo do markdown e uma lista de todos os caminhos da imagem.

  • caminho_pdf:caminho do arquivo pdf

  • diretório_de_saída : Diretório de saída.Armazene todas as imagens e arquivos markdown

  • Chave API :Chave API OpenAI (opcional). Se não for fornecida, a variável de ambiente OPENAI_API_KEY será usada.

  • url_base : URL base do OpenAI. (opcional). Se não for fornecida, a variável de ambiente OPENAI_BASE_URL será usada.

  • modelo : Modelo grande multimodal no formato OpenAI API, o padrão é "gpt-4o". Se você precisar usar outros modelos, como