优化函数参数解析,增加对JSON解析错误的处理;更新run_shell_command描述

This commit is contained in:
远野千束(神羽) 2024-12-16 03:02:05 +08:00
parent dacb5aa854
commit 006f925afd
2 changed files with 7 additions and 6 deletions

View File

@ -323,9 +323,12 @@ async def marsho(
if isinstance(
tool_call, ChatCompletionsToolCall
): # 循环调用工具直到不需要调用
function_args = json.loads(
tool_call.function.arguments.replace("'", '"')
)
try:
function_args = json.loads(tool_call.function.arguments)
except json.JSONDecodeError:
function_args = json.loads(
tool_call.function.arguments.replace("'", '"')
)
logger.info(
f"调用函数 {tool_call.function.name} ,参数为 {function_args}"
)

View File

@ -97,9 +97,7 @@ async def run_python_code(code: str, b: Bot, e: MessageEvent) -> str:
@on_function_call(
description="在设备上运行shell命令, Run command on this device"
).params(command=String(description="shell命令内容")).permission(SUPERUSER).name(
"run_shell_command"
)
).params(command=String(description="shell命令内容")).permission(SUPERUSER)
async def run_shell_command(command: str, b: Bot, e: MessageEvent) -> str:
"""运行shell命令"""
try: