Repo ini berisi implementasi agen perencanaan berurutan yang disebut, "Neoplanner". Perencana ini cocok untuk lingkungan berbasis teks dengan ruang negara dan ruang tindakan yang besar. Ini mensinergi kedua pencarian ruang negara dengan pertanyaan ke Foundational LLM untuk mendapatkan rencana aksi terbaik. Sinyal hadiah secara kuantitatif digunakan untuk menggerakkan pencarian. Keseimbangan eksplorasi dan eksploitasi dipertahankan dengan memaksimalkan batas kepercayaan atas dari nilai -nilai negara. Di tempat -tempat di mana eksplorasi acak diperlukan, LLM ditanya untuk menghasilkan rencana aksi. Pembelajaran dari setiap percobaan disimpan sebagai hubungan entitas dalam format teks. Itu digunakan dalam kueri mendatang ke LLM untuk perbaikan berkelanjutan. Eksperimen di lingkungan dunia sains mengungkapkan peningkatan 124% dari metode terbaik saat ini dalam hal hadiah rata -rata yang diperoleh di berbagai tugas. Berikut ini adalah arsitecture.

Pertama, mengkloning repo dan menavigasi ke direktori neoplanner dan memasang persyaratan
git clone https://github.com/swarna-kpaul/neoplanner
cd neoplanner
python3 -m pip install -r requirements.txtMaka Anda perlu memodifikasi file config/keys.py untuk memperbarui OpenAaiapikey . Anda bisa mendapatkan kunci API Anda dengan mendaftarkan diri Anda ke Portal OpenAI. Pengguna pertama kali bisa mendapatkan kredit $ 5 gratis untuk bereksperimen. Anda bisa mendapatkan kunci API Anda dari URL ini
Setelah itu paket dapat diimpor
from solver import neoplannerInisialisasi objek Solver
# task is the identifier of tasks as specified in
# stmloadfile is the name of the file (with full path) that contains saved state. The state will be loaded initially. default value is None
# stmstoragefile is the name of the file (with full path) whare intermediate states can be saved. default value is None
# beliefstorefile is the name of the file (with full path) whare intermediate learnings can be saved. default value is None
# beliefloadfile is the name of the file (with full path) that contains intermediate learnings. The learnings will be loaded initially. default value is None
# sigma is exploration probability constant. Increasing its value would increase random exploration by the the LLM.
solverobj = neoplanner ( task = "2-1" , stmloadfile = None , stmstoragefile = None , beliefstorefile = None , beliefloadfile = None , sigma = 0.3 )Jalankan pemecah.
env = solverobj . train ()
######## get actionplan from statespace graph
additionalinstructions , actionplan , _ , _ , _ = env . getinstructions ()Pelatihan akan terus berjalan sampai gol tercapai. Anda dapat mengganggu proses pelatihan di antaranya. Dalam hal ini pastikan Anda menyediakan stmstoragefile dan beliefstorefile, sehingga negara bagian dan kepercayaan perantara diselamatkan.
Anda dapat memuat stmstoragefile dan meminta objek Env untuk mendapatkan rencana aksi dari grafik ruang negara.
import pickle
from solver import scienv
env = scienv ( "2-1" )
stmstoragefile = < file name with full path >
with open ( stmstoragefile , 'rb' ) as f :
rootnodeid , invalidnodeid , DEFAULTVALUE , statespace , totaltrials , actiontrace , environment = pickle . load ( f )
env . model . rootnodeid = rootnodeid
env . model . invalidnodeid = invalidnodeid
env . model . DEFAULTVALUE = DEFAULTVALUE
env . model . statespace = statespace
env . model . totaltrials = totaltrials
env . environment = environment
env . reset ()
additionalinstructions , actionplan , _ , _ , _ = env . getinstructions ()Folder pretrainedfiles berisi semua ruang negara yang terlatih dan file pembelajaran untuk 7 tugas. Anda dapat melihat ke dalam rencana aksi yang terpecahkan dari tugas menggunakan kode di atas, dengan mengatur stmstoragefile dengan nama file yang sesuai
Pembelajaran dapat dilihat dengan menjalankan kode berikut
import pickle
beliefloadfile = < belief load file name >
with open ( beliefloadfile , 'rb' ) as f :
beliefaxioms , totalexplore = pickle . load ( f )
print ( beliefaxioms ) @misc{paul2023sequential,
title={Sequential Planning in Large Partially Observable Environments guided by LLMs},
author={Swarna Kamal Paul},
year={2023},
eprint={2312.07368},
archivePrefix={arXiv},
primaryClass={cs.AI}
}