Skip to content

Commit 0ae7652

Browse files
committed
Changed SpamDetector to usage storage and more stop words
1 parent 2e21790 commit 0ae7652

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

app/Services/SpamDetector.php

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace App\Services;
44

55
use AssistedMindfulness\NaiveBayes\Classifier;
6+
use Illuminate\Support\Facades\Storage;
67
use Illuminate\Support\Str;
78

89
class SpamDetector
@@ -42,7 +43,8 @@ class SpamDetector
4243
'финансовая защита', 'инвестиции в будущее', 'реальный заработок',
4344
'финансовый инструментарий', 'инвестиции в золото', 'инвестиции в криптовалютные фонды',
4445
'увеличение прибыли в интернете', 'инвестирование в акции',
45-
'финансовая безопасность',
46+
'финансовая безопасность', 'нужен только телефон', 'стабильный доход',
47+
'бесплатное обучение',
4648
];
4749

4850
/**
@@ -75,8 +77,8 @@ public function checkByClassifier(): bool
7577

7678
// Train the classifier with spam and ham messages
7779
$this
78-
->trainClassifier($classifier, 'classifiers/spam.json', static::SPAM)
79-
->trainClassifier($classifier, 'classifiers/ham.json', static::HAM);
80+
->trainClassifier($classifier, 'spam.json', static::SPAM)
81+
->trainClassifier($classifier, 'ham.json', static::HAM);
8082

8183
return $classifier->guess($this->message) === static::SPAM;
8284
}
@@ -92,7 +94,7 @@ public function checkByClassifier(): bool
9294
*/
9395
private function trainClassifier(Classifier $classifier, string $fileName, string $label): self
9496
{
95-
$messages = json_decode(file_get_contents(storage_path($fileName)));
97+
$messages = json_decode(Storage::disk('classifiers')->get($fileName));
9698

9799
foreach ($messages as $message) {
98100
$classifier->learn($message, $label);

config/filesystems.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,12 @@
4848
'throw' => false,
4949
],
5050

51+
'classifiers' => [
52+
'driver' => 'local',
53+
'root' => storage_path('classifiers'),
54+
'throw' => false,
55+
],
56+
5157
'public' => [
5258
'driver' => 'local',
5359
'root' => storage_path('app/public'),

0 commit comments

Comments
 (0)