Appearance
Text generation
Reference, synced 2026-06-13.
flowchart TD n0["Models"] n1["Overview"] n2["Products"] n3["Solutions"] n4["Pricing"] n5["Resources"] n6["Partners"] n7["Support"] n8["Language"] n0 --> n1 n1 --> n2 n2 --> n3 n3 --> n4 n4 --> n5 n5 --> n6 n6 --> n7 n7 --> n8
Free access Accelerate Delivery with Fixed-Cost Agentic CodingWatch how it works
Models
Empowering AI innovation for both enterprises and developers with Alibaba Cloud’s best-in-class Qwen models, AI-native apps, and AI solutions.
Alibaba Cloud Model Studio \ Enterprise-grade large model service and application development platform.
Try Visual Model \ Supports image understanding, image generation, and video generation.
Models
HappyHorse-1.0-T2V \ Cinematic creative generation, ultimate dynamic details Qwen3-VL-Plus \ Native VL, spatial reasoning, 1M-context video analysis Wan2.7-VideoEdit \ Supports both localized and global editing with prompt
Qwen3.6-Plus \ Native multimodal, 1M context, agentic coding Wan2.7-Image-Pro \ Interactive editing, long-text rendering, precise prompt following Qwen-Plus \ Balanced intelligence, efficient inference, production-ready performance
Qwen-Image-2.0 \ Professional infographics, exquisite photorealism Z-Image-Turbo \ Ultra-fast image generation, high throughput, cost-optimized inference Qwen3-Coder-Next \ Multi-turn tool interactions, future-ready development support
Wan2.7-T2V \ High-fidelity T2V, 15s duration, advanced camera control Wan2.7-I2V \ Cinematic I2V with emotional depth and visceral impact Wan2.7-R2V \ Up to 5 mixed image/video inputs and audio timbre cloning
GenAI Application
Qoder \ Intelligent coding assistant, available for enterprise-dedicated deployment. Qoder CN \ AI-powered coding assistant that boosts developer productivity with intelligent code completion, AI chat, multi-file editing, and task automation.
AI Service
Model Experience \ Experience full-scale, multimodal model capabilities online. Platform for AI \ An AI-native algorithm engineering platform for end-to-end modeling, training, and inference service deployment. Fine-tune Video Generation Model \ Customize Wan’s text-to-video capabilities through model fine-tuning to meet your unique requirements.
AI Use Case
AI Savings Plan Hot \ Save up to 47% on AI costs. Limited-time offer tailored to your usage. AI Video Creation \ Elevate your professional video production with Wan 2.6.
AI Token Plan \ One plan. Multiple models. Big Savings with a Fixed Subscription. AI Image Creation \ All-in-one creative suite for copywriting, image generation, and poster design.
Overview
As a global full-stack AI leader, Alibaba Cloud aims to make computing accessible to everyone and help worldwide customers accelerate innovation.
Why Alibaba Cloud
About Alibaba Cloud \ AI Powered Cloud Technology Our Global Network \ Explore our global presence and deployment regions around the world Our Global Offices \ With offices in 4 continents, we're always close to where it matters.
Asia Accelerator \ Accelerate Success in Asia with Alibaba Cloud Go Global \ Benefits of our Global Alliance Trust Center \ Empowering enterprises with a secure, compliant, and globally trusted cloud infrastructure
Customers and Insights
Olympic Games \ Alibaba Cloud Powers Olympic Games with AI-powered cloud technology Case Studies \ Learn how customers are scaling their businesses on Alibaba Cloud Analyst Reports \ Learn what the top industry analyst firms are saying about Alibaba Cloud
What's New
Events and Webinars \ Quick access to upcoming and on-demand events Product Updates \ Stay informed of the latest innovations Press Room \ Latest news and media releases
Products
Featured ProductsAI & Machine Learning Computing Container Storage Networking & CDN Security Middleware Database Analytics ComputingMedia ServicesEnterprise Services & Cloud CommunicationDomain Names and WebsitesEnd User ComputingServerlessDeveloper ToolsMigration & O&M ManagementApsara Stack
Featured Products
Alibaba Cloud Model Studio \ Supercharge your AI journey effortlessly with industry-leading GenAI models ApsaraDB RDS \ Store and manage your business data, with automated monitoring and backups Certificate Management Service (Original SSL Certificate) \ Create a safe and secure connection between your website and users
Elastic Compute Service (ECS) \ Host websites anywhere and scale enterprise workloads Container Service for Kubernetes (ACK) \ Run and scale containerized applications on managed Kubernetes infrastructure Object Storage Service (OSS) \ Store large amounts of data in the cloud and access it anywhere, anytime
Simple Application Server (SAS) \ All-in-one services for fast deployment Elastic IP Address (EIP) \ Manage your public IPs independently to improve internet network quality Domain Names and Website \ Get the perfect domain name to suit your every need
Related Programs
Solutions
Solutions by Industry Technical Solutions AI WebsitesNetworking Security and ComplianceData and AnalyticsEnterprise Service and ApplicationCloud MigrationCloud NativeHybrid CloudSMB solutions
Financial Services \ Innovate faster with Alibaba Cloud Games \ Grow your game rapidly with high global availability
New Retail \ Alibaba Cloud enables digital retail transformation to fuel growth and realize an omnichannel customer experience throughout the consumer journey. Media and Entertainment \ Ready your content for today's media market with a digitalized media journey
Supply Chain \ Power your supply chain with intelligent, efficient, and reliable solutions Sports \ Digitizing the sports industry with intelligent tech
Sustainability \ Achieve a sustainable future with low-carbon and energy-efficient technologies
Pricing
Flexible options like pay-as-you-go and clear billing rules to meet diverse business needs.
Overview & Tools
Pricing Calculator \ Get an instant pricing estimate based on your usage and needs Free Trial \ Try our 80+ cloud products for free.
Pricing Options \ Get the most out of Alibaba Cloud with flexible pricing
Optimize your cost
Migrate & Save \ Superior Performance At Lower Pricing. Save up to 50%. Promotion Center \ Unlock the latest Alibaba Cloud offers & promos
Resources
Official documentation, extensive tools, training resources, and a community to grow and innovate in the cloud.
Technical Resources
Documentation \ Product guides and FAQs Architecture Center \ Design reliable, secure, and efficient cloud architecture. Intelligent Solution Explorer \ Find the right solution for you, powered by AI
Blog \ Latest cloud insights and developer trends Whitepapers \ Research that explores the how and why behind our technology
Training&Certification
Alibaba Cloud Academy \ Build cloud skills and earn certifications with expert-led training.
Developer Hub
Alibaba Cloud Project Hub \ Explore real-world projects built by developers using our platform. Our Developer MVPs \ Celebrating the developers who lead, build, and inspire our community
Partners
Partner-first strategy offering collaborative product, sales, and service models, plus high-quality partner solutions that complement Alibaba Cloud’s capabilities.
Marketplace
AI Alliance for ISVs \ Partner with us to build and grow AI solutions together ISV Benefits \ Unlock resources, market access, and go-to-market support as an ISV partner
Alibaba Cloud Marketplace \ Explore ready-to-deploy solutions from our partners and ISVs
Find a Partner
Partner Hub \ Find your ideal partner in no time
Become a Partner
Partner Network \ A partner portal for Alibaba Cloud Channel, Technology, MSP partner and other partner programs
Support
Full-lifecycle support and expert services, from cloud advisory and migration to operations.
Support & Professional Services
Professional Services \ Expert-led services to design, migrate, and optimize your cloud journey Support Plans \ Flexible support for every stage — from startup to enterprise
Partner Support Program \ Priority technical support for partners, with dedicated managers and faster issue resolution
Contact us
Connect With Us \
Talk to a sales expert and get a custom quote for your business
Language
- English
- 简体中文
- 繁體中文
- 日本語
- Bahasa Indonesia
Locale
Visit aliyun.com
Documentation
Alibaba Cloud Model Studio
User Guide (Models) User Guide (Application) API Reference (Models) API Reference (Application)
Search for Help Content
Getting Started
The Beginner's Guide
Well-Architected Framework
AI & Machine Learning
Platform For AI
Alibaba Cloud Model Studio
DashVector
Artificial Intelligence Recommendation
OpenSearch
Image Search
Machine Translation
Intelligent Speech Interaction
Optimization Solver
Intelligent Computing LINGJUN
Computing
Elastic Compute Service
Elastic GPU Service
Elastic Container Instance
Dedicated Host
Compute Nest
Simple Application Server
Cloud Box
Auto Scaling
Elastic High Performance Computing
Batch Compute (Deprecated)
Function Compute
Serverless App Engine
ENS
Elastic Desktop Service
App Streaming
WUYING Terminal
Cloud Phone
Edge Network Acceleration
Alibaba Cloud Linux
AgentBay
Container
Container Service for Kubernetes
Container Compute Service
Container Registry
Storage
Object Storage Service
Cloud Parallel File Storage
File Storage NAS
Tablestore
Storage Capacity Unit
Simple Log Service
Cloud Backup
Intelligent Media Management
Drive and Photo Service
Data Transport
Cloud Storage Gateway
Data Online Migration
Hybrid Cloud Storage Array
Storage Services Overview
Backup and Disaster Recovery Center
Networking and CDN
Server Load Balancer
Elastic IP Address
Internet Shared Bandwidth
Data Transfer Plan
Virtual Private Cloud
NAT Gateway
PrivateLink
Alibaba Cloud DNS PrivateZone
Network Intelligence Service
Cloud Data Transfer
IPv6 Gateway
Anycast Elastic IP Address
Cloud Enterprise Network
Global Accelerator
VPN Gateway
Smart Access Gateway
Express Connect
CDN
Edge Security Acceleration
Cloud Network Well-architected Design Guidelines
Security
Anti-DDoS
Web Application Firewall
Cloud Firewall
Security Center
Bastionhost
Secure Access Service Edge
Certificate Management Service
Key Management Service
Data Security Center
Identity as a Service
Fraud Detection
AI Guardrails
Captcha
Blockchain as a Service
ID Verification
Managed Security Service
Middleware
Enterprise Distributed Application Service
Microservices Engine
Alibaba Cloud Service Mesh
SchedulerX
ApsaraMQ for RocketMQ
ApsaraMQ for Kafka
ApsaraMQ for RabbitMQ
ApsaraMQ for MQTT
Simple Message Queue (formerly MNS)
CloudFlow
EventBridge
Application Real-Time Monitoring Service
Managed Service for Prometheus
Managed Service for Grafana
Managed Service for OpenTelemetry
Performance Testing
Databases
ApsaraDB Console
PolarDB
ApsaraDB RDS
ApsaraDB for OceanBase (Deprecated)
Tair (Redis® OSS-Compatible)
Lindorm
Time Series Database
ApsaraDB for MongoDB
ApsaraDB for HBase
ApsaraDB for Memcache
ApsaraDB for MyBase
AnalyticDB
ApsaraDB for ClickHouse
ApsaraDB for SelectDB
Data Transmission Service
Database Autonomy Service
Data Management
Database Gateway - Deprecated
ApsaraDB for Cassandra - Deprecated
Analytics Computing
MaxCompute
Hologres
Realtime Compute for Apache Flink
Elasticsearch
Vector Retrieval Service for Milvus
E-MapReduce
Data Lake Formation
DataV
Quick BI
Quick Audience
Quick Tracking
DataWorks
DataHub
Dataphin
Media Services
ApsaraVideo VOD
ApsaraVideo Live
Intelligent Media Services
ApsaraVideo Media Processing
Apsara Video SDK
Enterprise Services & Cloud Communication
Energy Expert
CloudQuotation
Salesforce on Alibaba Cloud
GoChina ICP Filing Assistant
Marketplace
Alibaba Mail
Direct Mail
Short Message Service
Voice Service
Phone Number Verification Service
Cell Phone Number Service
Chat App Message Service
Financial Intelligence Engine
Domain Names and Websites
Domain Names
ICP Filing
Alibaba Cloud DNS
End User Computing
Elastic Desktop Service
App Streaming
WUYING Terminal
Cloud Phone
AgentBay
Internet of Things
IoT Platform
Serverless
Serverless App Engine
CloudFlow
EventBridge
Simple Message Queue (formerly MNS)
Function Compute
Developer Tools
OpenAPI Explorer
Alibaba Cloud SDK
Cloud Shell
Resource Orchestration Service
Alibaba Cloud CLI
BSS OpenAPI
Terraform
Pulumi
Ticket System API
Mobile Platform as a Service
Alibaba Cloud DevOps
API Gateway
Cloud Control API
AI Coding Assistant Lingma
Cloud Skills Portal
Migration & O&M Management
CloudOps Orchestration Service
Cloud Monitor
Intelligent Advisor
Cloud Governance Center
ActionTrail
Cloud Config
Resource Access Management
Resource Management
Cloud Architect Design Tools
Migration Hub
Server Migration Center
Service Catalog
Logic Composer
Quota Center
CloudSSO
HTTPDNS
Solutions
SAP
SuperApp
OpenLake
Membership Service
Expenses and Costs
Account Center
More
Support
Legal
Tech Share Terms and Conditions
After Sales Support
China Gateway Program
Service Level Objectives
Management Console
Security Control
A text generation model generates text from natural language prompts for applications such as chatbots, content creation, document summarization, and code generation.
Input can range from a single keyword to complex, multi-step prompts with context. Common use cases include:
Content creation: Generate news articles, product descriptions, and short-form video scripts.
Customer service: Build 24/7 automated chatbots to answer frequently asked questions.
Text translation: Translate text between multiple languages.
Summarization: Summarize long articles, reports, and emails.
Legal document drafting: Draft contract templates and legal opinions.
Key concepts
The input to a text generation model is a prompt, which consists of one or more message objects each containing a role and content:
System message: Sets the model's persona, behavior guidelines, or task-specific instructions. Defaults to "You are a helpful assistant."
User message: The user's question, instruction, or input to the model.
Assistant message: The model's response. In a multi-turn conversation, pass historical assistant messages to maintain context.
To call the model, construct an array of these message objects named messages. A typical request consists of a system message that defines behavior guidelines and a user message with the user's input.
The
systemmessage is optional but recommended. Defining the model's role and behavioral constraints produces more consistent and predictable output.
json
[\
{"role": "system", "content": "You are a helpful assistant who provides precise, efficient, and insightful responses, ready to assist users with various tasks and questions."},\
{"role": "user", "content": "Who are you?"}\
]The response contains the model's reply in an assistant message.
json
{
"role": "assistant",
"content": "Hello! I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you with tasks like answering questions, creating text, logical reasoning, and coding. I understand and generate multiple languages, and can handle multi-turn conversations and complex instructions. If there is anything you need help with, just let me know!"
}Quick start
Prerequisites: Get an API key and set it as an environment variable. If using an SDK, also install the OpenAI or DashScope SDK.
OpenAI-compatible Chat Completions API
OpenAI-Compatible Responses API
DashScope
Python
Java
Node.js
Go
C# (HTTP)
PHP (HTTP)
curl
python
import os
from openai import OpenAI
try:
client = OpenAI(
# API keys vary by region. To obtain an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
# If you haven't set the environment variable, replace the following line with your Alibaba Cloud Model Studio API key: api_key="sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
# Endpoint for the Asia Pacific SE 1 (Singapore) region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
model="qwen3.6-plus",
messages=[\
{"role": "system", "content": "You are a helpful assistant."},\
{"role": "user", "content": "Who are you?"},\
],
)
print(completion.choices[0].message.content)
# To view the full response, uncomment the following line.
# print(completion.model_dump_json())
except Exception as e:
print(f"Error message: {e}")
print("For more information, see the documentation: https://www.alibabacloud.com/help/en/model-studio/error-code")Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!java
// We recommend using OpenAI Java SDK v3.5.0 or later.
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.chat.completions.ChatCompletion;
import com.openai.models.chat.completions.ChatCompletionCreateParams;
public class Main {
public static void main(String[] args) {
try {
OpenAIClient client = OpenAIOkHttpClient.builder()
// API keys vary by region. To obtain an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If you haven't set the environment variable, replace the following line with your Alibaba Cloud Model Studio API key: .apiKey("sk-xxx")
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
// Endpoint for the Asia Pacific SE 1 (Singapore) region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
.baseUrl("https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1")
.build();
// Create ChatCompletion parameters.
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.model("qwen3.6-plus")
.addSystemMessage("You are a helpful assistant.")
.addUserMessage("Who are you?")
.build();
// Send the request and receive the response.
ChatCompletion chatCompletion = client.chat().completions().create(params);
String content = chatCompletion.choices().get(0).message().content().orElse("No valid content returned");
System.out.println(content);
} catch (Exception e) {
System.err.println("Error message: " + e.getMessage());
System.out.println("For more information, see the documentation: https://www.alibabacloud.com/help/en/model-studio/error-code");
}
}
}Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!nodejs
// This code requires Node.js v18+ and must be run in an ES Module environment.
import OpenAI from "openai";
const openai = new OpenAI(
{
// API keys vary by region. To obtain an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If you haven't set the environment variable, replace the following line with your Alibaba Cloud Model Studio API key: apiKey: "sk-xxx",
apiKey: process.env.DASHSCOPE_API_KEY,
// Endpoint for the Asia Pacific SE 1 (Singapore) region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
}
);
const completion = await openai.chat.completions.create({
model: "qwen3.6-plus",
messages: [\
{ role: "system", content: "You are a helpful assistant." },\
{ role: "user", content: "Who are you?" }\
],
});
console.log(completion.choices[0].message.content);
// To view the full response, uncomment the following line.
// console.log(JSON.stringify(completion, null, 4));Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!go
// We recommend using OpenAI Go SDK v2.4.0 or later.
package main
import (
"context"
// To view the full response, uncomment the import below and the related code at the end.
// "encoding/json"
"fmt"
"os"
"github.com/openai/openai-go/v2"
"github.com/openai/openai-go/v2/option"
)
func main() {
// If you haven't set the environment variable, replace the following line with your Alibaba Cloud Model Studio API key: apiKey := "sk-xxx"
apiKey := os.Getenv("DASHSCOPE_API_KEY")
client := openai.NewClient(
option.WithAPIKey(apiKey),
// API keys vary by region. To obtain an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
// Endpoint for the Asia Pacific SE 1 (Singapore) region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
option.WithBaseURL("https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"),
)
chatCompletion, err := client.Chat.Completions.New(
context.TODO(), openai.ChatCompletionNewParams{
Messages: []openai.ChatCompletionMessageParamUnion{
openai.SystemMessage("You are a helpful assistant."),
openai.UserMessage("Who are you?"),
},
Model: "qwen3.6-plus",
},
)
if err != nil {
fmt.Fprintf(os.Stderr, "Request failed: %v\n", err)
// For more information, see the documentation: https://www.alibabacloud.com/help/en/model-studio/error-code
os.Exit(1)
}
if len(chatCompletion.Choices) > 0 {
fmt.Println(chatCompletion.Choices[0].Message.Content)
}
// To view the full response, uncomment the following lines.
// jsonData, _ := json.MarshalIndent(chatCompletion, "", " ")
// fmt.Println(string(jsonData))
}Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!csharp
using System.Net.Http.Headers;
using System.Text;
using System.Text.Json;
class Program
{
private static readonly HttpClient httpClient = new HttpClient();
static async Task Main(string[] args)
{
// If you haven't set the environment variable, replace the following line with your Alibaba Cloud Model Studio API key: string? apiKey = "sk-xxx";
string? apiKey = Environment.GetEnvironmentVariable("DASHSCOPE_API_KEY");
// Endpoint for the Asia Pacific SE 1 (Singapore) region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
string url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions";
string jsonContent = @"{
""model"": ""qwen3.6-plus"",
""messages"": [\
{\
""role"": ""system"",\
""content"": ""You are a helpful assistant.""\
},\
{\
""role"": ""user"",\
""content"": ""Who are you?""\
}\
]
}";
// Send the request and receive the response.
string result = await SendPostRequestAsync(url, jsonContent, apiKey);
// To view the full response, uncomment the following line.
// Console.WriteLine(result);
// Parse the JSON to extract and print the content.
using JsonDocument doc = JsonDocument.Parse(result);
JsonElement root = doc.RootElement;
if (root.TryGetProperty("choices", out JsonElement choices) &&
choices.GetArrayLength() > 0)
{
JsonElement firstChoice = choices[0];
if (firstChoice.TryGetProperty("message", out JsonElement message) &&
message.TryGetProperty("content", out JsonElement content))
{
Console.WriteLine(content.GetString());
}
}
}
private static async Task<string> SendPostRequestAsync(string url, string jsonContent, string apiKey)
{
using (var content = new StringContent(jsonContent, Encoding.UTF8, "application/json"))
{
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = await httpClient.PostAsync(url, content);
if (response.IsSuccessStatusCode)
{
return await response.Content.ReadAsStringAsync();
}
else
{
// For more information, see the documentation: https://www.alibabacloud.com/help/en/model-studio/error-code
return $"Request failed: {response.StatusCode}";
}
}
}
}Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!php
<?php
// Set the request URL.
// Endpoint for the Asia Pacific SE 1 (Singapore) region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
$url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions';
// API keys vary by region. To obtain an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If you haven't set the environment variable, replace the following line with your Alibaba Cloud Model Studio API key: $apiKey = "sk-xxx";
$apiKey = getenv('DASHSCOPE_API_KEY');
// Set the request headers.
$headers = [\
'Authorization: Bearer '.$apiKey,\
'Content-Type: application/json'\
];
// Set the request body.
$data = [\
"model" => "qwen3.6-plus",\
"messages" => [\
[\
"role" => "system",\
"content" => "You are a helpful assistant."\
],\
[\
"role" => "user",\
"content" => "Who are you?"\
]\
]\
];
// Initialize a cURL session.
$ch = curl_init();
// Set cURL options.
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
// Execute the cURL session.
$response = curl_exec($ch);
// Check for errors.
// For more information, see the documentation: https://www.alibabacloud.com/help/en/model-studio/error-code
if (curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
}
// Close the cURL resource.
curl_close($ch);
// Parse and output the response content.
$dataObject = json_decode($response);
$content = $dataObject->choices[0]->message->content;
echo $content;
// To view the full response, uncomment the following line.
//echo $response;
?>Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!The 'base_url' and API key are region-specific. See OpenAI-compatible Chat for endpoint URLs and Obtain an API key to get your key.
curl
# Modify the endpoint URL for your region.
curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.6-plus",
"messages": [\
{\
"role": "system",\
"content": "You are a helpful assistant."\
},\
{\
"role": "user",\
"content": "Who are you?"\
}\
]
}'Response
json
{
"choices": [\
{\
"message": {\
"role": "assistant",\
"content": "I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!"\
},\
"finish_reason": "stop",\
"index": 0,\
"logprobs": null\
}\
],
"object": "chat.completion",
"usage": {
"prompt_tokens": 26,
"completion_tokens": 66,
"total_tokens": 92
},
"created": 1726127645,
"system_fingerprint": null,
"model": "qwen3.6-plus",
"id": "chatcmpl-81951b98-28b8-9659-ab07-xxxxxx"
}The Responses API succeeds the Chat Completions API. For usage instructions, code examples, and migration guides, see OpenAI-Compatible Responses.
Python
Node.js
curl
python
import os
from openai import OpenAI
try:
client = OpenAI(
# API Keys vary by region. Get your API Key at: https://www.alibabacloud.com/help/en/model-studio/get-api-key
# If you do not set the environment variable, provide your API Key directly: api_key="sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
# The base URL varies by region. Update it to match your service region.
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
response = client.responses.create(
model="qwen3.6-plus",
input="Briefly introduce what you can do."
)
print(response)
except Exception as e:
print(f"An error occurred: {e}")
print("For details, see the error code documentation: https://www.alibabacloud.com/help/en/model-studio/error-code")Response
Key response fields:
id: The response ID.output: List containingreasoningandmessageobjects.
reasoningonly appears when thinking is enabled (enabled by default for Qwen3.6 series).
usage: Token usage.
Sample message content. For the full response, see the curl section.
plaintext
Hello! I'm an AI assistant with knowledge current as of 2026. Here's a brief overview of what I can do:
* **Content Creation:** Write emails, articles, stories, scripts, and more.
* **Coding & Tech:** Generate, debug, and explain code across various programming languages.
* **Analysis & Summarization:** Process documents, interpret data, and extract key insights.
* **Problem Solving:** Assist with math, logic, reasoning, and strategic planning.
* **Learning & Translation:** Explain complex topics simply or translate between multiple languages.
Feel free to ask me anything or give me a task to get started!nodejs
// Node.js v18+ is required. This code must be run in an ES Module environment.
import OpenAI from "openai";
const openai = new OpenAI({
// API Keys vary by region. Get your API Key at: https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If you do not set the environment variable, provide your API Key directly: apiKey: "sk-xxx",
apiKey: process.env.DASHSCOPE_API_KEY,
// The base URL varies by region. Update it to match your service region.
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
});
async function main() {
try {
const response = await openai.responses.create({
model: "qwen3.6-plus",
input: "Briefly introduce what you can do."
});
// Get the model response
console.log(response);
} catch (error) {
console.error("An error occurred:", error);
}
}
main();Response
Key response fields:
id: The response ID.output: List containingreasoningandmessageobjects.
reasoningonly appears when thinking is enabled (enabled by default for Qwen3.6 series).
usage: Token usage.
Sample message content. For the full response, see the curl section.
plaintext
Hello! I'm an AI assistant with knowledge current as of 2026. Here's a brief overview of what I can do:
* **Content Creation:** Write emails, articles, stories, scripts, and more.
* **Coding & Tech:** Generate, debug, and explain code across various programming languages.
* **Analysis & Summarization:** Process documents, interpret data, and extract key insights.
* **Problem Solving:** Assist with math, logic, reasoning, and strategic planning.
* **Learning & Translation:** Explain complex topics simply or translate between multiple languages.
Feel free to ask me anything or give me a task to get started!bash
# The endpoint URL varies by region. Update it to match your service region.
curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/responses \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.6-plus",
"input": "Briefly introduce what you can do.",
"enable_thinking": true
}'Response
json
{
"created_at": 1772249518,
"id": "7ad48c6b-3cc4-904f-9284-5f419c6c5xxx",
"model": "qwen3.6-plus",
"object": "response",
"output": [\
{\
"id": "msg_94805179-2801-45da-ac1c-a87e8ea20xxx",\
"summary": [\
{\
"text": "The user is asking for a brief introduction of my capabilities. I will start by recalling the features listed in the system message, ensuring I cover the main points concisely.\n\nFirst, I should mention the enhanced language foundation and architectural efficiency. Next, the upgraded logical reasoning and mathematical capabilities. Visual analysis, including charts and formulas, is a key point. Autonomous agent planning and code generation are also important. Other features include human alignment optimization for better interaction, long-context handling up to 256K tokens, and multilingual support with OCR.\n\nSince the user asked for a \"brief\" overview, I need to be concise. I will group some points together and summarize each capability in a sentence or two, avoiding technical jargon where possible. I'll check the examples in the system message for a suitable structure.\n\nTo make it practical, I'll highlight how these features apply to real tasks, such as handling long documents, solving math problems, analyzing images, and writing code.\n\nI will structure the response as a list of key capabilities with short explanations, starting with a greeting and ending with an offer to help with specific tasks.\n\nMy introduction will identify me as the requested model, qwen3.6-plus.\n\nI will not mention the knowledge cutoff unless it's relevant. Since the current date is 2026 and my knowledge is current as of 2026, this is not an issue.\n\nMy draft will be a concise, friendly, and inviting response that highlights each capability.\n",\
"type": "summary_text"\
}\
],\
"type": "reasoning"\
},\
{\
"content": [\
{\
"annotations": [],\
"text": "I'm **Qwen3.6-plus**, a large language model designed to assist with a wide range of tasks. Here's what I can do: \n\n- **Understand & Generate Text**: Handle complex instructions, creative writing, and multi-step tasks with improved accuracy. \n- **Solve Problems**: Tackle advanced math, logic puzzles, and scientific reasoning with step-by-step clarity. \n- **Analyze Visuals**: Interpret charts, diagrams, formulas, and even extract text from images (OCR). \n- **Plan & Execute**: Break down goals into actionable steps, run code, or interact with tools autonomously. \n- **Code & Debug**: Write, explain, or fix code in multiple programming languages. \n- **Long-Context Mastery**: Process documents, books, or videos up to **256K tokens** without losing key details. \n- **Multilingual Support**: Communicate fluently in **100+ languages**, including low-resource ones. \n\nNeed help with something specific? Just ask!",\
"type": "output_text"\
}\
],\
"id": "msg_35be06c6-ca4d-4f2b-9677-7897e488dxxx",\
"role": "assistant",\
"status": "completed",\
"type": "message"\
}\
],
"parallel_tool_calls": false,
"status": "completed",
"tool_choice": "auto",
"tools": [],
"usage": {
"input_tokens": 54,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens": 662,
"output_tokens_details": {
"reasoning_tokens": 447
},
"total_tokens": 716,
"x_details": [\
{\
"input_tokens": 54,\
"output_tokens": 662,\
"output_tokens_details": {\
"reasoning_tokens": 447\
},\
"total_tokens": 716,\
"x_billing_type": "response_api"\
}\
]
}
}Important
qwen3.7-max, qwen3.7-max-2026-05-20, and qwen3.6-max-preview only support the text API. qwen3.7-max-2026-06-08 supports the multimodal API. The Qwen3.6 and Qwen3.5 series require the multimodal DashScope API. Running the following examples with these models returns a url error. For the correct multimodal API call, see Image and Video Data Processing.
Python
Java
Node.js (HTTP)
Go (HTTP)
C# (HTTP)
PHP (HTTP)
curl
python
import json
import os
from dashscope import Generation
import dashscope
# The following URL is for the Singapore region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
dashscope.base_http_api_url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1"
messages = [\
{"role": "system", "content": "You are a helpful assistant."},\
{"role": "user", "content": "Who are you?"},\
]
response = Generation.call(
# API keys vary by region. To get an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
# If you have not set the environment variable, replace the following line with your Model Studio API key: api_key = "sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
# qwen3.7-max, qwen3.7-max-2026-05-20, and qwen3.6-max-preview only support the text API. qwen3.7-max-2026-06-08 supports the multimodal API. Qwen3.6 and Qwen3.5 series require the multimodal API. Directly replacing the model will cause an error.
model="qwen-plus",
messages=messages,
result_format="message",
)
if response.status_code == 200:
print(response.output.choices[0].message.content)
# To view the full response, uncomment the following line.
# print(json.dumps(response, default=lambda o: o.__dict__, indent=4))
else:
print(f"HTTP status code: {response.status_code}")
print(f"Error code: {response.code}")
print(f"Error message: {response.message}")
print("For more information, see: https://www.alibabacloud.com/help/en/model-studio/error-code")Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!java
import java.util.Arrays;
import java.lang.System;
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.protocol.Protocol;
import com.alibaba.dashscope.utils.JsonUtils;
public class Main {
public static GenerationResult callWithMessage() throws ApiException, NoApiKeyException, InputRequiredException {
// The following URL is for the Singapore region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
Generation gen = new Generation(Protocol.HTTP.getValue(), "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1");
Message systemMsg = Message.builder()
.role(Role.SYSTEM.getValue())
.content("You are a helpful assistant.")
.build();
Message userMsg = Message.builder()
.role(Role.USER.getValue())
.content("Who are you?")
.build();
GenerationParam param = GenerationParam.builder()
// API keys vary by region. To get an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If you have not set the environment variable, replace the following line with your Model Studio API key: .apiKey("sk-xxx")
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
// qwen3.7-max, qwen3.7-max-2026-05-20, and qwen3.6-max-preview only support the text API. qwen3.7-max-2026-06-08 supports the multimodal API. Qwen3.6 and Qwen3.5 series require the multimodal API. Directly replacing the model will cause an error.
.model("qwen-plus")
.messages(Arrays.asList(systemMsg, userMsg))
.resultFormat(GenerationParam.ResultFormat.MESSAGE)
.build();
return gen.call(param);
}
public static void main(String[] args) {
try {
GenerationResult result = callWithMessage();
System.out.println(result.getOutput().getChoices().get(0).getMessage().getContent());
// To view the full response, uncomment the following line.
// System.out.println(JsonUtils.toJson(result));
} catch (ApiException | NoApiKeyException | InputRequiredException e) {
System.err.println("Error message: "+e.getMessage());
System.out.println("For more information, see: https://www.alibabacloud.com/help/en/model-studio/error-code");
}
}
}Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!nodejs
// Requires Node.js v18+
// If you have not set the environment variable, replace the following line with your Model Studio API key: const apiKey = "sk-xxx";
const apiKey = process.env.DASHSCOPE_API_KEY;
const data = {
// qwen3.7-max, qwen3.7-max-2026-05-20, and qwen3.6-max-preview only support the text API. qwen3.7-max-2026-06-08 supports the multimodal API. Qwen3.6 and Qwen3.5 series require the multimodal API. Directly replacing the model will cause an error.
model: "qwen-plus",
input: {
messages: [\
{\
role: "system",\
content: "You are a helpful assistant."\
},\
{\
role: "user",\
content: "Who are you?"\
}\
]
},
parameters: {
result_format: "message"
}
};
async function callApi() {
try {
// The following URL is for the Singapore region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
const response = await fetch('https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/text-generation/generation', {
method: 'POST',
headers: {
'Authorization': `Bearer ${apiKey}`,
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
});
const result = await response.json();
console.log(result.output.choices[0].message.content);
// To view the full response, uncomment the following line.
// console.log(JSON.stringify(result));
} catch (error) {
// For more information, see: https://www.alibabacloud.com/help/en/model-studio/error-code
console.error('Request failed:', error.message);
}
}
callApi();Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!go
package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"log"
"net/http"
"os"
)
func main() {
requestBody := map[string]interface{}{
// qwen3.7-max, qwen3.7-max-2026-05-20, and qwen3.6-max-preview only support the text API. qwen3.7-max-2026-06-08 supports the multimodal API. Qwen3.6 and Qwen3.5 series require the multimodal API. Directly replacing the model will cause an error.
"model": "qwen-plus",
"input": map[string]interface{}{
"messages": []map[string]string{
{
"role": "system",
"content": "You are a helpful assistant.",
},
{
"role": "user",
"content": "Who are you?",
},
},
},
"parameters": map[string]string{
"result_format": "message",
},
}
// Serialize to JSON.
jsonData, _ := json.Marshal(requestBody)
// Create an HTTP client and request.
client := &http.Client{}
// The following URL is for the Singapore region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
req, _ := http.NewRequest("POST", "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/text-generation/generation", bytes.NewBuffer(jsonData))
// Set request headers.
apiKey := os.Getenv("DASHSCOPE_API_KEY")
req.Header.Set("Authorization", "Bearer "+apiKey)
req.Header.Set("Content-Type", "application/json")
// Send the request.
resp, err := client.Do(req)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
// Read the response body.
bodyText, _ := io.ReadAll(resp.Body)
// Parse the JSON and print the content.
var result map[string]interface{}
json.Unmarshal(bodyText, &result)
content := result["output"].(map[string]interface{})["choices"].([]interface{})[0].(map[string]interface{})["message"].(map[string]interface{})["content"].(string)
fmt.Println(content)
// To view the full response, uncomment the following line.
// fmt.Printf("%s\n", bodyText)
}Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!csharp
using System.Net.Http.Headers;
using System.Text;
class Program
{
private static readonly HttpClient httpClient = new HttpClient();
static async Task Main(string[] args)
{
// API keys vary by region. To get an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If you have not set the environment variable, replace the following line with your Model Studio API key: string? apiKey = "sk-xxx";
string? apiKey = Environment.GetEnvironmentVariable("DASHSCOPE_API_KEY");
// Set the request URL and content.
// The following URL is for the Singapore region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
string url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/text-generation/generation";
// qwen3.7-max, qwen3.7-max-2026-05-20, and qwen3.6-max-preview only support the text API. qwen3.7-max-2026-06-08 supports the multimodal API. Qwen3.6 and Qwen3.5 series require the multimodal API. Directly replacing the model will cause an error.
string jsonContent = @"{
""model"": ""qwen-plus"",
""input"": {
""messages"": [\
{\
""role"": ""system"",\
""content"": ""You are a helpful assistant.""\
},\
{\
""role"": ""user"",\
""content"": ""Who are you?""\
}\
]
},
""parameters"": {
""result_format"": ""message""
}
}";
// Send the request and get the response.
string result = await SendPostRequestAsync(url, jsonContent, apiKey);
var jsonResult = System.Text.Json.JsonDocument.Parse(result);
var content = jsonResult.RootElement.GetProperty("output").GetProperty("choices")[0].GetProperty("message").GetProperty("content").GetString();
Console.WriteLine(content);
// To view the full response, uncomment the following line.
// Console.WriteLine(result);
}
private static async Task<string> SendPostRequestAsync(string url, string jsonContent, string? apiKey)
{
using (var content = new StringContent(jsonContent, Encoding.UTF8, "application/json"))
{
// Set request headers.
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// Send the request and get the response.
HttpResponseMessage response = await httpClient.PostAsync(url, content);
// Handle the response.
if (response.IsSuccessStatusCode)
{
return await response.Content.ReadAsStringAsync();
}
else
{
return $"Request failed: {response.StatusCode}";
}
}
}
}Response
json
{
"output": {
"choices": [\
{\
"finish_reason": "stop",\
"message": {\
"role": "assistant",\
"content": "I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!"\
}\
}\
]
},
"usage": {
"total_tokens": 92,
"output_tokens": 66,
"input_tokens": 26
},
"request_id": "09dceb20-ae2e-999b-85f9-xxxxxx"
}php
<?php
// The following URL is for the Singapore region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
$url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/text-generation/generation";
// To get an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
$apiKey = getenv('DASHSCOPE_API_KEY');
$data = [\
// qwen3.7-max, qwen3.7-max-2026-05-20, and qwen3.6-max-preview only support the text API. qwen3.7-max-2026-06-08 supports the multimodal API. Qwen3.6 and Qwen3.5 series require the multimodal API. Directly replacing the model will cause an error.\
"model" => "qwen-plus",\
"input" => [\
"messages" => [\
[\
"role" => "system",\
"content" => "You are a helpful assistant."\
],\
[\
"role" => "user",\
"content" => "Who are you?"\
]\
]\
],\
"parameters" => [\
"result_format" => "message"\
]\
];
$jsonData = json_encode($data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);
curl_setopt($ch, CURLOPT_HTTPHEADER, [\
"Authorization: Bearer $apiKey",\
"Content-Type: application/json"\
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpCode == 200) {
$jsonResult = json_decode($response, true);
$content = $jsonResult['output']['choices'][0]['message']['content'];
echo $content;
// To view the full response, uncomment the following line.
// echo "Model response: " . $response;
} else {
echo "Request failed: " . $httpCode . " - " . $response;
}
curl_close($ch);
?>Response
plaintext
I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!The base URL and API key vary by region. For details, see DashScope and Obtain an API key.
curl
# The following URL is for the Singapore region. Replace {WorkspaceId} with your Workspace ID. URLs vary by region.
curl --location "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"model": "qwen-plus",
"input":{
"messages":[\
{\
"role": "system",\
"content": "You are a helpful assistant."\
},\
{\
"role": "user",\
"content": "Who are you?"\
}\
]
},
"parameters": {
"result_format": "message"
}
}'Response
json
{
"output": {
"choices": [\
{\
"finish_reason": "stop",\
"message": {\
"role": "assistant",\
"content": "I am Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, program, share opinions, play games, and more. If you have any questions or need help, feel free to ask!"\
}\
}\
]
},
"usage": {
"total_tokens": 92,
"output_tokens": 66,
"input_tokens": 26
},
"request_id": "09dceb20-ae2e-999b-85f9-xxxxxx"
}Image and video data processing
Multimodal models process non-text data (images, videos) for tasks like visual question answering and event detection. They differ from text-only models in two ways:
User message construction: Multimodal user messages include text and non-text data such as images and audio.
DashScope SDK interfaces: Use the
MultiModalConversationinterface for the DashScope Python SDK, and theMultiModalConversationclass for the DashScope Java SDK.
For limitations on image and video files, see Image and video understanding.
OpenAI compatible chat completions
DashScope
Python
Node.js
curl
python
from openai import OpenAI
import os
client = OpenAI(
# API keys vary by region. To get an API key: https://www.alibabacloud.com/help/en/model-studio/get-api-key
# If the environment variable is not set, provide your Model Studio API key directly, for example: api_key="sk-xxx"
api_key=os.getenv("DASHSCOPE_API_KEY"),
# This is the endpoint for the Singapore region. Replace {WorkspaceId} with your WorkspaceId. Endpoints vary by region.
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
)
messages = [\
{\
"role": "user",\
"content": [\
{\
"type": "image_url",\
"image_url": {\
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251031/ownrof/f26d201b1e3f4e62ab4a1fc82dd5c9bb.png"\
},\
},\
{"type": "text", "text": "What products are shown in the image?"},\
],\
}\
]
completion = client.chat.completions.create(
model="qwen3.6-plus",
messages=messages,
)
print(completion.choices[0].message.content)nodejs
import OpenAI from "openai";
const openai = new OpenAI(
{
// API keys vary by region. To get an API key: https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If the environment variable is not set, provide your Model Studio API key directly, for example: apiKey: "sk-xxx",
apiKey: process.env.DASHSCOPE_API_KEY,
// This is the endpoint for the Singapore region. Replace {WorkspaceId} with your WorkspaceId. Endpoints vary by region.
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
}
);
let messages = [\
{\
role: "user",\
content: [\
{ type: "image_url", image_url: { "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251031/ownrof/f26d201b1e3f4e62ab4a1fc82dd5c9bb.png" } },\
{ type: "text", text: "What products are shown in the image?" },\
]\
}]
async function main() {
let response = await openai.chat.completions.create({
model: "qwen3.6-plus",
messages: messages
});
console.log(response.choices[0].message.content);
}
main()The 'base_url' and API key are region-specific. See OpenAI-compatible Chat for endpoint URLs and Obtain an API key to get your key.
curl
# This is the endpoint for the Singapore region. Replace {WorkspaceId} with your WorkspaceId. Endpoints vary by region.
curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "qwen3.6-plus",
"messages": [\
{\
"role": "user",\
"content": [\
{\
"type": "image_url",\
"image_url": {\
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251031/ownrof/f26d201b1e3f4e62ab4a1fc82dd5c9bb.png"\
}\
},\
{\
"type": "text",\
"text": "What products are shown in the image?"\
}\
]\
}\
]
}'Python
Java
curl
python
import os
from dashscope import MultiModalConversation
import dashscope
# This is the endpoint for the Singapore region. Replace {WorkspaceId} with your WorkspaceId. Endpoints vary by region.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
messages = [\
{\
"role": "user",\
"content": [\
{\
"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251031/ownrof/f26d201b1e3f4e62ab4a1fc82dd5c9bb.png"\
},\
{"text": "What products are shown in the image?"},\
],\
}\
]
response = MultiModalConversation.call(
# API keys vary by region. To get an API key: https://www.alibabacloud.com/help/en/model-studio/get-api-key
# If the environment variable is not set, provide your Model Studio API key directly, for example: api_key="sk-xxx",
api_key=os.getenv('DASHSCOPE_API_KEY'),
model='qwen3.6-plus', # You can replace this with another multimodal model and modify the messages accordingly.
messages=messages
)
print(response.output.choices[0].message.content[0]['text'])java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.Constants;
public class Main {
static {
// This is the endpoint for the Singapore region. Replace {WorkspaceId} with your WorkspaceId. Endpoints vary by region.
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
private static final String modelName = "qwen3.6-plus"; // You can replace this with another multimodal model and modify the messages accordingly.
public static void MultiRoundConversationCall() throws ApiException, NoApiKeyException, UploadFileException {
MultiModalConversation conv = new MultiModalConversation();
MultiModalMessage userMessage = MultiModalMessage.builder().role(Role.USER.getValue())
.content(Arrays.asList(Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251031/ownrof/f26d201b1e3f4e62ab4a1fc82dd5c9bb.png"),
Collections.singletonMap("text", "What products are shown in the image?"))).build();
List<MultiModalMessage> messages = new ArrayList<>();
messages.add(userMessage);
MultiModalConversationParam param = MultiModalConversationParam.builder()
// API keys vary by region. To get an API key: https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If the environment variable is not set, provide your Model Studio API key directly, for example: .apiKey("sk-xxx")
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.model(modelName)
.messages(messages)
.build();
MultiModalConversationResult result = conv.call(param);
System.out.println(result.getOutput().getChoices().get(0).getMessage().getContent().get(0).get("text"));
}
public static void main(String[] args) {
try {
MultiRoundConversationCall();
} catch (ApiException | NoApiKeyException | UploadFileException e) {
System.out.println(e.getMessage());
}
System.exit(0);
}
}The base URL and API key vary by region. For details, see DashScope and Obtain an API key.
curl
# This is the endpoint for the Singapore region. Replace {WorkspaceId} with your WorkspaceId. Endpoints vary by region.
curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "qwen3.6-plus",
"input":{
"messages":[\
{\
"role": "user",\
"content": [\
{"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251031/ownrof/f26d201b1e3f4e62ab4a1fc82dd5c9bb.png"},\
{"text": "What products are shown in the image?"}\
]\
}\
]
}
}'Asynchronous calls
Asynchronous calls improve throughput for high-concurrency workloads.
OpenAI-compatible chat completions API
DashScope
Python
Java
python
import os
import asyncio
from openai import AsyncOpenAI
import platform
# Create an asynchronous client instance.
client = AsyncOpenAI(
# API keys vary by region. To get an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
# If you have not set the environment variable, replace the following line with your Model Studio API key: api_key="sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
# This is the URL for the Singapore region. Replace {WorkspaceId} with your workspace ID.
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
)
# Define an asynchronous task.
async def task(question):
print(f"Sending question: {question}")
response = await client.chat.completions.create(
messages=[\
{"role": "user", "content": question}\
],
model="qwen-plus", # For a list of models, see https://www.alibabacloud.com/help/en/model-studio/getting-started/models
)
print(f"Model response: {response.choices[0].message.content}")
# Main asynchronous function.
async def main():
questions = ["Who are you?", "What can you do?", "What's the weather like?"]
tasks = [task(q) for q in questions]
await asyncio.gather(*tasks)
if __name__ == '__main__':
# Set the event loop policy.
if platform.system() == 'Windows':
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
# Run the main coroutine.
asyncio.run(main(), debug=False)java
import com.openai.client.OpenAIClientAsync;
import com.openai.client.okhttp.OpenAIOkHttpClientAsync;
import com.openai.models.chat.completions.ChatCompletionCreateParams;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.CompletableFuture;
public class Main {
public static void main(String[] args) {
// Create an OpenAI client to connect to the DashScope-compatible endpoint.
OpenAIClientAsync client = OpenAIOkHttpClientAsync.builder()
// API keys vary by region. To get an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key
// If you have not set the environment variable, replace the following line with your Model Studio API key: .apiKey("sk-xxx")
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
// This is the URL for the Singapore region. Replace {WorkspaceId} with your workspace ID.
.baseUrl("https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1")
.build();
// Define a list of questions.
List<String> questions = Arrays.asList("Who are you?", "What can you do?", "What's the weather like?");
// Create a list of asynchronous tasks.
CompletableFuture<?>[] futures = questions.stream()
.map(question -> CompletableFuture.supplyAsync(() -> {
System.out.println("Sending question: " + question);
// Create ChatCompletion parameters.
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.model("qwen-plus") // Specify the model.
.addSystemMessage("You are a helpful assistant.")
.addUserMessage(question)
.build();
// Send an asynchronous request and handle the response.
return client.chat().completions().create(params)
.thenAccept(chatCompletion -> {
String content = chatCompletion.choices().get(0).message().content().orElse("No content in response");
System.out.println("Model response: " + content);
})
.exceptionally(e -> {
System.err.println("Error: " + e.getMessage());
System.out.println("See the documentation: https://www.alibabacloud.com/help/en/model-studio/error-code");
return null;
});
}).thenCompose(future -> future))
.toArray(CompletableFuture[]::new);
// Wait for all asynchronous operations to complete.
CompletableFuture.allOf(futures).join();
}
}Asynchronous text generation with the DashScope SDK is only supported in Python.
python
# This requires DashScope Python SDK v1.19.0 or later.
import asyncio
import platform
from dashscope.aigc.generation import AioGeneration
import os
import dashscope
# This is the URL for the Singapore region. Replace {WorkspaceId} with your workspace ID.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
# Define an asynchronous task.
async def task(question):
print(f"Sending question: {question}")
response = await AioGeneration.call(
# If you have not set the environment variable, replace the following line with your Model Studio API key: api_key="sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
model="qwen-plus", # For a list of models, see https://www.alibabacloud.com/help/en/model-studio/models
messages=[{"role": "system", "content": "You are a helpful assistant."},\
{"role": "user", "content": question}],
result_format="message",
)
print(f"Model response: {response.output.choices[0].message.content}")
# Main asynchronous function.
async def main():
questions = ["Who are you?", "What can you do?", "What's the weather like?"]
tasks = [task(q) for q in questions]
await asyncio.gather(*tasks)
if __name__ == '__main__':
# Set the event loop policy.
if platform.system() == 'Windows':
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
# Run the main coroutine.
asyncio.run(main(), debug=False)Sample response
Because the calls are asynchronous, the order of the responses may differ from this example.
plaintext
Sending question: Who are you?
Sending question: What can you do?
Sending question: What's the weather like?
Model response: Hello! I'm Qwen, a large-scale language model developed by Tongyi Lab at Alibaba Group. I can help you answer questions and create content, such as writing stories, official documents, emails, and scripts. I can also do logical reasoning, programming, share opinions, play games, and more. If you have any questions or need help, feel free to ask!
Model response: Hello! I am currently unable to access real-time weather information. You can tell me your city or region, and I will do my best to provide you with general weather advice or information. Alternatively, you can use a weather app to check the real-time weather conditions.
Model response: I have many skills, for example:
1. Answering questions: Whether it's academic questions, general knowledge, or professional topics, I can try to help you find answers.
2. Creating text: I can write various types of text, such as stories, official documents, emails, and scripts.
3. Logical reasoning: I can help you solve logical reasoning problems, such as math problems and riddles.
4. Programming: I can provide programming assistance, including code writing, debugging, and optimization.
5. Multilingual support: I support multiple languages, including but not limited to Chinese, English, French, and Spanish.
6. Expressing opinions: I can offer you some perspectives and suggestions to help you make decisions.
7. Playing games: We can play text-based games together, such as riddles or idiom solitaire.
If you have any specific needs or questions, feel free to let me know, and I will do my best to help you!Production use
Building high-quality context
Feeding large amounts of raw data to a model increases costs and can degrade performance due to context window limitations. Context engineering -- dynamically loading precise knowledge -- improves generation quality and efficiency. Key techniques include:
prompt engineering: Design and optimize text prompts to guide the model toward the desired output. For more information, see the Prompt guide for text generation page.
Retrieval-Augmented Generation (RAG): Lets the model answer questions from an external knowledge base such as product documentation or technical manuals.
tool calling: Retrieves real-time information (weather, traffic) or performs actions (API calls, sending emails) on behalf of the model.
memory: Provides long-term and short-term memory so the model can recall context across multi-turn conversations.
Controlling response diversity
The temperature and top_p parameters control the diversity of the generated text. Higher values increase diversity; lower values increase determinism. To isolate the effect of each parameter, adjust only one at a time.
- temperature: Range: [0, 2). Primarily adjusts randomness.
\ - top_p: Range: [0, 1]. Filters responses based on a probability threshold.
The following examples show how parameter settings affect output. Input prompt: "Write a three-sentence short story where the main characters are a cat and a sunbeam."
\ - High diversity (Example:
temperature=0.9): Best for creative writing, brainstorming, or marketing copy.
\
plaintext\
Sunlight slanted across the windowsill, and the orange cat crept toward the bright patch as its fur turned the color of melted honey.\
It reached out and tapped the light, then sank into it as if stepping into a warm pool, and the sunlight flowed up its back in a quiet tide.\
The afternoon grew heavy—curled in drifting gold, the cat heard time melt softly inside its purr.\
```\
\
- **High determinism** (Example: `temperature`=0.1): Best for fact-based question answering, code generation, or legal texts.\
\
\
\
\
\
\
\
\
\
\
\
\
\
\
\
```plaintext\
In the afternoon, an old cat curled on the windowsill and dozed while counting the spots of light.\
Sunlight hopped across its mottled back, like turning the pages of an old photo album.\
Dust rose and fell, as if time whispered: you were once young, and I was once fierce.\
```\
\
\
**How it works**\
\
**temperature**:\
\
- A higher temperature flattens the token probability distribution, making less likely tokens more probable and increasing output randomness.\
\
- A lower temperature sharpens the distribution, making high-probability tokens even more likely and reducing output randomness.\
\
\
**top\_p**:\
\
top\_p (nucleus) sampling selects from the smallest set of tokens whose cumulative probability meets or exceeds the `top_p` threshold. Tokens are sorted by probability and accumulated until the threshold is met, then the next token is randomly sampled from this reduced set.\
\
- A higher top\_p widens the token selection pool, producing more diverse text.\
\
- A lower top\_p narrows the pool, producing more focused and deterministic text.\
\
\
**Example parameter settings for common scenarios**\
\
```python\
# Recommended parameter settings for common scenarios\
SCENARIO_CONFIGS = {\
# Creative writing\
"creative_writing": {\
"temperature": 0.9,\
"top_p": 0.95\
},\
# Code generation\
"code_generation": {\
"temperature": 0.2,\
"top_p": 0.8\
},\
# Factual Q&A\
"factual_qa": {\
"temperature": 0.1,\
"top_p": 0.7\
},\
# Translation\
"translation": {\
"temperature": 0.3,\
"top_p": 0.8\
}\
}\
\
# OpenAI example\
# completion = client.chat.completions.create(\
# model="qwen-plus",\
# messages=[{"role": "user", "content": "Write a poem about the moon"}],\
# **SCENARIO_CONFIGS["creative_writing"]\
# )\
# DashScope example\
# response = Generation.call(\
# # If you have not set an environment variable, replace the following line with your Alibaba Cloud Model Studio API key: api_key = "sk-xxx",\
# api_key=os.getenv("DASHSCOPE_API_KEY"),\
# model="qwen-plus",\
# messages=[{"role": "user", "content": "Write a Python function that determines whether the input n is a prime number. Output code only."}],\
# result_format="message",\
# **SCENARIO_CONFIGS["code_generation"]\
# )\
```\
\
### **More features**\
\
For more complex scenarios, the following features are available:\
\
- multi-turn conversation: For continuous interaction such as follow-up questions or information gathering.\
\
- streaming output: Returns tokens incrementally as they are generated, preventing timeouts for chatbots and real-time code generation.\
\
- deep thinking: Produces higher-quality, more structured answers for complex reasoning or strategic analysis.\
\
- structured output: Constrains responses to a consistent JSON format for programmatic use and data parsing.\
\
- prefix completion: Continues generation from existing text, useful for code completion or long-form writing.\
\
\
## **API reference**\
\
For all parameters, see the OpenAI-compatible API reference and the DashScope API reference.\
\
## **FAQ**\
\
### **Q: Why is the input token count higher than the token count of the text I sent?**\
\
A: When processing a conversation, the system uses a Chat Template to wrap the raw input text, adding control markers such as role identifiers and message boundaries. These system-generated markers are also counted as tokens.\
\
For example, when you send the message `{"role": "user", "content": "Hi"}` to `qwen3.7-max`, the text "Hi" corresponds to only 1 token after tokenization. However, during system processing, the actual full input text is formatted as follows: `<|im_start|>user\nHi<|im_end|>\n<|im_start|>assistant\n<think>`. After tokenization, this full text increases the total input token count to 11.\
\
### **Q: Why can't the Qianwen API analyze webpage links?**\
\
A: The Qianwen API cannot access web page content directly. Instead, use function calling, or a web scraping tool like Python's Beautiful Soup to extract the content and pass it to the model.\
\
### **Q: Response differences:** Qianwen (Web) **vs. Qianwen API**\
\
A: Qianwen (Web) adds features on top of the Qianwen API, including webpage parsing, web search, image creation, and PPT generation. These are not included in the base API, but you can build similar functionality using , function calling.\
\
### **Q: Generating Word, Excel, PDF, or PPT files**\
\
A: No. Text generation models only output plain text. Convert the output to the desired format using your own code or third-party libraries.\
\
Previous: Text generationNext: Multi-turn conversations\
\
Is this page helpful?\
\
\
\
Key concepts\
\
Quick start\
\
Image and video data processing\
\
Asynchronous calls\
\
Production use\
\
Building high-quality context\
\
Controlling response diversity\
\
More features\
\
API reference\
\
FAQ\
\
Q: Why is the input token count higher than the token count of the text I sent?\
\
Q: Why can't the Qianwen API analyze webpage links?\
\
Q: Response differences: Qianwen (Web) vs. Qianwen API\
\
Q: Generating Word, Excel, PDF, or PPT files\
\
\
\
[](https://www.alibabacloud.com/help/en/model-studio/text-generation#top "Back to Top")\
\
Contact Us\
\
\
\
## Sales Support\
\
Live-chat with our sales team or get in touch with a business development professional in your region.\
\
Contact Sales\
\
## Technical Support\
\
Open a ticket and get quick help from our technical team.\
\
Open a Ticket >\
\
## Connect & Report Abuse\
\
We look forward to your suggestion.\
\
Post a Suggestion > Report Abuse >\
\
Chat now with **Alibaba Cloud Customer Service** to assist you in finding the right products and services to meet your needs.\
\
[](https://www.alibabacloud.com/ccim/mobile) [](https://int.alibabacloud.com/m/1000409525/) [](https://wa.me/8613811961093)\
\
\\
\\
Hi, I'm Alibaba Cloud AI Assistant!\\
\\
I can help with questions and solutions.\
\
Why Alibaba Cloud\
\
About Alibaba Cloud\
\
Asia Accelerator\
\
Our Global Network\
\
Global Offices\
\
Trust Center\
\
Case Studies\
\
Analyst Reports\
\
Products & Pricings\
\
Pricing Calculator\
\
ECS\
\
SAS\
\
Model Studio\
\
Database\
\
Security\
\
SMS\
\
Solutions\
\
Financial Services\
\
Retail Services\
\
Media Services\
\
Gaming Services\
\
ISV Solutions\
\
Engage\
\
Developer Community\
\
Partner Network\
\
Startups\
\
Marketplace\
\
Join Alibaba Cloud\
\
Resources & Support\
\
Developer Learning Hub\
\
Documentation Center\
\
Training & Certification\
\
Service Notices\
\
Submit a Ticket\
\
Security Report\
\
Qwen Cloud\
\
Careers About Us Privacy Policy Legal Integrity Compliance Reporting Channel Service Notices Links\
\
© 2009-2026 Copyright by Alibaba Cloud All rights reserved\
\
- Facebook\
- Linkedin\
- Twitter\
- YouTube\
- TikTok\
- contact.us@alibabacloud.com\
- Call Us Now\
- Discord\
\
© 2009-2026 Copyright by Alibaba Cloud All rights reserved\
\
Careers About Us Privacy Policy Legal Integrity Compliance Reporting Channel Service Notices Links\
\
```\
\