Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add revscoring models #13

Merged
merged 3 commits into from
Jun 14, 2024
Merged

Add revscoring models #13

merged 3 commits into from
Jun 14, 2024

Conversation

isaranto
Copy link
Collaborator

@isaranto isaranto commented Jun 12, 2024

Add support for all revscoring models to the client. Because of the required modifications to the base_url for the revscoring models we modify the init.py function to match the xxwiki-modeltype pattern.

get prediction

from liftwing import RevscoringModel

client = RevscoringModel(model_type="damaging", wikicode="enwiki")
print(client.request(payload={"rev_id": 123456}))

Use the optional extended_output value:

from liftwing import RevscoringModel

client = RevscoringModel(model_type="damaging", wikicode="enwiki")

print(client.request(payload={"rev_id": 123456, "extended_output": True}))

Response
{'enwiki': {'models': {'damaging': {'version': '0.5.1'}}, 'scores': {'123456': {'damaging': {'score': {'prediction': False, 
'probability': {'false': 0.8914328685316926, 'true': 0.10856713146830739}}, 'features': 
{'feature.revision.page.is_articleish': True, 'feature.revision.page.is_mainspace': True, 
'feature.revision.page.is_draftspace': False, 'feature.wikitext.revision.parent.chars': 622.0, 
'feature.len(<datasource.tokenized(datasource.revision.parent.text)>)': 223.0, 
'feature.len(<datasource.wikitext.revision.parent.words>)': 100.0, 
'feature.len(<datasource.wikitext.revision.parent.uppercase_words>)': 0.0, 'feature.wikitext.revision.parent.headings': 0.0, 
'feature.wikitext.revision.parent.wikilinks': 7.0, 'feature.wikitext.revision.parent.external_links': 0.0, 
'feature.wikitext.revision.parent.templates': 0.0, 'feature.wikitext.revision.parent.ref_tags': 0.0, 
'feature.len(<datasource.wikitext.revision.parent.markups>)': 16.0, 'feature.wikitext.revision.diff.markup_delta_sum': 0.0, 
'feature.wikitext.revision.diff.markup_delta_increase': 0.0, 'feature.wikitext.revision.diff.markup_delta_decrease': 0.0, 
'feature.wikitext.revision.diff.markup_prop_delta_sum': 0.0, 'feature.wikitext.revision.diff.markup_prop_delta_increase': 
0.0, 'feature.wikitext.revision.diff.markup_prop_delta_decrease': 0.0, 'feature.wikitext.revision.diff.number_delta_sum': 0.0, 
'feature.wikitext.revision.diff.number_delta_increase': 0.0, 'feature.wikitext.revision.diff.number_delta_decrease': 0.0, 
'feature.wikitext.revision.diff.number_prop_delta_sum': 0.0, 'feature.wikitext.revision.diff.number_prop_delta_increase': 
0.0, 'feature.wikitext.revision.diff.number_prop_delta_decrease': 0.0, 
'feature.wikitext.revision.diff.uppercase_word_delta_sum': 0.0, 
'feature.wikitext.revision.diff.uppercase_word_delta_increase': 0.0, 
'feature.wikitext.revision.diff.uppercase_word_delta_decrease': 0.0, 
'feature.wikitext.revision.diff.uppercase_word_prop_delta_sum': 0.0, 
'feature.wikitext.revision.diff.uppercase_word_prop_delta_increase': 0.0, 
'feature.wikitext.revision.diff.uppercase_word_prop_delta_decrease': 0.0, 'feature.wikitext.revision.chars': 621.0, 
'feature.len(<datasource.tokenized(datasource.revision.text)>)': 223.0, 
'feature.len(<datasource.wikitext.revision.words>)': 100.0, 'feature.len(<datasource.wikitext.revision.markups>)': 16.0,
 'feature.wikitext.revision.headings': 0.0, 'feature.wikitext.revision.external_links': 0.0, 'feature.wikitext.revision.wikilinks': 
7.0, 'feature.wikitext.revision.templates': 0.0, 'feature.wikitext.revision.tags': 1.0, 'feature.wikitext.revision.parent.tags': 1.0, 
'feature.wikitext.revision.ref_tags': 0.0, 'feature.revision.diff.longest_new_token': 1, 
'feature.revision.diff.longest_new_repeated_char': 1, 'feature.revision.user.is_bot': False, 
'feature.revision.user.has_advanced_rights': False, 'feature.revision.user.is_admin': False, 
'feature.revision.user.is_trusted': False, 'feature.revision.user.is_patroller': False, 'feature.revision.user.is_curator': False, 
'feature.revision.user.is_anon': False, 'feature.temporal.revision.user.seconds_since_registration': 12696497,
 'feature.revision.comment.suggests_section_edit': False, 'feature.revision.comment.has_link': False, 
'feature.english.badwords.revision.diff.match_delta_sum': 0, 
'feature.english.badwords.revision.diff.match_delta_increase': 0, 
'feature.english.badwords.revision.diff.match_delta_decrease': 0, 
'feature.english.badwords.revision.diff.match_prop_delta_sum': 0.0, 
'feature.english.badwords.revision.diff.match_prop_delta_increase': 0.0, 
'feature.english.badwords.revision.diff.match_prop_delta_decrease': 0.0, 
'feature.english.informals.revision.diff.match_delta_sum': 0, 'feature.english.informals.revision.diff.match_delta_increase':
 0, 'feature.english.informals.revision.diff.match_delta_decrease': 0, 
'feature.english.informals.revision.diff.match_prop_delta_sum': 0.0, 
'feature.english.informals.revision.diff.match_prop_delta_increase': 0.0, 
'feature.english.informals.revision.diff.match_prop_delta_decrease': 0.0, 
'feature.english.dictionary.revision.diff.dict_word_delta_sum': 0, 
'feature.english.dictionary.revision.diff.dict_word_delta_increase': 2, 
'feature.english.dictionary.revision.diff.dict_word_delta_decrease': -2, 
'feature.english.dictionary.revision.diff.dict_word_prop_delta_sum': 0.0, 
'feature.english.dictionary.revision.diff.dict_word_prop_delta_increase': 2.0, 
'feature.english.dictionary.revision.diff.dict_word_prop_delta_decrease': -2.0, 
'feature.english.dictionary.revision.diff.non_dict_word_delta_sum': 0, 
'feature.english.dictionary.revision.diff.non_dict_word_delta_increase': 0, 
'feature.english.dictionary.revision.diff.non_dict_word_delta_decrease': 0, 
'feature.english.dictionary.revision.diff.non_dict_word_prop_delta_sum': 0.0, 
'feature.english.dictionary.revision.diff.non_dict_word_prop_delta_increase': 0.0, 
'feature.english.dictionary.revision.diff.non_dict_word_prop_delta_decrease': 0.0}}}}}}

@isaranto isaranto marked this pull request as ready for review June 12, 2024 10:43
@isaranto isaranto assigned AikoChou and unassigned AikoChou Jun 12, 2024
Copy link
Member

@kevinbazira kevinbazira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@isaranto isaranto merged commit 4d96f30 into main Jun 14, 2024
1 check passed
@isaranto isaranto deleted the add-revscoring-model branch June 14, 2024 07:38
This was referenced Jul 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants