Tanya model bahasa berapa banyak huruf dalam perkataan “strawberry.” Kemungkinan besar ia akan tersalah. Ia mungkin berkata sepuluh. Ia mungkin meneka sebelas. Ia akan kedengaran sangat yakin, namun ia tetap salah. Tanya model yang sama untuk mengira faedah kompaun bagi pinjaman, atau menambah dua nombor besar, atau mengira hari bekerja antara dua tarikh, dan anda sering akan mendapat jawapan yang kelihatan munasabah tetapi dengan digit yang sedikit, dan berbahaya, tersasar.

Ini berlaku kerana model bahasa besar tidak menaakul tentang nombor seperti manusia. Mereka meramalkan token. Satu token mungkin merupakan satu perkataan penuh, sebahagian daripada perkataan, atau satu digit tunggal. Apabila model melihat “strawberry,” ia tidak melihat lapan huruf individu yang disusun sebaris. Ia melihat beberapa ketulan. Ia tidak pernah diajar untuk mengira aksara, hanya untuk meramalkan ketulan teks mana yang menyusul. Had yang sama berlaku kepada aritmetik. Model tersebut tidak mempunyai kalkulator dalaman. Ia kekurangan logik bawa. Ia tidak mempunyai pemahaman sebenar tentang nilai tempat. Apabila ia mendarab 148 dengan 279, ia tidak melakukan pendaraban. Ia sedang memadankan corak dengan ungkapan serupa yang dilihatnya semasa latihan, meneka urutan digit yang sepatutnya menyusul. Untuk jumlah yang kecil, corak tersebut cukup kuat untuk berfungsi. Untuk apa-apa sahaja yang memerlukan ketepatan sebenar, tekaan tersebut akhirnya akan gagal.

Dua Tugas, Satu Bot

Kaedah arahan (prompting) standard meminta satu sistem melakukan dua perkara yang sangat berbeza secara serentak. Pertama, memahami logik masalah. Kedua, melaksanakan matematik yang tepat. Model tersebut sangat mengagumkan dalam tugas pertama. Ia boleh membaca masalah berbentuk teks, mengekstrak pemboleh ubah, memetakan hubungan, dan merancang laluan penyelesaian. Tetapi kemudian ia perlu berfungsi sebagai kalkulatornya sendiri. Di situlah rantaian itu mula terputus. Satu digit yang tersilap pada langkah ketiga akan menjejaskan setiap langkah selepasnya. Logik itu sendiri mungkin sempurna, namun jawapan akhirnya adalah sampah kerana model tersebut melakukan penambahan yang salah.

Program-Aided Language Models, atau PAL, menyelesaikan masalah ini dengan membahagikan tugas. Daripada meminta jawapan daripada model, anda memintanya untuk menghasilkan satu program.

Begini cara aliran kerja ini sebenarnya berfungsi. Anda membentangkan masalah. Model tersebut mengenal pasti logik, menentukan pemboleh ubah, dan menyusun algoritma. Kemudian, daripada mengira hasilnya sendiri, ia menulis skrip pendek, biasanya dalam Python. Skrip tersebut kemudian diserahkan kepada penterjemah kod (code interpreter) yang sebenar. Penterjemah tersebut menjalankan logik dan mengembalikan hasil yang tepat dan deterministik. Model tersebut menerangkan matematik. Python melakukan matematik.

Penaakulan Boleh Laksana dalam Praktik

Anggaplah PAL sebagai penaakulan boleh laksana (executable reasoning). Jika skrip boleh menyelesaikan masalah, biarkan model menulis skrip tersebut.

Pertimbangkan satu contoh konkrit. Anda perlu mengira jumlah matang bagi deposit tetap sebanyak ₹50,000 dengan kadar faedah tahunan 8.5 peratus, dikompaun secara suku tahunan, selama tujuh tahun. Tanya model bahasa secara terus, dan ia mungkin menulis formula, menggantikan nilai, dan mengira hasil dalam rantaian pemikiran (chain of thought). Namun, jika diperhatikan dengan teliti, anda mungkin mendapati ia tersalah mengendalikan kompaun suku tahunan dengan membahagikan kadar secara tidak betul, atau ia membundarkan langkah perantaraan dan membawa ralat tersebut ke hadapan. Jawapannya kelihatan munasabah tetapi tersasar sebanyak ratusan rupee.

Dengan PAL, interaksi tersebut berubah. Anda mengarahkan model untuk menjana kod Python yang menentukan principal = 50000, rate = 0.085, time = 7, dan n = 4, kemudian mengira amount = principal * (1 + rate/n) ** (n * time). Model tersebut mengeluarkan kod tersebut. Masa larian (runtime) Python melaksanakannya. Anda mendapat angka yang tepat, sehingga ke perpuluhan terakhir, setiap kali. Tiada tekaan dalam pendaraban, tiada baki yang dihalusinasi, tiada ralat pembundaran yang yakin.

Corak yang sama ini terpakai kepada matematik tarikh. Tanya model tarikh manakah yang jatuh tepat 120 hari bekerja dari hari ini, tidak termasuk hujung minggu. Model berasaskan teks sahaja mungkin mengira ke hadapan dan tersilap pada hari Sabtu. Pendekatan PAL meminta model menulis skrip menggunakan logik datetime dan calendar, kemudian membiarkan penterjemah melakukan iterasi dengan tepat. Manipulasi data berfungsi dengan cara yang sama. Jika anda perlu menghuraikan (parse) CSV yang berselerak, menapis JSON bersarang, atau menjalankan transformasi statistik pantas, model tersebut harus merangka logik manakala penterjemah mengendalikan iterasi.

Mengapa Ini Sebenarnya Penting

Peralihan daripada jawapan prosa kepada kod boleh laksana memberikan tiga kelebihan praktikal.

Determinism. A language model asked the same question twice might vary its wording or change a digit. An interpreter returns the same output for the same input every time. That stability matters deeply in accounting, logistics, scheduling, and any engineering calculation where consistency is not optional.

Verifiability. When a model hands you three paragraphs of reasoning, you must read every sentence to hunt for the one wrong number. When it hands you a ten-line script, you can review the code. You can verify that the compound-interest formula is correct before the interpreter ever runs. You can inspect variable names, spot off-by-one errors, and even version-control the solution. The surface area for hidden mistakes shrinks dramatically.

Reliability. The model stays in its lane. It does what it was built to do: reason about structure, semantics, and problem decomposition. The machine does what it was built to do: compute accurately. This separation of concerns is exactly how reliable software is architected. Composition beats monolithic design.

Run It Like Untrusted Code

A word of caution is necessary. Generated code should be treated as untrusted input. The model might write a script with an infinite loop, an unnecessary network request, or a filesystem operation you did not ask for. Always execute these programs inside an isolated sandbox. Use containers with restricted privileges, serverless functions with no network access, or tightly controlled environments with limited CPU time and no persistent storage. Security is not a footnote here. It is part of the system design.

Where PAL Shines, and Where It Stops

PAL works beautifully for math, dates, and structured data manipulation. It removes the mechanical errors that plague text-only reasoning.

It does not, however, fix bad logic. If the model chooses the wrong formula,