n8n

How to Automate Qdrant Image Classification?

Label satellite and aerial photos quickly by matching each image to similar examples in your own database. Great for operations and GIS teams that need fast, steady tags without training a custom model. It helps sort large image sets for reports, audits, and field planning.

A parent workflow sends an image URL into this tool. The URL goes to Voyage AI to get an embedding vector. That vector is used to search Qdrant for the closest labeled images. A Python step counts the top labels and picks the winner. If two labels tie, the loop raises the number of neighbors by five and tries again until there is a clear result or it checks one hundred images. In testing notes it reached about 93.24 percent accuracy on a separate test set with no fine tuning.

Set up accounts for Voyage AI and Qdrant Cloud. Load a labeled collection into Qdrant and store the class name in the payload field. Update the set nodes with your collection name, Qdrant URL, and starting neighbor count. Expect big time savings on image review and steady labels across teams. Common uses include site surveys, asset checks, land use tracking, and crop or forest mapping.

What are the key features?

  • Accepts an image URL from a parent workflow using Execute Workflow Trigger
  • Calls Voyage AI multimodal embeddings to convert the image into a vector
  • Queries Qdrant points with the vector to find nearest labeled neighbors with payloads
  • Uses a Python majority vote to pick the most common class from neighbor payloads
  • Resolves ties by increasing the neighbor count in steps of five up to one hundred
  • Maps and stores variables like collection name, Qdrant URL, and limitKNN with set nodes
  • Returns the decided class back to the calling workflow for downstream use
  • Uses a strict check to detect ties before looping to a larger neighbor set

What are the benefits?

  • Reduce manual review from 60 minutes per 100 images to about 3 minutes
  • Automate up to 90 percent of tagging work with no custom model
  • Improve label consistency by reducing human errors by around 20 percent
  • Handle thousands of images per day with stable performance
  • Connect Voyage AI embeddings with Qdrant search for end to end classification

How do you set it up?

  1. Import the template into n8n: Create a new workflow in n8n > Click the three dots menu > Select 'Import from File' > Choose the downloaded JSON file.
  2. You'll need accounts with Voyage AI and Qdrant Cloud. See the Tools Required section above for links to create accounts with these services.
  3. In n8n, open Credentials > Create new > HTTP Header Auth for Voyage AI. Name it Voyage API. Add header key Authorization and value Bearer YOUR_API_KEY from the Voyage AI API page.
  4. In n8n, create a QdrantApi credential. Enter your Qdrant Cloud host URL and API key from the Qdrant dashboard, then save.
  5. Open the Embed image node and confirm the model is voyage multimodal 3 and that the JSON body uses the imageURL field.
  6. Open the node named Qdrant variables + embedding + KNN neigbours. Set collectionName to your Qdrant collection, set qdrantCloudURL to your cluster URL, and set limitKNN to your starting neighbor count such as 10.
  7. Ensure your Qdrant collection stores vectors under the vector name used by your setup and that each point payload includes landscape_name or your chosen label field.
  8. Check the Image Test URL node mapping. It expects the incoming JSON to have query.imageURL. If your parent workflow passes a different path, update this mapping.
  9. Run a test with a public image URL. Inspect the Query Qdrant node output to confirm result.points contains neighbors with payload labels.
  10. Validate tie handling by starting with a small limitKNN such as 10. Watch the Increase limitKNN node raise the number by five until a single class wins or the cap of one hundred is reached.
  11. Connect this workflow from a parent workflow using the Execute Workflow node. Pass an object with query.imageURL set to the image you want to classify.
  12. Troubleshoot common issues: 401 or 403 means check API keys and credentials, empty points means fix collection name or vector settings, broken images require a reachable URL, and vector name mismatches require aligning the using field and your stored vector name.

Tools Required

$24 / mo or $20 / mo billed annually to use n8n in the cloud. However, the local or self-hosted n8n Community Edition is free.

Qdrant Cloud

Sign up

Free tier: $0 / mo, 1GB free forever cluster

Voyage AI

Sign up

Free tier via API: first 200M text tokens (embeddings) and 150B image pixels (multimodal). After free: as low as $0.02 per 1M tokens (voyage-3.5-lite); multimodal $0.12 per 1M tokens + $0.60 per 1B pixels (min $0.00003/image).

Similar Templates

Join Futurise to access 1,200+ automation templates

Get instant access to ready-made automation workflows for n8n, Make.com, AI agents, and more. Download, customise, and deploy in minutes.