AI-Powered Document Classification: Automate Your File Organization Workflow
You have a folder where files land continuously — reports, invoices, support tickets, research documents, logs. Right now, someone (probably you) opens each file, reads it, decides what category it belongs to, and moves it to the right place or triggers the right next step.
That’s the kind of repetitive decision-making that LLMs are good at. NORA’s AI Router Node automates it.
What the AI Router Node Does
The AI Router Node reads the most recent text-like file from a configured folder, sends its content to an LLM, and gets back a classification. Based on that classification, NORA routes the workflow down a specific path — each category triggers a different set of downstream nodes.
Here’s the flow:
- AI Router Node watches a folder you specify
- It reads the latest file (text, HTML, or other text-based formats)
- It sends the content to an AI provider with your category definitions
- The AI returns a classification label
- NORA follows the outgoing edge whose label matches that classification
If an edge isn’t labeled, it acts as a default/fan-out path. You control the routing logic entirely through edge labels on the canvas.
Choose Your AI Provider and Model
The AI Router Node supports three providers with 30+ models total:
OpenAI — GPT-5.5, GPT-5.4, GPT-5.4-mini, GPT-5.4-nano
Anthropic — Claude Opus 4.7, Claude Sonnet 4.6, Claude Haiku 4.5
Google — Gemini 2.5 Flash, Gemini 2.5 Flash-Lite, Gemini 2.5 Pro
You select the provider and model directly on the node. Each AI Router Node can use a different model — useful if you want a cheaper model for simple classifications and a more capable one for nuanced routing.
You can also set a per-node API key. If you’re running multiple projects and want to separate billing, each Router Node can hit a different API key without affecting the others.
Real-Time Cost Tracking
Every AI call through NORA records:
- Input tokens and output tokens used
- Actual USD cost based on the provider’s pricing
This data appears in the execution history for every run. There are no hidden costs and no pooled billing — each node’s spend is tracked individually. If a classification call costs $0.002, you see exactly that.
Optional CSV Export
Each AI Router Node can optionally write a CSV file with the classification result — one row per classification, including the file name, assigned category, confidence metadata, and timestamp. You configure the output directory on the node.
This is useful for:
- Building an audit trail of classification decisions
- Feeding classification results into a downstream script that reads CSV
- Tracking classification patterns over time
Setting It Up: Step by Step
1. Add an AI Router Node to the canvas.
Drag it from the node palette or use Quick Add.
2. Configure the source folder.
Point it at the folder where files arrive. The node reads the most recent text-based file each time it runs.
3. Set your categories.
Define the classification labels — for example: invoice, support_ticket, report, contract. These become the possible outputs the AI can return.
4. Select a provider and model.
Choose OpenAI, Anthropic, or Google. Pick the model. Optionally set a per-node API key.
5. Connect downstream nodes with labeled edges.
Draw edges from the AI Router to the next nodes in your workflow. Label each edge with a category name. When the AI classifies a file as invoice, the workflow follows the edge labeled invoice.
6. (Optional) Enable CSV export.
Set an output directory for the classification CSV log.
Example: Automated Support Ticket Routing
A support inbox exports tickets as text files into a folder. An AI Router Node classifies each one:
- billing → Runs a Python script that logs the ticket in a billing spreadsheet
- technical → Runs a PowerShell script that creates a Jira ticket via API
- spam → Runs a Batch script that moves the file to an archive folder
- urgent → Routes to an additional AI Agent node for deeper analysis, then sends an email alert
Each path is a visible branch on the canvas. You can see the entire routing logic at a glance — no code, no if/else chains buried in a script.
Example: Research Document Organization
A research team drops PDFs and text files into a shared folder. The AI Router reads each one and classifies it into topics: market_analysis, competitor_intel, product_feedback, regulatory. Each category triggers a different script that files the document, updates an index, and optionally summarizes it with an AI Agent node.
How It Compares to Writing Your Own Classifier
| Custom Python Script | NORA AI Router Node | |
|---|---|---|
| Setup time | Write API call, parse response, handle errors, build routing logic | Configure node, set categories, draw edges |
| Model switching | Edit code, redeploy | Dropdown selection on the node |
| Cost visibility | Build your own tracking | Built-in per-call USD tracking |
| Routing logic | if/elif chains | Visual edges with labels |
| Scheduling | Task Scheduler or cron wrapper | Built-in cron scheduler |
| Error handling | try/except + logging | Retry with backoff, email alerts |
You can absolutely build this in Python. The question is whether the glue code around the API call — retry logic, scheduling, logging, routing, cost tracking — is worth writing and maintaining yourself.
Getting Started
- Download NORA from software.reibuys.com/nora
- Install on Windows 10 or later (requires a paid license key)
- Add an AI Router Node, configure your folder and categories
- Connect downstream nodes, schedule the workflow
One-time purchase — no subscription. Bring your own AI API keys. 30-day money-back guarantee.