Infinitode Pty Ltd commited on
Commit
44747fb
·
verified ·
1 Parent(s): d73f230

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +46 -24
app.py CHANGED
@@ -93,34 +93,56 @@ def generate_random_name(interpreter, vocab_size, sp, max_length=10, temperature
93
 
94
  return generated_name.strip()
95
 
96
- def generateTerrariaNames(amount, max_length=30, temperature=0.5, seed_text=""):
97
- sp = spm.SentencePieceProcessor()
98
- sp.load("models/terraria_names.model")
99
- amount = int(amount)
100
- max_length = int(max_length)
101
-
102
- names = []
103
-
104
- # Define necessary variables
105
- vocab_size = sp.GetPieceSize()
106
-
107
- # Load TFLite model
108
- interpreter = tf.lite.Interpreter(model_path="models/dungen_terraria_model.tflite")
109
- interpreter.allocate_tensors()
110
-
111
- # Use the function to generate a name
112
- # Assuming `vocab_size` and `sp` (SentencePiece processor) are defined elsewhere
113
- for _ in range(amount):
114
- generated_name = generate_random_name(interpreter, vocab_size, sp, seed_text=seed_text, max_length=max_length, temperature=temperature)
115
- names.append(generated_name)
116
- return pd.DataFrame(names, columns=['Names'])
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
117
 
118
  demo = gr.Interface(
119
- fn=generateTerrariaNames,
120
- inputs=[gr.Slider(1,25, step=1, label='Amount of Names', info='How many names to generate, must be greater than 0'), gr.Slider(10, 60, value=30, step=1, label='Max Length', info='Max length of the generated word'), gr.Slider(0.1, 1, value=0.5, label='Temperature', info='Controls randomness of generation, higher values = more creative, lower values = more probalistic'), gr.Textbox('', label='Seed text (optional)', info='The starting text to begin with', max_lines=1, )],
121
  outputs=[gr.Dataframe(row_count = (2, "dynamic"), col_count=(1, "fixed"), label="Generated Names", headers=["Names"])],
122
  title='Dungen - Name Generator',
123
- description='A fun game-inspired name generator.'
124
  )
125
 
126
  demo.launch()
 
93
 
94
  return generated_name.strip()
95
 
96
+ def generateNames(type, amount, max_length=30, temperature=0.5, seed_text=""):
97
+ if type === "Terraria":
98
+ sp = spm.SentencePieceProcessor()
99
+ sp.load("models/terraria_names.model")
100
+ amount = int(amount)
101
+ max_length = int(max_length)
102
+
103
+ names = []
104
+
105
+ # Define necessary variables
106
+ vocab_size = sp.GetPieceSize()
107
+
108
+ # Load TFLite model
109
+ interpreter = tf.lite.Interpreter(model_path="models/dungen_terraria_model.tflite")
110
+ interpreter.allocate_tensors()
111
+
112
+ # Use the function to generate a name
113
+ # Assuming `vocab_size` and `sp` (SentencePiece processor) are defined elsewhere
114
+ for _ in range(amount):
115
+ generated_name = generate_random_name(interpreter, vocab_size, sp, seed_text=seed_text, max_length=max_length, temperature=temperature)
116
+ names.append(generated_name)
117
+ return pd.DataFrame(names, columns=['Names'])
118
+ elif type === "Skyrim":
119
+ sp = spm.SentencePieceProcessor()
120
+ sp.load("models/skyrim_names.model")
121
+ amount = int(amount)
122
+ max_length = int(max_length)
123
+
124
+ names = []
125
+
126
+ # Define necessary variables
127
+ vocab_size = sp.GetPieceSize()
128
+
129
+ # Load TFLite model
130
+ interpreter = tf.lite.Interpreter(model_path="models/dungen_skyrim_model.tflite")
131
+ interpreter.allocate_tensors()
132
+
133
+ # Use the function to generate a name
134
+ # Assuming `vocab_size` and `sp` (SentencePiece processor) are defined elsewhere
135
+ for _ in range(amount):
136
+ generated_name = generate_random_name(interpreter, vocab_size, sp, seed_text=seed_text, max_length=max_length, temperature=temperature)
137
+ names.append(generated_name)
138
+ return pd.DataFrame(names, columns=['Names'])
139
 
140
  demo = gr.Interface(
141
+ fn=generateNames,
142
+ inputs=[gr.Radio("Terraria", choices=["Terraria", "Skyrim"], label="Choose a model for your request"), gr.Slider(1,25, step=1, label='Amount of Names', info='How many names to generate, must be greater than 0'), gr.Slider(10, 60, value=30, step=1, label='Max Length', info='Max length of the generated word'), gr.Slider(0.1, 1, value=0.5, label='Temperature', info='Controls randomness of generation, higher values = more creative, lower values = more probalistic'), gr.Textbox('', label='Seed text (optional)', info='The starting text to begin with', max_lines=1, )],
143
  outputs=[gr.Dataframe(row_count = (2, "dynamic"), col_count=(1, "fixed"), label="Generated Names", headers=["Names"])],
144
  title='Dungen - Name Generator',
145
+ description='A fun game-inspired name generator. For an example of how to create, and train your model, similar to this one, head over to: https://github.com/infinitode/open-arc/project-5-twng/'
146
  )
147
 
148
  demo.launch()