Ruang kerja kode dengan AI
Kombinasi opsi berbatas
Daftarkan kombinasi opsi produk berurutan hanya setelah memeriksa batas hasil.
● ● ●VariantOak●
Alur kerja · Kombinasi opsi berbatas ×
from itertools import product
from math import prod
def variants(groups, limit):
if type(limit) is not int or limit < 0:
raise ValueError("limit")
if not groups: return []
if any(len(set(g)) != len(g) for g in groups):
raise ValueError("duplicate option")
if prod(map(len, groups)) > limit:
raise ValueError("too many variants")
return list(product(*groups))✳Daftarkan kombinasi opsi produk berurutan hanya setelah memeriksa batas hasil.
✓ PerubahanTinjau sebelum menerapkan ↗
Ilustrasi ruang kerja
Model
Atur endpoint kompatibel OpenAI atau Anthropic dengan URL dasar dan kunci API jika diperlukan. Uji koneksi. Server model lokal harus berjalan; alat jarak jauh dapat mengirim data secara terpisah.
Proyek
Uji grup kosong dan label ganda, menolak terlalu banyak kombinasi sebelum mengalokasikan keluaran.
Tinjau sebelum menerapkan
Bandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.
Alur kerja
from itertools import product
from math import prod
def variants(groups, limit):
if type(limit) is not int or limit < 0:
raise ValueError("limit")
if not groups: return []
if any(len(set(g)) != len(g) for g in groups):
raise ValueError("duplicate option")
if prod(map(len, groups)) > limit:
raise ValueError("too many variants")
return list(product(*groups))