● ● ●VariantOak●
ワークフロー · 選択肢の組み合わせ上限 ×
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))✳結果数の上限を確認してから、順序付きの商品選択肢の組み合わせを列挙してください。
✓ 変更内容適用前に確認 ↗
ワークスペースのイメージ
モデル
OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。
プロジェクト
空のグループや重複ラベルを試し、出力を確保する前に多すぎる組み合わせを拒否してください。
適用前に確認
実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。
ワークフロー
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))