p43G
This commit is contained in:
@@ -189,26 +189,6 @@ parameters:
|
||||
- pH-Wert
|
||||
- ph-wert
|
||||
- ph wert
|
||||
positive_context_terms:
|
||||
- Messung
|
||||
- messen
|
||||
- misst
|
||||
- Messbereich
|
||||
- Messparameter
|
||||
- Messgröße
|
||||
- Messgroesse
|
||||
- Bestimmung
|
||||
- bestimmen
|
||||
- Analyse
|
||||
- analysiert
|
||||
- überwachen
|
||||
- ueberwachen
|
||||
- Indikator für
|
||||
- Indikator fuer
|
||||
- Reagenz für
|
||||
- Reagenz fuer
|
||||
- Sensor
|
||||
- Elektrode
|
||||
negative_context_terms:
|
||||
- Betriebsbereich
|
||||
- Betriebsumgebung
|
||||
@@ -247,32 +227,6 @@ parameters:
|
||||
- ORP
|
||||
- Oxidations-Reduktionspotential
|
||||
- Oxidations Reduktionspotential
|
||||
positive_context_terms:
|
||||
- Messung
|
||||
- messen
|
||||
- misst
|
||||
- Messbereich
|
||||
- Messparameter
|
||||
- Messgröße
|
||||
- Messgroesse
|
||||
- Bestimmung
|
||||
- bestimmen
|
||||
- Analyse
|
||||
- analysiert
|
||||
- überwachen
|
||||
- ueberwachen
|
||||
- Indikator für
|
||||
- Indikator fuer
|
||||
- Reagenz für
|
||||
- Reagenz fuer
|
||||
- Sensor
|
||||
- Elektrode
|
||||
negative_context_terms:
|
||||
- Betriebsbereich
|
||||
- Betriebsumgebung
|
||||
- Einsatzbedingungen
|
||||
- störungsfrei
|
||||
- stoerungsfrei
|
||||
non_equivalent_terms: []
|
||||
safe_no_evidence_answer_de: Ich finde in den bereitgestellten Quellen keinen sicher belegten Treffer für Redox-/ORP-Messung.
|
||||
safe_no_accessory_evidence_answer_de: Ich finde in den bereitgestellten Quellen keinen sicher belegten Redox-/ORP-Indikator oder ein Redox-/ORP-Reagenz für Messgeräte.
|
||||
@@ -288,32 +242,6 @@ parameters:
|
||||
- freiem Chlor
|
||||
- freien Chlor
|
||||
- free chlorine
|
||||
positive_context_terms:
|
||||
- Messung
|
||||
- messen
|
||||
- misst
|
||||
- Messbereich
|
||||
- Messparameter
|
||||
- Messgröße
|
||||
- Messgroesse
|
||||
- Bestimmung
|
||||
- bestimmen
|
||||
- Analyse
|
||||
- analysiert
|
||||
- überwachen
|
||||
- ueberwachen
|
||||
- Indikator für
|
||||
- Indikator fuer
|
||||
- Reagenz für
|
||||
- Reagenz fuer
|
||||
- Sensor
|
||||
- Elektrode
|
||||
negative_context_terms:
|
||||
- Betriebsbereich
|
||||
- Betriebsumgebung
|
||||
- Einsatzbedingungen
|
||||
- störungsfrei
|
||||
- stoerungsfrei
|
||||
non_equivalent_terms:
|
||||
- Chlor gesamt
|
||||
- Gesamtchlor
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
# RetrieX Patch p43G - Measurement Evidence Context Fallback Consolidation
|
||||
|
||||
## Ziel
|
||||
|
||||
p43G setzt die p43-Reihe zur Config-/Logik-Reduktion fort. Der Patch entfernt doppelte Measurement-Evidence-Kontextlisten aus einzelnen Prompt-Parameterdefinitionen und nutzt stattdessen die bereits vorhandenen generischen Kontextlisten als Fallback im `PromptBuilderConfig`-Accessor.
|
||||
|
||||
Der Patch ist bewusst klein gehalten:
|
||||
|
||||
- keine neue fachliche Runtime-Logik
|
||||
- keine Scoringänderung
|
||||
- keine Retrievaländerung
|
||||
- keine Prompt-Regeländerung
|
||||
- keine Admin-UI
|
||||
- keine neuen harten Listen im PHP-Core
|
||||
|
||||
## Änderungen
|
||||
|
||||
### `config/retriex/prompt.yaml`
|
||||
|
||||
Aus `measurement_evidence_guard.parameters` wurden redundante Listen entfernt:
|
||||
|
||||
- `positive_context_terms` bei `ph`
|
||||
- `positive_context_terms` bei `redox`
|
||||
- `positive_context_terms` bei `free_chlorine`
|
||||
- `negative_context_terms` bei `redox`
|
||||
- `negative_context_terms` bei `free_chlorine`
|
||||
|
||||
Diese Listen waren 1:1 identisch mit:
|
||||
|
||||
- `measurement_evidence_guard.generic_positive_context_terms`
|
||||
- `measurement_evidence_guard.generic_negative_context_terms`
|
||||
|
||||
Die pH-spezifischen `negative_context_terms` bleiben lokal erhalten, weil sie zusätzliche pH-spezifische Ausschlusskontexte enthalten.
|
||||
|
||||
### `src/Config/PromptBuilderConfig.php`
|
||||
|
||||
`getMeasurementEvidenceParameters()` ergänzt nun fehlende parameterlokale Kontextlisten über die generischen Listen:
|
||||
|
||||
- fehlende `positive_context_terms` -> `getMeasurementEvidenceGenericPositiveContextTerms()`
|
||||
- fehlende `negative_context_terms` -> `getMeasurementEvidenceGenericNegativeContextTerms()`
|
||||
|
||||
Lokale Overrides bleiben weiterhin möglich. Wenn ein Parameter eine eigene Liste setzt, wird diese unverändert verwendet.
|
||||
|
||||
## Effektive Listen
|
||||
|
||||
Die effektiven Measurement-Evidence-Parameterlisten sind gegenüber p43F identisch geblieben:
|
||||
|
||||
- `generic_positive_context_terms`: identisch
|
||||
- `generic_negative_context_terms`: identisch
|
||||
- effektive `measurement_evidence_guard.parameters`: identisch
|
||||
|
||||
Reduktion expliziter Parameterlisten:
|
||||
|
||||
- explizite `positive_context_terms`: 3 -> 0
|
||||
- explizite `negative_context_terms`: 3 -> 1
|
||||
|
||||
## Lokale Prüfungen
|
||||
|
||||
Ausgeführt:
|
||||
|
||||
```bash
|
||||
php -l src/Config/PromptBuilderConfig.php
|
||||
php -l src/Config/SearchRepairConfig.php
|
||||
php -l src/Config/AgentRunnerConfig.php
|
||||
python3 YAML parse check for config/retriex/*.yaml
|
||||
python3 effective p43F-vs-p43G measurement evidence comparison
|
||||
```
|
||||
|
||||
Ergebnis: grün.
|
||||
|
||||
Nicht lokal ausführbar:
|
||||
|
||||
```bash
|
||||
bin/console mto:agent:config:validate
|
||||
bin/console mto:agent:regression:test
|
||||
bin/console mto:agent:config:audit-source --details
|
||||
bin/console mto:agent:config:audit-patterns --details
|
||||
```
|
||||
|
||||
Grund: Der ZIP-Stand enthält kein `vendor/`; `bin/console` bricht mit `Dependencies are missing. Try running "composer install".` ab.
|
||||
|
||||
## Erwartete Pflichtchecks beim Anwender
|
||||
|
||||
```bash
|
||||
bin/console mto:agent:config:validate
|
||||
bin/console mto:agent:regression:test
|
||||
bin/console mto:agent:config:audit-source --details
|
||||
bin/console mto:agent:config:audit-patterns --details
|
||||
```
|
||||
@@ -781,6 +781,8 @@ final class PromptBuilderConfig
|
||||
}
|
||||
|
||||
$out = [];
|
||||
$genericPositiveContextTerms = $this->getMeasurementEvidenceGenericPositiveContextTerms();
|
||||
$genericNegativeContextTerms = $this->getMeasurementEvidenceGenericNegativeContextTerms();
|
||||
|
||||
foreach ($value as $item) {
|
||||
if (!is_array($item)) {
|
||||
@@ -799,8 +801,12 @@ final class PromptBuilderConfig
|
||||
'label' => $label,
|
||||
'request_terms' => $this->normalizeMixedStringList($item['request_terms'] ?? []),
|
||||
'positive_terms' => $this->normalizeMixedStringList($item['positive_terms'] ?? []),
|
||||
'positive_context_terms' => $this->normalizeMixedStringList($item['positive_context_terms'] ?? []),
|
||||
'negative_context_terms' => $this->normalizeMixedStringList($item['negative_context_terms'] ?? []),
|
||||
'positive_context_terms' => array_key_exists('positive_context_terms', $item)
|
||||
? $this->normalizeMixedStringList($item['positive_context_terms'])
|
||||
: $genericPositiveContextTerms,
|
||||
'negative_context_terms' => array_key_exists('negative_context_terms', $item)
|
||||
? $this->normalizeMixedStringList($item['negative_context_terms'])
|
||||
: $genericNegativeContextTerms,
|
||||
'non_equivalent_terms' => $this->normalizeMixedStringList($item['non_equivalent_terms'] ?? []),
|
||||
'safe_no_evidence_answer_de' => isset($item['safe_no_evidence_answer_de']) && is_scalar($item['safe_no_evidence_answer_de'])
|
||||
? trim((string) $item['safe_no_evidence_answer_de'])
|
||||
|
||||
Reference in New Issue
Block a user