{"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/raven-in-context-learning-with-retrieval","title":"RAVEN: In-Context Learning with Retrieval-Augmented Encoder-Decoder Language Models","arxiv_id":"2308.07922","date":"2023-08-15","proceeding":null,"authors":["Jie Huang","Wei Ping","Peng Xu","Mohammad Shoeybi","Kevin Chen-Chuan Chang","Bryan Catanzaro"],"abstract":"In this paper, we investigate the in-context learning ability of retrieval-augmented encoder-decoder language models. We first conduct a comprehensive analysis of existing models and identify their limitations in in-context learning, primarily due to a mismatch between pretraining and inference, as well as a restricted context length. To address these issues, we propose RAVEN, a model that combines retrieval-augmented masked language modeling and prefix language modeling. We further introduce Fusion-in-Context Learning to enhance the few-shot performance by enabling the model to leverage more in-context examples without requiring additional training. Through extensive experiments, we demonstrate that our simple yet effective design significantly improves performance, achieving results comparable to the most advanced language models in certain scenarios, despite having substantially fewer parameters. Our work underscores the potential of retrieval-augmented encoder-decoder language models for in-context learning and encourages further research in this direction.","url_abs":"https://arxiv.org/abs/2308.07922v3","url_pdf":"https://arxiv.org/pdf/2308.07922v3.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":"raven-in-context-learning-with-retrieval","repo_url":"https://github.com/jeffhj/raven","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}}],"tasks":[{"task_slug":"decoder","task_name":"Decoder"},{"task_slug":"in-context-learning","task_name":"In-Context Learning"},{"task_slug":"language-modeling","task_name":"Language Modeling"},{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"masked-language-modeling","task_name":"Masked Language Modeling"},{"task_slug":"open-domain-question-answering","task_name":"Open-Domain Question Answering"},{"task_slug":"retrieval","task_name":"Retrieval"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2308.07922","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2308.07922"}},"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/jeffhj/raven","reach":{"status":"ok","spdx":"NOASSERTION"}}],"summary":{"ran":9,"ran_draft_wrong":1,"ran_honours":1,"unverified":3},"by_repo_kind":{"official":{"samples":14,"ran":11,"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":14,"samples":[{"code_sha256_prefix":"59ea1420911ddd97","entry":"all_gather","repo":"jeffhj/raven","repo_kind":"official","path":"src/dist_utils.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/dist_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"59ea1420911ddd97"}},{"code_sha256_prefix":"a47d716bd6cdafab","entry":"deserialize_listdocs","repo":"jeffhj/raven","repo_kind":"official","path":"src/index.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/index.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a47d716bd6cdafab"}},{"code_sha256_prefix":"38c3b1ee62b65838","entry":"em","repo":"jeffhj/raven","repo_kind":"official","path":"src/evaluation.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/evaluation.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"38c3b1ee62b65838"}},{"code_sha256_prefix":"e4a21bc7a716330c","entry":"encode_passages","repo":"jeffhj/raven","repo_kind":"official","path":"src/atlas.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/atlas.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e4a21bc7a716330c"}},{"code_sha256_prefix":"5e2f0b798a3d70d2","entry":"f1","repo":"jeffhj/raven","repo_kind":"official","path":"src/evaluation.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/evaluation.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5e2f0b798a3d70d2"}},{"code_sha256_prefix":"094781db771538f0","entry":"gather_wgrad","repo":"jeffhj/raven","repo_kind":"official","path":"src/dist_utils.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/dist_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"094781db771538f0"}},{"code_sha256_prefix":"c3e2125348379a5c","entry":"get_checkpoint_path","repo":"jeffhj/raven","repo_kind":"official","path":"src/model_io.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/model_io.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c3e2125348379a5c"}},{"code_sha256_prefix":"6205dd62c2627dde","entry":"normalize_answer","repo":"jeffhj/raven","repo_kind":"official","path":"src/evaluation.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/evaluation.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6205dd62c2627dde"}},{"code_sha256_prefix":"c4bca944bda65eb2","entry":"select_crossattention_scores","repo":"jeffhj/raven","repo_kind":"official","path":"src/atlas.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/atlas.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c4bca944bda65eb2"}},{"code_sha256_prefix":"55955fc3f98f2a29","entry":"serialize_listdocs","repo":"jeffhj/raven","repo_kind":"official","path":"src/index.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/index.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"55955fc3f98f2a29"}},{"code_sha256_prefix":"fc996bc980b83cab","entry":"varsize_all_gather","repo":"jeffhj/raven","repo_kind":"official","path":"src/dist_utils.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/dist_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"fc996bc980b83cab"}},{"code_sha256_prefix":"a94b66d049f10dc8","entry":"cross_attention_forward","repo":"jeffhj/raven","repo_kind":"official","path":"src/fid.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/fid.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a94b66d049f10dc8"}},{"code_sha256_prefix":"d009b630f4496e64","entry":"load_tf_weights_in_bert","repo":"jeffhj/raven","repo_kind":"official","path":"src/modeling_bert.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/modeling_bert.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d009b630f4496e64"}},{"code_sha256_prefix":"136abfa3e8ce028d","entry":"load_tf_weights_in_t5","repo":"jeffhj/raven","repo_kind":"official","path":"src/modeling_t5.py","file_url":"https://github.com/jeffhj/raven/blob/HEAD/src/modeling_t5.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"136abfa3e8ce028d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}