27 lines
680 B
Python
27 lines
680 B
Python
|
from ahserver.serverenv import ServerEnv
|
||
|
from aiohttp.web import StreamResponse
|
||
|
|
||
|
async def generate(request, **kw):
|
||
|
model = kw.get('model', 'whisper')
|
||
|
engine = None
|
||
|
g = ServerEnv()
|
||
|
if model=='whisper':
|
||
|
engine = g.whisper_engine
|
||
|
|
||
|
await resp.prepare(request)
|
||
|
line = await request.content.readline()
|
||
|
content = ''
|
||
|
while line:
|
||
|
txt = await engine.stt(line)
|
||
|
content += txt
|
||
|
d = json.dumps({'content':content})
|
||
|
btxt = d.encode('utf8')
|
||
|
await resp.write(btxt)
|
||
|
await resp.drain()
|
||
|
line = await request.content.readline()
|
||
|
return resp
|
||
|
|
||
|
rf = RegisterFunction()
|
||
|
rf.register('generate', generate)
|
||
|
|