只需替换base_url、API Key并添加GROUP_ID,清除Anthropic环境变量污染,安装anthropic==0.39.0,构造含system角色(含【ENABLE_MULTIMODAL_PROTOCOL:TRUE】)、messages、max_tokens及顶层group_id的请求体,即可直连MiniMax M3后端。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

想用MiniMax M3模型搭建一个能看截图、读长文档、写代码还带思考链的AI编程助手,但卡在Anthropic SDK接入这一步?你不需要重写整个项目结构,只要替换base_url和API Key,再补上GROUP_ID,就能让Claude Code或现有Anthropic代码直连M3后端。
清除Anthropic环境变量污染
打开终端,执行env | grep -i anthropic。如果输出包含ANTHROPIC_AUTH_TOKEN或ANTHROPIC_BASE_URL,说明存在残留配置。【若这些变量写在 ~/.bashrc 或 ~/.zshrc 中,必须手动删除对应 export 行,否则新开终端仍会自动加载】。这一步跳过会导致后续请求返回401错误或被拦截。
安装并初始化Anthropic SDK
确保已安装Python 3.9+,执行pip install anthropic==0.39.0。该版本已验证兼容MiniMax Anthropic端点,更高版本可能因协议字段校验变严而报错。
新建m3_anthropic.py,写入以下基础初始化代码:
from anthropic import Anthropic<br>client = Anthropic(<br> api_key="YOUR_MINIMAX_API_KEY",<br> base_url="https://api.minimaxi.com/anthropic"<br>)
构造符合M3要求的请求体
第一步:准备必需参数
必须同时提供model="MiniMax-M3"、max_tokens(建议≥1024)、messages数组,并在messages[0]中插入system角色声明。
第二步:硬编码多模态开关
在system消息末尾追加"【ENABLE_MULTIMODAL_PROTOCOL:TRUE】"——缺失该标记,上传的PNG/JPEG将被静默丢弃,模型退化为纯文本模式。
MiniMax 图片理解 + 网络搜索 MCP 工具。适配 Docker 环境(极空间等),支持图片 OCR 识别、图像内容理解、网络搜索。API Key 安全存储在本地 credentials 文件,不暴露在代码中。
第三步:注入GROUP_ID
Anthropic格式调用必须携带group_id字段,它不是header,而是payload顶层键:{"group_id": "your_actual_group_id_here", ...}。漏填会导致400 Bad Request且错误提示模糊。
发送首个带截图的编程请求
方法一:纯文本测试(快速验证通路)
运行以下代码,确认返回非空content:
message = client.messages.create(<br> model="MiniMax-M3",<br> max_tokens=512,<br> group_id="YOUR_GROUP_ID",<br> messages=[<br> {"role": "system", "content": "你是一个专注Python开发的AI助手。【ENABLE_MULTIMODAL_PROTOCOL:TRUE】"},<br> {"role": "user", "content": "写一个函数,输入字符串列表,返回按长度降序排列的新列表"}<br> ]<br>)<br>print(message.content)
方法二:带图像的完整编程任务
将报错截图转为base64字符串(注意前缀data:image/png;base64,),放入user content的type="image"块中:
{"role": "user", "content": [<br> {"type": "text", "text": "这张截图是PyTorch训练时报错,请定位问题并修复代码"},<br> {"type": "image", "source": {"type": "base64", "media_type": "image/png", "data": "iVBORw0KGgo..."}}<br>]}
这一步操作起来很简单,直接把base64字符串粘贴进去就行。但必须确认media_type与实际文件类型一致,PNG不能写成jpeg,否则解码失败返回空响应。


















