Sélection d’images par seuil de largeur
Choisissez parmi une à 64 paires URL-largeur pour une largeur affichée de 1–10000 et une densité de 1/4 à 8.
import math
def image_candidate(candidates, width, ratio):
if type(width) is not int or not 1 <= width <= 10000 or type(ratio) not in (int, float) or not 0.25 <= ratio <= 8 or not math.isfinite(ratio):
raise ValueError("image.viewport")
if type(candidates) is not list or not 1 <= len(candidates) <= 64:
raise ValueError("image.candidates")
sizes, seen = [], set()
for pair in candidates:
if type(pair) not in (list, tuple) or len(pair) != 2:
raise ValueError("image.pair")
url, pixels = pair
if type(url) is not str or not 1 <= len(url) <= 2048 or any(ord(c) < 32 or ord(c) == 127 for c in url):
raise ValueError("image.url")
if type(pixels) is not int or not 1 <= pixels <= 100000 or pixels in seen:
raise ValueError("image.size")
seen.add(pixels)
sizes.append((pixels, url))
sizes.sort()
target = width*ratio
return next((url for pixels, url in sizes if pixels >= target), sizes[-1][1])
- Projet
- Testez seuils exacts et repli vers le plus grand candidat, rejetez les largeurs doublées ou nombres invalides sans charger l’URL.
- Vérifiez avant d’appliquer
- Comparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.
- Modèles
- Configurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
import math
def image_candidate(candidates, width, ratio):
if type(width) is not int or not 1 <= width <= 10000 or type(ratio) not in (int, float) or not 0.25 <= ratio <= 8 or not math.isfinite(ratio):
raise ValueError("image.viewport")
if type(candidates) is not list or not 1 <= len(candidates) <= 64:
raise ValueError("image.candidates")
sizes, seen = [], set()
for pair in candidates:
if type(pair) not in (list, tuple) or len(pair) != 2:
raise ValueError("image.pair")
url, pixels = pair
if type(url) is not str or not 1 <= len(url) <= 2048 or any(ord(c) < 32 or ord(c) == 127 for c in url):
raise ValueError("image.url")
if type(pixels) is not int or not 1 <= pixels <= 100000 or pixels in seen:
raise ValueError("image.size")
seen.add(pixels)
sizes.append((pixels, url))
sizes.sort()
target = width*ratio
return next((url for pixels, url in sizes if pixels >= target), sizes[-1][1])
Reliez l’image sélectionnée aux exigences
Une URL d’image inattendue peut résulter de la logique de sélection plutôt que d’une ressource défectueuse. PixelVeranda offre à cette investigation un espace de programmation assistée par IA sous Windows. Ouvrez le projet et demandez au modèle connecté d’examiner les données candidates, les entrées de la zone d’affichage et l’appelant qui utilise l’URL sélectionnée avant de proposer une modification. Incluez les choix observés et attendus.
Pour une tâche concrète, vous pourriez examiner du code choisissant la première image assez large pour une taille d’affichage et un rapport de pixels demandés. Précisez ce qui doit se passer si aucun candidat n’est assez grand et si les candidats arrivent triés. Demandez une proposition explicitant ces décisions plutôt que de dépendre d’un ordre d’entrée pratique.
Vérifiez la correction avec des attentes d’URL exactes. Exécutez les tests du projet autour des seuils de largeur, à la limite du repli et avec des données candidates invalides. Examinez comment l’appelant obtient les informations de la zone d’affichage et traite le rejet, puis essayez vous-même la page concernée. L’URL sélectionnée n’est qu’une partie de la diffusion d’images ; la proposition ne doit pas impliquer que son choix prouve que l’image finalement rendue satisfait toutes les exigences.
PixelVeranda prend en charge les connexions aux points de terminaison compatibles OpenAI ou Anthropic. Choisissez un modèle d’IA sans censure lorsqu’il est disponible via votre service, le contexte, les restrictions et les outils dépendant de cette configuration. Gardez les exigences de sélection dans la conversation et utilisez les résultats de votre application pour juger les modifications proposées.
Examiner une modification de sélection d’images
Quels éléments aident à expliquer un mauvais candidat ?
Fournissez les largeurs et URL des candidats, la largeur d’affichage demandée, le rapport de pixels et le choix attendu. Incluez le code qui fournit ces valeurs. Cela permet de distinguer la logique de sélection de mesures incorrectes ou de données candidates incomplètes.
La fonction doit-elle supposer les candidats triés ?
Uniquement si le contrat d’entrée garantit cet ordre et si les appelants le respectent. Demandez à l’assistant d’examiner la source de la liste. Testez un exemple non trié lorsque l’ordre n’est pas garanti et examinez tout tri introduit par la correction.
Que faire si aucun candidat n’est assez grand ?
Énoncez explicitement la politique de repli, par exemple sélectionner le plus grand candidat disponible ou signaler une erreur. Vérifiez ensuite ce cas précis dans le projet. Le modèle ne doit pas choisir une politique simplement parce qu’une branche est plus facile à écrire.
Sélectionner une URL confirme-t-il la qualité de diffusion dans le navigateur ?
Non. Vérifiez la page réelle ainsi que la valeur renvoyée par la fonction. La mise en page, les mesures et la disponibilité des ressources peuvent affecter le résultat après sélection. Conservez les tests de fonction pour la logique précise et une vérification applicative pour le résultat visible par l’utilisateur.
PixelVeranda · Mis à jour 2026-10-25