Skip to main content

Biblioteca para extração inteligente de documentos PDF com IA

Project description

DeepRead

Biblioteca Python para extracao inteligente de documentos PDF com IA

PyPI Python 3.9+ License: MIT CI Quality Seal


Caracteristicas

  • Autenticacao por Token - HMAC-SHA256 com timing-safe validation
  • Extracao Inteligente - Extrai informacoes de PDFs usando LLMs (OpenAI / Azure OpenAI)
  • OCR Automatico - Detecta e processa documentos escaneados (Azure AI Vision)
  • Structured Output - Respostas tipadas com Pydantic
  • Async + Sync - APIs sincrona e assincrona com batch processing
  • Resiliencia - Retry com backoff exponencial e circuit breaker
  • Cache - Cache LRU com TTL para evitar reprocessamento
  • Page Range - Filtre paginas especificas por posicao (inicio/fim)
  • Streaming - Modo lazy para economia de memoria
  • Tracking de Custos - Monitore tokens e custos por requisicao

Instalacao

pip install DeepRead.Monkai

Com OCR (Azure AI Vision):

pip install DeepRead.Monkai[ocr]

Desenvolvimento:

pip install DeepRead.Monkai[dev]

Uso Rapido

1. Obter Token de Acesso

O token de acesso e fornecido pela equipe Monkai. Para solicitar: contato@monkai.com.br

export DEEPREAD_API_TOKEN="dr_seu_token_fornecido_pela_monkai"
export OPENAI_API_KEY="sk-..."

2. Processar Documento

import os
from deepread import DeepRead, Question, QuestionConfig
from pydantic import BaseModel, Field

class ExtractionResponse(BaseModel):
    valor: str = Field(description="Valor extraido")
    unidade: str = Field(default="", description="Unidade de medida")
    confianca: float = Field(default=1.0, ge=0, le=1)

question = Question(
    config=QuestionConfig(id="quantidade", name="Extracao de Quantidade"),
    system_prompt="Voce e um especialista em extracao de dados de documentos.",
    user_prompt="Analise o texto e extraia a quantidade mencionada.\n\nTexto:\n{texto}",
    keywords=["quantidade", "litros", "volume", "total"],
    response_model=ExtractionResponse
)

dr = DeepRead(
    api_token=os.getenv("DEEPREAD_API_TOKEN"),
    openai_api_key=os.getenv("OPENAI_API_KEY"),
    model="gpt-5.1",
    verbose=True
)

dr.add_question(question)
result = dr.process("documento.pdf")

print(f"Resposta: {result.get_answer('quantidade')}")
print(f"Tokens: {result.total_metrics.tokens}")
print(f"Custo: ${result.total_metrics.cost_usd:.4f}")

3. Multiplas Perguntas com Page Range

from deepread import PageRange

dr.add_questions([
    Question(
        config=QuestionConfig(id="preco", name="Preco"),
        user_prompt="Extraia o preco: {texto}",
        keywords=["preco", "valor", "R$"],
        page_range=PageRange(start=1, end=5, from_position="start")
    ),
    Question(
        config=QuestionConfig(id="conclusao", name="Conclusao"),
        user_prompt="Extraia a conclusao: {texto}",
        keywords=["conclusao", "resultado"],
        page_range=PageRange(start=1, end=3, from_position="end")
    ),
])

result = dr.process("documento.pdf")
for r in result.results:
    print(f"{r.question_name}: {r.answer}")

4. Classificacao de Documentos

from deepread import Classification
from typing import Literal

class ClassificacaoDoc(BaseModel):
    classificacao: Literal["APROVADO", "REPROVADO", "REVISAR"]
    justificativa: str
    confianca: float = Field(ge=0, le=1)

classification = Classification(
    system_prompt="Voce e um classificador de documentos.",
    user_prompt="Baseado nos dados extraidos, classifique o documento:\n\n{dados}",
    response_model=ClassificacaoDoc
)

dr.set_classification(classification)
result = dr.process("documento.pdf", classify=True)
print(f"Classificacao: {result.classification}")

5. Processamento em Lote

from pathlib import Path

docs = list(Path("documentos/").glob("*.pdf"))
results = dr.process_batch(docs, classify=True, max_workers=4)

for r in results:
    print(f"{r.document.filename}: {r.get_answer('preco')}")

6. API Assincrona

import asyncio

async def main():
    dr = DeepRead(
        api_token=os.getenv("DEEPREAD_API_TOKEN"),
        openai_api_key=os.getenv("OPENAI_API_KEY"),
    )
    dr.add_question(question)

    result = await dr.process_async("documento.pdf")
    print(result.get_answer("quantidade"))

    results = await dr.process_batch_async(docs, max_concurrency=5)

asyncio.run(main())

7. Cache e Resiliencia

dr = DeepRead(
    api_token=os.getenv("DEEPREAD_API_TOKEN"),
    openai_api_key=os.getenv("OPENAI_API_KEY"),
    enable_cache=True,
    cache_ttl=3600,
    max_retries=3,
    circuit_breaker=True,
    circuit_breaker_threshold=5,
    circuit_breaker_timeout=60,
    streaming=True,
)

result = dr.process("documento.pdf")
print(f"Cache stats: {dr.cache_stats}")

8. Multiplos Tipos de Input

result = dr.process("documento.pdf")

result = dr.process("https://exemplo.com/doc.pdf")

with open("doc.pdf", "rb") as f:
    result = dr.process(f.read(), filename="doc.pdf")

import io
buffer = io.BytesIO(pdf_bytes)
result = dr.process(buffer, filename="doc.pdf")

CLI

CLI machine-friendly para automação e uso por agentes de IA. Toda saída é JSON em stdout, erros em stderr, e o exit code reflete sucesso (0) ou falha (≥1).

Instalação

pip install "DeepRead.Monkai[cli]"

Comandos

Comando Descrição
version Mostra a versão instalada
models Lista modelos LLM disponíveis com pricing
schemas Lista schemas pré-construídos com seus campos
extract <pdf> Extração one-shot de um único PDF
run <config> <target> Executa extração com YAML config (single ou batch)
init <output> Gera um arquivo YAML de configuração

Exemplos

# Versão
deepread version

# Listar modelos disponíveis
deepread models

# Listar schemas pré-construídos
deepread schemas

# Extração one-shot com schema pré-construído
export DEEPREAD_API_TOKEN=dr_...
export OPENAI_API_KEY=sk-...
deepread extract documento.pdf --schema DadosContrato

# Extração one-shot com prompt customizado
deepread extract documento.pdf \
  --prompt "Extraia o valor total do documento: {texto}" \
  --keywords "valor,total,R$" \
  --pages 1-5

# Gerar config YAML para uso recorrente
deepread init config.yaml --schema DadosContrato

# Executar com config (single)
deepread run config.yaml documento.pdf -o resultado.json

# Executar em lote (diretório)
deepread run config.yaml ./documentos/ -o resultados.csv -f csv

Flags do extract

Flag Env var Descrição
--token DEEPREAD_API_TOKEN Token do DeepRead
--api-key OPENAI_API_KEY Chave OpenAI
--schema / -s Nome de schema pré-construído
--prompt / -p Prompt customizado (deve conter {texto})
--model / -m Modelo: fast/balanced/complete/economic ou nome direto
--ocr OCR mode: off/auto/force
--keywords / -k Keywords separadas por vírgula
--pages Range de páginas (1-5 ou last-3)
--format / -f Saída: json/csv/text
--verbose / -v Logs detalhados em stderr
--quiet / -q Suprime stderr

Configuração via YAML

Para usar Azure OpenAI ou customizar parâmetros mais finos, rode deepread init para gerar um config base com seção auth que resolve ${ENV_VAR} automaticamente:

deepread:
  model: balanced
  ocr: off
  max_retries: 3
  enable_cache: false

auth:
  api_token: ${DEEPREAD_API_TOKEN}
  openai_api_key: ${OPENAI_API_KEY}
  # Para Azure OpenAI:
  # provider: azure
  # azure_api_key: ${AZURE_API_KEY}
  # azure_endpoint: https://seu-recurso.openai.azure.com
  # azure_deployment: gpt-4o
  # azure_api_version: 2024-02-15-preview

questions:
  - id: extracao
    name: Extração
    prompt: "Extraia as informações principais: {texto}"
    schema: DadosContrato

Exit codes

Code Significado
0 Sucesso
1 Falha genérica
2 Erro de configuração (chave/token ausente)
3 Arquivo não encontrado
4 Erro de execução (rede, API, etc.)

Azure OpenAI

export OPENAI_PROVIDER=azure
export AZURE_API_KEY="sua-chave-azure"
export AZURE_API_ENDPOINT="https://seu-recurso.openai.azure.com"
export AZURE_API_VERSION="2024-02-15-preview"
export AZURE_DEPLOYMENT_NAME="gpt-4o"
dr = DeepRead(
    api_token=os.getenv("DEEPREAD_API_TOKEN"),
    provider="azure",
    azure_api_key="sua-chave-azure",
    azure_endpoint="https://seu-recurso.openai.azure.com",
    azure_deployment="gpt-4o",
)
Parametro OpenAI Azure OpenAI
provider "openai" (default) "azure"
openai_api_key Obrigatorio Nao usado
azure_api_key Nao usado Obrigatorio
azure_endpoint Nao usado Obrigatorio
azure_deployment Nao usado Obrigatorio
model Nome do modelo Ignorado (usa deployment)

Google Gemini

DeepRead supports Google Gemini via the AI Studio API. Install the extra and set your API key:

pip install "DeepRead.Monkai[google]"
export GOOGLE_API_KEY="your-key-here"

Use provider="google":

from deepread import DeepRead

dr = DeepRead(
    api_token="dr_xxx",
    provider="google",
    model="balanced",  # -> gemini-2.5-flash
)
result = dr.process("document.pdf")

Model aliases for Google:

Alias Gemini model
fast gemini-2.5-flash-lite
balanced gemini-2.5-flash
complete gemini-2.5-pro
economic gemini-2.5-flash-lite

All DeepRead features — structured output (Pydantic schemas), classification, OCR vision fallback, async, streaming, and cost tracking — work identically on Google.


Modelos Disponiveis

print(DeepRead.available_models())
# {
#     "fast": "gpt-4.1",
#     "balanced": "gpt-5.1",
#     "complete": "gpt-5-2025-08-07",
#     "economic": "gpt-5-mini-2025-08-07"
# }

API Reference

DeepRead

Metodo Descricao
add_question(question) Adiciona uma pergunta
add_questions(questions) Adiciona multiplas perguntas
remove_question(id) Remove uma pergunta
clear_questions() Remove todas as perguntas
set_classification(config) Configura classificacao
process(document) Processa um documento (sync)
process_async(document) Processa um documento (async)
process_batch(documents, max_workers) Processa lote (sync, com ThreadPool)
process_batch_async(documents, max_concurrency) Processa lote (async, com Semaphore)
clear_cache() Limpa o cache
cache_stats Retorna hits/misses/size do cache
available_models() Lista modelos disponiveis
create_question(...) Factory method para Question

DeepRead Constructor

Parametro Tipo Default Descricao
api_token str - Token de autenticacao (obrigatorio)
openai_api_key str env Chave API OpenAI
model str gpt-5.1 Modelo LLM
verbose bool False Logs detalhados
max_retries int 3 Retries para erros transientes
enable_cache bool False Habilita cache LRU
cache_ttl int 3600 TTL do cache em segundos
streaming bool False Modo lazy (economia de memoria)
circuit_breaker bool False Habilita circuit breaker
circuit_breaker_threshold int 5 Falhas para abrir circuito
circuit_breaker_timeout int 60 Segundos para recovery
max_file_size_mb float 50 Limite de tamanho do arquivo
max_pages int 500 Limite de paginas
provider str openai Provider: openai ou azure

Question

Campo Tipo Descricao
config QuestionConfig Configuracao basica (id, name)
system_prompt str Prompt de sistema
user_prompt str Template do prompt (use {texto})
keywords list[str] Keywords para filtrar paginas
page_range PageRange Range de paginas (opcional)
response_model BaseModel Modelo Pydantic (opcional)

PageRange

Campo Tipo Descricao
start int Pagina inicial (1-indexed)
end int Pagina final (None = ate o fim)
from_position str "start" ou "end"

ProcessingResult

Campo Tipo Descricao
document DocumentMetadata Metadados do documento
results list[Result] Resultados por pergunta
classification dict Classificacao (se aplicavel)
total_metrics ProcessingMetrics Metricas totais

ProcessingMetrics

Campo Tipo Descricao
time_seconds float Tempo de processamento
tokens int Total de tokens
prompt_tokens int Tokens do prompt
completion_tokens int Tokens da resposta
cost_usd float Custo em USD
model str Modelo utilizado

Estrutura do Projeto

deepread/
├── __init__.py          # Exports principais
├── reader.py            # Classe DeepRead (sync + async)
├── config.py            # Modelos, precos, configuracoes
├── utils.py             # PDF loading, filtragem, metadata
├── ocr.py               # Azure AI Vision OCR
├── cache.py             # Cache LRU com TTL
├── resilience.py        # Retry + Circuit Breaker
├── exceptions.py        # Excecoes customizadas
├── auth/
│   ├── __init__.py
│   ├── token.py         # HMAC-SHA256 token validation
│   └── exceptions.py    # Excecoes de autenticacao
└── models/
    ├── __init__.py
    ├── question.py      # Question, QuestionConfig, PageRange
    ├── result.py        # Result, ProcessingResult, Metrics
    ├── classification.py # Classification
    └── schemas.py       # Schemas de exemplo (DadosContrato, etc)

Documentacao

Documento Descricao
Instalacao Guia de instalacao e configuracao
Guia Rapido Comece em 5 minutos
Autenticacao Sistema de tokens
Perguntas Configuracao de perguntas e extracao
Classificacao Classificacao de documentos
OCR Reconhecimento optico de caracteres
Schemas Modelos de dados e estruturas
API Reference Referencia completa da API
Exemplos Exemplos praticos (01-07)
Certificacao Certificado de qualidade

Certificacao de Qualidade

Este projeto foi auditado e certificado pelo Claude AI Quality Seal.

Dimensao Score
Seguranca 8.7/10
Usabilidade 8.2/10
Escalabilidade 7.8/10
Qualidade de Codigo 8.0/10
Global 8.18/10

Classificacao: PROFISSIONAL Serial: DR-CQA-DE8364E7-116B6022-D40E375D-42BB4E3B

Ver certificado completo | Ver certificado HTML


Suporte


Desenvolvido por Monkai

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

deepread_monkai-2.6.2-cp313-cp313-win_amd64.whl (586.4 kB view details)

Uploaded CPython 3.13Windows x86-64

deepread_monkai-2.6.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

deepread_monkai-2.6.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

deepread_monkai-2.6.2-cp313-cp313-macosx_26_0_arm64.whl (661.7 kB view details)

Uploaded CPython 3.13macOS 26.0+ ARM64

deepread_monkai-2.6.2-cp313-cp313-macosx_10_13_x86_64.whl (678.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

deepread_monkai-2.6.2-cp312-cp312-win_amd64.whl (587.7 kB view details)

Uploaded CPython 3.12Windows x86-64

deepread_monkai-2.6.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

deepread_monkai-2.6.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

deepread_monkai-2.6.2-cp312-cp312-macosx_26_0_arm64.whl (667.9 kB view details)

Uploaded CPython 3.12macOS 26.0+ ARM64

deepread_monkai-2.6.2-cp312-cp312-macosx_10_13_x86_64.whl (683.3 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

deepread_monkai-2.6.2-cp311-cp311-win_amd64.whl (607.4 kB view details)

Uploaded CPython 3.11Windows x86-64

deepread_monkai-2.6.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

deepread_monkai-2.6.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

deepread_monkai-2.6.2-cp311-cp311-macosx_15_0_arm64.whl (669.5 kB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

deepread_monkai-2.6.2-cp311-cp311-macosx_10_9_x86_64.whl (694.4 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

deepread_monkai-2.6.2-cp310-cp310-win_amd64.whl (604.7 kB view details)

Uploaded CPython 3.10Windows x86-64

deepread_monkai-2.6.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

deepread_monkai-2.6.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

deepread_monkai-2.6.2-cp310-cp310-macosx_26_0_arm64.whl (676.1 kB view details)

Uploaded CPython 3.10macOS 26.0+ ARM64

deepread_monkai-2.6.2-cp310-cp310-macosx_10_9_x86_64.whl (701.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file deepread_monkai-2.6.2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 32b5698d80dca4d648cb47a6f8aec0b2d81d4b52e91ca6cc70c60560aab701ef
MD5 1ad0b282e0b37e7e6c135e1e6d7461cf
BLAKE2b-256 4d1f2eb87d1db10b08478a219c79f170edbd4c9b30e34793b51a02aaedaa6ca3

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 91e58df9977c61129b0ae22c6af63b745d09dadc449bbec1737545ec439e33c8
MD5 3c5b95b8f7fd7bbb32dd5fd8ffaa8df5
BLAKE2b-256 14225f0d96df5addd645ac3cf0e3929f8371fba63ed6641ea72f2c249801aa39

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 5f662e11e4b9fc5c57fb236e72733fb05e38be17cbf73336c7819a5e37f8af0e
MD5 ce3250320d6b1e2c51549fe63177c8d2
BLAKE2b-256 ab8e61e99914812449bdf3a9029cf1b854a485330093abcc9780be4ed05335be

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp313-cp313-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp313-cp313-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 3f6a2b34543d4d250a1d7f421214575f1a20232deb86cc368ad453b17eb7bb78
MD5 410c62c4d5480c57fb3038af7108bab1
BLAKE2b-256 73c1437120a05d9002c8177b0bb8631c3d947eaad5fc1ef546f2bb8154efe3ab

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2e2bdded4597cffe59845898f085bc1149ab8b8e5eb21425e726fd4ea3610b0a
MD5 cb1389ce23ac6bad0becf4ad508d0dde
BLAKE2b-256 3208158f3ae0ac26e91c8d2bdb1599a31e8d0caf9ef2ef34169fb0c53da6770f

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e4bc9eb03aeae87cbbfb80ecca8efdb8b549c73ed7aabd762aaa4209df9c3a77
MD5 4311065fc221e165493ebdd5f597180d
BLAKE2b-256 45e2dce302639a4fd1a6d8c96c29eb581da34fde23b9ebabd8d59e00e19e2e9c

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e468e6b7e4ece0cfc217c600f0ea97b77d186f611d7fde763b17a644696b1827
MD5 b2f606a5bf0f5e65cdf25da094605f99
BLAKE2b-256 a318606888fa93f7bdc24eaa2788ec076792b17ba05ea23290ecc9ac1faaaf48

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 6fa4b256dacce7213fc1bcf4e073bd52294bf9bc6ce82a05485df5289255ebcb
MD5 67d2a22818660fab230634a05e769bde
BLAKE2b-256 0efeeaac1a3899c97d87b9bbda19bf0d0b51ad0740b305dfcd8e5f643e70a96a

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp312-cp312-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp312-cp312-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 c5cb9ab4fb2b10bd0674d7fd428eeb6d9b9f986e5288f8bdcad1741a123a038e
MD5 91d5f240e98bcf40de7c788858694d55
BLAKE2b-256 6d0dee97fa057f0a14f3fa8fd3808b81982f28e348dd63c31f1cb9edb5c14230

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e4280cf3862af9c33c742fd39c651d69f95e3d75ec5306179431935043bff3a1
MD5 ac46f2eb52e8c970ba30eb7bbb89a800
BLAKE2b-256 c0bee28f602e61eb912cde1c96653c93c6b27e592faf4dc63c430ef0ac52961b

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 56ba92e7a0da16343a883d7ccfa61f18594861e677bf5766efa46f454716a86c
MD5 8573e93f2acac63c97585d530163324d
BLAKE2b-256 a9e154ebdbd3e7b3eb63b8ad2d995550b53d75adb261a94f6902cbf6c0e6c916

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 b69d273a2d50c165790b1d7b3e523de1ed488b5376f0bed948df1f46e8a83fce
MD5 769d0b5a69d670e47dad92e8a5e83b99
BLAKE2b-256 51c194868fda02e6a64b40bf6abd9fa193c476d5090b26b81b35516fd2f758eb

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 a3dc2a33b0726e78164a21d0bd254062ce42c597cab9d82b802e9b06fcfd73b8
MD5 7761b245ba373664c8b31373522b4350
BLAKE2b-256 d9a87a8115a4d1d606844193eec1cb27d65b647742793392e179ad2a933202ef

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 11be0eaaeb8badeb7d03ba84c7e68750386cb63c4e1281d1a8328d68ec938ada
MD5 2bb5c9a4b7db158f35fd18257b1f17c8
BLAKE2b-256 d4a81389d041b65e9ead79567e7045e225cc18ee9c77dcade8291f9aafbaeb96

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c1eeca38eadda1d298c903e2a323f64370d9fcb295543dea9053f3fa5a6019fb
MD5 9a3482d96ced0168899f7630fa0df6b7
BLAKE2b-256 6846af84c5da2e8f464cc591a5527eda17741198fb05d48bbdeecf2b17d10562

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 60fdcc3957c278606fbc7125b9efff822a590a76b1526a0c67c18fcd4440bbf0
MD5 7b67ef686c4d9a9e3464bebec45ddb7a
BLAKE2b-256 521e0bd291be4f47c222009c16a4e75dbd8ad578bf26f53aa364779ffd0b5d10

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 c758f24402bf6640d5be7cd9a213684746297ce17887161eddcb4944f151f845
MD5 7f1584cd68e209b53330a70e11988bc4
BLAKE2b-256 bc558f007586a27e3727e50617e5ee0ee5f37ed38b49cc9ffdcb82d157a57d84

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 0e856261da085e0957a0ee75b363c2177818f446f840738429f1d716159f2105
MD5 ad15d584e288fbe0f88da3d3a7a2985b
BLAKE2b-256 f2df6c2ddbcc46abaec105fa41fb6ed9a0cb0c7638035121519666e25d9093d9

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp310-cp310-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp310-cp310-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 bcda8dfae7d558132d41897b160a65810c0af02f9b13b49bd1704a97178962a2
MD5 05e0cdd470a653af655a0f1430f3be52
BLAKE2b-256 f59a0854099de935e026408675d63f828af936052992538d07d0875fe29a736d

See more details on using hashes here.

File details

Details for the file deepread_monkai-2.6.2-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for deepread_monkai-2.6.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 54a277f80bb218ddf5d0824324a0ad0defa2b6af46183c6b32ba62e2aa0a6319
MD5 94e2d8a58917df50e169579a6c5ef8e0
BLAKE2b-256 bd2c5041aed50eb00d922b6a67d760a6af4dfd96185b088340786c05d8a0621c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page