hexgrad commited on
Commit
bdba9cc
·
verified ·
1 Parent(s): a58fd80

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -8
app.py CHANGED
@@ -1,6 +1,23 @@
1
- from gradio_client import Client
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  import gradio as gr
3
- import json
4
  import os
5
  import pprint
6
  import spaces
@@ -9,11 +26,23 @@ import spaces
9
  def greet(n):
10
  return f"Hello {zero + n} Tensor"
11
 
12
- client = Client('hexgrad/misaki-src', hf_token=os.environ['TOKEN'])
13
- def predict(text, use_spacy_transformer, british):
14
- phonemes, trace, elapsed_cpu_time = client.predict(text=text, trf=use_spacy_transformer, british=british, api_name='/predict')
15
- trace = pprint.pformat(json.loads(trace))
16
- return phonemes, len(phonemes), trace, elapsed_cpu_time
 
 
 
 
 
 
 
 
 
 
 
 
17
 
18
  with gr.Blocks() as app:
19
  gr.Markdown('''
@@ -159,7 +188,7 @@ def to_espeak(ps):
159
 
160
  demo = gr.TabbedInterface(
161
  [app, info],
162
- ['🔥 Misaki English Preview', 'ℹ️ Phonemes'],
163
  )
164
 
165
  demo.launch()
 
1
+ import subprocess
2
+ subprocess.run(['apt-get', 'update'])
3
+ subprocess.run(['apt-get', 'install', '-y', 'build-essential', 'gawk', 'libasound2-dev', 'libpulse-dev', 'autoconf', 'automake', 'libtool'])
4
+ subprocess.run(['wget', 'https://github.com/espeak-ng/espeak-ng/archive/refs/tags/1.52.0.tar.gz'])
5
+ subprocess.run(['tar', 'xf', '1.52.0.tar.gz'])
6
+ cwd = 'espeak-ng-1.52.0'
7
+ subprocess.run(['./autogen.sh'], cwd=cwd)
8
+ subprocess.run(['./configure'], cwd=cwd)
9
+ subprocess.run(['make'], cwd=cwd)
10
+ subprocess.run(['make', 'install'], cwd=cwd)
11
+ del cwd
12
+ import os
13
+ env = os.environ.copy()
14
+ env['LD_PRELOAD'] = '/usr/local/lib/libespeak-ng.so.1'
15
+ subprocess.run(['espeak-ng', '--version'], env=env)
16
+ from phonemizer.backend.espeak.wrapper import EspeakWrapper
17
+ EspeakWrapper.set_library('/usr/local/lib/libespeak-ng.so.1')
18
+
19
+ from misaki import en, espeak
20
  import gradio as gr
 
21
  import os
22
  import pprint
23
  import spaces
 
26
  def greet(n):
27
  return f"Hello {zero + n} Tensor"
28
 
29
+ fbs = [espeak.EspeakFallback(british=british) for british in (False, True)]
30
+ g2p = [[en.G2P(trf=trf, british=british, fallback=fbs[british]) for british in (False, True)] for trf in (False, True)]
31
+
32
+ def forward(text, use_spacy_transformer, british):
33
+ start = time.time()
34
+ ps, tokens = g2p[use_spacy_transformer][british](text)
35
+ debug = []
36
+ for word in tokens:
37
+ if isinstance(word, list):
38
+ debug.append([])
39
+ for t in word:
40
+ debug[-1].append(t.debug_all())
41
+ else:
42
+ debug.append(word.debug_all())
43
+ trace = pprint.pformat(debug)
44
+ elapsed_cpu_time = time.time() - start
45
+ return ps, len(ps), trace, elapsed_cpu_time
46
 
47
  with gr.Blocks() as app:
48
  gr.Markdown('''
 
188
 
189
  demo = gr.TabbedInterface(
190
  [app, info],
191
+ ['🔥 Misaki English', 'ℹ️ Phonemes'],
192
  )
193
 
194
  demo.launch()