Skip to main content

AI Vision

Asks a question about what is on the screen, and answers it in a shape your flow can branch on.

The other detection nodes ask a question you have already answered: is this exact template here (Find Image), what characters are in this box (Read Text), is this rectangle red (Check Region). AI Vision is for the question you cannot phrase that way โ€” which screen am I on, where is the Continue button on a layout I have never seen, is this dialog an error or a reward.

Available in both workspaces.

The answer is constrained, not free textโ€‹

This is the part that makes it usable in automation. You give the node a Task and a list of Targets; the targets become the only values the answer may take. A model that could reply with any sentence would be useless to a flow โ€” you would be parsing prose at run time. Here, "which of these three screens" can only come back as one of those three.

TaskWhat you supplyUse it for
Classify the screenTargets โ€” the screens you expect"Am I on the shop, the map, or a login wall?"
Locate elementsTargets โ€” the things to findFinding a control on a layout that moves or that you have no template for
Extract fieldsTargets โ€” the field namesPulling several labelled values out of a panel in one pass
Answer a questionA QuestionA one-off judgement: "is the queue empty?"
Describe the sceneโ€”Diagnostics and Run Evidence: a sentence about what was on screen
Custom (JSON schema)Your own answer schemaWhen none of the above shapes fit

Targets, one per line. A target is a short phrase, and a comma inside one is content rather than a separator โ€” the same rule as Open App's arguments.

Settingsโ€‹

SettingTypeRangeDefaultWhat it does
Taskchoicethe six aboveClassify the screenRequired. Decides the question asked and the shape of the answer
Targetslist of stringsโ‰ค 60 chars eachโ€”The states, elements, fields or choices the task is about
Questionstringโ‰ค 300 charsโ€”Used by Answer a question and Custom
Region to look atrectangleโ€”whole screenWhere to look. Absent means the whole screen
Timeoutinteger1000โ€“300000 msโ€”How long to wait for an answer

Two expert knobs โ€” the custom task's schema and the image-token budget โ€” are accepted by a saved flow but not offered in the panel. They have sensible defaults, and a hand-authored value is never rewritten by the editor.

Frame it tightly. A region is optional and defaults to the whole screen, which is right for classifying a screen and poor for reading one small panel. Measured on a code challenge: framing the whole card read the heading instead of the code; framing just the picture read the code.

Portsโ€‹

PortTaken whenRequired
SuccessThe model produced a schema-valid answerYes
FailureNo frame, the runtime was unreachable, or the model could not satisfy the schemaNo
CancelledThe run was stopped mid-questionNo โ€” never followed
FatalInvalid configurationNo โ€” never followed
Success is not "the answer you hoped for"

"The screen is the shop" and "the screen is not the shop" are both successful reads โ€” the node succeeded at looking. Branch on the content with an If over the bound variables, exactly as you would after a Read Text. A node that routed on the answer's value would need one port per possible state.

Basic exampleโ€‹

Know which screen you are on before deciding anything:

  • Task: Classify the screen
  • Targets: shop, map, login wall
  • Save the answer to a variable, then branch with an If on its value.

Common mistakesโ€‹

MistakeWhat happensFix
No targets on a task that needs themThe answer has nothing to be constrained toFill Targets for Classify / Locate / Extract
Targets that overlap in meaningThe answer is unstable between runsMake them mutually exclusive
Branching on the port instead of the valueBoth answers leave by SuccessBranch with an If on the bound variable
Whole-screen region for one small panelThe model answers about the wrong thingDraw a region around the panel
Using it where a template would doSlower and less certain than pixelsFind Image for a fixed graphic
  • Find Image โ€” when you have the exact pixels
  • Read Text โ€” when you need the characters in a box
  • If โ€” branch on what came back
  • Check Region โ€” colour and change, without a model