File size: 1,365 Bytes
ceef207
 
 
24ac06a
da72b35
24ac06a
0584bf8
5901268
 
24ac06a
0584bf8
 
49984ff
ea67b62
 
76251b9
e530c7e
ceef207
5901268
 
e530c7e
5901268
 
 
 
 
 
057ae12
16d482d
 
 
f9e89df
3458f7f
98ed10b
f9e89df
057ae12
3458f7f
5901268
057ae12
 
3458f7f
16d482d
 
 
ceef207
24ac06a
8659e00
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
37
38
39
40
41
42
43
44
45
46
47
48
import gradio as gr
from huggingface_hub import InferenceClient

from datasets import load_dataset
import pandas as pd

df = None


def load_new_dataset():
    global df
    
    gr.Info(message="Loading dataset...")

    # https://huggingface.co/datasets/fka/awesome-chatgpt-prompts
    ds = pd.read_csv("hf://datasets/fka/awesome-chatgpt-prompts/prompts.csv")
    df = pd.DataFrame(ds)

def run_query(input: str):
    try:
        df_results = df[df['act'].str.contains(input, case=False, na=False)]

        logging_message = f"Results for '{input}' found."
    except Exception as e:
        raise gr.Error(f"Error running query: {e}")
    
    return df_results, logging_message

#----------------------

with gr.Blocks() as demo:
    text_input = gr.Textbox(visible=True, label="Enter value to generate a prompt for an 'actor' (for instance, developer):")
    btn_run = gr.Button(visible=True, value="Search")
    results_output = gr.Dataframe(label="Results", visible=True, wrap=True)
    logging_output = gr.Label(visible="True", value="")
    
    btn_run.click(
        fn=run_query,  # Call the run_query function and update the label
        inputs=text_input,
        outputs=[results_output, logging_output]  # Update both the DataFrame and the label
    )

#----------------------

if __name__ == "__main__":
    load_new_dataset()
    demo.launch()