All Products
Search
Document Center

Platform For AI:Penerapan model bahasa besar di PAI-EAS

Last Updated:Aug 15, 2026

PAI-EAS menyediakan solusi satu atap untuk menerapkan model bahasa besar (LLM) populer seperti DeepSeek dan Qwen hanya dengan satu klik, sehingga menyederhanakan tugas-tugas kompleks seperti konfigurasi lingkungan, penyetelan performa, dan manajemen biaya.

Memulai dengan cepat: Terapkan model open source

Contoh ini menunjukkan cara menerapkan model open source Qwen3-8B. Proses yang sama berlaku untuk model lain yang didukung.

Langkah 1: Buat layanan

  1. Masuk ke Konsol PAI. Pilih wilayah di bagian atas halaman. Kemudian, pilih ruang kerja yang diinginkan dan klik Elastic Algorithm Service (EAS).

  2. Klik Deploy Service. Di area Scenario-based Model Deployment, klik LLM Deployment.

  3. Konfigurasikan parameter utama berikut:

    Parameter

    Nilai

    Model Settings

    Pilih Public Model, lalu cari dan pilih Qwen3-8B.

    Inference Engine

    Pilih vLLM (Direkomendasikan, kompatibel dengan API OpenAI).

    Deployment Template

    Pilih Single-Node. Sistem secara otomatis mengisi parameter yang direkomendasikan, seperti tipe instans dan image, berdasarkan templat.

  4. Klik Deploy. Penerapan layanan memerlukan waktu sekitar 5 menit. Ketika status layanan berubah menjadi Running, penerapan berhasil.

    Catatan

    Jika penerapan layanan gagal, lihat Masalah penerapan dan status layanan untuk troubleshooting.

Langkah 2: Verifikasi layanan

Setelah diterapkan, gunakan debugging online untuk memverifikasi bahwa layanan berjalan dengan benar.

  1. Klik nama layanan untuk membuka halaman detailnya, lalu beralih ke tab Online Debugging.

  2. Konfigurasikan parameter permintaan berikut:

    Parameter

    Nilai

    Request method

    POST

    URL path

    Masukkan path URL lengkap dalam format /api/predict/{service_name}/v1/chat/completions, di mana {service_name} adalah nama layanan yang telah Anda terapkan. Contoh: /api/predict/llm_qwen3_8b_test/v1/chat/completions.

    Body

    {
      "model": "Qwen3-8B",
      "messages": [
        {"role": "user", "content": "Hello!"}
      ],
      "max_tokens": 1024
    }

    Headers

    Pastikan permintaan mencakup Content-Type: application/json.

  3. Klik Send Request. Anda seharusnya menerima respons yang berisi balasan dari model.

Jika permintaan mengembalikan kode status 200 dan respons JSON bertipe chat.completion, layanan telah diterapkan dan berjalan dengan benar. Badan respons berisi balasan model di bidang content.

Panggil API

Sebelum memanggil layanan, buka tab View Endpoint Information pada halaman detail layanan untuk mendapatkan titik akhir dan token.

Contoh berikut menunjukkan cara memanggil API layanan:

cURL

curl -X POST <EAS_ENDPOINT>/v1/chat/completions \
    -H "Content-Type: application/json" \
    -H "Authorization: <EAS_TOKEN>" \
    -d '{
        "model": "<model_name>",
        "messages": [
        {
            "role": "system",
            "content": "You are a helpful assistant."
        },
        {
            "role": "user",
            "content": "hello"
        }
        ],
        "max_tokens":1024,
        "temperature": 0.7,
        "top_p": 0.8,
        "stream":true
    }'

Pada kode di atas, ganti parameter berikut:

  • Ganti <EAS_ENDPOINT> dan <EAS_TOKEN> dengan titik akhir dan token layanan yang telah Anda terapkan.

  • Ganti <model_name> dengan nama model. Untuk vLLM atau SGLang, Anda dapat memperoleh nama model dari API daftar model di <EAS_ENDPOINT>/v1/models.

    curl -X GET <EAS_ENDPOINT>/v1/models -H "Authorization: <EAS_TOKEN>"

OpenAI SDK

Kami merekomendasikan menggunakan SDK Python resmi untuk berinteraksi dengan layanan. Pastikan Anda telah menginstal OpenAI SDK: pip install openai.

from openai import OpenAI

# 1. Konfigurasikan klien.
# Ganti <EAS_TOKEN> dengan token layanan yang telah Anda terapkan.
openai_api_key = "<EAS_TOKEN>"
# Ganti <EAS_ENDPOINT> dengan titik akhir layanan yang telah Anda terapkan.
openai_api_base = "<EAS_ENDPOINT>/v1"

client = OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

# 2. Dapatkan nama model.
# Untuk BladeLLM, setel model = "". BladeLLM tidak memerlukan parameter model
# dan tidak mendukung pengambilan nama model menggunakan client.models.list().
# Setel ke string kosong untuk memenuhi persyaratan parameter wajib dari OpenAI SDK.
models = client.models.list()
model = models.data[0].id
print(model)

# 3. Kirim permintaan chat.
# Output streaming (stream=True) dan non-streaming (stream=False) didukung.
stream = True
chat_completion = client.chat.completions.create(
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "hello"},          
    ],
    model=model,
    top_p=0.8,
    temperature=0.7,
    max_tokens=1024,
    stream=stream,
)

if stream:
    for chunk in chat_completion:
        print(chunk.choices[0].delta.content, end="")
else:
    result = chat_completion.choices[0].message.content
    print(result)

Python requests

Jika Anda tidak ingin menambahkan dependensi pada OpenAI SDK, Anda dapat menggunakan library requests.

import json
import requests

# Ganti <EAS_ENDPOINT> dengan titik akhir layanan yang telah Anda terapkan.
EAS_ENDPOINT = "<EAS_ENDPOINT>"
# Ganti <EAS_TOKEN> dengan token layanan yang telah Anda terapkan.
EAS_TOKEN = "<EAS_TOKEN>"
# Ganti <model_name> dengan nama model. Anda dapat memperolehnya dari API <EAS_ENDPOINT>/v1/models.
# Untuk BladeLLM, API ini tidak didukung. Anda dapat menghilangkan bidang "model" atau mengaturnya ke "".
model = "<model_name>"

url = f"{EAS_ENDPOINT}/v1/chat/completions"
headers = {
    "Content-Type": "application/json",
    "Authorization": EAS_TOKEN,
}

stream = True
messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "hello"},
]

req = {
    "messages": messages,
    "stream": stream,
    "temperature": 0.7,
    "top_p": 0.8,
    "max_tokens": 1024,
    "model": model,
}
response = requests.post(
    url,
    json=req,
    headers=headers,
    stream=stream,
)

if stream:
    for chunk in response.iter_lines(chunk_size=8192, decode_unicode=False):
        msg = chunk.decode("utf-8")
        # Kode berikut memproses respons streaming berformat Server-Sent Events (SSE).
        if msg.startswith("data:"):
            info = msg[6:]
            if info == "[DONE]":
                break
            else:
                resp = json.loads(info)
                if resp["choices"][0]["delta"].get("content") is not None:
                    print(resp["choices"][0]["delta"]["content"], end="", flush=True)
else:
    resp = json.loads(response.text)
    print(resp["choices"][0]["message"]["content"])

Buat UI web lokal

Gradio adalah library UI Python yang membantu Anda membangun antarmuka interaktif untuk model dengan cepat. Ikuti langkah-langkah berikut untuk menjalankan UI web Gradio secara lokal.

  1. Unduh kode

    Tautan GitHub | Tautan OSS

  2. Siapkan lingkungan

    Diperlukan Python 3.10 atau versi lebih baru, dan Anda harus menginstal dependensi dengan menjalankan pip install openai gradio.

  3. Jalankan aplikasi web

    Di terminal, jalankan perintah berikut. Ganti <EAS_ENDPOINT> dan <EAS_TOKEN> dengan titik akhir dan token layanan yang telah diterapkan.

    python webui_client.py --eas_endpoint "<EAS_ENDPOINT>" --eas_token "<EAS_TOKEN>"
  4. Setelah startup berhasil, URL lokal akan ditampilkan (biasanya http://127.0.0.1:7860). Buka URL ini di browser untuk mengaksesnya.

Integrasikan dengan aplikasi pihak ketiga

Anda dapat mengintegrasikan layanan PAI-EAS dengan berbagai klien dan alat pengembangan yang mendukung API OpenAI. Pengaturan konfigurasi utamanya adalah titik akhir layanan, token, dan nama model.

Dify

  1. Instal penyedia model yang kompatibel dengan OpenAI-API

    Klik avatar Anda di pojok kanan atas dan pilih Settings. Di panel kiri, pilih Model Providers. Jika OpenAI-API-compatible tidak ada di Model List, temukan di daftar di bawah dan klik Install.

  2. Tambahkan model

    Klik Add Model di pojok kanan bawah kartu OpenAI-API-compatible dan konfigurasikan parameter berikut:

    • Model type: Pilih LLM.

    • Model name: Untuk penerapan vLLM, kirim permintaan GET ke titik akhir /v1/models untuk mendapatkan namanya. Untuk contoh ini, masukkan Qwen3-8B.

    • API key: Masukkan token layanan PAI-EAS Anda.

    • API endpoint URL: Masukkan titik akhir publik layanan PAI-EAS Anda dan tambahkan /v1 di akhirnya.

  3. Uji integrasi

    1. Di halaman utama Dify, klik Create Blank App, pilih tipe Chatflow, masukkan nama aplikasi dan informasi lainnya, lalu klik Create.

    2. Klik node LLM, pilih model yang telah Anda tambahkan, dan atur konteks serta prompt. Pilih Qwen3-8B CHAT dari kategori OpenAI-API-compatible. Di prompt SYSTEM, masukkan deskripsi peran dan referensikan variabel konteks sys.query. Di area USER, tambahkan variabel sys.query dan sys.files. Anda dapat menyesuaikan parameter model seperti Max Tokens (default 512), Presence Penalty, dan Thinking Mode sesuai kebutuhan.

    3. Klik Preview di pojok kanan atas dan masukkan pertanyaan.

      Bot memproses pertanyaan melalui workflow dan mengembalikan balasan. Bagian atas area percakapan menampilkan status Deep thinking dan waktu yang berlalu.

Chatbox

  1. Buka Chatbox untuk mengunduh dan menginstal klien untuk perangkat Anda, atau klik Launch Web App untuk versi web. Contoh ini menggunakan macOS M3.

  2. Tambahkan penyedia model. Klik Settings, tambahkan penyedia model, masukkan nama seperti pai, dan pilih OpenAI API Compatible sebagai mode API.

  3. Pilih penyedia PAI dan konfigurasikan parameter berikut:

    • API key: Masukkan token layanan PAI-EAS Anda.

    • API host: Masukkan titik akhir publik layanan PAI-EAS Anda dan tambahkan /v1 di akhirnya.

    • API path: Biarkan bidang ini kosong.

    • Model: Klik Get untuk menambahkan model. Mesin inferensi BladeLLM tidak mendukung pengambilan model melalui API. Jika Anda menggunakan BladeLLM, tambahkan model secara manual dengan mengklik New.

  4. Uji chat. Klik New Chat dan pilih layanan model di pojok kanan bawah kotak input teks.

    Bagian atas antarmuka chat menampilkan prompt sistem, seperti You are a helpful assistant.. Masukkan pertanyaan seperti "Who are you?" di kotak teks dan kirim. Area balasan asisten menampilkan bagian Deep thinking yang dikompresi dengan waktu berpikir, diikuti oleh respons model.

Cherry Studio

LangChain

LangChain adalah framework Python umum untuk membangun aplikasi LLM. Karena layanan PAI-EAS kompatibel dengan API OpenAI, Anda dapat langsung memanggil layanan tersebut dengan langchain_openai.ChatOpenAI, misalnya, untuk menyusun templat prompt menjadi rantai.

  1. Instal dependensi

    pip install langchain langchain-openai
  2. Konfigurasikan model. Konfigurasikan ChatOpenAI dengan parameter berikut:

    • base_url: Masukkan titik akhir publik layanan PAI-EAS Anda dan tambahkan /v1 di akhirnya.

    • api_key: Masukkan token layanan PAI-EAS Anda.

    • model: Masukkan nama model. Untuk penerapan vLLM, kirim permintaan GET ke titik akhir /v1/models untuk mendapatkan namanya. Untuk contoh ini, masukkan Qwen3-8B.

    from langchain_openai import ChatOpenAI
    
    llm = ChatOpenAI(
        base_url="<EAS_ENDPOINT>/v1",
        api_key="<EAS_TOKEN>",
        model="<model_name>"
    )
    Penting

    Anda harus menambahkan /v1 ke base_url. Jika Anda memasukkan titik akhir publik layanan PAI-EAS Anda tanpa /v1, pemanggilan akan mengembalikan 404.

  3. Pemanggilan rantai. Anda dapat menyusun model dengan ChatPromptTemplate menggunakan operator |:

    from langchain_core.prompts import ChatPromptTemplate
    
    prompt = ChatPromptTemplate.from_messages([
        ("system", "You are a helpful assistant."),
        ("user", "{input}")
    ])
    
    chain = prompt | llm
    response = chain.invoke({"input": "Who are you?"})
    print(response.content)

Penagihan

Biaya mencakup, namun tidak terbatas pada hal-hal berikut. Untuk informasi selengkapnya, lihat Penagihan PAI-EAS.

  • Biaya komputasi: Ini adalah biaya utama. Saat membuat layanan PAI-EAS, pilih sumber daya pay-as-you-go atau subscription sesuai kebutuhan Anda.

  • Biaya penyimpanan: Jika Anda menggunakan model kustom, file model disimpan di Object Storage Service (OSS), yang mengenakan biaya penyimpanan.

Penggunaan produksi

Pilih model yang tepat

  1. Tentukan skenario aplikasi Anda:

    • Percakapan umum: Selalu pilih model yang telah disesuaikan untuk instruksi (instruction-tuned), bukan model dasar, agar model memahami dan mengikuti instruksi Anda.

    • Generasi Kode: Pilih model khusus kode, seperti seri Qwen3-Coder, karena biasanya jauh lebih unggul dibanding model tujuan umum dalam tugas terkait kode.

    • Tugas spesifik domain: Jika tugas Anda sangat spesifik, seperti di bidang keuangan atau hukum, pertimbangkan untuk mencari model yang telah difine-tuning untuk domain tersebut, atau lakukan fine-tuning sendiri pada model tujuan umum.

  2. Seimbangkan performa dan biaya: Model yang lebih besar umumnya lebih mumpuni tetapi memerlukan lebih banyak sumber daya komputasi dan memiliki biaya inferensi yang lebih tinggi. Mulailah dengan model yang lebih kecil, seperti model 7B, untuk validasi. Jika performanya tidak memenuhi kebutuhan Anda, coba model yang lebih besar.

  3. Merujuk pada benchmark otoritatif: Anda dapat berkonsultasi dengan leaderboard seperti OpenCompass dan LMSys Chatbot Arena. Leaderboard ini mengevaluasi model pada berbagai dimensi, termasuk penalaran, pengkodean, dan matematika, serta dapat memberikan panduan berharga untuk pemilihan model.

Pilih mesin inferensi yang tepat

  • vLLM/SGLang: Sebagai pilihan utama di komunitas open-source, keduanya menawarkan dukungan model yang luas serta dokumentasi dan contoh komunitas yang ekstensif, sehingga mudah diintegrasikan dan ditroubleshoot.

  • BladeLLM: Mesin inferensi yang dikembangkan oleh tim Alibaba Cloud PAI. Dioptimalkan secara mendalam untuk model tertentu, terutama seri Qwen, dan dapat mencapai performa lebih tinggi serta penggunaan memori GPU lebih rendah.

Optimasi inferensi

  • Terapkan LLM dengan routing cerdas: Mendistribusikan permintaan secara dinamis berdasarkan metrik real-time seperti throughput token dan penggunaan memori GPU. Pendekatan ini menyeimbangkan alokasi daya komputasi dan memori di seluruh instans inferensi, cocok untuk penerapan dengan beberapa instans inferensi dan beban permintaan yang tidak merata. Hal ini meningkatkan pemanfaatan sumber daya kluster dan stabilitas sistem.

  • Terapkan model Mixture of Experts (MoE) menggunakan expert parallelism dan pemisahan PD: Untuk model Mixture of Experts (MoE), pendekatan ini menggunakan teknik seperti expert parallelism (EP) dan pemisahan Prefill-Decode (PD) untuk meningkatkan throughput inferensi dan mengurangi biaya penerapan.

FAQ

Q: Layanan macet di status Pending

Ikuti langkah-langkah berikut untuk troubleshooting masalah ini:

  1. Periksa status instans: Di halaman daftar layanan, klik nama layanan untuk membuka halaman detail. Di bagian Service Instance, periksa status instans. Jika menampilkan insufficient resources, kelompok sumber daya publik saat ini tidak memiliki kapasitas yang cukup.

  2. Solusi (berdasarkan prioritas):

    1. Opsi 1: Ubah tipe instans. Kembali ke halaman penerapan dan pilih model GPU yang berbeda.

    2. Solusi 2: Gunakan sumber daya khusus. Untuk Resource Type, pilih kelompok sumber daya EAS untuk menggunakan sumber daya khusus (kelompok sumber daya harus dibuat terlebih dahulu).

  3. Langkah pencegahan:

    1. Buat kelompok sumber daya khusus untuk menghindari keterbatasan sumber daya publik.

    2. Saat jam sibuk, uji di beberapa wilayah.

Q: Kesalahan pemanggilan

  1. Pemanggilan API mengembalikan kesalahan berikut: Unsupported Media Type: Only 'application/json' is allowed

    Pastikan header permintaan berisi Content-Type: application/json.

  2. Pemanggilan API mengembalikan kesalahan berikut: The model '<model_name>' does not exist.

    Mesin inferensi vLLM mengharuskan bidang model ditentukan dengan benar. Anda dapat memperoleh nama model dengan memanggil titik akhir /v1/models menggunakan permintaan GET.

Untuk pertanyaan lainnya, lihat FAQ EAS.