最新天工模型接入与调用完整深度教程:从零到一详细实践方案
要在你自己的程序里调用Skywork AI的API来做图文理解、多轮对话或者深度研究,最头疼的往往不是逻辑本身,而是卡在密钥配置、请求格式或者模型选型上。返回个401错误或者空响应,半天找不出原因——这种事干过几次就知道了,根子就几个地方。
从密钥开始说。你得先有密钥,而且得验证过,后面那些接口才能跑得通。到底怎么弄,往下看。
获取并验证Skywork API密钥
操作其实不复杂:打开 https://skywork.ai 这个地址,右上角点“Sign In”登录你的账户,进个人设置页,找到“API Keys”这个板块,点“Create New Key”,给个名字,比如“dev-local-test”,然后直接复制生成的密钥字符串。务必保存到安全的地方——丢了可就找不回来了。
【密钥有效期默认是90天,过期之后API会直接拒绝所有请求,没商量。】
拿到密钥之后,打开终端跑个测试命令,试试它能不能用:
curl -X GET "https://api.skyworkmodel.ai/v1/models" -H "Authorization: Bearer sk-xxx..." -H "Content-Type: application/json"
如果返回的是个包含 skywork/r1v4-lite 这类模型名的JSON列表,那说明密钥没问题,已经激活了。要是返回的是 {"error": "invalid_api_key"},那就仔细看看是不是复制的时候带了什么多余的空格或者换行符,这种低级错误很容易把人坑。
Python环境接入R1V4-Lite图文推理API
有两种路子可以走,先说个轻量可控的——用requests原生调用。
用requests原生调用(轻量可控)
先装两个依赖:pip install requests pillow。然后准备图像,要转成base64。这一步很多人翻车:用PIL打开图片之后,必须统一转为RGB模式,再保存为JPEG字节流,最后base64编码。这个流程不能省,否则R1V模型会因通道数异常(比如RGBA)而静默失败,返回的结果莫名其妙。
构造请求体的时候有个硬规定:【content字段必须是list类型,且至少包含一个 {"type":"text","text":"..."} 项,纯图像输入不被接受。】 具体结构是这样的:
[{"type":"image_url","image_url":{"url":"data:image/jpeg;base64,/9j/4AAQ..."}},{"type":"text","text":"请逐项分析图中所有数学公式并指出是否有计算错误"}]
这样它才能同时看到图和你问的问题。
配置双模型路由策略(Claude+Gemini协同)
如果想搞点高级的,比如让Claude和Gemini协同工作,可以配置双模型路由。分三步走。
第一步,在Skywork桌面版目录下跑初始化脚本:python scripts/init_config.py,这步会生成一个默认的 config.json,里边定义了主副模型的调度规则。
第二步,写入两个模型的密钥。先跑 python scripts/set_api_key.py --model claude --key "sk-ant-..." 配置Anthropic的密钥,再跑 python scripts/set_api_key.py --model gemini --key "AIzaSy..." 写入Google Gemini的密钥。
第三步,启用智能路由引擎。编辑 config.json 里头的 "routing_rules" 节点,加个条件:
{"task_type":"math_reasoning","min_length":50,"fallback_to":"gemini"}
这个条件的意思是:当用户提问里出现“证明”“推导”“求解”这些词,而且字符数超过50的时候,自动交给Gemini 3 Pro处理;其他常规问答则走Claude 3.5 Sonnet。配完之后,调用 http://localhost:8088/v1/chat/completions 就能触发双模型动态分发,业务代码一行都不用改。
调用Deep Research专家智能体
最后说说深度研究。直接向 https://api.skyworkmodel.ai/v1/deepresearch 发POST请求就行,header里带上 Authorization: Bearer sk-... 和 Content-Type: application/json。
请求体里必须填三个东西:"query"(用户原始问题)、"sources"(可选的知识库ID列表)和 "max_depth"(搜索递归深度,建议设为2到3)。举个例子,你想研究“2026年国产14B级开源大模型技术路线对比”,那就得明确指定 "max_depth":2,否则默认单层检索会漏掉关键论文和评测数据。
响应会返回 "final_answer" 和 "citations" 两个字段。每个citation里又包含 source_url 和 excerpt,这些可以直接用来生成带来源标注的报告——对研究来说已经够用了。
