aotenjou/silicon-paddleocr

silicon-paddle-ocr

OCR skill using PaddleOCR model via SiliconFlow API.

View source

How to use

  1. Copy the installation command and review the source package before installing it in your own agent environment.
  2. Check the source document for required tools, credentials and supported hosts.
  3. Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/aotenjou/silicon-paddleocr --skill silicon-paddle-ocr

Before you start

  • Installation does not include a model subscription, API allowance or permission to access your files.
  • Repository stars and installation counts describe activity, not an independent quality or security test.
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

OCR - Image Text Recognition

Use PaddleOCR to extract text content from images. Supports single image or batch processing.

Overview

This skill provides optical character recognition (OCR) capabilities using the PaddlePaddle/PaddleOCR-VL-1.5 model via the SiliconFlow API. Extract text from JPG, PNG, WebP, BMP, and GIF images.

When to Use

Invoke this skill when:

  • User wants to extract text from an image
  • User asks to OCR a screenshot or photo
  • User needs to read text from an image file
  • User mentions text recognition from images

How to Use

Prerequisites

Ensure the SILICONFLOW_API_KEY environment variable is set:

bash
export SILICONFLOW_API_KEY="your_api_key"

Basic Usage

Execute the OCR script:

bash
python3 scripts/ocr_skill.py [options] image_path

Arguments

ArgumentDescription
imagesImage file path(s) or glob pattern (required)
-k, --api-keyAPI key (default: from SILICONFLOWAPIKEY env)
-m, --modelOCR model name (default: PaddlePaddle/PaddleOCR-VL-1.5)
-p, --promptRecognition prompt for custom behavior
-j, --jsonOutput results in JSON format
-o, --outputSave results to specified file
--max-tokensMaximum tokens in response (default: 2000)

Examples

Single image:

bash
python3 scripts/ocr_skill.py /path/to/image.jpg

Multiple images with glob:

bash
python3 scripts/ocr_skill.py /path/to/images/*.png

JSON output format:

bash
python3 scripts/ocr_skill.py --json /path/to/image.jpg

Custom prompt for table extraction:

bash
python3 scripts/ocr_skill.py -p "Please identify and format table content as Markdown" /path/to/table.jpg

Save to file:

bash
python3 scripts/ocr_skill.py --json --output results.json /path/to/images/*.jpg

Output Format

Text output (default):

--- image.jpg ---
识别到的文字内容
识别到 X 处文字区域

JSON output:

json
{
  "image.jpg": {
    "image_path": "/path/to/image.jpg",
    "image_size": [width, height],
    "texts": [
      {
        "text": "识别的文字",
        "box": [[x1, y1], [x2, y2], [x3, y3], [x4, y4]]
      }
    ],
    "full_text": "所有文本的组合"
  },
  "image2.png": { ... }
}

Coordinates Explanation:

  • LOC values are normalized coordinates converted to pixel coordinates
  • Conversion: pixel = LOC × (imagesize / LOCmax_value)
  • LOC max_value is approximately 972 (may vary by model/image)
  • The box field provides the four corner coordinates of each text region in pixel format

Supported Image Formats

  • JPG/JPEG
  • PNG
  • WebP
  • BMP
  • GIF

Error Handling

If processing fails:

  • Check that the image file exists
  • Verify the SILICONFLOWAPIKEY is valid
  • Ensure the API endpoint is reachable

Images that fail to process will show an error message, and other images will continue processing.

Additional Resources

Reference Files

  • `references/api-configuration.md` - API configuration details

Example Files

  • `examples/sample-usage.sh` - Example usage script

Scripts

  • `scripts/ocr_skill.py` - The main OCR implementation

Related by task