#Flask-APScheduler from flask_basicauth import BasicAuth from datetime import datetime from flask_apscheduler import APScheduler from flask import Flask from flsak import request model_name = "inclusionAI/Ring-mini-2.0" print(f"load model {model_name}") model = AutoModelForCausalLM.from_pretrained( model_name, torch_dtype="auto", device_map="auto", trust_remote_code=True ) print(f"load tokenizer {model_name}") tokenizer = AutoTokenizer.from_pretrained(model_name) app = Flask(__name__) # prompt = "Напиши стих про шинное обучение" # print(response) import torch from qwen_asr import Qwen3ASRModel model = Qwen3ASRModel.from_pretrained( "Qwen/Qwen3-ASR-1.7B", dtype=torch.bfloat16, device_map="cuda:0", # device_map="cpu", # attn_implementation="flash_attention_2", max_inference_batch_size=32, # Batch size limit for inference. -1 means unlimited. Smaller values can help avoid OOM. max_new_tokens=256, # Maximum number of tokens to generate. Set a larger value for long audio input. ) import datetime start=datetime.datetime.now() results = model.transcribe( audio="https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen3-ASR-Repo/asr_en.wav", language=None, # set "English" to force the language ) # Чтобы защитить паролем конечную точку задания: # @basic_auth.required basic_auth = BasicAuth(app) app.config['BASIC_AUTH_REALM'] = 'realm' app.config['BASIC_AUTH_USERNAME'] = 'vova' app.config['BASIC_AUTH_PASSWORD'] = 'vova' print(f"Flask app") # Главная страница @app.route("/", methods=['POST', 'GET']) # @basic_auth.required def root(): if request.args.get('logs'): #logs=container ?logs=container&__theme=system return f"

Главная logs

" else: return f"

Главная страница

Добро пожаловать!

current model {model_name}

" # Страница "О нас" @app.route("/about") def about(): return "

О нас

Мы изучаем Flask!

" # Страница "Контакты" @app.route("/contact") @basic_auth.required def contact(): import datetime start=datetime.datetime.now() results = model.transcribe( audio="https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen3-ASR-Repo/asr_en.wav", language=None, # set "English" to force the language) print(f'duration {datetime.datetime.now()-start}') print(results[0].language) print(results[0].text) return f"

Контакты

duration {datetime.datetime.now()-start}

results[0].text

" if __name__ == "__main__": app.run(debug=False, host='0.0.0.0', port=7860) root@telebot1:/opt/HF/TruVlad/flaskapi#