asigalov61 commited on
Commit
a2ef25c
·
verified ·
1 Parent(s): 70fdd62

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -6
app.py CHANGED
@@ -23,13 +23,15 @@ from midi_to_colab_audio import midi_to_colab_audio
23
  # =================================================================================================
24
 
25
  @spaces.GPU
26
- def Generate_Rock_Song(input_midi,
 
27
  input_number_prime_chords,
28
  input_use_original_durations,
29
  input_match_original_pitches_counts,
30
  input_freestyle_continuation,
31
  input_number_prime_tokens,
32
  input_number_gen_tokens,
 
33
  input_model_temperature,
34
  input_model_top_k
35
  ):
@@ -48,12 +50,13 @@ def Generate_Rock_Song(input_midi,
48
  print('Requested settings:')
49
  print('=' * 70)
50
  print('Input MIDI file name:', fn)
 
51
  print('Number of prime chords:', input_number_prime_chords)
52
  print('Use original durations:', input_use_original_durations)
53
  print('Match original pitches counts:', input_match_original_pitches_counts)
54
- print('Freestyle continuation:', input_freestyle_continuation)
55
  print('Number of prime tokens:', input_number_prime_tokens)
56
  print('Number of tokens to generate:', input_number_gen_tokens)
 
57
  print('Model temperature:', input_model_temperature)
58
  print('Model sampling top k value:', input_model_top_k)
59
  print('=' * 70)
@@ -220,6 +223,8 @@ def Generate_Rock_Song(input_midi,
220
  def generate_tokens(seq, max_num_ptcs=10):
221
 
222
  input = copy.deepcopy(seq)
 
 
223
 
224
  pcount = 0
225
  y = 545
@@ -253,7 +258,8 @@ def Generate_Rock_Song(input_midi,
253
 
254
  song = []
255
 
256
- if input_freestyle_continuation:
 
257
  output = generate_continuation(input_number_prime_tokens, input_number_gen_tokens)
258
  song.extend(output)
259
 
@@ -432,29 +438,33 @@ if __name__ == "__main__":
432
  output_midi = gr.File(label="Output MIDI file", file_types=[".mid"])
433
 
434
  run_event = run_btn.click(Generate_Rock_Song, [input_midi,
 
435
  input_number_prime_chords,
436
  input_use_original_durations,
437
  input_match_original_pitches_counts,
438
  input_freestyle_continuation,
439
  input_number_prime_tokens,
440
  input_number_gen_tokens,
 
441
  input_model_temperature,
442
  input_model_top_k
443
  ],
444
  [output_midi_title, output_midi_summary, output_midi, output_audio, output_plot])
445
 
446
  gr.Examples(
447
- [["Sharing The Night Together.kar", 256, True, True, False, 512, 1024, 0.9, 10],
448
- ["Hotel California.mid", 256, True, True, False, 512, 1024, 0.9, 10],
449
- ["Nothing Else Matters.kar", 256, True, True, False, 512, 1024, 0.9, 10],
450
  ],
451
  [input_midi,
 
452
  input_number_prime_chords,
453
  input_use_original_durations,
454
  input_match_original_pitches_counts,
455
  input_freestyle_continuation,
456
  input_number_prime_tokens,
457
  input_number_gen_tokens,
 
458
  input_model_temperature,
459
  input_model_top_k
460
  ],
 
23
  # =================================================================================================
24
 
25
  @spaces.GPU
26
+ def Generate_Rock_Song(input_midi,
27
+ input_gen_type,
28
  input_number_prime_chords,
29
  input_use_original_durations,
30
  input_match_original_pitches_counts,
31
  input_freestyle_continuation,
32
  input_number_prime_tokens,
33
  input_number_gen_tokens,
34
+ input_num_memory_tokens,
35
  input_model_temperature,
36
  input_model_top_k
37
  ):
 
50
  print('Requested settings:')
51
  print('=' * 70)
52
  print('Input MIDI file name:', fn)
53
+ print('Generation type': input_gen_type)
54
  print('Number of prime chords:', input_number_prime_chords)
55
  print('Use original durations:', input_use_original_durations)
56
  print('Match original pitches counts:', input_match_original_pitches_counts)
 
57
  print('Number of prime tokens:', input_number_prime_tokens)
58
  print('Number of tokens to generate:', input_number_gen_tokens)
59
+ print('Number of memory tokens:', input_num_memory_tokens)
60
  print('Model temperature:', input_model_temperature)
61
  print('Model sampling top k value:', input_model_top_k)
62
  print('=' * 70)
 
223
  def generate_tokens(seq, max_num_ptcs=10):
224
 
225
  input = copy.deepcopy(seq)
226
+
227
+ input = input[-input_num_memory_tokens:]
228
 
229
  pcount = 0
230
  y = 545
 
258
 
259
  song = []
260
 
261
+ if input_gen_type == 'Freestyle':
262
+
263
  output = generate_continuation(input_number_prime_tokens, input_number_gen_tokens)
264
  song.extend(output)
265
 
 
438
  output_midi = gr.File(label="Output MIDI file", file_types=[".mid"])
439
 
440
  run_event = run_btn.click(Generate_Rock_Song, [input_midi,
441
+ input_gen_type,
442
  input_number_prime_chords,
443
  input_use_original_durations,
444
  input_match_original_pitches_counts,
445
  input_freestyle_continuation,
446
  input_number_prime_tokens,
447
  input_number_gen_tokens,
448
+ input_num_memory_tokens,
449
  input_model_temperature,
450
  input_model_top_k
451
  ],
452
  [output_midi_title, output_midi_summary, output_midi, output_audio, output_plot])
453
 
454
  gr.Examples(
455
+ [["Sharing The Night Together.kar", "Controlled", 256, True, True, False, 512, 1024, 2048, 0.9, 10],
456
+ ["Hotel California.mid", "Controlled", 256, True, True, False, 512, 1024, 2048, 0.9, 10],
457
+ ["Nothing Else Matters.kar", "Controlled", 256, True, True, False, 512, 1024, 2048, 0.9, 10],
458
  ],
459
  [input_midi,
460
+ input_gen_type,
461
  input_number_prime_chords,
462
  input_use_original_durations,
463
  input_match_original_pitches_counts,
464
  input_freestyle_continuation,
465
  input_number_prime_tokens,
466
  input_number_gen_tokens,
467
+ input_num_memory_tokens,
468
  input_model_temperature,
469
  input_model_top_k
470
  ],