qwen/qwen3-coder-30b-a3b-instructQwen3 Coder 30B A3B Instruct (qwen/qwen3-coder-30b-a3b-instruct) is a qwen3_moe 30.5B-parameter model from Qwen with a 160,000-token context window and 32,768 max output tokens, priced at $0.07/1M input and $0.27/1M output tokens. Available via the haimaker.ai OpenAI-compatible API.
Qwen3 Coder 30B A3b Instruct is a chat model by Qwen. It has 30.5B parameters. It supports a 160K token context window. Supports function calling.
blocks in its output. Meanwhile, specifying enable_thinking=False is no longer required.
For more details, including benchmark evaluation, hardware requirements, and inference performance, please refer to our blog, GitHub, and Documentation.
We advise you to use the latest version of transformers.
With transformers<4.51.0, you will encounter the following error:KeyError: 'qwen3_moe'
The following contains a code snippet illustrating how to use the model generate content based on given inputs.
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Qwen/Qwen3-Coder-30B-A3B-Instruct"
load the tokenizer and the model
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
prepare the model input
prompt = "Write a quick sort algorithm."
messages = [
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
conduct text completion
generated_ids = model.generate(
**model_inputs,
max_new_tokens=65536
)
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist()
content = tokenizer.decode(output_ids, skip_special_tokens=True)
print("content:", content)
Note: If you encounter out-of-memory (OOM) issues, consider reducing the context length to a shorter value, such as 32,768.
For local use, applications such as Ollama, LMStudio, MLX-LM, llama.cpp, and KTransformers have also supported Qwen3.
Qwen3-Coder excels in tool calling capabilities.
You can simply define or use any tools as following example.
# Your tool implementation
def square_the_number(num: float) -> dict:
return num ** 2
Define Tools
tools=[
{
"type":"function",
"function":{
"name": "square_the_number",
"description": "output the square of the number.",
"parameters": {
"type": "object",
"required": ["input_num"],
"properties": {
'input_num': {
'type': 'number',
'description': 'input_num is a number that will be squared'
}
},
}
}
}
]
import OpenAI
Define LLM
client = OpenAI(
# Use a custom endpoint compatible with OpenAI API
base_url='http://localhost:8000/v1', # api_base
api_key="EMPTY"
)
messages = [{'role': 'user', 'content': 'square the number 1024'}]
completion = client.chat.completions.create(
messages=messages,
model="Qwen3-Coder-30B-A3B-Instruct",
max_tokens=65536,
tools=tools,
)
print(completion.choice[0])
To achieve optimal performance, we recommend the following settings:
, top_p=0.8, top_k=20, repetition_penalty=1.05`.If you find our work helpful, feel free to give us a cite.
@misc{qwen3technicalreport,
title={Qwen3 Technical Report},
author={Qwen Team},
year={2025},
eprint={2505.09388},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2505.09388},
}| Mode | chat |
| Context Window | 160,000 tokens |
| Max Output | 32,768 tokens |
| Function Calling | Supported |
| Vision | - |
| Reasoning | - |
| Web Search | - |
| Url Context | - |
| Architecture | Qwen3MoeForCausalLM |
| Model Type | qwen3_moe |
| Library | transformers |
from openai import OpenAI
client = OpenAI(
base_url="https://api.haimaker.ai/v1",
api_key="YOUR_API_KEY",
)
response = client.chat.completions.create(
model="qwen/qwen3-coder-30b-a3b-instruct",
messages=[
{"role": "user", "content": "Hello, how are you?"}
],
)
print(response.choices[0].message.content)Qwen3 Coder 30B A3B Instruct (qwen/qwen3-coder-30b-a3b-instruct) has a 160,000-token context window and supports up to 32,768 output tokens per request.
Qwen3 Coder 30B A3B Instruct is priced at $0.07 per 1M input tokens and $0.27 per 1M output tokens when accessed via the haimaker.ai OpenAI-compatible API.
Qwen3 Coder 30B A3B Instruct supports function calling.
Send requests to https://api.haimaker.ai/v1/chat/completions with model "qwen/qwen3-coder-30b-a3b-instruct" using any OpenAI-compatible SDK. Authentication uses a Bearer API key from https://app.haimaker.ai.
OpenAI-compatible endpoint. Start building in minutes.