All Products
Search
Document Center

Platform For AI:Aktifkan tracing untuk aplikasi LLM di EAS

Last Updated:Mar 24, 2026

Aktifkan distributed tracing untuk memantau kinerja aplikasi LLM, memvisualisasikan rantai panggilan, dan mengidentifikasi bottleneck.

Ikhtisar

Aplikasi LLM sering menghadapi output yang tidak dapat diprediksi, rantai panggilan yang kompleks, bottleneck kinerja, serta kurangnya observabilitas. Tracing EAS mengatasi tantangan ini melalui integrasi dengan ARMS.

Tracing menyediakan:

  • Visualisasi rantai panggilan: Memvisualisasikan seluruh jalur permintaan dengan log yang jelas.

  • Pemantauan kinerja: Melacak waktu respons, konsumsi token, dan jumlah error untuk mengidentifikasi bottleneck.

  • Identifikasi masalah: Menggunakan Trace ID untuk menemukan masalah dan melakukan analisis akar penyebab dengan informasi kontekstual.

  • Alat evaluasi: Memverifikasi akurasi dan keandalan output aplikasi LLM berdasarkan data rantai panggilan.

Konsep utama

  • Trace

    Jalur eksekusi lengkap dari sebuah permintaan dalam sistem terdistribusi, terdiri dari beberapa span. Setiap trace memiliki TraceID unik. Trace memvisualisasikan alur permintaan dan membantu mengidentifikasi bottleneck kinerja atau sumber error.

  • Span

    Unit dasar dalam trace yang merepresentasikan operasi tertentu. Mencatat nama operasi, waktu mulai, dan waktu selesai.

  • Python probe

    Alat yang secara otomatis mengumpulkan data rantai panggilan dan metrik kinerja dari aplikasi Python. Instal Python probe saat menyebar layanan EAS untuk mengaktifkan tracing.

  • Evaluasi

    Menilai jawaban aplikasi LLM dalam berbagai dimensi. Hubungi manajer bisnis Anda untuk mengonfirmasi nama dimensi evaluasi spesifik.

Batasan

Fitur ini hanya mendukung aplikasi LLM berbasis Python yang dikembangkan dengan LangChain, LlamaIndex, atau DashScope.

Prasyarat

Langkah 1: Siapkan kode contoh

Panduan ini menggunakan layanan prediksi sederhana untuk menunjukkan penyebaran layanan, pemanggilan, dan penampilan trace.

Contoh ini menggunakan API DashScope dengan framework Flask untuk membangun layanan web yang memanggil metode Generation.call untuk generasi teks. Sebelum menggunakan DashScope, selesaikan proses aktivasi dan peroleh Kunci API. Untuk informasi lebih lanjut, lihat Panggil API Tongyi Qianwen untuk pertama kali. Atur DASHSCOPE_API_KEY sebagai variabel lingkungan saat menyebar layanan agar akses API berjalan lancar. Kode berikut menunjukkan contoh file app.py:

import os
import json
import flask
import dashscope

app = flask.Flask(__name__)

def run_query(query):
    """Jalankan kueri."""

    response = dashscope.Generation.call(
        api_key=os.getenv('DASHSCOPE_API_KEY'),
        model="qwen-plus",
        messages=[
            {'role': 'system', 'content': 'You are a helpful assistant.'},
            {'role': 'user', 'content': query}
        ],
        result_format='message'
    )
    return response


@app.route('/api/trace_demo', methods=['POST'])
def query():
    """
    Contoh data POST:
    {
        "query": "capital of china"
    }
    """
    data = flask.request.get_data("utf-8")
    query = json.loads(data).get('query', '')
    response = run_query(query)
    return response.output.choices[0].message.content


if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8000)  

Langkah 2: Aktifkan tracing

Saat menyebar layanan EAS, aktifkan sakelar Tracing di bagian Service Features. Ikuti petunjuk untuk menentukan apakah gambar Anda memiliki komponen tracing bawaan. Jika diperlukan, konfigurasikan perintah untuk menginstal probe dan menjalankan aplikasi dengan ARMS Python probe. Untuk informasi lebih lanjut, lihat Instal Python probe secara manual.

  • Gunakan gambar dengan komponen tracing bawaan: Aktifkan sakelar Tracing untuk mengaktifkan tracing. Tidak diperlukan konfigurasi tambahan.

  • Gunakan gambar tanpa komponen tracing bawaan: Aktifkan sakelar Tracing dan konfigurasikan pustaka pihak ketiga serta perintah startup sesuai petunjuk.

    Parameter

    Deskripsi

    Command to Run

    Tambahkan aliyun-bootstrap -a install && aliyun-instrument python app.py. Ini menginstal probe dan menjalankan aplikasi dengan ARMS Python probe. app.py adalah file utama yang dikonfigurasi dalam gambar untuk menyediakan layanan prediksi. Anda juga harus menambahkan aliyun-bootstrap ke konfigurasi pustaka pihak ketiga untuk mengunduh installer probe dari PyPI.

    Third-party Library Settings

    Tambahkan aliyun-bootstrap untuk mengunduh installer probe dari PyPI.

image

Topik ini menggunakan gambar tanpa komponen tracing bawaan dan kode contoh sebagai contoh. Tabel berikut menjelaskan parameter utama untuk menyebar layanan EAS kustom. Untuk instruksi, lihat Sebar layanan di konsol. Setelah penyebaran:

Parameter

Deskripsi

Environment Information

Deployment Method

Pilih Image-based Deployment.

Image Configuration

Topik ini menggunakan gambar default: Alibaba Cloud Image.

Anda juga dapat memasukkan gambar kustom yang telah disiapkan di tab Image Address.

Directly Mount

Karena file kode contoh tidak diintegrasikan ke dalam gambar, pasang ke instans layanan. Sebagai contoh, pemasangan dari OSS. Klik OSS dan konfigurasikan parameter berikut:

  • Uri: Pilih folder OSS tempat file kode contoh berada. Untuk mempelajari cara mengunggah file kode ke folder OSS, lihat Mulai Cepat di konsol.

  • Mount Path: Atur ke /mnt/data/. File kode akan dibaca dari path ini.

Jika Anda menggunakan gambar kustom dan telah mengonfigurasi file utama untuk layanan prediksi dalam gambar, Anda dapat melewatkan konfigurasi ini.

Command

Topik ini mengatur perintah menjadi aliyun-bootstrap -a install && aliyun-instrument python /mnt/data/app.py.

/mnt/data/app.py adalah file kode contoh yang dipasang.

Environment Variables

Karena kode contoh memanggil API Dashscope, klik Add dan konfigurasikan variabel lingkungan berikut:

Third-party Library Settings

Atur pustaka pihak ketiga menjadi aliyun-bootstrap flask dashscope.

Service Access

VPC

Untuk menggunakan fitur tracing, Anda harus mengonfigurasi virtual private cloud (VPC). Pilih VPC, vSwitch, dan Security group di wilayah tersebut.

Secara default, layanan EAS tidak dapat mengakses Internet. Untuk menjalankan kode contoh yang memanggil API Dashscope, konfigurasikan VPC dengan akses Internet. Untuk instruksi, lihat Skenario 1: Izinkan layanan EAS mengakses Internet.

vSwitch

Security Group Name

Features

Tracing Analysis

Aktifkan sakelar Tracing dan konfigurasikan pustaka pihak ketiga serta perintah startup di bagian Environment Context.

Langkah 3: Melihat jejak

Alat evaluasi berbasis trace membantu pengembang memverifikasi akurasi dan keandalan output aplikasi LLM:

Panggil layanan EAS

Topik ini menggunakan debugging online sebagai contoh. Anda juga dapat memanggil layanan EAS menggunakan API. Untuk informasi lebih lanjut, lihat Panggilan API.

  1. Di halaman Elastic Algorithm Service (EAS), temukan layanan target dan klik image > Online Debugging di kolom Actions.

  2. Di tab Body, kirim data permintaan ke alamat yang ditentukan sesuai dengan layanan prediksi yang Anda definisikan.

    Topik ini menggunakan antarmuka layanan yang didefinisikan dalam file app.py contoh. Gambar berikut menunjukkan contoh hasil:

    image

Lihat informasi trace

Catatan

Secara default, data trace disimpan selama 30 hari sejak dihasilkan. Untuk memperpanjang periode penyimpanan, hubungi tim ARMS untuk konfigurasi khusus.

  1. Beralih ke tab Trace Query di tab Tracing Analysis untuk melihat informasi trace.

    image

  2. Temukan trace target dan klik View Traces di kolom Actions untuk menuju halaman Trace details.

    Data trace pada halaman ini memungkinkan Anda melihat input, output, dan informasi log terkait layanan.

    Catatan: Jika Anda menggunakan pengguna RAM atau peran RAM, Anda harus memberikan izin AliyunARMSReadOnlyAccess untuk menggunakan fitur ini.image

  3. Untuk berbagi detail trace, klik ikon berbagiimage untuk menghasilkan alamat sekali pakai.

    Catatan: Jika Anda menggunakan pengguna RAM atau peran RAM, Anda harus memberikan izin cms:CreateTicket sebelum dapat menggunakan fitur ini.

Langkah 4: Evaluasi kinerja aplikasi

EAS menyediakan alat evaluasi berbasis trace untuk memverifikasi akurasi dan keandalan output aplikasi LLM. Dua metode evaluasi didukung:

  • Metode 1: Evaluasi satu trace: Pilih secara manual satu trace dari layanan EAS untuk dievaluasi. Cocok untuk fase pengembangan atau pengujian guna men-debug trace tertentu dan memverifikasi logika serta kinerjanya.

  • Metode 2: Evaluasi trace secara batch online: Secara berkala mengevaluasi trace yang diambil sampelnya dari layanan EAS yang sedang berjalan. Cocok untuk pengujian kinerja skala besar atau validasi fitur guna memahami status sistem secara keseluruhan.

Catatan

Secara default, data trace disimpan selama 30 hari sejak dihasilkan. Untuk memperpanjang periode penyimpanan, hubungi tim ARMS untuk konfigurasi khusus.

Metode 1: Evaluasi satu trace

  1. Di tab Trace Query pada tab Tracing Analysis, temukan trace target dan klik Evaluate di kolom Actions. Kemudian, di panel konfigurasi Evaluate, konfigurasikan parameter berikut.image

    • Evaluation Metrics: Ini adalah konfigurasi tetap dan tidak dapat diubah. Evaluasi dilakukan berdasarkan dimensi berikut.

      Evaluation Metric

      Deskripsi

      Correctness

      Menentukan apakah jawaban secara benar menjawab pertanyaan berdasarkan input dan teks referensi.

      Faithfulness

      Menentukan apakah jawaban dihasilkan berdasarkan input dan teks referensi serta apakah mengandung Halusinasi.

      Retrieval Relevance

      Menentukan apakah hasil yang diambil relevan dengan pertanyaan input. Termasuk empat metrik berikut:

      • nDCG: Normalized Discounted Cumulative Gain

      • Hit Rate

      • Precision@K

      • MRR: Mean Reciprocal Rank

    • Model Settings: Model LLM yang digunakan untuk mengevaluasi trace. Setelah pengaturan awal, konfigurasi ini akan diisi otomatis untuk evaluasi berikutnya.

      Parameter

      Deskripsi

      Model Selection

      Dua model berikut didukung:

      • PAI Judge Model

      • qwen-max (model Studio Model)

        Catatan

      Model Token

      Masukkan token untuk model yang dipilih:

    • Extraction Configuration: Di bagian Query Extraction Configuration, Answer Extraction Configuration, dan Context Extraction Configuration, konfigurasikan parameter dalam tabel berikut untuk mengekstraksi konten yang sesuai:

      • Query Extraction Configuration: Mengekstraksi konten kueri pengguna (input).

      • Answer Extraction Configuration: Mengekstraksi jawaban yang dihasilkan sistem (output).

      • Context Extraction Configuration: Mengekstraksi teks atau informasi latar belakang yang diberikan ke sistem (dokumen).

      Parameter

      Deskripsi

      SpanName

      Menemukan span yang cocok dengan SpanName.

      JsonPathInSpan

      Formatnya adalah a.b.c. Parameter ini tidak boleh kosong. Ini mengekstraksi nilai dari elemen tertentu dari span yang cocok.

      JsonPathInSpanValue

      Formatnya adalah a.b.c. Parameter ini boleh kosong. Setelah elemen yang sesuai dengan JsonPathInSpan ditemukan, jika konten elemen tersebut adalah string JSON, JsonPathInSpanValue digunakan untuk mengekstraksi nilai yang sesuai.

      Anda dapat mengklik View Traces di kolom Actions untuk memperoleh konten konfigurasi dari halaman Trace details. Tabel berikut menunjukkan contoh konfigurasi:

      Extraction Configuration

      Cara memperoleh

      Contoh nilai

      Query Extraction Configuration

      Topik ini memberikan contoh di mana JsonPathInSpanValue tidak memiliki nilai:

      image

      Untuk contoh di mana JsonPathInSpanValue memiliki nilai, lihat gambar berikut.

      image

      • JsonPathInSpanValue tidak memiliki nilai

        • SpanName: LLM

        • JsonPathInSpan: attributes.input.value

        • JsonPathInSpanValue: Karena konten elemen JsonPathInSpan bukan string JSON, parameter ini kosong.

      • JsonPathInSpanValue memiliki nilai

        • SpanName: LLM

        • JsonPathInSpan: attributes.input.value

        • JsonPathInSpanValue: Karena konten elemen JsonPathInSpan adalah string JSON, masukkan text[0] di sini.

      Answer Extraction Configuration

      image

      • SpanName: LLM

      • JsonPathInSpan: attributes.output.value

      • JsonPathInSpanValue: Parameter ini kosong.

      Context Extraction Configuration

      Layanan contoh dalam topik ini tidak mencakup konfigurasi ekstraksi konteks. Untuk contoh, lihat gambar berikut:

      image

      • SpanName: retrieve

      • JsonPathInSpan: attributes.retrieval.documents[*].document.content

        Penting

        Hanya konfigurasi konteks yang mendukung penggunaan tanda bintang (*).

      • JsonPathInSpanValue: Karena konten elemen JsonPathInSpan bukan string JSON, parameter ini kosong.

  2. Setelah mengonfigurasi parameter, klik Confirm.

    Saat hasil muncul di kolom Evaluation Result (seperti yang ditunjukkan pada gambar berikut), evaluasi selesai. Klik hasil tersebut untuk melihat detailnya.image

Metode 2: Evaluasi trace secara batch online

  1. Di tab Online Evaluation pada tab Tracing Analysis, klik New Assessment.

  2. Di halaman Create Evaluation Task, konfigurasikan parameter berikut lalu klik Confirm.

    Parameter

    Deskripsi

    Basic Configuration

    Task Name

    Masukkan nama tugas kustom.

    Evaluation Configuration

    Evaluation Metrics

    Ini adalah konfigurasi tetap dan tidak dapat diubah. Evaluasi dilakukan berdasarkan dimensi berikut:

    • Correctness: Menentukan apakah jawaban secara benar menjawab pertanyaan berdasarkan input dan teks referensi.

    • Faithfulness: Menentukan apakah jawaban dihasilkan berdasarkan input dan teks referensi serta apakah mengandung Halusinasi.

    • Retrieval Relevance: Menentukan apakah konten yang diambil relevan dengan pertanyaan input. Termasuk empat metrik berikut:

      • nDCG: Normalized Discounted Cumulative Gain

      • Hit Rate

      • Precision@K

      • MRR: Mean Reciprocal Rank

    Model Selection

    Dua model berikut didukung:

    • PAI Judge Model

    • qwen-max (model Studio Model)

      Catatan

    Model Token

    Masukkan token untuk model yang dipilih:

    Sampling Start and End Time

    Pilih tanggal mulai dan akhir untuk pengambilan sampel.

    Sampling Policy

    Kebijakan pengambilan sampel berikut tersedia:

    • Time window-based sampling: Mengambil satu trace pada interval reguler (setiap x menit).

    • Probability-based sampling: Secara acak mengambil persentase tertentu dari trace.

    QCA Extraction Configuration: Data trace diformat sebagai string JSON. Konfigurasi ekstraksi QCA menentukan path ke QCA dalam struktur JSON ini. Nilai pada path ini merepresentasikan konten QCA spesifik.

    Query Extraction Configuration

    • Query Extraction Configuration: Mengekstraksi konten kueri pengguna (input).

    • Answer Extraction Configuration: Mengekstraksi jawaban yang dihasilkan sistem (output).

    • Context Extraction Configuration: Mengekstraksi teks atau informasi latar belakang yang diberikan ke sistem (dokumen).

    Konfigurasikan parameter SpanName, JsonPathInSpan, dan JsonPathInSpanValue untuk mengekstraksi konten yang sesuai. Untuk informasi lebih lanjut tentang cara mengonfigurasi parameter ini, lihat Extraction Configuration.

    Answer Extraction Configuration

    Context Extraction Configuration

    Saat Status tugas evaluasi adalah Completed, semua operasi evaluasi pengambilan sampel telah selesai, dan tugas tidak akan menghasilkan hasil evaluasi baru.

  3. Setelah evaluasi selesai, Anda dapat melihat hasilnya di kolom Evaluation Result tugas evaluasi. Anda juga dapat mengklik nama tugas untuk melihat detailnya.

    • Lihat hasil evaluasi: Sistem menghitung dan menampilkan skor rata-rata dari semua evaluasi yang berhasil. Skor yang lebih mendekati 1 menunjukkan kualitas yang lebih tinggi.image

    • Lihat detail evaluasi:image

Setelah pembuatan, Anda dapat mengelola tugas evaluasi dengan memperbarui, menghentikan, menghapus, atau mengkloningnya. Pengkloningan menduplikasi konfigurasi tugas untuk membuat tugas evaluasi baru.image