{"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/adaptvision-dynamic-input-scaling-in-mllms","title":"AdaptVision: Dynamic Input Scaling in MLLMs for Versatile Scene Understanding","arxiv_id":"2408.16986","date":"2024-08-30","proceeding":null,"authors":["Yonghui Wang","Wengang Zhou","Hao Feng","Houqiang Li"],"abstract":"Over the past few years, the advancement of Multimodal Large Language Models (MLLMs) has captured the wide interest of researchers, leading to numerous innovations to enhance MLLMs' comprehension. In this paper, we present AdaptVision, a multimodal large language model specifically designed to dynamically process input images at varying resolutions. We hypothesize that the requisite number of visual tokens for the model is contingent upon both the resolution and content of the input image. Generally, natural images with a lower information density can be effectively interpreted by the model using fewer visual tokens at reduced resolutions. In contrast, images containing textual content, such as documents with rich text, necessitate a higher number of visual tokens for accurate text interpretation due to their higher information density. Building on this insight, we devise a dynamic image partitioning module that adjusts the number of visual tokens according to the size and aspect ratio of images. This method mitigates distortion effects that arise from resizing images to a uniform resolution and dynamically optimizing the visual tokens input to the LLMs. Our model is capable of processing images with resolutions up to $1008\\times 1008$. Extensive experiments across various datasets demonstrate that our method achieves impressive performance in handling vision-language tasks in both natural and text-related scenes. The source code and dataset are now publicly available at \\url{https://github.com/harrytea/AdaptVision}.","url_abs":"https://arxiv.org/abs/2408.16986v1","url_pdf":"https://arxiv.org/pdf/2408.16986v1.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":"adaptvision-dynamic-input-scaling-in-mllms","repo_url":"https://github.com/harrytea/adaptvision","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"large-language-model","task_name":"Large Language Model"},{"task_slug":"multimodal-large-language-model","task_name":"Multimodal Large Language Model"},{"task_slug":"scene-understanding","task_name":"Scene Understanding"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2408.16986","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2408.16986"}},"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/harrytea/adaptvision","reach":{"status":"ok"}}],"summary":{"ran_draft_wrong":1,"ran":2,"unverified":2},"by_repo_kind":{"official":{"samples":5,"ran":3,"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":5,"samples":[{"code_sha256_prefix":"649fc48067a48529","entry":"find_all_linear_names","repo":"harrytea/adaptvision","repo_kind":"official","path":"llava/utils.py","file_url":"https://github.com/harrytea/adaptvision/blob/HEAD/llava/utils.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":"649fc48067a48529"}},{"code_sha256_prefix":"6efafc6dc832dd9e","entry":"process_grid_image","repo":"harrytea/adaptvision","repo_kind":"official","path":"llava/mm_utils.py","file_url":"https://github.com/harrytea/adaptvision/blob/HEAD/llava/mm_utils.py","link_basis":"first_harvest_node","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":"6efafc6dc832dd9e"}},{"code_sha256_prefix":"f709d6ab952461cb","entry":"sliding_window","repo":"harrytea/adaptvision","repo_kind":"official","path":"llava/mm_utils.py","file_url":"https://github.com/harrytea/adaptvision/blob/HEAD/llava/mm_utils.py","link_basis":"first_harvest_node","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":"f709d6ab952461cb"}},{"code_sha256_prefix":"b79ef6a64904cf94","entry":"build_vision_tower","repo":"harrytea/adaptvision","repo_kind":"official","path":"llava/model/multimodal_encoder/builder.py","file_url":"https://github.com/harrytea/adaptvision/blob/HEAD/llava/model/multimodal_encoder/builder.py","link_basis":"first_harvest_node","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":"b79ef6a64904cf94"}},{"code_sha256_prefix":"63cc748710f9a663","entry":"process_anyres_image","repo":"harrytea/adaptvision","repo_kind":"official","path":"llava/mm_utils.py","file_url":"https://github.com/harrytea/adaptvision/blob/HEAD/llava/mm_utils.py","link_basis":"first_harvest_node","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":"63cc748710f9a663"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}