inzanty / perspectiveapi
What if technology could help improve conversations online. Fork of original repository: stajor/perspectiveapi.
dev-master
2023-07-16 16:58 UTC
Requires
- php: >=7.1
- ext-json: *
- guzzlehttp/guzzle: ^7.0
Requires (Dev)
- phpunit/phpunit: ^9.0
- vlucas/phpdotenv: ^5.0
This package is auto-updated.
Last update: 2024-05-17 00:23:43 UTC
README
PHP library for Perspective Comment Analyzer API. Minimal PHP version is 7.4.
Installation
Via Composer:
composer require inzanty/perspectiveapi
Usage
Scoring comments: AnalyzeComment
<?php $commentsClient = new PerspectiveApi\CommentsClient('PERSPECTIVE-API-TOKEN'); $commentsClient->comment(['text' => 'What kind of idiot name is foo? Sorry, I like your name.']); $commentsClient->languages(['en']); $commentsClient->context(['entries' => ['text' => 'off-topic', 'type' => 'PLAIN_TEXT']]); $commentsClient->requestedAttributes(['TOXICITY' => ['scoreType' => 'PROBABILITY', 'scoreThreshold' => 0]]); // Analyze and get response $response = $commentsClient->analyze(); // Print scores print_r($response->attributeScores());
Sending feedback: SuggestCommentScore
<?php $commentsClient = new PerspectiveApi\CommentsClient('PERSPECTIVE-API-TOKEN'); $commentsClient->comment(['text' => 'What kind of idiot name is foo? Sorry, I like your name.']); $commentsClient->languages(['en']); $commentsClient->context(['entries' => ['text' => 'off-topic', 'type' => 'PLAIN_TEXT']]); $commentsClient->clientToken('some-token'); $commentsClient->communityId('unit-test'); $commentsClient->attributeScores(['TOXICITY' => [ 'summaryScore' => ['value' => 0.83785176, 'type' => 'PROBABILITY'], 'spanScores' => [['begin' => 0, 'end' => 32, 'score' => ['value' => 0.9208521, 'type' => 'PROBABILITY']]]] ]); // Suggest Score and get response $response = $commentsClient->suggestScore(); // Print scores print_r($response->attributeScores());
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/inzanty/perspectiveapi. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
License
The gem is available as open source under the terms of the MIT License.