Fluxuri de lucru · Indicii pentru litere repetate ×
from collections import Counter
def letter_feedback(answer, guess):
if any(type(s) is not str or len(s) != 5 or any(not "a" <= c <= "z" for c in s) for s in (answer, guess)):
raise ValueError("word.lowercase")
marks, remaining = [0] * 5, Counter()
for i, (a, g) in enumerate(zip(answer, guess)):
if a == g:
marks[i] = 2
else:
remaining[a] += 1
for i, g in enumerate(guess):
if marks[i] != 2 and remaining[g]:
marks[i] = 1
remaining[g] -= 1
return marks
✳Evaluează o încercare ASCII de cinci litere mici cu 2 pentru exacte, 1 pentru deplasate și 0 pentru absente.
✓ ModificăriVerifică înainte de aplicare ↗
Ilustrarea spațiului de lucru
Modele
Configurează un endpoint compatibil OpenAI sau Anthropic cu URL-ul de bază și cheia API, dacă este necesară. Testează conexiunea. Serverul local trebuie să ruleze; instrumentele externe pot transmite date separat.
Proiect
Testează repetițiile după rezervarea potrivirilor exacte, respingând majuscule, caractere non-ASCII sau lungimi greșite.
Verifică înainte de aplicare
Compară comportamentul real cu rezultatul așteptat. Dacă o verificare eșuează, cercetează cauza înainte de alte modificări.
from collections import Counter
def letter_feedback(answer, guess):
if any(type(s) is not str or len(s) != 5 or any(not "a" <= c <= "z" for c in s) for s in (answer, guess)):
raise ValueError("word.lowercase")
marks, remaining = [0] * 5, Counter()
for i, (a, g) in enumerate(zip(answer, guess)):
if a == g:
marks[i] = 2
else:
remaining[a] += 1
for i, g in enumerate(guess):
if marks[i] != 2 and remaining[g]:
marks[i] = 1
remaining[g] -= 1
return marks
Spațiu de programare cu AI
Transformă o regulă de joc într-o modificare de cod testabilă
LetterRook oferă un spațiu de lucru Windows pentru programare, destinat transformării unei reguli informale de joc într-un comportament software precis. Deschide proiectul și oferă modelului conectat un exemplu de tură cu feedbackul așteptat. Cere-i să examineze codul actual de evaluare și apelantul înainte să sugereze o modificare, mai ales când problema raportată depinde de simboluri repetate.
Feedbackul pentru cuvinte de cinci litere este un exemplu util de sarcină. O încercare poate conține mai multe apariții ale unei litere decât răspunsul, așadar explică modul în care potrivirile exacte afectează feedbackul rămas înainte să ceri o corecție. Verifică rezultatul propus pe perechi concrete de cuvinte, nu doar pe explicațiile asistentului. Regulile trebuie să determine implementarea și orice explicație afișată de aplicație.
După examinarea modificărilor, rulează cazuri de test pentru potriviri exacte, litere repetate și forme de cuvinte respinse. Verifică dacă interfața interpretează feedbackul returnat în acord cu contractul de evaluare. LetterRook se conectează la endpointuri acceptate, compatibile cu OpenAI sau Anthropic, folosind credențiale când sunt necesare. Alege un model nefiltrat dacă endpointul tău îl oferă; serverul determină în continuare suportul pentru context și instrumente. Păstrarea unei ture explicite și a rezultatului așteptat în conversație facilitează evaluarea fiecărei modificări sugerate, fără a depinde de o afirmație generală că jocul funcționează acum.
De la exemple de cuvinte la feedback fiabil
Ce face util un raport de eroare pentru litere repetate?
Oferă răspunsul, încercarea, feedbackul efectiv și cel așteptat pentru fiecare poziție. Include un caz în care potrivirile exacte consumă unele litere disponibile. Astfel asistentul primește o discrepanță precisă pe care o poate urmări în implementarea evaluării.
De ce să examinez potrivirile exacte înaintea feedbackului pentru poziții greșite?
Regula ilustrată rezervă potrivirile exacte înainte să distribuie aparițiile rămase. O modificare care numără independent fiecare caracter potrivit poate acorda prea multe potriviri unei încercări cu litere repetate. Verifică ordinea în cod și păstrează exemple care dezvăluie această greșeală.
Ar trebui funcția de evaluare să accepte cuvinte cu majuscule?
Exemplul existent acceptă cinci litere ASCII mici. Dacă aplicația necesită normalizare, definește unde are loc și testează separat acea limită. Nu lăsa o corecție a evaluării să introducă implicit alte forme de intrare acceptate.
Ce trebuie să adauge testul interfeței la cazurile de evaluare?
Confirmă că fiecare marcaj returnat corespunde feedbackului vizibil și poziției dorite. Numerele interne corecte pot fi totuși prezentate greșit. Rulează această verificare împreună cu testele axate pe reguli după examinarea modificărilor relevante din sursă.