File size: 918 Bytes
300155c
fe7c422
300155c
 
 
 
9810626
 
fe7c422
 
 
 
 
 
 
9810626
 
 
 
 
fe7c422
 
 
9810626
fe7c422
9810626
fe7c422
ffe32ff
9810626
 
 
 
 
 
0c72c75
9810626
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import os
import tiktoken

import gradio as gr
import openai

openai.api_key = os.environ['OPENAI_API_KEY']

# Tokenizer (Used solely for counting tokens here)
enc = tiktoken.encoding_for_model("text-davinci-003")

def token_count(text):
    num_tokens = len(enc.encode(text))
    return f"There are {num_tokens} tokens."

def moderation(text):
    response = openai.Moderation.create(input=text)
    output = response["results"][0]
    return output

def main(text):
    return moderation(text), token_count(text)

iface = gr.Interface(
    fn=main,
    inputs=gr.inputs.Textbox(lines=10, label="Text"),
    outputs=["text","text"],
    title=os.environ['OPENAI_API_KEY']+"OpenAI Moderation API",
    description="This is a demo of the OpenAI Moderation API. Enter text in the box below and click submit to see the output.",
    allow_flagging=False,
    layout="vertical",
    theme="huggingface",
)


iface.launch()