Pengurusan Memori dan Keadaan untuk Ejen
Laksanakan teknik memori berterusan serta pengurusan keadaan untuk ejen LLM bagi membolehkan perbualan jangka panjang dan urutan tugasan kompleks.
Pengurusan Memori dan Keadaan untuk Ejen ialah pelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun merangkumi sejumlah 4 pelajaran.
Ejen Memerlukan Memori
Ejen LLM direka bentuk untuk melaksanakan tugasan yang kompleks. Namun, secara lalai, LLM tidak mempunyai keadaan! Ini bermakna LLM tidak "mengingati" interaksi terdahulu.
Untuk membolehkan ejen menjalankan perbualan yang bermakna atau menyelesaikan tugasan berbilang langkah, ejen memerlukan cara untuk mengingati maklumat sebelumnya. Di sinilah memori digunakan.
Memori Jangka Pendek & Jangka Panjang
Memori ejen boleh dikategorikan kepada dua jenis utama:
- Memori Jangka Pendek: Seperti memori kerja manusia. Memori ini menyimpan maklumat terkini yang berkaitan untuk kegunaan segera, selalunya sejarah perbualan mentah.
- Memori Jangka Panjang: Menyimpan maklumat untuk tempoh yang panjang, seperti perbualan terdahulu atau fakta yang dipelajari. Memori ini membantu ejen mengekalkan pengetahuan melebihi interaksi semasa.
Memori Penimbal Perbualan
Bentuk memori jangka pendek yang paling mudah untuk ejen ialah penimbal perbualan. Memori ini menyimpan pertukaran mesej mentah antara pengguna dengan ejen.
Apabila menjana respons baharu, ejen diberikan keseluruhan penimbal sebagai gesaan, sekali gus membolehkannya mengekalkan konteks untuk giliran semasa.
Demo Penimbal Sembang Asas
Berikut ialah contoh Python ringkas yang mensimulasikan penimbal perbualan. Setiap mesej baharu ditambahkan pada senarai yang mewakili memori ejen.
class AgentMemory:
def __init__(self):
self.history = []
def add_message(self, role, content):
self.history.append(f"{role}: {content}")
def get_history(self):
return "\n".join(self.history)
# Simulate agent interaction
memory = AgentMemory()
memory.add_message("User", "Hi, what's the weather like?")
memory.add_message("Agent", "It's sunny today.")
memory.add_message("User", "What about tomorrow?")
print("Current conversation history:")
print(memory.get_history())Meringkaskan untuk Jangka Panjang
Penimbal perbualan mentah berkembang dengan cepat, mencapai had tetingkap konteks LLM dan meningkatkan kos. Peringkasan ialah teknik utama untuk memori jangka panjang.
Daripada menghantar keseluruhan sejarah, kita meringkaskan bahagian perbualan yang lebih lama secara berkala, sambil mengekalkan poin penting dan membuang butiran yang berlebihan.
Konsep Memori yang Diringkaskan
Contoh ini menunjukkan cara ringkasan mungkin dijana dan digunakan. Dalam aplikasi sebenar, LLM akan mencipta ringkasan tersebut, tetapi di sini kita mensimulasikannya.
class AgentMemory:
def __init__(self):
self.buffer = []
self.summary = "No previous conversation."
def add_message(self, role, content):
self.buffer.append(f"{role}: {content}")
# In a real app, trigger LLM summarization here
if len(self.buffer) > 4: # Example threshold
self.summarize_buffer()
def summarize_buffer(self):
# Simulate LLM summarizing the buffer
old_messages = "\n".join(self.buffer[:-2])
new_summary = f"Summary of past: {old_messages[:30]}..."
self.summary = new_summary
self.buffer = self.buffer[-2:] # Keep recent messages
def get_full_context(self):
return f"Previous summary: {self.summary}\n" + \
"\n".join(self.buffer)
memory = AgentMemory()
memory.add_message("User", "Tell me about your capabilities.")
memory.add_message("Agent", "I can answer questions.")
memory.add_message("User", "Can you write code?")
memory.add_message("Agent", "Yes, in Python.")
memory.add_message("User", "What about Java?") # This triggers summary
memory.add_message("Agent", "I can try some Java.")
print("Agent's current context:")
print(memory.get_full_context())Keadaan Tugasan Ejen
Selain sekadar mengingati perbualan, ejen perlu mengurus keadaan untuk menyelesaikan tugasan berbilang langkah. Ini bermakna menjejaki kemajuan, keputusan yang dibuat dan maklumat yang dikumpulkan.
Anggaplah ia seperti senarai semak atau mesin keadaan terhingga untuk matlamat ejen. Contohnya, tempahan penerbangan memerlukan maklumat tentang tempat berlepas, destinasi dan tarikh.
Contoh Keadaan Tempahan Penerbangan
Pertimbangkan ejen yang membantu menempah penerbangan. Keadaan dalamannya mungkin merangkumi:
- Status:
"collecting_info","searching_flights","booking_confirmed" - Bandar Berlepas:
"London" - Bandar Destinasi:
"Paris" - Tarikh Berlepas:
"2024-12-25" - Bilangan Penumpang:
"1"
Ejen mengemas kini keadaan ini apabila mengumpulkan maklumat daripada pengguna.
Cabaran Memori & Keadaan
Pengurusan memori dan keadaan ejen memperkenalkan beberapa cabaran utama:
- Had Tetingkap Konteks: Berapa banyak maklumat yang boleh diproses oleh LLM pada satu-satu masa?
- Kos: Konteks yang lebih panjang bermakna lebih banyak token dan kos API yang lebih tinggi.
- Pendapatan Semula: Untuk memori jangka sangat panjang (contohnya pangkalan pengetahuan), bagaimanakah ejen mencari maklumat terdahulu yang paling berkaitan dengan cekap?
- Ketekalan: Memastikan keadaan ejen menggambarkan kemajuan tugasan dan data yang dikumpulkan dengan tepat.
Pemeriksaan Memori
Mari kita semak pemahaman anda tentang teknik pengurusan memori dan keadaan ejen.
Imbas Kembali: Memori & Keadaan
Dalam pelajaran ini, kita meneroka cara memori dan keadaan penting untuk ejen LLM menjalankan perbualan jangka panjang dan menyelesaikan tugasan kompleks.
- Kita membincangkan teknik penimbal perbualan jangka pendek dan peringkasan jangka panjang.
- Kita juga melihat cara pengurusan keadaan membantu ejen menjejaki kemajuan melalui proses berbilang langkah.
Teknik ini merupakan asas untuk membina ejen AI yang benar-benar berkeupayaan dan berterusan.
Pelajari Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 12
- Pelajaran
- 48
Soalan Lazim
Adakah pelajaran “Pengurusan Memori dan Keadaan untuk Ejen” percuma?
Ya — teks penuh “Pengurusan Memori dan Keadaan untuk Ejen” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun, tingkat taraf kepada CoddyKit PRO. Kursus Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Pengurusan Memori dan Keadaan untuk Ejen”?
Laksanakan teknik memori berterusan serta pengurusan keadaan untuk ejen LLM bagi membolehkan perbualan jangka panjang dan urutan tugasan kompleks. Anda berlatih Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “Pengurusan Memori dan Keadaan untuk Ejen” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun ini?
Ya. Setiap pelajaran Kejuruteraan Gesaan & Pengoptimuman LLM untuk Pembangun menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Mereka Bentuk Sistem Berbilang Ejen
- Pengurusan Memori dan Keadaan untuk Ejen
- Pengautomatan Aliran Kerja Autonomi
- Gelung Refleksi dan Pembetulan Kendiri Ejen