Food Image Analysis for Calorie Estimation with Vision AI and Telegram
Who’s it for
Teams building health/fitness apps, coaches running check-ins in chat, and anyone who needs quick, structured nutrition insights from food photos—without manual logging.
What it does / How it works
This workflow accepts a food image (URL or Base64), uses a vision-capable LLM to infer likely ingredients and rough gram amounts, estimates per-ingredient calories, and returns a strict JSON summary with total calories and a short nutrition note. It normalizes different payloads (e.g., Telegram/LINE/Webhook) into a common format, handles transient errors with retries, and avoids hardcoded secrets by using credentials/env vars.
Requirements
Vision-capable LLM credentials (e.g., gpt-4o or equivalent) One input channel (Webhook, Telegram, or LINE) Environment variables for model name/temperature and optional request validation
How to set up
Connect your input channel and enable the Webhook (copy the test URL). Add LLM credentials and set LLM_MODEL and LLM_TEMPERATURE (e.g., 0.3). Turn on the workflow, send a sample payload with imageUrl, and confirm the strict JSON output. (Optional) Configure a reply node (Telegram/Slack or HTTP Response) and a logger (Google Sheets/Notion).
How to customize the workflow
Outputs**: Add macros (protein/fat/carb) or micronutrient fields. Units**: Convert portion descriptions (piece/slice) to grams with your own mapping. Languages**: Toggle multilingual output (ja/en). Policies**: Tighten validation (reject low-confidence parses) or add manual review steps. Security**: Use signed/temporary URLs for private images; mask PII in logs.
Data model (strict JSON)
{ "dishName": "string", "ingredients": [{ "name": "string", "amount": 0, "calories": 0 }], "totalCalories": 0, "nutritionEvaluation": "string" }
Notes
Rename all nodes clearly, include sticky notes explaining the setup, and never commit real IDs, tokens, or API keys.
Related Templates
Use OpenRouter in n8n versions <1.78
What it is: In version 1.78, n8n introduced a dedicated node to use the OpenRouter service, which lets you to use a lot...
Task Deadline Reminders with Google Sheets, ChatGPT, and Gmail
Intro This template is for project managers, team leads, or anyone who wants to automatically remind teammates of tasks ...
🤖 Build Resilient AI Workflows with Automatic GPT and Gemini Failover Chain
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. How it works This...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments