Sommaire
Documentation › Guides

L'IA voit le jeu

Quand le modèle d'image et la reconnaissance de texte ne suffisent plus : reconnaître des états avec un modèle local, bifurquer et lire plusieurs valeurs en un appel.

Dernière mise à jour: 2026-09-17

Parfois les deux échouent : un modèle d'image ne trouve rien parce que l'image change à chaque fois — et la reconnaissance de texte renvoie n'importe quoi parce qu'il n'y a pas de texte, ou que le fond est trop chargé. C'est exactement à cela que servent les modules IA. Ils jugent une image au lieu de la comparer.

Une précision d'emblée, pour que l'attente soit juste : l'IA est plus lente qu'une recherche d'image, et elle n'est pas faite pour chaque clic. Elle vaut la peine aux rares endroits où il faut comprendre — « un combat est-il en cours, ou suis-je dans un menu ? ».

Pour ces tâches, un modèle local sur ta machine suffit. Aucun fournisseur, aucune carte bancaire, et aucune donnée d'image ne quitte l'ordinateur.

Étape 1 — Installer un modèle local

  1. Installer Ollama et le démarrer.

  2. Récupérer un modèle capable de lire des images. Dans un terminal :

    ollama pull qwen2.5vl:7b
    
  3. Dans FlowBotCommander : Outils → Profils de fournisseur, puis « Chercher des modèles locaux ».

Ce n'est pas forcément Ollama. La recherche interroge de la même façon llama.cpp (port 8080) et LM Studio (port 1234) — les trois répondent au même appel, et l'application leur parle de manière identique.

Ce qui compte vraiment, c'est le modèle : un modèle purement textuel ne voit pas les images. Avec llama.cpp, cela signifie que le fichier mmproj doit être chargé en plus du fichier de modèle — sans lui, le serveur démarre quand même mais ne prend que la partie texte, et l'IA répond à chaque image par de la prose générale. Cela ressemble à une erreur de reconnaissance, mais n'en est pas une.

llama-server -m qwen2.5-vl-7b-q4_k_m.gguf --mmproj mmproj-qwen2.5-vl-7b-f16.gguf --port 8080

La recherche interroge les adresses habituelles (Ollama, llama.cpp, LM Studio), crée un profil prêt à l'emploi pour chaque découverte et présélectionne un modèle capable de lire des images. Puis Enregistrer — c'était toute l'installation.

Si la recherche ne trouve rien, le serveur n'est presque toujours pas démarré. Ce n'est pas une supposition mais le cas le plus fréquent ; le message le dit donc explicitement.

Étape 2 — Le test le plus rapide : une question oui/non

Prends Interroger l'image (IA), serre la zone avec l'outil de zone autour de ce qui compte, et pose une question à deux réponses seulement :

Y a-t-il une boîte d'erreur sur l'image ? Réponds seulement par oui ou non.

Le module fournit la réponse sous trois formes : texte (answer), nombre (zahl) et oui/non (jaNein). Pour bifurquer, relie jaNein à un module Si/Alors.

Étape 3 — Bifurquer avec « L'IA décide »

Dès qu'il y a plus de deux cas, « L'IA décide » est le bon module. Tu écris les options une par ligne :

combat
menu
écran de chargement

Le module obtient alors les sorties wahl1, wahl2, wahl3 — plus unklar (incertain) et fehler (erreur).

Télécharger le bot d'exemple

Deux détails comptent plus qu'il n'y paraît :

  • Tu n'as pas à saisir « unklar ». Le module ajoute lui-même cette possibilité à la question. La raison vient de la pratique : sans cette échappatoire, un modèle choisit faux plutôt que de s'abstenir — lors d'un essai avec un fragment de 40×64 pixels où rien n'était visible, il a répondu avec assurance par l'une des options. Avec l'échappatoire, il a correctement répondu « incertain ».
  • La réponse est vérifiée contre ta liste. Si le modèle invente ou répond de façon ambiguë (« combat ou menu »), le flux part vers unklar. Il ne part jamais quelque part simplement parce qu'un mot correspond à peu près.

Relie unklar à une courte attente et à un nouvel essai — pas à la même action qu'une sortie de choix. « Je ne sais pas » est une réponse utile, à condition que le bot la respecte.

Étape 4 — Plusieurs valeurs en un appel

Pour les nombres et les noms, prends Lire des valeurs sur l'image. Un nom de champ par ligne :

or
niveau
nom_ennemi

Chaque champ devient une sortie de données du même nom. C'est un appel pour trois valeurs — avec « Interroger l'image » il en faudrait trois.

Nomme les champs comme tu le dirais à une personne : or est clair, valeur1 non. Le modèle lit ce que le nom suggère. Si une valeur se trouve à un endroit inhabituel, l'indication supplémentaire aide : « Les nombres sont dans la barre du haut. Ignore le chat. »

La zone compte plus que le modèle

Le levier le plus efficace n'est pas un modèle plus gros, c'est une zone serrée. Mesuré sur une vraie capture de jeu en 3440×1474, même question, même modèle :

Ce qui a été demandé Résultat
fenêtre entière, réduite à 1024 px faux — valeurs d'une autre fenêtre, 4,4 Mo sans réduction
extrait autour des valeurs (750×385) juste — 54 Ko, 0,2 s

Une zone serrée est donc à la fois moins chère, plus rapide et plus précise. Consacre la demi-minute à l'outil de zone ; elle rapporte plus que n'importe quel autre réglage.

Ce que ça coûte — et le temps que ça prend

local fournisseur (Claude, GPT)
argent par question rien selon la surface de l'image et la longueur du texte
durée 0,2–0,6 s tant que le modèle est en mémoire selon la connexion, souvent 1–3 s
premier appel environ 15 s, le modèle se charge comme d'habitude
données restent sur la machine l'extrait part chez le fournisseur

Ce temps de chargement explique le délai généreux par défaut. Et comme une boucle ferait sinon cent appels pour la même question, il y a « Mémoriser la réponse pendant » : même question sur la même image, et la réponse mémorisée revient. Toute modification de l'image compte comme une nouvelle question.

Quand ça ne marche pas

Ce que tu vois La cause la plus fréquente
Avis « L'IA n'est pas encore configurée » sur le module Aucun profil de fournisseur. Appuie sur Configurer l'IA….
« Chercher des modèles locaux » ne trouve rien Le serveur n'est pas démarré. Lance Ollama, puis relance la recherche.
Le flux part toujours vers unklar La zone montre trop ou la mauvaise chose. Resserre-la — et vérifie que les options correspondent vraiment à l'image.
Le flux part toujours vers fehler Nom de modèle incorrect, ou le modèle ne lit pas les images. Choisis-en un avec vl, vision ou llava dans le nom.
Les valeurs sont confondues La zone est trop grande — voir plus haut. L'indication supplémentaire aide aussi.
La réponse est coupée Augmente la longueur maximale de réponse dans le profil du fournisseur.
Tout est lent Le premier appel charge le modèle. Ensuite il reste en mémoire — et « mémoriser la réponse » rend une boucle bien moins coûteuse.

Et ensuite ?

Prêt à essayer ?

FlowBotCommander est gratuit pour commencer — sans compte.

Démarrer gratuitement