Extension:ORES

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:ORES and the translation is 100% complete.
Other languages:
Bahasa Indonesia • ‎English • ‎Türkçe • ‎中文 • ‎日本語
MediaWiki manüel uzantıları
OOjs UI icon advanced.svg
ORES
Sürüm durumu: kararlı
ORES extension screenshot.png
Açıklama Bu uzantı, ORES projedeki verileri SonDeğişiklikler görünümüne entegre eder.
Yazar(lar) Kunal Mehta, Amir Sarabadani, Adam Roses Wight
Veritabanı değişiklikleri Evet
Tablolar ores_classification
ores_model
Lisans GNU Genel Kamu Lisansı 3.0 veya üstü
İndir
  • $wgOresBaseUrl
  • $wgOresFrontendBaseUrl
  • $wgOresCacheVersion
  • $wgOresAggregatedModels
  • $wgOresWikiId
  • $wgOresEnabledNamespaces
  • $wgOresRevisionsPerBatch
  • $wgOresExcludeBots
  • $wgOresFiltersThresholds
  • $wgOresModelClasses
  • $wgOresUiEnabled
  • $wgOresModels
Translatewiki.net adresinde mevcutsa, ORES uzantısını çevirin
Kullanım ve sürüm matrisini kontrol edin.
Vagrant rolü ores
Sorunlar Açık görevler · Hata bildir

ORES uzantısı, ORES hizmetindeki verileri SonDeğişiklikler görünümüne entegre eder.

Şu anda, ORES arka uç hizmeti yalnızca Wikimedia vikileri için ayarlanmıştır ve üçüncü taraf MediaWiki kurulumları için önemli çalışmalar yapılması gerekir.

Ekran görüntüleri

"İncelenmesi gereken" ve zarar verici olabilecek değişiklikler, Special:RecentChanges içinde vurgulanmıştır.
Special:RecentChanges göstergesine bir "incelenmesi gerekiyor" işareti eklendi.

Kurulum

  • Dosyaları indirin ve extensions/ klasörünüzdeki ORES adlı dizine yerleştirin.
  • LocalSettings.php dosyanızın altına aşağıdaki kodu ekleyin:
    wfLoadExtension( 'ORES' );
    
  • Yes Yapıldı – Uzantının başarıyla yüklendiğini doğrulamak için vikinizde Special:Version seçeneğine gidin.

Depolandıktan sonra CheckModelVersions.php bakım betiğini çalıştırmanız gerekir (ve bundan sonra PopulateDatabase.php ile de çalıştırabilirsiniz)

Yapılandırma değişkenleri

İşte yapılandırma değişkenleri ve varsayılan değerleri ve onlar hakkında küçük bir açıklama.

// URL of the service
$wgOresBaseUrl = 'https://ores.wikimedia.org/';
// Either to exclude edits made by bot to score
$wgOresExcludeBots = true;
// Models to score
$wgOresModels = [
    'damaging' => [ 'enabled' => true ],
    'goodfaith' => [ 'enabled' => true ],
    'reverted' => [ 'enabled' => true ],
    'wp10' => [ 'enabled' => true ],
];
// Thresholds of different sensitivies in ORES
$wgOresDamagingThresholds = [ 'soft' => 0.7, 'hard' => 0.5 ];
// Namespaces the ORES should score. Empty array means all namespaces.
// If not empty, it will only works on the given namespaces.
// Determine namespaces like [ 0 => true, 120 => true ].
$wgOresEnabledNamespaces = [];
// Database id for ORES service. If not determined, it'll use database name.
// You can choose 'testwiki' that ORES service sends last two digits of rev_id flipped.
// For example: https://ores.wikimedia.org/v1/scores/testwiki/damaging/12345
$wgOresWikiId = null;

ORES hizmet yanıtları

ORES extension is merely more than an interface to the ORES service. The service returns a probability score of edits being damaging like this (API v1):

{
  "724030089": {
    "damaging": {
      "prediction": false,
      "probability": {
        "false": 0.8917716518085119,
        "true": 0.10822834819148802
      }
    }
  }
}

It means this edit (diff=724030089) is 10% likely to have caused damage. Note that 90% likely doesn't mean 9 out of ten cases will be vandalism. Choosing thresholds should be done via analysing recall (percentage of vandalism it can catch) or false positive rate. In ORES the "soft" threshold is when recall is 75% (meaning it will include 75% of all damaging edits) and the "hard" threshold is when recall is 90%. You can get the thresholds from model info (an example).

Veritabanı şeması

ORES extension introduces two new tables: ores_model and ores_classification. See the full database schema description.

Uzantı iş akışı

Skorlar

Once an edit is made the extension triggers a job to hit the service and store the results in the ores_classification. 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 ores_classification become deprecated. You can clean these obsolete scores by running PurgeScoreCache.php maintenance script.

Arayüz

The extension won't show anything when deployed but it will add itself as a beta feature (Extension:BetaFeatures 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.