This commit is contained in:
yumoqing 2024-08-03 17:57:04 +08:00
parent 642e2f1ab7
commit f8dc17f12f
5 changed files with 26 additions and 33 deletions

View File

@ -4,31 +4,33 @@ from appPublic.log import MyLogger, info, debug, warning
from appPublic.folderUtils import ProgramPath
from appPublic.jsonConfig import getConfig
from ahserver.configuredServer import ConfiguredServer
import asr_engine
from ahserver.serverenv import ServerEnv
from whisper_model import WhisperBase64
__version__ = '0.0.1'
if __name__ == '__main__':
parser = argparse.ArgumentParser(prog="Sage")
parser.add_argument('-w', '--workdir')
parser.add_argument('-p', '--port')
args = parser.parse_args()
workdir = args.workdir or os.getcwd()
p = ProgramPath()
config = getConfig(workdir, NS={'workdir':workdir, 'ProgramPath':p})
if config.logger:
logger = MyLogger(config.logger.name or 'sage',
levelname=config.logger.levelname or 'debug',
logfile=config.logger.logfile or None)
else:
logger = MyLogger('sage', levelname='debug')
parser = argparse.ArgumentParser(prog="Sage")
parser.add_argument('-w', '--workdir')
parser.add_argument('-p', '--port')
args = parser.parse_args()
print(args)
workdir = args.workdir or os.getcwd()
p = ProgramPath()
config = getConfig(workdir, NS={'workdir':workdir, 'ProgramPath':p})
if config.logger:
logger = MyLogger(config.logger.name or 'sage',
levelname=config.logger.levelname or 'debug',
logfile=config.logger.logfile or None)
else:
logger = MyLogger('sage', levelname='debug')
info(f'========sage version={__version__}========')
# server = ConfiguredServer(auth_klass=MyAuthAPI, workdir=workdir)
server = ConfiguredServer(workdir=workdir)
g = ServerEnv()
g.whisper_model = WhisperBase64()
port = args.port or config.website.port or 8080
port = int(port)
server.run(port=port)
info(f'========sage version={__version__}========')
# server = ConfiguredServer(auth_klass=MyAuthAPI, workdir=workdir)
server = ConfiguredServer(workdir=workdir)
g = ServerEnv()
g.whisper_model = WhisperBase64()
port = args.port or config.website.port or 8080
port = int(port)
server.run(port=port)

View File

@ -1,17 +1,12 @@
from ahserver.serverenv import ServerEnv
from aiohttp.web import StreamResponse
from whisper.load_model import WhisperBase64
async def generate(request, **kw):
model = kw.get('model', 'whisper')
engine = None
g = ServerEnv()
if model=='whisper':
engine = g.whisper_engine
if engine is None:
engine = WhisperBase64
g.whisper_engine = engine
await resp.prepare(request)
line = await request.content.readline()

View File

@ -1,2 +0,0 @@
openai-whisper

View File

@ -1,6 +1,7 @@
from ahserver.serverenv import ServerEnv
from appPublic.worker import awaitify
from appPublic.jsonConfig import getConfig, get_definition
from ahserver.globalEnv import get_definition
import numpy as np
import base64
import whisper
@ -40,6 +41,3 @@ class WhisperBase64(WhisperBase):
ndarr = np.frombuffer(raw, dtype=np.float32)
return self.model.transcribe(raw)
g = ServerEnv()
g.whisper_engine = WhisperBase64()