grandestroyer commited on
Commit
fa9b36e
0 Parent(s):

Duplicate from grandestroyer/joefreaks_api_test

Browse files
Files changed (4) hide show
  1. .gitattributes +34 -0
  2. README.md +14 -0
  3. app.py +76 -0
  4. requirements.txt +1 -0
.gitattributes ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tflite filter=lfs diff=lfs merge=lfs -text
29
+ *.tgz filter=lfs diff=lfs merge=lfs -text
30
+ *.wasm filter=lfs diff=lfs merge=lfs -text
31
+ *.xz filter=lfs diff=lfs merge=lfs -text
32
+ *.zip filter=lfs diff=lfs merge=lfs -text
33
+ *.zst filter=lfs diff=lfs merge=lfs -text
34
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Joefreaks
3
+ emoji: 🐠
4
+ colorFrom: gray
5
+ colorTo: blue
6
+ sdk: gradio
7
+ sdk_version: 3.20.1
8
+ app_file: app.py
9
+ pinned: false
10
+ license: mit
11
+ duplicated_from: grandestroyer/joefreaks_api_test
12
+ ---
13
+
14
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
app.py ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from aitextgen import aitextgen
2
+ import gradio as gr
3
+ import os
4
+
5
+ cache_dir = os.getcwd() + '/cache'
6
+ ai = aitextgen(model="grandestroyer/joefreaks", cache_dir=cache_dir)
7
+
8
+
9
+ def generate(n, temp, prompt, exclude_repetitions):
10
+ no_repeat_ngram_size = 2 if exclude_repetitions else 0
11
+ print('Generating with params n={}, temp={}, prompt="{}", no_repeat_ngram_size={}'
12
+ .format(n, temp, prompt, no_repeat_ngram_size))
13
+ if prompt == '':
14
+ return [txt.strip() for txt in ai.generate(n=n, temperature=temp, top_p=0.9, top_k=40, return_as_list=True,
15
+ no_repeat_ngram_size=no_repeat_ngram_size, max_length=500)]
16
+ else:
17
+ return [txt.strip() for txt in
18
+ ai.generate(prompt=prompt, n=n, temperature=temp, top_p=0.9, top_k=40, return_as_list=True,
19
+ no_repeat_ngram_size=no_repeat_ngram_size, max_length=500)]
20
+
21
+
22
+ def generate_from_full_params(prompt='', n=1, temp=0.7, top_p=0.9, top_k=40, max_length=500, exclude_repetitions=False):
23
+ no_repeat_ngram_size = 2 if exclude_repetitions else 0
24
+ temp_normalized = 0.1 if temp <= 0 else (1.9 if temp >= 2 else temp)
25
+ print('Generating with params prompt="{}", n={}, temp={}, top_p={}, top_k={}, max_length={}, no_repeat_ngram_size={}'
26
+ .format(prompt, n, temp_normalized, top_p, top_k, max_length, no_repeat_ngram_size))
27
+ return [txt.strip() for txt in
28
+ ai.generate(prompt=prompt, n=n, temperature=temp_normalized, top_p=top_p, top_k=top_k, return_as_list=True,
29
+ no_repeat_ngram_size=no_repeat_ngram_size, max_length=max_length)]
30
+
31
+
32
+ def display_results(prompt, results):
33
+ history = []
34
+ if prompt != '':
35
+ history = history + [(None, prompt)]
36
+ else:
37
+ history = history + [(None, '&lt;empty prompt&gt;')]
38
+ for res in results:
39
+ history = history + [(res, None)]
40
+ return history
41
+
42
+
43
+ def submit_input(n, temp, prompt, exclude_repetitions):
44
+ results = generate(n, temp, prompt, exclude_repetitions)
45
+ return display_results(prompt, results)
46
+
47
+
48
+ def generate_one(temp, prompt, exclude_repetitions):
49
+ temp_normalized = 0.1 if temp <= 0 else (1.9 if temp >= 2 else temp)
50
+ return generate(n=1, temp=temp_normalized, prompt=prompt, exclude_repetitions=exclude_repetitions)[0]
51
+
52
+
53
+ with gr.Blocks() as demo:
54
+ temp = gr.Number(visible=False, label='temp', value=0.7)
55
+ top_p_el = gr.Number(visible=False, label='top_p', value=0.9)
56
+ top_k_el = gr.Number(visible=False, label='top_k', value=40, precision=0)
57
+ max_length_el = gr.Number(visible=False, label='max_length', value=500, precision=0)
58
+ result = gr.Textbox(visible=False)
59
+ apiBtn = gr.Button(visible=False)
60
+ apiFullBtn = gr.Button(visible=False)
61
+
62
+ with gr.Row():
63
+ with gr.Column(scale=0.5):
64
+ n_el = gr.Number(label='Number of generated strings', value=5, precision=0)
65
+ temp_el = gr.Slider(label='Temperature', value=0.7, minimum=0.1, maximum=2.0)
66
+ exclude_repetitions_el = gr.Checkbox(label='Reduce repetitions (if possible)', value=False)
67
+ prompt_el = gr.Textbox(label='Prompt (optional)')
68
+ btn = gr.Button(value='Submit')
69
+ with gr.Column(scale=0.5):
70
+ chatbox_el = gr.Chatbot().style(height=500)
71
+ btn.click(submit_input, inputs=[n_el, temp_el, prompt_el, exclude_repetitions_el], outputs=[chatbox_el])
72
+ apiBtn.click(generate_one, [temp, prompt_el, exclude_repetitions_el], [result], api_name='generate')
73
+ apiFullBtn.click(generate_from_full_params, [prompt_el, n_el, temp, top_p_el, top_k_el, max_length_el, exclude_repetitions_el], [chatbox_el], api_name='generateWithFullParams')
74
+
75
+ if __name__ == "__main__":
76
+ demo.launch()
requirements.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ git+https://github.com/llimllib/aitextgen@fix_tpu_available