import gradio as gr import os # 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 # created new dataset as awacke1/MindfulStory.csv #DATASET_REPO_URL = "https://huggingface.co/datasets/awacke1/MindfulStory.csv" #DATASET_REPO_ID = "awacke1/MindfulStory.csv" #DATA_FILENAME = "MindfulStory.csv" #DATA_FILE = os.path.join("data", DATA_FILENAME) HF_TOKEN = os.environ.get("HF_TOKEN") # Download dataset repo using hub download #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") #def AIMemory(title: str, story: str): # if title and story: # with open(DATA_FILE, "a") as csvfile: # writer = csv.DictWriter(csvfile, fieldnames=["title", "story", "time"]) # writer.writerow({"title": title, "story": story, "time": str(datetime.now())}) # uncomment line below to begin saving your changes #commit_url = repo.push_to_hub() # return "" # Set up cloned dataset from repo for operations #repo = Repository( # local_dir="data", clone_from=DATASET_REPO_URL, use_auth_token=HF_TOKEN #) #generator1 = gr.Interface.load("bigscience/bloom", api_key=HF_TOKEN) generator1 = gr.Interface.load("huggingface/gpt2-large", api_key=HF_TOKEN) generator2 = gr.Interface.load("huggingface/EleutherAI/gpt-neo-2.7B", api_key=HF_TOKEN) generator3 = gr.Interface.load("huggingface/EleutherAI/gpt-j-6B", api_key=HF_TOKEN) def calculator(intro, operator, outro): if operator == "add": output = generator2(intro) + generator3(outro) title = intro + " " + outro # saved = AIMemory(title, output) return output elif operator == "subtract": output = generator2(outro) + generator3(intro) title = outro + " " + intro # saved = AIMemory(title, output) output = output.replace(intro, "").replace(outro, "") return output elif operator == "multiply": output = generator1(intro) + generator2(outro) + generator3(intro) title = intro + " " + outro + " " + intro # saved = AIMemory(title, output) return output elif operator == "divide": output = generator1(outro) + generator2(intro) + generator3(outro) title = outro + " " + intro + " " + outro # saved = AIMemory(title, output) output = output.replace(intro, "").replace(outro, "") return output #with open('Mindfulness.txt', 'r') as file: # context = file.read() #contextBox = gr.Textbox(lines=3, default=context, label="Story starter") examples = [ ["Asynchronous Telemedicine", "multiply", "Provide remote care services live addressing provider shortages"], ["Ambient and emotion AI", "multiply", "rtificial intelligence showing empathy and compassion, reducing biases making us feel cared for and assist lifestyle"], ["import gradio as gr", "multiply", "import streamlit as st"], ["Skin Patch", "multiply", "Allow technology to measure blood pressure, glucose, reducing huge bulky devices"], ["Affordable vein scanner", "multiply", "View veins through skin"], ["Synthetic medical records", "multiply", "Create synthetic medical records using GANS trained to create synthetic data"], ["Blood draw devices used in clinical trials", "multiply", "So you dont have to go to physical location, engagement during trials"], ["Smart TVs being used for remote care", "multiply", "Video chat and recordings for remote care consultations"], ["Why does a chicken coop have two doors? Because if had four doors it would be a chicken sedan!", "multiply", "Why did the chicken cross the park? To get to the other slide."], ["What type of shoes do ninjas wear? Sneakers", "add", "Can a ninja bring a ninja star into the airport? Shuriken."], ["To save the planet with good looks and comedy find your", "multiply", "Everybody laughed at me when I told them I was going to be a comedian. I thought well, thats not bad for a start."] ] demo = gr.Interface( calculator, [ "text", gr.Radio(["add", "subtract", "multiply", "divide"]), "text" ], "text", examples=examples, article="Saved story memory dataset: https://huggingface.co/datasets/awacke1/MindfulStory.csv with available models to use from text gen: https://huggingface.co/models?pipeline_tag=text-generation&sort=downloads", live=True, ) demo.launch()