Перейти к содержимому

Parallel Sampling

ParallelSamplingStepDescription запускает одно и то же рассуждение N раз и агрегирует кандидатов — большинством голосов или LLM-судьёй. Это паттерн «совета LLM».

from mmar_carl import (
ParallelSamplingStepDescription, ParallelSamplingStepConfig, ParallelSamplingAggregation,
)
ParallelSamplingStepDescription(
number=1,
title="Sample answers",
aim="Answer the question.",
config=ParallelSamplingStepConfig(
n_samples=5,
aggregation=ParallelSamplingAggregation.MAJORITY_VOTE,
),
)
ПолеПо умолчаниюНазначение
n_samples—Сколько кандидатов семплировать.
aggregation—Как выбрать победителя (ниже).
judge_prompt""Промпт для судьи best_of_n / llm_judge.
normalize_for_vote—Нормализовать текст перед сравнением большинства.
ParallelSamplingAggregationВыбирает победителя по…
MAJORITY_VOTEнаиболее распространённому ответу (точное / нормализованное совпадение).
BEST_OF_Nвыбору LLM-судьи лучшего кандидата.
LLM_JUDGEпсевдоним для best_of_n с явным judge_prompt.
  • Debate — структурированная дискуссия вместо независимых семплов.