Selezione immagini per soglia di larghezza
Scegli fra una e 64 coppie URL-larghezza con larghezza visibile 1–10000 e densità da 1/4 a 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])
- Progetto
- Prova soglie esatte e ripiego sul candidato maggiore, rifiutando larghezze duplicate o numeri errati senza scaricare l’URL.
- Controlla prima di applicare
- Confronta il comportamento effettivo con il risultato atteso. Se una verifica fallisce, indaga la causa prima di altre modifiche.
- Modelli
- Configura un endpoint compatibile con OpenAI o Anthropic usando URL di base e chiave API, se necessaria. Prova la connessione. Il server locale deve essere in esecuzione; gli strumenti remoti possono trasmettere dati separatamente.
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])
Ricollega l'immagine selezionata ai requisiti
Un URL di immagine inatteso può essere il risultato della logica di selezione anziché di una risorsa difettosa. PixelVeranda offre a questa indagine un ambiente di programmazione con IA per Windows. Apri il progetto e chiedi al modello collegato di esaminare i dati dei candidati, gli input del viewport e il chiamante che usa l'URL selezionato prima di proporre una modifica. Includi le scelte osservate e quelle attese.
Come compito concreto, potresti esaminare codice che sceglie la prima immagine abbastanza larga per una dimensione di visualizzazione e un rapporto di pixel richiesti. Specifica cosa deve succedere quando nessun candidato è abbastanza grande e se i candidati in ingresso arrivano ordinati. Chiedi una proposta che renda esplicite queste decisioni anziché affidarsi a un ordine di input comodo.
Verifica la modifica con URL attesi esatti. Esegui i test del progetto attorno alle soglie di larghezza, al confine del ripiego e con dati dei candidati non validi. Esamina come il chiamante ottiene le informazioni del viewport e gestisce il rifiuto, poi prova personalmente la pagina interessata. L'URL selezionato è una parte della distribuzione dell'immagine; la proposta non deve implicare che sceglierlo dimostri che l'immagine finale visualizzata soddisfa ogni requisito.
PixelVeranda supporta connessioni a endpoint compatibili con OpenAI o Anthropic. Scegli un modello IA senza censura dove disponibile tramite il tuo servizio, con contesto, restrizioni e strumenti dipendenti da quella configurazione. Mantieni i requisiti di selezione nella conversazione e usa i risultati dell'applicazione per valutare le modifiche proposte.
Revisione di una modifica alla selezione delle immagini
Quali prove aiutano a spiegare il candidato sbagliato?
Fornisci larghezze e URL dei candidati, larghezza di visualizzazione richiesta, rapporto di pixel e scelta attesa. Includi il codice che fornisce tali valori. Questo permette di distinguere la logica di selezione da misurazioni errate o dati incompleti dei candidati.
La funzione deve presumere che i candidati siano ordinati?
Solo se il contratto di input garantisce quell'ordine e i chiamanti lo fanno rispettare. Chiedi all'assistente di esaminare l'origine dell'elenco. Verifica un esempio non ordinato quando l'ordine non è garantito ed esamina ogni ordinamento introdotto dalla modifica.
Come deve comportarsi il caso in cui nessuna immagine è abbastanza grande?
Indica esplicitamente la politica di ripiego, per esempio scegliere il candidato più grande disponibile o segnalare un errore. Poi verifica proprio quel caso nel progetto. Il modello non deve scegliere una politica solo perché un ramo è più facile da scrivere.
Selezionare un URL conferma la qualità della visualizzazione nel browser?
No. Verifica la pagina effettiva oltre al valore restituito dalla funzione. Layout, misurazione e disponibilità delle risorse possono influire sul risultato dopo la selezione. Mantieni casi di prova della funzione per la logica precisa e un controllo applicativo per il risultato visibile all'utente.
PixelVeranda · Aggiornato 2026-10-25