Humanizer / app.py
Farhan1572's picture
Update app.py
1305d94 verified
raw
history blame contribute delete
No virus
1.77 kB
# import dependencies
import gradio as gr
from openai import OpenAI
import os
import re
# define the openai key
api_key = os.getenv("OPENAI_API_KEY")
# make an instance of the openai client
client = OpenAI(api_key = api_key)
# finetuned model instance
finetuned_model = "ft:gpt-3.5-turbo-0125:cedarbyte-business-solutions::9f4vd1FP"
# function to humanize the text
def humanize_text(AI_text):
"""Humanizes the provided AI text using the fine-tuned model."""
response = completion = client.chat.completions.create(
model=finetuned_model,
temperature = 0.85,
messages=[
{"role": "system", "content": """
You are a text humanizer.
You humanize AI generated text.
The text must appear like humanly written.
THE INPUT AND THE OUTPUT TEXT SHOULD HAVE THE SAME FORMAT.
THE HEADINGS AND THE BULLETS IN THE INPUT SHOULD REMAIN IN PLACE"""},
{"role": "user", "content": f"THE LANGUAGE OF THE INPUT AND THE OUTPUT MUST BE SAME. THE SENTENCES SHOULD NOT BE SHORT LENGTH - THEY SHOULD BE SAME AS IN THE INPUT. ALSO THE PARAGRAPHS SHOULD NOT BE SHORT EITHER - PARAGRAPHS MUST HAVE THE SAME LENGTH"},
{"role": "user", "content": f"Humanize the text. Keep the output format i.e. the bullets and the headings as it is and dont use the list of words that are not permissible. \nTEXT: {AI_text}"}
]
)
humanized_text = response.choices[0].message.content.strip()
humanized_text = re.sub(r'[^A-Za-z0-9\s]', '', humanized_text)
return humanized_text
# Gradio interface definition
interface = gr.Interface(
fn=humanize_text,
inputs="textbox",
outputs="textbox",
title="AI Text Humanizer",
description="Enter AI-generated text and get a human-written version.",
)
# Launch the Gradio app
interface.launch(debug = True)