update dataset_id_str
This commit is contained in:
parent
569fb3aa79
commit
2d20c7cbba
@ -144,21 +144,23 @@ def replace_mcp_placeholders(mcp_settings: List[Dict], dataset_dir: str, bot_id:
|
|||||||
if not mcp_settings or not isinstance(mcp_settings, list):
|
if not mcp_settings or not isinstance(mcp_settings, list):
|
||||||
return mcp_settings
|
return mcp_settings
|
||||||
|
|
||||||
|
dataset_id_str = ','.join(dataset_ids) if dataset_ids else ''
|
||||||
|
|
||||||
def replace_placeholders_in_obj(obj):
|
def replace_placeholders_in_obj(obj):
|
||||||
"""递归替换对象中的占位符"""
|
"""递归替换对象中的占位符"""
|
||||||
if isinstance(obj, dict):
|
if isinstance(obj, dict):
|
||||||
for key, value in obj.items():
|
for key, value in obj.items():
|
||||||
if key == 'args' and isinstance(value, list):
|
if key == 'args' and isinstance(value, list):
|
||||||
# 特别处理 args 列表
|
# 特别处理 args 列表
|
||||||
obj[key] = [item.format(dataset_dir=dataset_dir, bot_id=bot_id, dataset_ids=','.join(dataset_ids)) if isinstance(item, str) else item
|
obj[key] = [item.format(dataset_dir=dataset_dir, bot_id=bot_id, dataset_ids=dataset_id_str) if isinstance(item, str) else item
|
||||||
for item in value]
|
for item in value]
|
||||||
elif isinstance(value, (dict, list)):
|
elif isinstance(value, (dict, list)):
|
||||||
obj[key] = replace_placeholders_in_obj(value)
|
obj[key] = replace_placeholders_in_obj(value)
|
||||||
elif isinstance(value, str):
|
elif isinstance(value, str):
|
||||||
obj[key] = value.format(dataset_dir=dataset_dir, bot_id=bot_id, dataset_ids=','.join(dataset_ids))
|
obj[key] = value.format(dataset_dir=dataset_dir, bot_id=bot_id, dataset_ids=dataset_id_str)
|
||||||
elif isinstance(obj, list):
|
elif isinstance(obj, list):
|
||||||
return [replace_placeholders_in_obj(item) if isinstance(item, (dict, list)) else
|
return [replace_placeholders_in_obj(item) if isinstance(item, (dict, list)) else
|
||||||
item.format(dataset_dir=dataset_dir, bot_id=bot_id, dataset_ids=','.join(dataset_ids)) if isinstance(item, str) else item
|
item.format(dataset_dir=dataset_dir, bot_id=bot_id, dataset_ids=dataset_id_str) if isinstance(item, str) else item
|
||||||
for item in obj]
|
for item in obj]
|
||||||
return obj
|
return obj
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user