Extension:ORES/nl
De extensie ORES integreert gegevens uit de service ORES in het overzicht Recente wijzigingen.
Op dit moment is de ORES backend service alleen voor Wikimedia wiki's, en er zal echt wel werk gedaan moeten worden om het geschikt te maken voor MediaWiki installaties van derden.
Het is geïnstalleerd op verschillende Wikimedia-sites, maar wordt niet langer geïmplementeerd op nieuwe sites. Voor nieuwer werk over machine learning in Wikimedia, zie Machine Learning/Modernization.
Screenshots

Installatie
- Download en plaats de bestanden in de map
ORESin de mapextensions/.
Ontwikkelaars en bijdragers van code moeten in plaats daarvan de extensie van Git installeren, met behulp van:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/ORES
- Voeg de volgende code onderaan het bestand LocalSettings.php toe:
wfLoadExtension( 'ORES' );
- Voer het update script uit, dat automatisch de vereiste database-tabellen creëert die nodig zijn voor de extensie.
Klaar – Navigeer naar Special:Version op de wiki om te controleren dat de extensie geïnstalleerd is.
U dient het onderhoudsscript CheckModelVersions.php uit te voeren nadat het is ingezet (en daarna kunt u ook PopulateDatabase.php uitvoeren)
Als u een lokale ontwikkelomgeving wilt opzetten voor de MediaWiki + extensie ORES met de volgende ORES extension local development guide:
Configuratie variabelen
Een kleine beschrijving van de configuratie variabelen en de standaardwaarden.
// URL van de service ORES
$wgOresBaseUrl = 'https://ores.wikimedia.org/';
// Al dan niet bewerkingen van een bot uitsluiten bij het tellen
$wgOresExcludeBots = true;
// Modellen om te scoren
$wgOresModels = [
'damaging' => [ 'enabled' => true ],
'goodfaith' => [ 'enabled' => true ],
'reverted' => [ 'enabled' => false ],
'articlequality' => [
'enabled' => false,
'namespaces' => [ 0 ],
'cleanParent' => true,
'keepForever'=> true
],
'wp10' => [
'enabled' => false,
'namespaces' => [ 0 ],
'cleanParent' => true,
'keepForever'=> true
],
'draftquality' => [
'enabled' => false,
'namespaces' => [ 0 ],
'types' => [ 1 ],
],
];
// Vervangt ORES door Lift Wing voor het ophalen van scores
$wgOresUseLiftwing = false;
// URL voor Lift Wing - Overgeslagen als null
$wgOresLiftWingBaseUrl = null;
// Drempelwaarden van verschillende gevoeligheden in ORES
$wgOresDamagingThresholds = [ 'soft' => 0.7, 'hard' => 0.5 ];
// Namespaces waar ORES nuttig is. Lege matrix (array) betekent alle namespaces.
// Als het niet leeg is, werkt het alleen op de gegeven namespaces.
// Determine namespaces like [ 0 => true, 120 => true ].
$wgOresEnabledNamespaces = [];
// Database-id voor de ORES-service. Als dit niet is bepaald, wordt de databasenaam gebruikt.
// U kunt kiezen voor 'testwiki' die ORES-service stuurt de laatste twee cijfers van rev_id omgedraaid.
// Bijvoorbeeld: https://ores.wikimedia.org/v1/scores/testwiki/damaging/12345
$wgOresWikiId = null;
Foutopsporing in een ORES-extensie
Nadat we de extensie hebben ingezet met ORES of Lift Wing als backend kunnen we de stappen in de ORES extension debugging guide gebruiken om ervoor te zorgen dat het goed werkt.
ORES service antwoorden
De ORES-extensie is slechts iets meer dan een interface naar de service ORES. De service geeft een waarschijnlijkheidsscore van wijzigingen of die schadelijk zijn als volgt (API v1):
{
"724030089": {
"damaging": {
"prediction": false,
"probability": {
"false": 0.8917716518085119,
"true": 0.10822834819148802
}
}
}
}
Het betekent dat deze bewerking (diff=724030089) 10% kans heeft om schade te hebben veroorzaakt.
Merk op dat 90% waarschijnlijk niet betekent dat 9 van de tien gevallen vandalisme zullen zijn.
Het kiezen van drempels moet worden gedaan door het analyseren van recall (percentage vandalisme dat het kan opvangen) of het percentage vals-positiev meldingen.
In ORES is de "zachte" drempel wanneer recall 75% is (wat betekent dat het 75% van alle schadelijke bewerkingen zal bevatten) en de "harde" drempel is wanneer recall 90% is.
U kunt de drempels ophalen uit de modelinformatie (voorbeeld).
Database schema
ORES extension introduces two new tables: ores_model and ores_classification. See the full database schema description.
Extensie workflow
Scores
Once an edit is made the extension triggers a job to hit the service and store the results in the ores_classification table. It means it will not include scores for edits made before the deployment. In order to fill the database you can run the maintenance script PopulateDatabase.php. It will hits the service and keeps the score for the last 5,000 edits. You can run it several times if needed.
Once a model gets updated to a newer version CheckModelVersions.php maintenance script needs to be ran to update the ores_model table which will cause to scores stored in the ores_classification table become deprecated. You can clean these obsolete scores by running PurgeScoreCache.php maintenance script.
Interface
The extension won't show anything when deployed but it will add itself as a beta feature (Extension:BetaFeatures/nl is a dependency of this extension) and once it's enabled by the user it will use hooks in ChangesList (RecentChanges, Watchlist, and RelatedChanges) in both old and enhanced mode and highlights when score exceeds the given threshold.
| Deze extensie wordt gebruikt op een of meerdere Wikimedia projecten. Dit betekent waarschijnlijk dat de extensie stabiel is en goed werkt op dergelijke vaak bezochte websites. Zoek op de naam van deze extensie in Wikimedia's CommonSettings.php en InitialiseSettings.php om te zien waar deze is geïnstalleerd. Een volledige lijst van de extensies die geïnstalleerd zijn op een bepaalde wiki kan worden gevonden op de pagina Special:Version van de wiki. |
- Stable extensions/nl
- Extensions with invalid or missing type/nl
- APIGetAllowedParams extensions/nl
- AbuseFilter-builder extensions/nl
- AbuseFilter-computeVariable extensions/nl
- AbuseFilter-generateTitleVars extensions/nl
- ApiQueryBaseAfterQuery extensions/nl
- ApiQueryBaseBeforeQuery extensions/nl
- ApiQueryBaseProcessRow extensions/nl
- ApiQueryWatchlistExtractOutputData extensions/nl
- BeforePageDisplay extensions/nl
- ChangesListSpecialPageQuery extensions/nl
- ChangesListSpecialPageStructuredFilters extensions/nl
- ContribsPager::getQueryInfo extensions/nl
- ContributionsLineEnding extensions/nl
- EnhancedChangesListModifyBlockLineData extensions/nl
- EnhancedChangesListModifyLineData extensions/nl
- GetPreferences extensions/nl
- LoadExtensionSchemaUpdates extensions/nl
- OldChangesListRecentChangesLine extensions/nl
- RecentChange save extensions/nl
- RecentChangesPurgeQuery extensions/nl
- SpecialContributions::formatRow::flags extensions/nl
- SpecialContributions::getForm::filters extensions/nl
- GPL licensed extensions/nl
- Extensions in Wikimedia version control/nl
- All extensions/nl
- Extensions used on Wikimedia/nl
- ORES/nl

