Dari LLM ke Agen: Memahami Lapisan Antara Model dan Aplikasi
Google/DeepMind
OpenAI
Mistral
Artikel ini mengeksplorasi lapisan antara LLM dan aplikasi agen, mulai dari tokenisasi, sampling, dan KV-cache, melalui templat obrolan dan Jinja, hingga format penyimpanan model dan runtime seperti llama.cpp. Ini menjelaskan jebakan umum seperti token penalaran yang menghabiskan anggaran generasi dan masalah panjang konteks.
Artikel ini menjelaskan jalur lengkap dari LLM menuju agen. Intinya, model memprediksi token berikutnya dalam suatu loop autoregresif, menggunakan tokenizer untuk mengubah teks menjadi ID token dan detokenizer untuk mengubahnya kembali. Cache KV mempercepat pembangkitan dengan menyimpan pasangan kunci-nilai sebelumnya. Input teks yang diharapkan oleh model bukanlah JSON mentah, melainkan prompt yang diformat sesuai dengan template obrolan model, yaitu template Jinja yang mengubah daftar pesan menjadi string dengan token khusus (misalnya, ChatML, Llama 3). Untuk model penalaran, prompt mungkin menyertakan blok <think>; jika model menghabiskan terlalu banyak token untuk berpikir, model dapat kehabisan anggaran pembangkitan sebelum menghasilkan jawaban akhir. Artikel ini juga menjelaskan bahwa penagihan dan panjang konteks didasarkan pada prompt yang telah ditokenisasi setelah template obrolan, bukan JSON API. Penyimpanan model di disk mencakup bobot safetensors, config.json, file tokenizer, dan chat_template di tokenizer_config.json. Runtime seperti llama.cpp memuat file GGUF yang menggabungkan komponen-komponen ini, menyediakan antarmuka tingkat tinggi dari teks ke teks.
Sumber: Habr — хаб ML —
asli
