Tema Nab, tema de navegação mais profissional
Ctrl + D Marcar este site como favorito

RolmOCR: modelo de OCR de documentos para reconhecimento de caracteres manuscritos e inclinados

Introdução geral

O RolmOCR é uma ferramenta de reconhecimento óptico de caracteres (OCR) de código aberto desenvolvida pela equipe Reducto AI, com base no modelo de linguagem visual Qwen2.5-VL-7B. Ela pode extrair texto de imagens e arquivos PDF mais rapidamente do que ferramentas semelhantes. olmOCR O RolmOCR não depende de metadados de PDF, simplificando o processamento e oferecendo suporte a uma ampla variedade de tipos de documentos, incluindo anotações manuscritas e trabalhos acadêmicos. A equipe da Reducto criou a ferramenta atualizando o modelo e otimizando os dados de treinamento, com o objetivo de tornar a digitalização de documentos mais eficiente.

RolmOCR: Modelo-1 de OCR de documentos de código aberto, rápido e leve

RolmOCR: modelo de OCR de documentos para reconhecimento de caracteres manuscritos e inclinados-1

 

Lista de funções

  • Extração rápida de texto: extraia texto de imagens e PDFs com velocidade de processamento rápida para um grande número de documentos.
  • Suporta uma ampla variedade de documentos: reconhece anotações manuscritas, documentos impressos e formulários complexos.
  • Código aberto e gratuito: aberto sob a licença Apache 2.0, o código pode ser baixado e adaptado livremente.
  • Baixo consumo de memória: em comparação com olmOCR Mais eficiente em termos de recursos e com baixos requisitos de computador durante a execução.
  • Não são necessários metadados: processe o documento original diretamente sem depender de informações adicionais do PDF.
  • Reconhecimento aprimorado de documentos inclinados: o 15% nos dados de treinamento é girado para melhorar a adaptação a documentos com ângulos não positivos.
  • Baseado no modelo mais recente: adota o Qwen2.5-VL-7B para melhorar a precisão e a eficiência do reconhecimento.

 

Usando a Ajuda

O RolmOCR é uma ferramenta de código aberto que é executada principalmente por meio de código e é adequada para usuários com habilidades básicas de programação. A seguir, um guia detalhado de instalação e uso.

Processo de instalação

  1. Verificação do ambiente Python
    O RolmOCR requer o Python 3.8 ou superior. Abra a linha de comando e digite python --version Verifique a versão. Se você não a tiver instalada, acesse o site do Python e faça o download e a instalação.
  2. Instalação da estrutura vLLM
    Uso do RolmOCR vLLM Execute o modelo. Digite na linha de comando:
pip install vllm

Após a conclusão da instalação, defina as variáveis de ambiente:

export VLLM_USE_V1=1

Isso garante que o vLLM funcione corretamente.

  1. Faça o download do modelo RolmOCR
    Os arquivos do modelo estão hospedados no site Hugging Face. Acesse https://huggingface.co/reducto/RolmOCR e clique em "Files and versions" (Arquivos e versões) para fazer o download. Ou use a linha de comando:
git clone https://huggingface.co/reducto/RolmOCR
  1. Início de serviços locais
    Vá para a pasta do modelo baixado e execute-o:
vllm serve reducto/RolmOCR

Quando o serviço é iniciado, o endereço padrão é http://localhost:8000/v1. Mantenha a janela da linha de comando aberta.

Uso

O RolmOCR extrai texto por meio de chamadas de API. Aqui estão as etapas exatas.

Preparar o documento

Prepare o arquivo a ser reconhecido, por exemplo, uma imagem (PNG/JPG) ou um PDF. test_doc.png.

Chamada da API para extrair texto

Escreva um script em Python para converter o arquivo em codificação base64 e enviá-lo para o RolmOCR. O código de amostra é o seguinte:

from openai import OpenAI
import base64
# 连接本地服务
client = OpenAI(api_key="123", base_url="http://localhost:8000/v1")
model = "reducto/RolmOCR-7b"
# 图片转 base64
def encode_image(image_path):
with open(image_path, "rb") as image_file:
return base64.b64encode(image_file.read()).decode("utf-8")
# 调用 RolmOCR 提取文字
def ocr_page_with_rolm(img_base64):
response = client.chat.completions.create(
model=model,
messages=[
{
"role": "user",
"content": [
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_base64}"}},
{"type": "text", "text": "把这张图片里的文字提取出来,像人读的那样自然返回。"}
]
}
],
temperature=0.2,
max_tokens=4096
)
return response.choices[0].message.content
# 运行示例
test_img_path = "test_doc.png"
img_base64 = encode_image(test_img_path)
result = ocr_page_with_rolm(img_base64)
print(result)

salvar como (um arquivo) ocr_test.pye depois executar:

python ocr_test.py

O programa retorna o texto extraído, por exemplo:

会议记录
2025年4月7日
- 项目计划讨论
- 准备相关资料

arquivo de lote

Para lidar com vários arquivos, reescreva o código. Coloque os caminhos dos arquivos em uma lista e chame-a em um loop:

file_paths = ["doc1.png", "doc2.png", "doc3.png"]
for path in file_paths:
img_base64 = encode_image(path)
result = ocr_page_with_rolm(img_base64)
print(f"{path} 的结果:\n{result}\n")

Operação da função em destaque

  1. reconhecimento de escrita manual
    O RolmOCR reconhece a escrita à mão. Por exemplo, uma anotação que diz "Deepseek Coder" é impressa com precisão sem ser confundida com "OCLM". Após o upload da imagem, os resultados são classificados em ordem natural.
  2. Processamento de documentos distorcidos
    O 15% é girado nos dados de treinamento, portanto, é mais adaptável a documentos distorcidos. Por exemplo, em uma digitalização distorcida, o texto ainda é extraído corretamente.
  3. Operação com pouca memória
    Sem dependência de metadados, comprimentos de dicas mais curtos e menos memória gráfica (VRAM) usada para processamento. Adequado para computadores com configurações mais baixas.

advertência

  • interrupção do serviçoNão feche a janela da linha de comando depois de iniciar o serviço ou a API será interrompida.
  • déficit de memóriaSe o computador não tiver memória suficiente, você poderá ajustar o parâmetro vLLM, como per_device_train_batch_sizereduzindo os requisitos de recursos.
  • limitaçõesRolmOCR pode não reconhecer textos pequenos com baixo contraste ou reconhecimento incompleto de tabelas complexas sem metadados. Recomenda-se otimizar a qualidade da imagem e tentar novamente.
  • Não há suporte para caixas de layoutDiferentemente da API comercial da Reducto, o RolmOCR não pode gerar caixas delimitadoras para texto.

Com essas etapas, os usuários podem instalar e usar facilmente o RolmOCR para extrair texto de documentos rapidamente.

 

cenário do aplicativo

  1. pesquisa acadêmica
    Estudantes e pesquisadores podem usar o RolmOCR para digitalizar anotações manuscritas ou documentos antigos em textos eletrônicos para facilitar a organização e a pesquisa.
  2. Processamento de documentos corporativos
    A empresa pode usá-lo para extrair texto de contratos e envelopes e inseri-lo no sistema, reduzindo o trabalho manual.
  3. Suporte a vários idiomas
    Lide com documentos mistos em chinês e inglês ou cartas manuscritas em francês, extraindo informações de forma rápida e adequada para comunicação internacional.

 

QA

  1. Qual é a diferença entre RolmOCR e olmOCR?
    O RolmOCR é baseado no modelo Qwen2.5-VL-7B atualizado, que é mais rápido, ocupa menos espaço na memória, não usa metadados e é mais robusto para documentos distorcidos.
  2. Ele pode ser usado off-line?
    Disponível. Basta fazer o download do modelo e iniciar o serviço local, sem necessidade de conexão com a Internet.
  3. Ele oferece suporte ao reconhecimento de formulários?
    Suportado, mas pode perder partes de tabelas complexas sem metadados, como subtítulos em artigos acadêmicos.

Recomendado

Não consegue encontrar ferramentas de IA? Tente aqui!

Basta digitar a palavra-chave Acessibilidade Bing SearchA seção Ferramentas de IA deste site é uma maneira rápida e fácil de encontrar todas as ferramentas de IA deste site.

Código de leitura a seguir

qrcode

Entre em contato conosco

voltar ao topo

pt_BRPortuguês do Brasil