必须在请求体中显式传入system提示词字段,且仅在qwen-max等主流模型的chat/completions接口中生效;旧版generate接口不支持,需用dashscope sdk v4.18.0+或http直连正确构造messages数组,首项role为system,内容非空,否则角色失效或报400错误。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在调用千问AI API时让模型始终遵循特定角色、风格或行为规范,必须在请求体中显式传入system提示词字段,而非仅靠用户消息拼接——漏传或错放位置会导致角色失效、输出偏离预期。
确认API版本与参数支持
使用DashScope官方SDK(v4.18.0+)或直接调用HTTP接口时,【system】字段仅在qwen-max、qwen-plus、qwen-turbo等主流模型的chat/completions接口中生效。旧版generate接口不支持该字段,强行添加会被静默忽略。
访问DashScope控制台→「API文档」→「Chat Completion」页,核对当前选用模型右侧的“支持system”标识是否为✅。
Python SDK中设置system提示词
方法一:使用dashscope.Generation.call()(兼容老写法,但需手动构造messages)
第一步:将system内容作为第一条message,role设为'system';后续用户输入设为'user',模型回复自动为'assistant'。
第二步:确保messages列表顺序为[{'role': 'system', 'content': '你是一位专注金融合规的法律顾问,所有回答必须引用《证券投资基金法》第XX条...'}, {'role': 'user', 'content': '私募基金托管人有哪些法定职责?'}]。
第三步:调用时必须显式指定model参数,例如model='qwen-plus',否则默认模型可能不支持system字段。
统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。
方法二:使用dashscope.ChatCompletion.create()(推荐,结构更清晰)
直接传入system参数:ChatCompletion.create(model='qwen-plus', system='请用简明条款式语言回答,每条不超过15字,禁用“建议”“可以”等模糊措辞', messages=[{'role': 'user', 'content': '列出数据出境安全评估的5个核心环节'}])。
【注意】system字段值不能为空字符串或纯空白符,否则请求会返回400错误。
HTTP直连方式配置system字段
向https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation发起POST请求。
在JSON body中,必须包含messages数组,且首项role为system:{"model": "qwen-plus", "messages": [{"role": "system", "content": "你正在为三甲医院药剂科编写用药提示,所有剂量单位统一用mg,禁止出现‘大约’‘左右’等表述"}, {"role": "user", "content": "阿托伐他汀钙片常规起始剂量是多少?"}], "parameters": {"temperature": 0.3}}。
若误把system内容塞进第一个user消息里,模型会将其当作普通提问处理,角色约束完全失效。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!










