EXP-PROMPT-MECHANISM-FACTORIAL
✓ подтвержденоQ2 — факторный анализ «промпт-механизм»: какая ось доминирует при увеличении в 85,5 раза?
Простыми словами
Исследователи протестировали различные части специальной инструкции, чтобы выяснить, какая из них в наибольшей степени отвечает за получение творческих ответов. Они обнаружили, что указание ИИ вести себя как персонаж, ищущий новизны, было основным фактором, способствующим таким творческим ответам. Другие части инструкции, такие как явный запрос на новые идеи или иная формулировка существующих, оказали гораздо меньшее влияние.
▶ Технические детали
Исследовательская гипотеза
Q1 (exp-pure-llm-licensing-ceiling, bfb4bc1c6, 2026-05-13) показал 100% INTERNAL_NOVEL при промпте MAX-licensing (Wilson 95% [96.4%, 100.0%], N=10, $0.13) по сравнению с 1.17% у baseline paper8 при промпте CONSERVATIVE — увеличение в 85.5 раз ТОЛЬКО за счет изменения промпта (тот же движок, та же модель gemini-2.0-flash-lite, тот же RULE_SPACE_SEED, та же ротация агентов). Q1 раскладывает промпт MAX-licensing на 3 оси: (1) персона (ищущая новизну против консервативной), (2) явная лицензия в propose-template, (3) контр-RULE_SPACE обрамление начальных значений. Этот факторный эксперимент Q2 изолирует каждую ось, чтобы определить доминирующий механизм промпт-контента. ПРЕДВАРИТЕЛЬНО ЗАРЕГИСТРИРОВАННЫЕ ВЕРДИКТЫ (ЗАБЛОКИРОВАНЫ 2026-05-13 ДО ЗАПУСКА): - SINGLE-FACTOR-DOMINANT: главный эффект одного фактора ≥80% от общего INTERNAL_NOVEL дисперсии по ячейкам (разложение суммы квадратов на 2×2×2). Назовите фактор. Остальные два вносят <20% в сумме.
- TWO-FACTOR-INTERACTION: член взаимодействия (между двумя факторами) ≥40% от суммы главных эффектов этих двух факторов. Факториал должен "синергировать" — ни один из них по отдельности не достигает совместного эффекта.
- COMPOSITE-LICENSING-REQUIRED: полная ячейка max (novelty-seeking × yes-license × yes-counter) ≥ 95% И каждая из 7 других ячеек ≤ (полная max - 30 п.п.). Все 3 фактора необходимы для достижения порога 70%; удаление любого одного фактора снижает результат ≥30 п.п.
- COMPLEX: паттерн не укладывается четко ни в один из вышеперечисленных. Документировать остаточную структуру (например, доминирующее 3-стороннее взаимодействие или немонотонный порядок).
Вычисление: объединенный INTERNAL_NOVEL для каждой ячейки = (truly_novel + lineage_extension) / total_accepts по N=5 запускам/ячейку. 95% доверительный интервал Уилсона для каждой ячейки. Главные эффекты = маргинальные средние для каждого уровня фактора. Члены взаимодействия = (среднее по ячейке - сумма главных эффектов). Разложение дисперсии с помощью stdlib (scipy не требуется для 2×2×2). СРАВНИТЕЛИ: - Якорь Q1: 100.0% (Wilson [96.4%, 100.0%], объединенный N=10, полная ячейка MAX) - Пол paper8: 1.17% (943 принятых в архивированном корпусе, консервативные промпты) - Ожидаемый паттерн (на основе теории): одна только персона novelty-seeking не должна достигать потолка; явная лицензия в propose должна быть самым большим отдельным главным эффектом (наиболее прямое упоминание "novel"); контр-RULE_SPACE должен модулировать.
Постановка эксперимента
Тип: factorial-2x2x2
| Условие | Параметры |
|---|---|
| NS_LIC_CTR | persona: novelty-seeking, explicit_license: yes-license, counter_rule_space: yes-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} OPEN-ENDED PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Existing values (these have been tried — SURPASS them): {rule_space_str}{axis_hint} Propose a NEW value for one axis. The new value SHOULD extend beyond known values. Examples of valid novel values: 'hierarchical' for broadcast_to, 'metaphorical' for signal_type, 'critical' for coupling_strength. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<short novel value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
| NS_LIC_NOC | persona: novelty-seeking, explicit_license: yes-license, counter_rule_space: no-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} OPEN-ENDED PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Known values: {rule_space_str}{axis_hint} Propose a NEW value for one axis. The new value SHOULD extend beyond known values. Examples of valid novel values: 'hierarchical' for broadcast_to, 'metaphorical' for signal_type, 'critical' for coupling_strength. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<short novel value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
| NS_NOL_CTR | persona: novelty-seeking, explicit_license: no-license, counter_rule_space: yes-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} RULE PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Existing values (these have been tried — SURPASS them): {rule_space_str}{axis_hint} Propose a rule modification. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
| NS_NOL_NOC | persona: novelty-seeking, explicit_license: no-license, counter_rule_space: no-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} RULE PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Known values: {rule_space_str}{axis_hint} Propose a rule modification. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
| CO_LIC_CTR | persona: conservative, explicit_license: yes-license, counter_rule_space: yes-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} OPEN-ENDED PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Existing values (these have been tried — SURPASS them): {rule_space_str}{axis_hint} Propose a NEW value for one axis. The new value SHOULD extend beyond known values. Examples of valid novel values: 'hierarchical' for broadcast_to, 'metaphorical' for signal_type, 'critical' for coupling_strength. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<short novel value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
| CO_LIC_NOC | persona: conservative, explicit_license: yes-license, counter_rule_space: no-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} OPEN-ENDED PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Known values: {rule_space_str}{axis_hint} Propose a NEW value for one axis. The new value SHOULD extend beyond known values. Examples of valid novel values: 'hierarchical' for broadcast_to, 'metaphorical' for signal_type, 'critical' for coupling_strength. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<short novel value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
| CO_NOL_CTR | persona: conservative, explicit_license: no-license, counter_rule_space: yes-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} RULE PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Existing values (these have been tried — SURPASS them): {rule_space_str}{axis_hint} Propose a rule modification. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
| CO_NOL_NOC | persona: conservative, explicit_license: no-license, counter_rule_space: no-counter, coupling: true, must_propose: true, axis_diversify: true, meta_modifiable: true, mute_signal: false, cosigner_required: false, propose_prompt_template: === GEN {gen} RULE PROPOSAL (round {r_local}) === Inherited rules: {rules_str} Known values: {rule_space_str}{axis_hint} Propose a rule modification. {must_clause} Output JSON: {{"action": "propose", "axis": "<axis>", "value": "<value>", "reasoning": "<why>"}} OR {{"action": "pass"}} |
Факторы: persona (novelty-seeking, conservative) × explicit_license (yes-license, no-license) × counter_rule_space (yes-counter, no-counter)
Параметры
- n_agents
- 4
- n_rounds
- 100
- model
- google/gemini-2.5-flash-lite
- temperature
- 0.85
Trophic Ratios by Condition
Mean trophic ratio per agent across runs. Error bars = ±1 std dev. Higher TR = more upstream (exporter).