Dasar LLM dengan LangChain
Coretan pada catatan ini
Coratan pada catatan ini dapat dilihat pada lab disini
Tantangan dalam membuat aplikasi LLM adalah bagaimana membangun struktur perintah untuk diberikan kesebuah model dan memproses prediksi dari model sehingga mendapatkan hasil yang akurat.
Proses Sederhana Aplikasi LLM
InsyaAllah pada bagian catatan ini saya akan mencatat bagaimana Langchain membangun pengelompokan pemetaan terhadap LLM sehingga menjadi aplikasi LLM yang berguna.
Jadi apa itu Langchain ? adalah sebuah framework untuk membangun aplikasi LLM. Langchain adalah lapisan orkrestasi dimana mempermudah pengambangan aplikasi LLM dengan menawarkan standarisasi, penggunaan komponen berulang, dan penghubung tugas seperti "pemuatan data", "pengatturan perintah" dan "parsing hasil keluaran".
Bacaan lain Neural Network
Saya juga pernah membuat belajar dan hasil coretan saya tentang Langchain dapat dilihat di repositori berikut, muhammadfarras/Learn-Langchain
Menggunakan LLM pada Langchain
Informasi
Pada catatan disini saya menggunakan Ollama sebagai penyedia LLM. Sedangkan LLM yang saya gunakan adalah buatan Meta, Llama3.2. Kita bisa menggunakan provider lain atau model lain selama memliki tipe TextGeneration.
Untuk menggunakan Ollama dengan Langchain lebih lanjut untuk setup dapat dilihat disini https://python.langchain.com/docs/integrations/llms/ollama/
Sebagai pengingat, LLM adalah yang menyetir dibelakang kebanyakan Generative AI Application. Langchain menyediakan 2 interface sederhana agar kita dapat terhubung dengan API yang disediakan oleh provider LLM.
- ChatModels
- LLMs
Secara sederhana interface dari LLM menerima perintah dalam bentuk text dan mengirim nilai masukan tersebut ke penyedia model, lalu mengembalikan prediksi dari model sebagai nilai keluaran.
Code
Chat Models
Alternatif lainnya, kita dapat menggunakan ChatModels, interface tersebut membuat kita dapat berinteraksi umpan balik secara terus menerus seperti kita sedang mengobrol. Untuk menggunakannya kita harus memahami apa itu roles.
Apa itu role
Tentang role dapat dibaca di sini
Code class dan sample chat model
Untuk class ChatModelsSimplifier
dapat diakses di ChatModelsSimplifier.py
from ChatModelsSimplifier import MyLLMChatModel
my_simple_model = MyLLMChatModel("llama3.2:latest")
my_simple_model.chat_models("Halo nama saya muhammad farras ma'ruf")
"""
Assalamu'alaikum warahmatullahi wabarakatuh, Muhammad Farras Ma'ruf.
Saya senang bertemu dengan Anda. Apakah Anda membutuhkan bantuan atau informasi tentang topik tertentu? Atau mungkin Anda ingin berbicara tentang hobi atau minat Anda?
Saya di sini untuk membantu dan mendengarkan apa yang Anda inginkan.
"""
my_simple_model.chat_models("Siapa nama saya ?")
"""
Saya ingat! Nama Anda adalah Muhammad Farras Ma'ruf.
"""
Menggunakan ChatModel, dan kita memberikan riwayat percapakan kepada model membuat model mengetahui percakapan sebelumnya.