{"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/vim-probing-multimodal-large-language-models","title":"Text as Images: Can Multimodal Large Language Models Follow Printed Instructions in Pixels?","arxiv_id":"2311.17647","date":"2023-11-29","proceeding":null,"authors":["Xiujun Li","Yujie Lu","Zhe Gan","Jianfeng Gao","William Yang Wang","Yejin Choi"],"abstract":"Recent multimodal large language models (MLLMs) have shown promising instruction following capabilities on vision-language tasks. In this work, we introduce VISUAL MODALITY INSTRUCTION (VIM), and investigate how well multimodal models can understand textual instructions provided in pixels, despite not being explicitly trained on such data during pretraining or fine-tuning. We adapt VIM to eight benchmarks, including OKVQA, MM-Vet, MathVista, MMMU, and probe diverse MLLMs in both the text-modality instruction (TEM) setting and VIM setting. Notably, we observe a significant performance disparity between the original TEM and VIM settings for open-source MLLMs, indicating that open-source MLLMs face greater challenges when text instruction is presented solely in image form. To address this issue, we train v-MLLM, a generalizable model that is capable to conduct robust instruction following in both text-modality and visual-modality instructions.","url_abs":"https://arxiv.org/abs/2311.17647v2","url_pdf":"https://arxiv.org/pdf/2311.17647v2.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":"vim-probing-multimodal-large-language-models","repo_url":"https://github.com/vim-bench/vim_tool","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"in-context-learning","task_name":"In-Context Learning"},{"task_slug":"instruction-following","task_name":"Instruction Following"},{"task_slug":null,"task_name":"MM-Vet"},{"task_slug":"visual-instruction-following","task_name":"visual instruction following"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2311.17647","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2311.17647"}},"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/vim-bench/vim_tool","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5,"unverified":2},"by_repo_kind":{"official":{"samples":7,"ran":5,"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":"4a3f0ec7b6fd0130","entry":"DLIST","repo":"vim-bench/vim_tool","repo_kind":"official","path":"vlmeval/tools.py","file_url":"https://github.com/vim-bench/vim_tool/blob/HEAD/vlmeval/tools.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4a3f0ec7b6fd0130"}},{"code_sha256_prefix":"bdd0978c6450ead8","entry":"GPT_context_window","repo":"vim-bench/vim_tool","repo_kind":"official","path":"vlmeval/api/gpt.py","file_url":"https://github.com/vim-bench/vim_tool/blob/HEAD/vlmeval/api/gpt.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bdd0978c6450ead8"}},{"code_sha256_prefix":"ab1a8c49264c96b8","entry":"concatenate_horizontally","repo":"vim-bench/vim_tool","repo_kind":"official","path":"bench_tool/converter_sequence.py","file_url":"https://github.com/vim-bench/vim_tool/blob/HEAD/bench_tool/converter_sequence.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ab1a8c49264c96b8"}},{"code_sha256_prefix":"749bfa04e8b78419","entry":"concatenate_vertically","repo":"vim-bench/vim_tool","repo_kind":"official","path":"bench_tool/converter_sequence.py","file_url":"https://github.com/vim-bench/vim_tool/blob/HEAD/bench_tool/converter_sequence.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"749bfa04e8b78419"}},{"code_sha256_prefix":"535c5c06a6492a2f","entry":"get_gpu_num","repo":"vim-bench/vim_tool","repo_kind":"official","path":"vlmeval/api/hf_chat_model.py","file_url":"https://github.com/vim-bench/vim_tool/blob/HEAD/vlmeval/api/hf_chat_model.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"535c5c06a6492a2f"}},{"code_sha256_prefix":"1df766fe5cb1847f","entry":"add_text_to_image","repo":"vim-bench/vim_tool","repo_kind":"official","path":"bench_tool/converter_sequence.py","file_url":"https://github.com/vim-bench/vim_tool/blob/HEAD/bench_tool/converter_sequence.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1df766fe5cb1847f"}},{"code_sha256_prefix":"b761892a6574af53","entry":"completed","repo":"vim-bench/vim_tool","repo_kind":"official","path":"vlmeval/tools.py","file_url":"https://github.com/vim-bench/vim_tool/blob/HEAD/vlmeval/tools.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b761892a6574af53"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}