{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/expel-llm-agents-are-experiential-learners","title":"ExpeL: LLM Agents Are Experiential Learners","arxiv_id":"2308.10144","date":"2023-08-20","proceeding":null,"authors":["Andrew Zhao","Daniel Huang","Quentin Xu","Matthieu Lin","Yong-Jin Liu","Gao Huang"],"abstract":"The recent surge in research interest in applying large language models (LLMs) to decision-making tasks has flourished by leveraging the extensive world knowledge embedded in LLMs. While there is a growing demand to tailor LLMs for custom decision-making tasks, finetuning them for specific tasks is resource-intensive and may diminish the model's generalization capabilities. Moreover, state-of-the-art language models like GPT-4 and Claude are primarily accessible through API calls, with their parametric weights remaining proprietary and unavailable to the public. This scenario emphasizes the growing need for new methodologies that allow learning from agent experiences without requiring parametric updates. To address these problems, we introduce the Experiential Learning (ExpeL) agent. Our agent autonomously gathers experiences and extracts knowledge using natural language from a collection of training tasks. At inference, the agent recalls its extracted insights and past experiences to make informed decisions. Our empirical results highlight the robust learning efficacy of the ExpeL agent, indicating a consistent enhancement in its performance as it accumulates experiences. We further explore the emerging capabilities and transfer learning potential of the ExpeL agent through qualitative observations and additional experiments.","url_abs":"https://arxiv.org/abs/2308.10144v3","url_pdf":"https://arxiv.org/pdf/2308.10144v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"expel-llm-agents-are-experiential-learners","repo_url":"https://github.com/LeapLabTHU/ExpeL","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"expel-llm-agents-are-experiential-learners","repo_url":"https://github.com/liqs-v2/ctim-rover","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[{"task_slug":"decision-making","task_name":"Decision Making"},{"task_slug":"transfer-learning","task_name":"Transfer Learning"},{"task_slug":"world-knowledge","task_name":"World Knowledge"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"gpt-4","method_name":"GPT-4"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2308.10144","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2308.10144"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/liqs-v2/ctim-rover","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/LeapLabTHU/ExpeL","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":6,"unverified":2},"by_repo_kind":{"official":{"samples":8,"ran":6,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"87765aa9384d18f2","entry":"STEP_IDENTIFIER","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"prompts/alfworld.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/prompts/alfworld.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"87765aa9384d18f2"}},{"code_sha256_prefix":"052f8f40044eb598","entry":"is_existing_rule","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"agent/expel.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/agent/expel.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"052f8f40044eb598"}},{"code_sha256_prefix":"87330be502e028bc","entry":"parse_rules","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"agent/expel.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/agent/expel.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"87330be502e028bc"}},{"code_sha256_prefix":"6e89aeab59e1ed5b","entry":"random_divide_list","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"utils.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6e89aeab59e1ed5b"}},{"code_sha256_prefix":"469daea33d164d38","entry":"retrieve_rule_index","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"agent/expel.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/agent/expel.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"469daea33d164d38"}},{"code_sha256_prefix":"d4cfa8ee09de77e6","entry":"shuffled_chunks","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"utils.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d4cfa8ee09de77e6"}},{"code_sha256_prefix":"5199fa92d0096e11","entry":"STEP_IDENTIFIER","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"prompts/hotpotQA.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/prompts/hotpotQA.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5199fa92d0096e11"}},{"code_sha256_prefix":"3700e48b5d6a6414","entry":"token_counter","repo":"LeapLabTHU/ExpeL","repo_kind":"official","path":"utils.py","file_url":"https://github.com/LeapLabTHU/ExpeL/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3700e48b5d6a6414"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}