能调用工具并处理多轮对话的minimax agent脚本已给出:先创建api密钥并安装minimax-api,再定义带type hint的str返回型工具函数,构建严格格式的tool_def列表,初始化客户端后维护累积messages列表,循环调用chat.completions.create并自动处理tool_calls。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

用MiniMax API快速生成一个能调用工具、处理用户多轮对话的Agent Python脚本,无需从零写异步逻辑或手动拼接system prompt。
准备API密钥与基础依赖
前往 https://www.minimax.chat/console 登录账号,在「API Keys」页面创建新密钥,复制保存——该密钥需在后续脚本中明文使用,【切勿提交到公开仓库或前端代码中】。
执行命令安装官方SDK:
pip install minimax-api
定义可调用工具函数
Agent需要知道哪些函数能被调用,先写两个示例工具:
def get_weather(city: str) -> str:
return f"{city}当前晴,气温26℃"
def search_web(query: str) -> str:
return f"已搜索'{query}',返回前3条结果摘要"
注意:函数必须有明确的type hint,否则MiniMax无法解析参数类型;返回值也必须是str,不能是dict或list。
构建工具描述列表
将每个工具包装成MiniMax要求的tool_def格式,字段名和嵌套层级必须严格匹配:
tools = [
{
"name": "get_weather",
"description": "获取指定城市的实时天气",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "城市名称,如北京、上海"
}
}
}
},
{
"name": "search_web",
"description": "在互联网上搜索关键词并返回摘要",
"parameters": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "要搜索的关键词"
}
}
}
}
]
初始化Agent核心逻辑
第一步:实例化Minimax客户端,传入group_id(控制台项目页可见)和api_key;
第二步:定义system_prompt,明确指令角色、工具调用规则和输出格式约束;
第三步:维护messages列表,每次用户输入后追加user消息,Agent响应后追加assistant消息,若含tool_calls则立即执行对应函数并追加tool_result消息;
第四步:循环调用chat.completions.create,设置enable_thinking=True、enable_search=False(MiniMax当前不开放自主搜索)、tool_choice="auto";
这一步最关键:messages必须按时间顺序严格累积,不能清空重置,否则丢失上下文。
运行交互式对话循环
while True:
user_input = input("你:")
if user_input.lower() in ["quit", "exit"]:
break
messages.append({"role": "user", "content": user_input})
response = client.chat.completions.create(...)
assistant_msg = response.choices[0].message
print("Agent:", assistant_msg.content)
messages.append(assistant_msg.model_dump())
if assistant_msg.tool_calls:
for tool_call in assistant_msg.tool_calls:
func_name = tool_call.function.name
args = json.loads(tool_call.function.arguments)
result = globals()[func_name](**args)
messages.append({
"role": "tool",
"content": result,
"tool_call_id": tool_call.id
})
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











