awacke1's picture
Update app.py
c43e925
raw
history blame
3.74 kB
import gradio as gr
import os
from transformers import pipeline
title = "Transformers 📗 Sentence to Paragraph ❤️ For Mindfulness"
examples = [
["Music and art make me feel"],
["Feel better each day when you awake by"],
["Feel better physically by"],
["Practicing mindfulness each day"],
["Be happier by"],
["Meditation can improve health"],
["Spending time outdoors"],
["Stress is relieved by quieting your mind, getting exercise and time with nature"],
["Break the cycle of stress and anxiety"],
["Feel calm in stressful situations"],
["Deal with work pressure"],
["Learn to reduce feelings of overwhelmed"]
]
from gradio import inputs
from gradio.inputs import Textbox
from gradio import outputs
# PersistDataset -----
import os
import csv
import gradio as gr
from gradio import inputs, outputs
import huggingface_hub
from huggingface_hub import Repository, hf_hub_download, upload_file
from datetime import datetime
DATASET_REPO_URL = "https://huggingface.co/datasets/awacke1/Carddata.csv"
DATASET_REPO_ID = "awacke1/Carddata.csv"
DATA_FILENAME = "Carddata.csv"
DATA_FILE = os.path.join("data", DATA_FILENAME)
HF_TOKEN = os.environ.get("HF_TOKEN")
SCRIPT = """
<script>
if (!window.hasBeenRun) {
window.hasBeenRun = true;
console.log("should only happen once");
document.querySelector("button.submit").click();
}
</script>
"""
try:
hf_hub_download(
repo_id=DATASET_REPO_ID,
filename=DATA_FILENAME,
cache_dir=DATA_DIRNAME,
force_filename=DATA_FILENAME
)
except:
print("file not found")
repo = Repository(
local_dir="data", clone_from=DATASET_REPO_URL, use_auth_token=HF_TOKEN
)
def generate_html() -> str:
with open(DATA_FILE) as csvfile:
reader = csv.DictReader(csvfile)
rows = []
for row in reader:
rows.append(row)
rows.reverse()
if len(rows) == 0:
return "no messages yet"
else:
html = "<div class='chatbot'>"
for row in rows:
html += "<div>"
html += f"<span>{row['inputs']}</span>"
html += f"<span class='outputs'>{row['outputs']}</span>"
html += "</div>"
html += "</div>"
return html
def store_message(name: str, message: str):
if name and message:
with open(DATA_FILE, "a") as csvfile:
writer = csv.DictWriter(csvfile, fieldnames=["name", "message", "time"])
writer.writerow(
{"name": name, "message": message, "time": str(datetime.now())}
)
commit_url = repo.push_to_hub()
return ""
iface = gr.Interface(
store_message,
[
inputs.Textbox(placeholder="Your name"),
inputs.Textbox(placeholder="Your message", lines=2),
],
"html",
css="""
.message {background-color:cornflowerblue;color:white; padding:4px;margin:4px;border-radius:4px; }
""",
)
#store_message(message, response) # Save to dataset
generator2 = gr.Interface.load("huggingface/EleutherAI/gpt-neo-2.7B")
generator3 = gr.Interface.load("huggingface/EleutherAI/gpt-j-6B")
generator1 = gr.Interface.load("huggingface/gpt2-large")
gr.Parallel(generator1,
generator2,
generator3,
inputs = gr.inputs.Textbox(lines=5, label="Enter a sentence to get another sentence."),
examples=examples
title="Mindfulness Story Generation with Persistent Dataset Memory",
description=f"Mindfulness Story Generation with Persistent Dataset Memory",
article=f"Memory Dataset URL: [{DATASET_REPO_URL}]({DATASET_REPO_URL})",
).launch(share=False)