← all repositories
kerlomz/captcha_platform

Captcha solver: the deployment-only half of a neural net pair

A serving layer for CNN+BLSTM+CTC captcha models that auto-loads new configs and speaks HTTP or gRPC.

captcha_platform
Velocity · 7d
+0.2
★ / day
Trend
steady
star history

What it does

This is the inference side of a two-repo captcha-cracking system. You bring a trained TensorFlow model (.pb file plus YAML config), drop it in the right folders, and get a REST or gRPC service that returns text from base64-encoded captcha images. The server auto-discovers models on startup and reloads when you add new configs.

The interesting bit

The model management is deliberately low-tech: add a YAML to model/ and a .pb to graph/ to load; delete both to unload; bump the version number in YAML to hot-swap. No database, no registry, just filesystem watching. The README also notes you must star the repo before using it — the SATA license (“Star And Thank Author”) enforces this socially rather than legally.

Key highlights

  • Supports four server backends: Tornado (default, port 19952), Flask, Sanic, and gRPC (port 50054)
  • CPU-only by default; GPU requires hand-editing requirements.txt to swap tensorflowtensorflow-gpu
  • Python 3.9 required; includes demo.py for local prediction without standing up a server
  • Auto-loads all models in config; no restart needed for additions or version bumps
  • Training happens in sibling repo captcha_trainer; this repo is strictly deployment

Caveats

  • Windows deployment docs are incomplete: “python xxx_server.py” leaves the actual filename as an exercise
  • The gRPC proto regeneration command is documented but not explained — you’ll need grpcio-tools installed separately
  • No mention of concurrency limits, request size caps, or authentication in any server variant

Verdict

Worth a look if you’ve already trained a captcha model with the companion repo and need a quick serving layer. Skip it if you want training, monitoring, or anything beyond “receive image, return string.”

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.