Model reference · open weights

Intern-S1-Pro

LLMs internlm Vision + text 2 builds Open weights 76k dl/mo

Intern-S1-Pro is an open-weight language model from internlm. Intern-S1-Pro (FP8) weighs 919 GB; the smallest configuration that runs it is 8× H200 141 GB.

  • Intern-S1-Pro is a trillion-scale multimodal scientific reasoning model developed by internlm that uses a mixture-of-experts architecture with 512 experts and 22 billion activated parameters per token.
  • It is designed for image-text-to-text tasks and supports advanced scientific reasoning across domains such as chemistry, materials, and life science, as well as time-series modeling.
  • The model is released under the Apache 2.0 license.

Summary of the internlm/Intern-S1-Pro model card, 2026-10-01

What it is

Released byinternlm
Released2026-02-02
VRAM919 GB for the weights

What it runs on

Memory and cards for Intern-S1-Pro (FP8)

919 GBweights, file size
193 MBcache per 1K tokens
3.0 GBruntime overhead, at least
262,144 tokenscontext max
CardRequests at onceContext maxMemory
8K each32K each
RTX 3060 12 GB … 8× A100 80 GB
14 smaller cards
———
8× H200 141 GB
tensor parallel
328all 256K138 GB a card
8× B200 180 GB
tensor parallel
11829all 256K176 GB a card
Memory needed at each load
Requests at once8K tokens each32K tokens each
1924 GB929 GB
5930 GB954 GB
8935 GB973 GB
16947 GB1023 GB
32973 GB1124 GB
641023 GB1326 GB

One card, with vLLM's small-card settings.

Builds

Sizes, precisions & builds

BuildParamsPrecisionWeightsSmallest setup
Intern-S1-Pro (above) ↗ —FP8 919 GB8× H200 141 GB
Intern-S1-Pro-BF16 ↗ 917.0BBF16 1834 GBnone of the reference configurations

From the model card

What internlm says about Intern-S1-Pro

Read the model card

Intern-S1-Pro

💻Github Repo • 🤗Model Collections • 📜Technical Report • 💬Online Chat

Introduction

We introduce Intern-S1-Pro, a trillion-scale MoE multimodal scientific reasoning model. Intern-S1-Pro scales to 1T total parameters with 512 experts, activating 8 experts per token (22B activated parameters). The model delivers top-tier performance on advanced reasoning benchmarks and achieves leading results across key AI4Science domains (chemistry, materials, life-science, earth, etc.), while maintaining strong general multimodal and text capabilities.

Features

  • State-of-the-art scientific reasoning, competitive with leading closed-source models across AI4Science tasks.
  • Strong general multimodal performance on various benchmarks.
  • Trillion-scale MoE training efficiency with STE routing (dense gradient for router training) and grouped routing for stable convergence and balanced expert parallelism.
  • Fourier Position Encoding (FoPE) + upgraded time-series modeling for better physical signal representation; supports long, heterogeneous time-series (10^0–10^6 points).

Performance

We evaluate the Intern-S1-Pro on various benchmarks, including general datasets and scientific datasets. We report the performance comparison with the recent VLMs and LLMs below.

Note: Underline means the best performance among open-sourced models, Bold indicates the best performance among all models.

We use the OpenCompass and VLMEvalKit to evaluate all models.

Quick Start

Sampling Parameters

We recommend using the following hyperparameters to ensure better results

top_p = 0.95
top_k = 50
min_p = 0.0
temperature = 0.8

Serving

[!IMPORTANT] Running a trillion-parameter model using the native Hugging Face forward method is challenging. We strongly recommend using an LLM inference engine (such as LMDeploy, vLLM, or SGLang) to host Intern-S1-Pro and accessing the model via API.

Intern-S1-Pro can be deployed using any of the following LLM inference frameworks:

  • LMDeploy
  • vLLM
  • SGLang

Detailed deployment examples for these frameworks are available in the Model Deployment Guide.

Advanced Usage

Tool Calling

Many Large Language Models (LLMs) now feature Tool Calling, a powerful capability that allows them to extend their functionality by interacting with external tools and APIs. This enables models to perform tasks like fetching up-to-the-minute information, running code, or calling functions within other applications.

A key advantage for developers is that a growing number of open-source LLMs are designed to be compatible with the OpenAI API. This means you can leverage the same familiar syntax and structure from the OpenAI library to implement tool calling with these open-source models. As a result, the code demonstrated in this tutorial is versatile—it works not just with OpenAI models, but with any model that follows the same interface standard.

To illustrate how this works, let's dive into a practical code example that uses tool calling to get the latest weather forecast (based on lmdeploy api server).


from openai import OpenAI
import json

def get_current_temperature(location: str, unit: str = "celsius"):
    """Get current temperature at a location.

    Args:
        location: The location to get the temperature for, in the format "City, State, Country".
        unit: The unit to return the temperature in. Defaults to "celsius". (choices: ["celsius", "fahrenheit"])

    Returns:
        the temperature, the location, and the unit in a dict
    """
    return {
        "temperature": 26.1,
        "location": location,
        "unit": unit,
    }

def get_temperature_date(location: str, date: str, unit: str = "celsius"):
    """Get temperature at a location and date.

    Args:
        location: The location to get the temperature for, in the format "City, State, Country".
        date: The date to get the temperature for, in the format "Year-Month-Day".
        unit: The unit to return the temperature in. Defaults to "celsius". (choices: ["celsius", "fahrenheit"])

    Returns:
        the temperature, the location, the date and the unit in a dict
    """
    return {
        "temperature": 25.9,
        "location": location,
        "date": date,
        "unit": unit,
    }

def get_function_by_name(name):
    if name == "get_current_temperature":
        return get_current_temperature
    if name == "get_temperature_date":
        return get_temperature_date

tools = [{
    'type': 'function',
    'function': {
        'name': 'get_current_temperature',
        'description': 'Get current temperature at a location.',
        'parameters': {
            'type': 'object',
            'properties': {
                'location': {
                    'type': 'string',
                    'description': 'The location to get the temperature for, in the format \'City, State, Country\'.'
                },
                'unit': {
                    'type': 'string',
                    'enum': [
                        'celsius',
                        'fahrenheit'
                    ],
                    'description': 'The unit to return the temperature in. Defaults to \'celsius\'.'
                }
            },
            'required': [
                'location'
            ]
        }
    }
}, {
    'type': 'function',
    'function': {
        'name': 'get_temperature_date',
        'description': 'Get temperature at a location and date.',
        'parameters': {
            'type': 'object',
            'properties': {

Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms