没有vllm时使用fun-asr-nano每次都重新加载模型
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 76/100
Direzione di ricerca
Inizia dalle righe 159-172 di _server_app.py e traccia come vengono usati _load_vllm_engine e la voce fallback_models tra le richieste. Esamina anche le righe 273-280, poi fai in modo che lo stato di fallback impedisca caricamenti ripetuti quando vLLM non è disponibile; il lavoro è completato quando le richieste ripetute di fun-asr-nano riutilizzano il modello di fallback caricato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
如题,在环境中没安装vllm时,若使用fun-asr-nano,则每次都会重新加载模型。
问题出现在_server_app.py的159~172行。
问题在于:
- vLLM 加载失败时 →
app.state.engine仍然是None - 降级到
AutoModel时 → 虽然模型被存入app.state.fallback_models["fun-asr-nano"],但没有设置任何标志阻止下次重新加载 - 下次请求时 → 因为
app.state.engine is None,条件不成立,再次进入_load_vllm_engine() - 再次失败 → 再次加载
AutoModel(重复步骤 2-3)
另外,第273~280行这个逻辑也不是很合理,运行起来的python应该不能动态地就多了vllm库,所以server跑起来检测vllm不存在后,使用一个状态变量记一下就行了,至少server重启之前这个变量的值应该都不会变了。然后再所有模型都可以走_load_fallback。对于有vllm,则判断模型是不是fun-asr-nano,再决定走不走_load_vllm_engine()。这样我觉得更合理一些。
以现有代码,最小改变是:
第160行之后加两行:
if app.state.fallback_models["fun-asr-nano"]:
return app.state.fallback_models["fun-asr-nano"]
供参考。
感谢您的付出。
- Lingua principale
- Python
- Stelle
- 20.4k
- Fork
- 2k
- Merge medio
- 4h 55m
- PR unite (30g)
- 169
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di modelscope/FunASR
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
modelscope/FunASR#3704 · 1 commento ·
-
funasr-nano在电话录音识别场景表现不是很好 Apertaneeds triage question
Difficoltà 4/5 3-5 giorni Idoneità per principianti 30/100
modelscope/FunASR#3718 · 3 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
modelscope/FunASR#3717 · 1 commento ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
modelscope/FunASR#3715 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
modelscope/FunASR#3707 · 3 commenti ·
Tutte le issue di modelscope/FunASR
Issue simili
-
documentation help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
simonw/sqlite-utils#872 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100