checkCustomerBalance 返回值 f 之前被丢弃,导致即使余额不足或 模型未配置定价,直接调 API 仍可执行推理。 添加 if not f 判断,返回 UiError 拦截。
34 lines
1.0 KiB
Plaintext
34 lines
1.0 KiB
Plaintext
debug_params('params_kw', params_kw)
|
|
if params_kw.off_peak:
|
|
off_peak = params_kw.off_peak
|
|
if off_peak in [True, "Y" "y", 1, "1"]:
|
|
off_peak = True
|
|
else:
|
|
off_peak = False
|
|
params_kw.off_peak = off_peak
|
|
userid = await get_user()
|
|
userorgid = await get_userorgid()
|
|
if userid is None:
|
|
return UiError(title='llm inference', message='Please login first')
|
|
f = await checkCustomerBalance(params_kw.llmid, userid, userorgid)
|
|
if not f:
|
|
return UiError(title='llm inference', message='余额不足或模型未配置定价')
|
|
kdbids = params_kw.kdbids
|
|
if kdbids:
|
|
data = {
|
|
'prompt': params_kw.prompt
|
|
}
|
|
params = {
|
|
'query': params_kw.prompt,
|
|
'fiids': params_kw.kdbids,
|
|
'limit': params_kw.recall_cnt
|
|
}
|
|
tmpl = params_kw.prompt_tmpl
|
|
ret = await rfexe('fusedsearch', request, params)
|
|
data.update(ret)
|
|
params_kw.prompt = await tmpl_engine.renders(tmpl, data)
|
|
debug_params('rag', {'query': params.get('query',''), 'prompt_len': len(str(params_kw.prompt))})
|
|
|
|
env = DictObject(**globals())
|
|
return await inference(request, env=env)
|