AI-Hype-Monitor / app.py
Kornel Szabo
Add examples
a91672a
raw
history blame contribute delete
No virus
2.04 kB
import json
from pathlib import Path
import gradio as gr
from transformers import (
AutoTokenizer,
AutoModelForSequenceClassification,
TextClassificationPipeline,
)
labels = [
# 'agency',
# 'humanComparison',
# 'hyperbole',
# 'historyComparison',
# 'unjustClaims',
# 'deepSounding',
# 'skeptics',
# 'deEmphasize',
# 'performanceNumber',
# 'inscrutable',
# 'objective'
"agency",
# "suggestiveImagery",
"comparisonWithHumanIntelligence",
"comparisonWithHumanSkills",
"hyperbole",
"uncriticalHistoryComparison",
"unjustifiedClaimsAboutFuture",
"falseClaimsAboutProgress",
"incorrectClaimsAboutStudyReport",
"deepSoundingTermsForBanalities",
"treatingSpokespeopleAsNeutral",
"repeatingPRTerms",
"noDiscussionOfLimitations",
"deEmphasizingLimitations",
"limitationsAddressedBySkeptics",
"downplayingHumanLabour",
"performanceNumbersWithoutCaveats",
# "inscrutability",
]
models = {}
pipes = {}
tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
for label in labels:
models[label] = AutoModelForSequenceClassification.from_pretrained(
f'xt0r3/aihype_{label}-vs-rest',
)
pipes[label] = TextClassificationPipeline(
model=models[label], tokenizer=tokenizer, top_k=None,
)
def predict(text):
preds = {}
for label in labels:
pred_array = pipes[label](text)[0]
for pred in pred_array:
if pred['label'] == 'LABEL_1':
preds[label] = pred['score']
return preds
examples = [
"Machine Learning is at the forefront of education, replacing human jobs",
"Machine Learning is at the forefront of education, but it isn't replacing human jobs just yet",
"AI model leaves scientists confused",
"Tech company unveils radical new assistant that will 'do everything for you'",
]
intf = gr.Interface(fn=predict, inputs="textbox",
outputs="label", examples=examples)
intf.launch(inline=False)