[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"tool-zai-org--CogVLM":3,"similar-zai-org--CogVLM":86},{"id":4,"github_repo":5,"name":6,"description_en":7,"description_zh":8,"ai_summary_zh":8,"readme_en":9,"readme_zh":10,"quickstart_zh":11,"use_case_zh":12,"hero_image_url":13,"owner_login":14,"owner_name":15,"owner_avatar_url":16,"owner_bio":17,"owner_company":18,"owner_location":18,"owner_email":18,"owner_twitter":19,"owner_website":20,"owner_url":21,"languages":22,"stars":31,"forks":32,"last_commit_at":33,"license":34,"difficulty_score":35,"env_os":36,"env_gpu":37,"env_ram":36,"env_deps":38,"category_tags":45,"github_topics":47,"view_count":53,"oss_zip_url":18,"oss_zip_packed_at":18,"status":54,"created_at":55,"updated_at":56,"faqs":57,"releases":85},9045,"zai-org\u002FCogVLM","CogVLM","a state-of-the-art-level open visual language model | 多模态预训练模型","CogVLM 是一款强大的开源视觉语言模型，旨在让计算机像人类一样“看懂”图片并进行自然对话。它巧妙地将视觉专家模块与预训练语言模型结合，不仅能精准识别图像内容，还能在多轮对话中深入理解图文信息，有效解决了传统模型在复杂视觉问答、图像描述及细节推理上能力不足的难题。\n\n作为其进阶版本，CogAgent 进一步提升了图像分辨率支持，并独创了图形用户界面（GUI）智能体能力，能够理解屏幕截图并执行具体的点击、输入等操作，在自动化任务处理上表现卓越。这两个模型均在多个国际权威跨模态基准测试中达到了业界领先水平。\n\nCogVLM 系列非常适合 AI 研究人员探索多模态前沿技术，也便于开发者将其集成到智能客服、无障碍辅助或自动化办公等应用中。同时，项目提供了便捷的网页演示和本地部署方案，对希望体验先进图文交互能力的普通用户同样友好。凭借开放的源码和出色的性能，CogVLM 正成为连接视觉感知与语言理解的重要桥梁。","# CogVLM & CogAgent\n\n📗 [中文版README](.\u002FREADME_zh.md)\n\n🌟 **Jump to detailed introduction: [Introduction to CogVLM](#introduction-to-cogvlm)，\n🆕 [Introduction to CogAgent](#introduction-to-cogagent)**\n\n📔 For more detailed usage information, please refer to: [CogVLM & CogAgent's technical documentation (in Chinese)](https:\u002F\u002Fzhipu-ai.feishu.cn\u002Fwiki\u002FLXQIwqo1OiIVTykMh9Lc3w1Fn7g) \n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd>\n      \u003Ch2> CogVLM \u003C\u002Fh2>\n      \u003Cp> 📖  Paper: \u003Ca href=\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2311.03079\">CogVLM: Visual Expert for Pretrained Language Models\u003C\u002Fa>\u003C\u002Fp>\n      \u003Cp>\u003Cb>CogVLM\u003C\u002Fb> is a powerful open-source visual language model (VLM). CogVLM-17B has 10 billion visual parameters and 7 billion language parameters, \u003Cb>supporting image understanding and multi-turn dialogue with a resolution of 490*490\u003C\u002Fb>.\u003C\u002Fp>\n      \u003Cp>\u003Cb>CogVLM-17B achieves state-of-the-art performance on 10 classic cross-modal benchmarks\u003C\u002Fb>, including NoCaps, Flicker30k captioning, RefCOCO, RefCOCO+, RefCOCOg, Visual7W, GQA, ScienceQA, VizWiz VQA and TDIUC.\u003C\u002Fp>\n    \u003C\u002Ftd>\n    \u003Ctd>\n      \u003Ch2> CogAgent \u003C\u002Fh2>\n      \u003Cp> 📖  Paper: \u003Ca href=\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2312.08914\">CogAgent: A Visual Language Model for GUI Agents \u003C\u002Fa>\u003C\u002Fp>\n      \u003Cp>\u003Cb>CogAgent\u003C\u002Fb> is an open-source visual language model improved based on CogVLM. CogAgent-18B has 11 billion visual parameters and 7 billion language parameters, \u003Cb>supporting image understanding at a resolution of 1120*1120\u003C\u002Fb>. \u003Cb>On top of the capabilities of CogVLM, it further possesses GUI image Agent capabilities\u003C\u002Fb>.\u003C\u002Fp>\n      \u003Cp> \u003Cb>CogAgent-18B achieves state-of-the-art generalist performance on 9 classic cross-modal benchmarks\u003C\u002Fb>, including VQAv2, OK-VQ, TextVQA, ST-VQA, ChartQA, infoVQA, DocVQA, MM-Vet, and POPE. \u003Cb>It significantly surpasses existing models on GUI operation datasets\u003C\u002Fb> including AITW and Mind2Web.\u003C\u002Fp>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd colspan=\"2\" align=\"center\">\n      \u003Cp>🌐 Web Demo for both CogVLM2: \u003Ca href=\"http:\u002F\u002F36.103.203.44:7861\">this link\u003C\u002Fa>\u003C\u002Fp>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n\n**Table of Contents**\n\n- [CogVLM \\& CogAgent](#cogvlm--cogagent)\n    - [Release](#release)\n    - [Get Started](#get-started)\n        - [Option 1: Inference Using Web Demo.](#option-1-inference-using-web-demo)\n        - [Option 2：Deploy CogVLM \u002F CogAgent by yourself](#option-2deploy-cogvlm--cogagent-by-yourself)\n            - [Situation 2.1 CLI (SAT version)](#situation-21-cli-sat-version)\n            - [Situation 2.2 CLI (Huggingface version)](#situation-22-cli-huggingface-version)\n            - [Situation 2.3 Web Demo](#situation-23-web-demo)\n        - [Option 3：Finetuning CogAgent \u002F CogVLM](#option-3finetuning-cogagent--cogvlm)\n        - [Option 4: OpenAI Vision format](#option-4-openai-vision-format)\n        - [Hardware requirement](#hardware-requirement)\n        - [Model checkpoints](#model-checkpoints)\n    - [Introduction to CogVLM](#introduction-to-cogvlm)\n        - [Examples](#examples)\n    - [Introduction to CogAgent](#introduction-to-cogagent)\n        - [GUI Agent Examples](#gui-agent-examples)\n    - [Cookbook](#cookbook)\n        - [Task Prompts](#task-prompts)\n        - [Which --version to use](#which---version-to-use)\n        - [FAQ](#faq)\n    - [License](#license)\n    - [Citation \\& Acknowledgements](#citation--acknowledgements)\n\n## Release\n- 🔥🔥🔥  **News**: ```2024\u002F5\u002F20```: We released the **next generation of model, [CogVLM2](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM2)**, which is based on llama3-8b and on the par of (or better than) GPT-4V in most cases! DOWNLOAD and TRY!\n- 🔥🔥  **News**: ```2024\u002F4\u002F5```: [CogAgent](https:\u002F\u002Farxiv.org\u002Fabs\u002F2312.08914) was selected as a CVPR 2024 Highlights!\n- 🔥  **News**: ```2023\u002F12\u002F26```: We have released the [CogVLM-SFT-311K](dataset.md) dataset, \n  which contains over 150,000 pieces of data that we used for **CogVLM v1.0 only** training. Welcome to follow and use.\n- **News**: ```2023\u002F12\u002F18```: **New Web UI Launched!** We have launched a new web UI based on Streamlit,\n  users can painlessly talk to CogVLM, CogAgent in our UI. Have a better user experience.\n- **News**: ```2023\u002F12\u002F15```: **CogAgent Officially Launched!** CogAgent is an image understanding model developed\n  based on CogVLM. It features **visual-based GUI Agent capabilities** and has further enhancements in image\n  understanding. It supports image input with a resolution of 1120*1120, and possesses multiple abilities including\n  multi-turn dialogue with images, GUI Agent, Grounding, and more.\n\n- **News**: ```2023\u002F12\u002F8``` We have updated the checkpoint of cogvlm-grounding-generalist to\n  cogvlm-grounding-generalist-v1.1, with image augmentation during training, therefore more robust.\n  See [details](#introduction-to-cogvlm).\n\n- **News**: ```2023\u002F12\u002F7``` CogVLM supports **4-bit quantization** now! You can inference with just **11GB** GPU memory!\n\n- **News**: ```2023\u002F11\u002F20``` We have updated the checkpoint of cogvlm-chat to cogvlm-chat-v1.1, unified the versions of\n  chat and VQA, and refreshed the SOTA on various datasets. See [details](#introduction-to-cogvlm)\n\n- **News**: ```2023\u002F11\u002F20``` We release **[cogvlm-chat](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-chat-hf)**, **[cogvlm-grounding-generalist](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-grounding-generalist-hf)\u002F[base](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-grounding-base-hf)**, **[cogvlm-base-490](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-490-hf)\u002F[224](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-224-hf)** on 🤗Huggingface. you can infer with transformers in [a few lines of code](#situation-22-cli-huggingface-version)now!\n\n- ```2023\u002F10\u002F27``` CogVLM bilingual version is available [online](https:\u002F\u002Fchatglm.cn\u002F)! Welcome to try it out!\n\n- ```2023\u002F10\u002F5``` CogVLM-17B released。\n\n## Get Started\n\n### Option 1: Inference Using Web Demo.\n\n* Click here to enter [CogVLM2 Demo](http:\u002F\u002F36.103.203.44:7861\u002F)。\n\nIf you need to use Agent and Grounding functions, please refer to [Cookbook - Task Prompts](#task-prompts)\n\n### Option 2：Deploy CogVLM \u002F CogAgent by yourself\n\nWe support two GUIs for model inference, **CLI** and **web demo** . If you want to use it in your python code, it is\neasy to modify the CLI scripts for your case.\n\nFirst, we need to install the dependencies.\n\n```bash\n# CUDA >= 11.8\npip install -r requirements.txt\npython -m spacy download en_core_web_sm\n```\n\n**All code for inference is located under the ``basic_demo\u002F`` directory. Please switch to this directory first before\nproceeding with further operations.**\n\n#### Situation 2.1 CLI (SAT version)\n\nRun CLI demo via:\n\n```bash\n# CogAgent\npython cli_demo_sat.py --from_pretrained cogagent-chat --version chat --bf16  --stream_chat\npython cli_demo_sat.py --from_pretrained cogagent-vqa --version chat_old --bf16  --stream_chat\n\n# CogVLM\npython cli_demo_sat.py --from_pretrained cogvlm-chat --version chat_old --bf16  --stream_chat\npython cli_demo_sat.py --from_pretrained cogvlm-grounding-generalist --version base --bf16  --stream_chat\n```\n\nThe program will automatically download the sat model and interact in the command line. You can generate replies by\nentering instructions and pressing enter.\nEnter `clear` to clear the conversation history and `stop` to stop the program.\n\nWe also support model parallel inference, which splits model to multiple (2\u002F4\u002F8) GPUs. `--nproc-per-node=[n]` in the\nfollowing command controls the number of used GPUs.\n\n```\ntorchrun --standalone --nnodes=1 --nproc-per-node=2 cli_demo_sat.py --from_pretrained cogagent-chat --version chat --bf16\n```\n\n- If you want to manually download the weights, you can replace the path after ``--from_pretrained`` with the model\n  path.\n\n- Our model supports SAT's **4-bit quantization** and **8-bit quantization**.\n  You can change ``--bf16`` to ``--fp16``, or ``--fp16 --quant 4``, or ``--fp16 --quant 8``.\n\n  For example\n\n    ```bash\n    python cli_demo_sat.py --from_pretrained cogagent-chat --fp16 --quant 8 --stream_chat\n    python cli_demo_sat.py --from_pretrained cogvlm-chat-v1.1 --fp16 --quant 4 --stream_chat\n    # In SAT version，--quant should be used with --fp16\n    ```\n\n- The program provides the following hyperparameters to control the generation process:\n    ```\n    usage: cli_demo_sat.py [-h] [--max_length MAX_LENGTH] [--top_p TOP_P] [--top_k TOP_K] [--temperature TEMPERATURE]\n\n    optional arguments:\n    -h, --help            show this help message and exit\n    --max_length MAX_LENGTH\n                            max length of the total sequence\n    --top_p TOP_P         top p for nucleus sampling\n    --top_k TOP_K         top k for top k sampling\n    --temperature TEMPERATURE\n                            temperature for sampling\n    ```\n\n- Click [here](#which---version-to-use) to view the correspondence between different models and the ``--version``\n  parameter.\n\n#### Situation 2.2 CLI (Huggingface version)\n\nRun CLI demo via:\n\n```bash\n# CogAgent\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogagent-chat-hf --bf16\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogagent-vqa-hf --bf16\n\n# CogVLM\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-chat-hf --bf16\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-grounding-generalist-hf --bf16\n```\n\n- If you want to manually download the weights, you can replace the path after ``--from_pretrained`` with the model\n  path.\n\n- You can change ``--bf16`` to ``--fp16``, or ``--quant 4``. For example, our model supports Huggingface's **4-bit\n  quantization**:\n\n    ```bash\n    python cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-chat-hf --quant 4\n    ```\n\n#### Situation 2.3 Web Demo\n\nWe also offer a local web demo based on Gradio. First, install Gradio by running: `pip install gradio`. Then download\nand enter this repository and run `web_demo.py`. See the next section for detailed usage:\n\n```bash\npython web_demo.py --from_pretrained cogagent-chat --version chat --bf16\npython web_demo.py --from_pretrained cogagent-vqa --version chat_old --bf16\npython web_demo.py --from_pretrained cogvlm-chat-v1.1 --version chat_old --bf16\npython web_demo.py --from_pretrained cogvlm-grounding-generalist --version base --bf16\n```\n\nThe GUI of the web demo looks like:\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fweb_demo-min.png width=70% \u002F>\n\u003C\u002Fdiv>\n\n### Option 3：Finetuning CogAgent \u002F CogVLM\n\nYou may want to use CogVLM in your own task, which needs a **different output style or domain knowledge**. **All code\nfor finetuning is located under the ``finetune_demo\u002F`` directory.**\n\nWe here provide a finetuning example for **Captcha Recognition** using lora.\n\n1. Start by downloading the [Captcha Images dataset](https:\u002F\u002Fwww.kaggle.com\u002Fdatasets\u002Faadhavvignesh\u002Fcaptcha-images). Once\n   downloaded, extract the contents of the ZIP file.\n\n2. To create a train\u002Fvalidation\u002Ftest split in the ratio of 80\u002F5\u002F15, execute the following:\n    ```bash\n    python utils\u002Fsplit_dataset.py\n    ```\n\n3. Start the fine-tuning process with this command:\n\n    ```bash\n    bash finetune_demo\u002Ffinetune_(cogagent\u002Fcogvlm)_lora.sh\n    ```\n\n4. Merge the model to `model_parallel_size=1`: (replace the 4 below with your training `MP_SIZE`)\n\n    ```bash\n    torchrun --standalone --nnodes=1 --nproc-per-node=4 utils\u002Fmerge_model.py --version base --bf16 --from_pretrained .\u002Fcheckpoints\u002Fmerged_lora_(cogagent\u002Fcogvlm490\u002Fcogvlm224)\n    ```\n\n5. Evaluate the performance of your model.\n    ```bash\n    bash finetune_demo\u002Fevaluate_(cogagent\u002Fcogvlm).sh\n    ```\n\n### Option 4: OpenAI Vision format\n\nWe provide the same API examples as `GPT-4V`, which you can view in `openai_demo`.\n\n1. First, start the node\n\n```\npython openai_demo\u002Fopenai_api.py\n```\n\n2. Next, run the request example node, which is an example of a continuous dialogue\n\n```\npython openai_demo\u002Fopenai_api_request.py\n```\n\n3. You will get output similar to the following\n\n```\nThis image showcases a tranquil natural scene with a wooden pathway leading through a field of lush green grass. In the distance, there are trees and some scattered structures, possibly houses or small buildings. The sky is clear with a few scattered clouds, suggesting a bright and sunny day.\n```\n\n### Hardware requirement\n\n* Model Inference:\n\n  For INT4 quantization: 1 * RTX 3090(24G)   (CogAgent takes ~ 12.6GB, CogVLM takes ~ 11GB)\n\n  For FP16: 1 * A100(80G) or 2 * RTX 3090(24G)\n\n* Finetuning:\n\n  For FP16: 4 * A100(80G) *[Recommend]* or 8* RTX 3090(24G).\n\n### Model checkpoints\n\nIf you run the `basic_demo\u002Fcli_demo*.py` from the code repository, it will automatically download SAT or Hugging Face\nweights. Alternatively, you can choose to manually download the necessary weights.\n\n- CogAgent\n\n  |   Model name    | Input resolution |                             Introduction                             | Huggingface model | SAT model |\n  | :-----------: | :----: | :----------------------------------------------------------: | :------: | :-------: |\n  | cogagent-chat |  1120  | Chat version of CogAgent. Supports GUI Agent, multiple-round  chat and visual grounding. |  [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogagent-chat-hf) \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogagent-chat-hf)    |   [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogAgent\u002Ftree\u002Fmain)\u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogAgent)           |\n  | cogagent-vqa |  1120  | VQA version of CogAgent. Has stronger capabilities in single-turn visual dialogue. Recommended for VQA benchmarks. |  [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogagent-vqa-hf)\u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogagent-vqa-hf)        |    [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogAgent\u002Ftree\u002Fmain) \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogAgent)      |\nc\n- CogVLM\n\n  |          Model name           | Input resolution |                           Introduction                            | Huggingface model | SAT model |\n  | :-------------------------: | :----: | :-------------------------------------------------------: | :------: | :-------: |\n  |         cogvlm-chat-v1.1         |  490   |  Supports multiple rounds of chat and vqa simultaneously, with different prompts.   |  [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-chat-hf) \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-chat-hf)        |    [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain)  \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)       |\n  |       cogvlm-base-224       |  224   |               The original checkpoint after text-image pretraining.               |   [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-224-hf) \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-base-224-hf)       |     [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain) \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)       |\n  |       cogvlm-base-490       |  490   |      Amplify the resolution to 490 through position encoding interpolation from `cogvlm-base-224`.      |   [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-490-hf) \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-base-490-hf)       |     [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain) \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)       |\n  | cogvlm-grounding-generalist |  490   | This checkpoint supports different visual grounding tasks, e.g. REC, Grounding Captioning, etc.  |    [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-grounding-generalist-hf)  \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-grounding-generalist-hf)       |     [HF link](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain)   \u003Cbr> [OpenXLab link](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)     |\n\n## Introduction to CogVLM\n\n- CogVLM is a powerful **open-source visual language model** (**VLM**). CogVLM-17B has 10 billion vision parameters and\n  7 billion language parameters.\n\n- CogVLM-17B achieves state-of-the-art performance on 10 classic cross-modal benchmarks, including NoCaps, Flicker30k\n  captioning, RefCOCO, RefCOCO+, RefCOCOg, Visual7W, GQA, ScienceQA, VizWiz VQA and TDIUC, and rank the 2nd on VQAv2,\n  OKVQA, TextVQA, COCO captioning, etc., **surpassing or matching PaLI-X 55B**. CogVLM can\n  also [chat with you](http:\u002F\u002F36.103.203.44:7861) about images.\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fmetrics-min.png width=50% \u002F>\n\u003C\u002Fdiv>\n\n\u003Cdetails>\n\u003Csummary>Click to view results on MM-VET, POPE, TouchStone. \u003C\u002Fsummary>\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Ctd>Method\u003C\u002Ftd>\n        \u003Ctd>LLM\u003C\u002Ftd>\n        \u003Ctd>MM-VET\u003C\u002Ftd>\n        \u003Ctd>POPE(adversarial)\u003C\u002Ftd>\n        \u003Ctd>TouchStone\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>BLIP-2\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>22.4\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>Otter\u003C\u002Ftd>\n        \u003Ctd>MPT-7B\u003C\u002Ftd>\n        \u003Ctd>24.7\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>MiniGPT4\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>24.4\u003C\u002Ftd>\n        \u003Ctd>70.4\u003C\u002Ftd>\n        \u003Ctd>531.7\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>InstructBLIP\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>25.6\u003C\u002Ftd>\n        \u003Ctd>77.3\u003C\u002Ftd>\n        \u003Ctd>552.4\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>LLaMA-Adapter v2\u003C\u002Ftd>\n        \u003Ctd>LLaMA-7B\u003C\u002Ftd>\n        \u003Ctd>31.4\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>590.1\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>LLaVA\u003C\u002Ftd>\n        \u003Ctd>LLaMA2-7B\u003C\u002Ftd>\n        \u003Ctd>28.1\u003C\u002Ftd>\n        \u003Ctd>66.3\u003C\u002Ftd>\n        \u003Ctd>602.7\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>mPLUG-Owl\u003C\u002Ftd>\n        \u003Ctd>LLaMA-7B\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>66.8\u003C\u002Ftd>\n        \u003Ctd>605.4\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>LLaVA-1.5\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>36.3\u003C\u002Ftd>\n        \u003Ctd>84.5\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>Emu\u003C\u002Ftd>\n        \u003Ctd>LLaMA-13B\u003C\u002Ftd>\n        \u003Ctd>36.3\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>Qwen-VL-Chat\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>645.2\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>DreamLLM\u003C\u002Ftd>\n        \u003Ctd>Vicuna-7B\u003C\u002Ftd>\n        \u003Ctd>35.9\u003C\u002Ftd>\n        \u003Ctd>76.5\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>CogVLM\u003C\u002Ftd>\n        \u003Ctd>Vicuna-7B\u003C\u002Ftd>\n        \u003Ctd> \u003Cb>52.8\u003C\u002Fb> \u003C\u002Ftd>\n        \u003Ctd>\u003Cb>87.6\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>742.0\u003C\u002Fb>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>Click to view results of cogvlm-grounding-generalist-v1.1. \u003C\u002Fsummary>\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>RefCOCO\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>RefCOCO+\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>RefCOCOg\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>Visual7W\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>val\u003C\u002Ftd>\n        \u003Ctd>testA\u003C\u002Ftd>\n        \u003Ctd>testB\u003C\u002Ftd>\n        \u003Ctd>val\u003C\u002Ftd>\n        \u003Ctd>testA\u003C\u002Ftd>\n        \u003Ctd>testB\u003C\u002Ftd>\n        \u003Ctd>val\u003C\u002Ftd>\n        \u003Ctd>test\u003C\u002Ftd>\n        \u003Ctd>test\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>cogvim-grounding-generalist\u003C\u002Ftd>\n        \u003Ctd>92.51\u003C\u002Ftd>\n        \u003Ctd>93.95\u003C\u002Ftd>\n        \u003Ctd>88.73\u003C\u002Ftd>\n        \u003Ctd>87.52\u003C\u002Ftd>\n        \u003Ctd>91.81\u003C\u002Ftd>\n        \u003Ctd>81.43\u003C\u002Ftd>\n        \u003Ctd>89.46\u003C\u002Ftd>\n        \u003Ctd>90.09\u003C\u002Ftd>\n        \u003Ctd>90.96\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>cogvim-grounding-generalist-v1.1\u003C\u002Ftd>\n        \u003Ctd>**92.76**\u003C\u002Ftd>\n        \u003Ctd>**94.75**\u003C\u002Ftd>\n        \u003Ctd>**88.99**\u003C\u002Ftd>\n        \u003Ctd>**88.68**\u003C\u002Ftd>\n        \u003Ctd>**92.91**\u003C\u002Ftd>\n        \u003Ctd>**83.39**\u003C\u002Ftd>\n        \u003Ctd>**89.75**\u003C\u002Ftd>\n        \u003Ctd>**90.79**\u003C\u002Ftd>\n        \u003Ctd>**91.05**\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\u003C\u002Fdetails>\n\n### Examples\n\n\u003C!-- CogVLM is powerful for answering various types of visual questions, including **Detailed Description & Visual Question Answering**,  **Complex Counting**, **Visual Math Problem Solving**, **OCR-Free Reasonging**, **OCR-Free Visual Question Answering**, **World Knowledge**, **Referring Expression Comprehension**, **Programming with Visual Input**, **Grounding with Caption**, **Grounding Visual Question Answering**, etc. -->\n\n* CogVLM can accurately describe images in details with **very few hallucinations**.\n    \u003Cdetails>\n    \u003Csummary>Click for comparison with LLAVA-1.5 and MiniGPT-4.\u003C\u002Fsummary>\n\n    \u003Cimg src=assets\u002Fllava-comparison-min.png width=50% \u002F>\n\n    \u003C\u002Fdetails>\n    \u003Cbr>\n\n* CogVLM can understand and answer various types of questions, and has a **visual grounding** version.\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fpear_grounding.png width=50% \u002F>\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n* CogVLM sometimes captures more detailed content than GPT-4V(ision).\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fcompare-min.png width=50% \u002F>\n\u003C\u002Fdiv>\n\n\u003C!-- ![compare](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzai-org_CogVLM_readme_f7f35dfc1155.png) -->\n\u003Cbr> \n\n\u003Cdetails>\n\u003Csummary>Click to expand more examples.\u003C\u002Fsummary>\n\n![Chat Examples](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzai-org_CogVLM_readme_10130764ae1f.png)\n\n\u003C\u002Fdetails>\n\n## Introduction to CogAgent\n\nCogAgent is an open-source visual language model improved based on CogVLM. CogAgent-18B has 11 billion visual parameters\nand 7 billion language parameters\n\nCogAgent-18B achieves state-of-the-art generalist performance on 9 classic cross-modal benchmarks, including VQAv2,\nOK-VQ, TextVQA, ST-VQA, ChartQA, infoVQA, DocVQA, MM-Vet, and POPE. It significantly surpasses existing models on GUI\noperation datasets such as AITW and Mind2Web.\n\nIn addition to all the features already present in CogVLM (visual multi-round dialogue, visual grounding), CogAgent:\n\n1. Supports higher resolution visual input and dialogue question-answering. **It supports ultra-high-resolution image\n   inputs of 1120x1120.**\n\n2. **Possesses the capabilities of a visual Agent**, being able to return a plan, next action, and specific operations\n   with coordinates for any given task on any GUI screenshot.\n\n3. **Enhanced GUI-related question-answering capabilities**, allowing it to handle questions about any GUI screenshot,\n   such as web pages, PC apps, mobile applications, etc.\n\n4. Enhanced capabilities in OCR-related tasks through improved pre-training and fine-tuning.\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fcogagent_function.jpg width=60% \u002F>\n\u003C\u002Fdiv>\n\n### GUI Agent Examples\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fcogagent_main_demo.jpg width=90% \u002F>\n\u003C\u002Fdiv>\n\n## Cookbook\n\n### Task Prompts\n\n1. **General Multi-Round Dialogue**: Say whatever you want.\n\n2. **GUI Agent Task**: Use the [Agent template](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L761)\n   and replace \\\u003CTASK\\> with the task instruction enclosed in double quotes. This query can make CogAgent infer Plan and\n   Next Action. If adding ``(with grounding)`` at the end of the query, the model will return a formalized action\n   representation with coordinates.\n\nFor example, to ask the model how to complete the task \"Search for CogVLM\" on a current GUI screenshot, follow these\nsteps:\n\n1. Randomly select a template from\n   the [Agent template](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L761). Here, we\n   choose ``What steps do I need to take to \u003CTASK>?``.\n\n2. Replace \u003CTASK> with the task instruction enclosed in double quotes, for\n   example, ``What steps do I need to take to \"Search for CogVLM\"?`` . Inputting this to the model yields:\n\n> Plan: 1. Type 'CogVLM' into the Google search bar. 2. Review the search results that appear. 3. Click on a relevant\n> result to read more about CogVLM or access further resources.\n>\n> Next Action: Move the cursor to the Google search bar, and type 'CogVLM' into it.\n\n3. If adding ``(with grounding)`` at the end, i.e. changing the input\n   to ``What steps do I need to take to \"Search for CogVLM\"?(with grounding)``, the output of CogAgent would be:\n\n> Plan: 1. Type 'CogVLM' into the Google search bar. 2. Review the search results that appear. 3. Click on a relevant\n> result to read more about CogVLM or access further resources.\n>\n> Next Action: Move the cursor to the Google search bar, and type 'CogVLM' into it.\n> Grounded Operation:[combobox] Search -> TYPE: CogVLM at the box [[212,498,787,564]]\n\nTip: For GUI Agent tasks, it is recommended to conduct only single-round dialogues for each image for better results.\n\n3. **Visual Grounding**. Three modes of grounding are supported:\n\n    - Image description with grounding coordinates (bounding box). Use any template\n      from [caption_with_box template](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L537) as model\n      input. For example:\n\n   > Can you provide a description of the image and include the coordinates [[x0,y0,x1,y1]] for each mentioned object?\n\n    - Returning grounding coordinates (bounding box) based on the description of objects. Use any template\n      from [caption2box template](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L345),\n      replacing ``\u003Cexpr>`` with the object's description. For example:\n\n   > Can you point out *children in blue T-shirts* in the image and provide the bounding boxes of their location?\n\n    - Providing a description based on bounding box coordinates. Use a template\n      from [box2caption template](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L400),\n      replacing ``\u003Cobjs>`` with the position coordinates. For example:\n\n   > Tell me what you see within the designated area *[[086,540,400,760]]* in the picture.\n\n**Format of coordination:** The bounding box coordinates in the model's input and output use the\nformat ``[[x1, y1, x2, y2]]``, with the origin at the top left corner, the x-axis to the right, and the y-axis\ndownward. (x1, y1) and (x2, y2) are the top-left and bottom-right corners, respectively, with values as relative\ncoordinates multiplied by 1000 (prefixed with zeros to three digits).\n\n### Which --version to use\n\nDue to differences in model functionalities, different model versions may have distinct ``--version`` specifications for\nthe text processor, meaning the format of the prompts used varies.\n\n|         model name          | --version |\n|:---------------------------:|:---------:|\n|        cogagent-chat        |   chat    |\n|        cogagent-vqa         | chat_old  |\n|         cogvlm-chat         | chat_old  |\n|      cogvlm-chat-v1.1       | chat_old  |\n| cogvlm-grounding-generalist |   base    |\n|       cogvlm-base-224       |   base    |\n|       cogvlm-base-490       |   base    |\n\n### FAQ\n\n* If you have trouble in accessing huggingface.co, you can add `--local_tokenizer \u002Fpath\u002Fto\u002Fvicuna-7b-v1.5` to load the\n  tokenizer.\n* If you have trouble in automatically downloading model with 🔨[SAT](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FSwissArmyTransformer), try\n  downloading from 🤖[modelscope](https:\u002F\u002Fwww.modelscope.cn\u002Fmodels\u002FZhipuAI\u002FCogVLM\u002Fsummary) or\n  🤗[huggingface](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM) or 💡[wisemodel](https:\u002F\u002Fwww.wisemodel.cn\u002Fmodels\u002FZhipuAI\u002FCogVLM)\n  manually.\n* Download model using 🔨[SAT](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FSwissArmyTransformer), the model will be saved to the default\n  location `~\u002F.sat_models`. Change the default location by setting the environment variable `SAT_HOME`. For example, if\n  you want to save the model to `\u002Fpath\u002Fto\u002Fmy\u002Fmodels`, you can run `export SAT_HOME=\u002Fpath\u002Fto\u002Fmy\u002Fmodels` before running\n  the python command.\n\n## License\n\nThe code in this repository is open source under the [Apache-2.0 license](.\u002FLICENSE), while the use of the CogVLM model\nweights must comply with the [Model License](.\u002FMODEL_LICENSE).\n\n## Citation & Acknowledgements\n\nIf you find our work helpful, please consider citing the following papers\n\n```\n@misc{wang2023cogvlm,\n      title={CogVLM: Visual Expert for Pretrained Language Models}, \n      author={Weihan Wang and Qingsong Lv and Wenmeng Yu and Wenyi Hong and Ji Qi and Yan Wang and Junhui Ji and Zhuoyi Yang and Lei Zhao and Xixuan Song and Jiazheng Xu and Bin Xu and Juanzi Li and Yuxiao Dong and Ming Ding and Jie Tang},\n      year={2023},\n      eprint={2311.03079},\n      archivePrefix={arXiv},\n      primaryClass={cs.CV}\n}\n\n@misc{hong2023cogagent,\n      title={CogAgent: A Visual Language Model for GUI Agents}, \n      author={Wenyi Hong and Weihan Wang and Qingsong Lv and Jiazheng Xu and Wenmeng Yu and Junhui Ji and Yan Wang and Zihan Wang and Yuxiao Dong and Ming Ding and Jie Tang},\n      year={2023},\n      eprint={2312.08914},\n      archivePrefix={arXiv},\n      primaryClass={cs.CV}\n}\n\n```\n\nIn the instruction fine-tuning phase of the CogVLM, there are some English image-text data from\nthe [MiniGPT-4](https:\u002F\u002Fgithub.com\u002FVision-CAIR\u002FMiniGPT-4), [LLAVA](https:\u002F\u002Fgithub.com\u002Fhaotian-liu\u002FLLaVA), [LRV-Instruction](https:\u002F\u002Fgithub.com\u002FFuxiaoLiu\u002FLRV-Instruction), [LLaVAR](https:\u002F\u002Fgithub.com\u002FSALT-NLP\u002FLLaVAR)\nand [Shikra](https:\u002F\u002Fgithub.com\u002Fshikras\u002Fshikra) projects, as well as many classic cross-modal work datasets. We\nsincerely thank them for their contributions.\n","# CogVLM & CogAgent\n\n📗 [中文版README](.\u002FREADME_zh.md)\n\n🌟 **跳转至详细介绍：[CogVLM 介绍](#introduction-to-cogvlm)，\n🆕 [CogAgent 介绍](#introduction-to-cogagent)**\n\n📔 更多详细的使用信息，请参阅：[CogVLM & CogAgent 的技术文档（中文）](https:\u002F\u002Fzhipu-ai.feishu.cn\u002Fwiki\u002FLXQIwqo1OiIVTykMh9Lc3w1Fn7g) \n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd>\n      \u003Ch2> CogVLM \u003C\u002Fh2>\n      \u003Cp> 📖  论文： \u003Ca href=\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2311.03079\">CogVLM：预训练语言模型的视觉专家\u003C\u002Fa>\u003C\u002Fp>\n      \u003Cp>\u003Cb>CogVLM\u003C\u002Fb> 是一款功能强大的开源视觉语言模型（VLM）。CogVLM-17B 拥有 100 亿个视觉参数和 70 亿个语言参数，\u003Cb>支持分辨率为 490*490 的图像理解及多轮对话\u003C\u002Fb>。\u003C\u002Fp>\n      \u003Cp>\u003Cb>CogVLM-17B 在 10 个经典的跨模态基准测试中取得了最先进水平\u003C\u002Fb>, 包括 NoCaps、Flicker30k 字幕生成、RefCOCO、RefCOCO+、RefCOCOg、Visual7W、GQA、ScienceQA、VizWiz VQA 和 TDIUC。\u003C\u002Fp>\n    \u003C\u002Ftd>\n    \u003Ctd>\n      \u003Ch2> CogAgent \u003C\u002Fh2>\n      \u003Cp> 📖  论文： \u003Ca href=\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2312.08914\">CogAgent：用于 GUI 代理的视觉语言模型\u003C\u002Fa>\u003C\u002Fp>\n      \u003Cp>\u003Cb>CogAgent\u003C\u002Fb> 是在 CogVLM 基础上改进的开源视觉语言模型。CogAgent-18B 拥有 110 亿个视觉参数和 70 亿个语言参数，\u003Cb>支持分辨率为 1120*1120 的图像理解\u003C\u002Fb>。它\u003Cb>在 CogVLM 能力的基础上，进一步具备 GUI 图像代理能力\u003C\u002Fb>。\u003C\u002Fp>\n      \u003Cp>\u003Cb>CogAgent-18B 在 9 个经典跨模态基准测试中达到了最先进的通用性能\u003C\u002Fb>, 包括 VQAv2、OK-VQ、TextVQA、ST-VQA、ChartQA、infoVQA、DocVQA、MM-Vet 和 POPE。\u003Cb>在 GUI 操作数据集上显著超越了现有模型\u003C\u002Fb>, 包括 AITW 和 Mind2Web。\u003C\u002Fp>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd colspan=\"2\" align=\"center\">\n      \u003Cp>🌐 CogVLM2 的网页演示： \u003Ca href=\"http:\u002F\u002F36.103.203.44:7861\">点击此处\u003C\u002Fa>\u003C\u002Fp>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n\n**目录**\n\n- [CogVLM & CogAgent](#cogvlm--cogagent)\n    - [发布](#release)\n    - [开始使用](#get-started)\n        - [选项 1：使用网页演示进行推理。](#option-1-inference-using-web-demo)\n        - [选项 2：自行部署 CogVLM \u002F CogAgent](#option-2deploy-cogvlm--cogagent-by-yourself)\n            - [情况 2.1 CLI（SAT 版本）](#situation-21-cli-sat-version)\n            - [情况 2.2 CLI（Huggingface 版本）](#situation-22-cli-huggingface-version)\n            - [情况 2.3 网页演示](#situation-23-web-demo)\n        - [选项 3：微调 CogAgent \u002F CogVLM](#option-3finetuning-cogagent--cogvlm)\n        - [选项 4：OpenAI Vision 格式](#option-4-openai-vision-format)\n        - [硬件要求](#hardware-requirement)\n        - [模型检查点](#model-checkpoints)\n    - [CogVLM 介绍](#introduction-to-cogvlm)\n        - [示例](#examples)\n    - [CogAgent 介绍](#introduction-to-cogagent)\n        - [GUI 代理示例](#gui-agent-examples)\n    - [食谱](#cookbook)\n        - [任务提示](#task-prompts)\n        - [使用哪个版本](#which---version-to-use)\n        - [常见问题解答](#faq)\n    - [许可证](#license)\n    - [引用与致谢](#citation--acknowledgements)\n\n## 发布\n- 🔥🔥🔥  **新闻**: ```2024年5月20日```: 我们发布了**下一代模型，[CogVLM2](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM2)**，该模型基于 llama3-8b，在大多数情况下与 GPT-4V 相当甚至更优！快来下载并体验吧！\n- 🔥🔥  **新闻**: ```2024年4月5日```: [CogAgent](https:\u002F\u002Farxiv.org\u002Fabs\u002F2312.08914) 被选为 CVPR 2024 的亮点之一！\n- 🔥  **新闻**: ```2023年12月26日```: 我们发布了 [CogVLM-SFT-311K](dataset.md) 数据集， \n  其中包含超过 15 万条数据，这些数据仅用于 **CogVLM v1.0 的训练**。欢迎关注并使用。\n- **新闻**: ```2023年12月18日```: **全新 Web UI 上线！** 我们基于 Streamlit 推出了新的 Web UI，\n  用户可以在我们的界面中轻松地与 CogVLM、CogAgent 交流，获得更好的用户体验。\n- **新闻**: ```2023年12月15日```: **CogAgent 正式发布！** CogAgent 是基于 CogVLM 开发的图像理解模型。它具有 **基于视觉的 GUI 代理能力**，并在图像理解方面进行了进一步增强。它支持分辨率为 1120*1120 的图像输入，并具备多种能力，包括与图像的多轮对话、GUI 代理、定位等。\n\n- **新闻**: ```2023年12月8日``` 我们将 cogvlm-grounding-generalist 的检查点更新为\n  cogvlm-grounding-generalist-v1.1，训练过程中加入了图像增强，因此更加 robust。详情请参见 [CogVLM 介绍](#introduction-to-cogvlm)。\n\n- **新闻**: ```2023年12月7日``` CogVLM 现在支持 **4-bit 量化**！您只需 **11GB** 的 GPU 内存即可进行推理！\n\n- **新闻**: ```2023年11月20日``` 我们将 cogvlm-chat 的检查点更新为 cogvlm-chat-v1.1，统一了聊天和 VQA 的版本，并在多个数据集上刷新了 SOTA。详情请参见 [CogVLM 介绍](#introduction-to-cogvlm)。\n\n- **新闻**: ```2023年11月20日``` 我们在 🤗Huggingface 上发布了 **[cogvlm-chat](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-chat-hf)**、**[cogvlm-grounding-generalist](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-grounding-generalist-hf)\u002F[base](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-grounding-base-hf)**、**[cogvlm-base-490](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-490-hf)\u002F[224](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-224-hf)**。现在您可以使用 [几行代码](#situation-22-cli-huggingface-version) 通过 transformers 进行推理！\n\n- ```2023年10月27日``` CogVLM 双语版本已上线 [在线](https:\u002F\u002Fchatglm.cn\u002F)！欢迎试用！\n\n- ```2023年10月5日``` CogVLM-17B 正式发布。\n\n## 开始使用\n\n### 选项 1：使用网页演示进行推理。\n\n* 点击此处进入 [CogVLM2 演示](http:\u002F\u002F36.103.203.44:7861\u002F)。\n\n如果您需要使用 Agent 和 Grounding 功能，请参考 [食谱 - 任务提示](#task-prompts)。\n\n### 选项 2：自行部署 CogVLM \u002F CogAgent\n\n我们支持两种用于模型推理的 GUI，分别是 **CLI** 和 **网页演示**。如果您想在自己的 Python 代码中使用它，可以轻松修改 CLI 脚本来适应您的需求。\n\n首先，我们需要安装依赖项。\n\n```bash\n# CUDA >= 11.8\npip install -r requirements.txt\npython -m spacy download en_core_web_sm\n```\n\n**所有推理相关的代码都位于 ``basic_demo\u002F`` 目录下。请先切换到该目录，再继续后续操作。**\n\n#### 情况 2.1 CLI（SAT 版本）\n\n通过以下命令运行 CLI 演示：\n\n```bash\n# CogAgent\npython cli_demo_sat.py --from_pretrained cogagent-chat --version chat --bf16  --stream_chat\npython cli_demo_sat.py --from_pretrained cogagent-vqa --version chat_old --bf16  --stream_chat\n\n# CogVLM\npython cli_demo_sat.py --from_pretrained cogvlm-chat --version chat_old --bf16  --stream_chat\npython cli_demo_sat.py --from_pretrained cogvlm-grounding-generalist --version base --bf16  --stream_chat\n```\n\n程序会自动下载SAT模型，并在命令行中进行交互。您可以通过输入指令并按回车键来生成回复。\n输入 `clear` 可以清除对话历史，输入 `stop` 则可停止程序。\n\n我们还支持模型并行推理，可以将模型拆分到多张（2\u002F4\u002F8）GPU上运行。以下命令中的 `--nproc-per-node=[n]` 参数用于控制使用的GPU数量。\n\n```\ntorchrun --standalone --nnodes=1 --nproc-per-node=2 cli_demo_sat.py --from_pretrained cogagent-chat --version chat --bf16\n```\n\n- 如果您希望手动下载权重，可以将 `--from_pretrained` 后的路径替换为模型路径。\n\n- 我们的模型支持SAT的**4位量化**和**8位量化**。\n您可以将 `--bf16` 改为 `--fp16`，或者使用 `--fp16 --quant 4`，或 `--fp16 --quant 8`。\n\n例如：\n\n    ```bash\n    python cli_demo_sat.py --from_pretrained cogagent-chat --fp16 --quant 8 --stream_chat\n    python cli_demo_sat.py --from_pretrained cogvlm-chat-v1.1 --fp16 --quant 4 --stream_chat\n    # 在SAT版本中，--quant 应与 --fp16 一起使用\n    ```\n\n- 程序提供了以下超参数来控制生成过程：\n    ```\n    usage: cli_demo_sat.py [-h] [--max_length MAX_LENGTH] [--top_p TOP_P] [--top_k TOP_K] [--temperature TEMPERATURE]\n\n    optional arguments:\n    -h, --help            显示此帮助信息并退出\n    --max_length MAX_LENGTH\n                            总序列的最大长度\n    --top_p TOP_P         核采样的top p值\n    --top_k TOP_K         top k采样的top k值\n    --temperature TEMPERATURE\n                            采样温度\n    ```\n\n- 点击[这里](#which---version-to-use)查看不同模型与 `--version` 参数的对应关系。\n\n#### 情况2.2 CLI（Huggingface版本）\n\n通过以下命令运行CLI演示：\n\n```bash\n# CogAgent\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogagent-chat-hf --bf16\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogagent-vqa-hf --bf16\n\n# CogVLM\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-chat-hf --bf16\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-grounding-generalist-hf --bf16\n```\n\n- 如果您想手动下载权重，可以将 `--from_pretrained` 后的路径替换为模型路径。\n\n- 您可以将 `--bf16` 改为 `--fp16`，或使用 `--quant 4`。例如，我们的模型支持Huggingface的**4位量化**：\n\n    ```bash\n    python cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-chat-hf --quant 4\n    ```\n\n#### 情况2.3 Web演示\n\n我们还提供基于Gradio的本地Web演示。首先，通过运行 `pip install gradio` 安装Gradio。然后下载并进入该仓库，运行 `web_demo.py`。详细用法请参见下一节：\n\n```bash\npython web_demo.py --from_pretrained cogagent-chat --version chat --bf16\npython web_demo.py --from_pretrained cogagent-vqa --version chat_old --bf16\npython web_demo.py --from_pretrained cogvlm-chat-v1.1 --version chat_old --bf16\npython web_demo.py --from_pretrained cogvlm-grounding-generalist --version base --bf16\n```\n\nWeb演示的界面如下所示：\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fweb_demo-min.png width=70% \u002F>\n\u003C\u002Fdiv>\n\n### 选项3：微调CogAgent \u002F CogVLM\n\n您可能希望在自己的任务中使用CogVLM，这需要**不同的输出风格或领域知识**。**所有微调代码都位于 `finetune_demo\u002F` 目录下。**\n\n这里我们提供一个使用LoRA进行**验证码识别**的微调示例。\n\n1. 首先下载[Captcha Images数据集](https:\u002F\u002Fwww.kaggle.com\u002Fdatasets\u002Faadhavvignesh\u002Fcaptcha-images)。下载完成后，解压ZIP文件。\n\n2. 要按照80\u002F5\u002F15的比例划分训练\u002F验证\u002F测试集，执行以下命令：\n    ```bash\n    python utils\u002Fsplit_dataset.py\n    ```\n\n3. 使用以下命令开始微调过程：\n\n    ```bash\n    bash finetune_demo\u002Ffinetune_(cogagent\u002Fcogvlm)_lora.sh\n    ```\n\n4. 将模型合并至 `model_parallel_size=1`：（将下面的4替换为您训练时的`MP_SIZE`）\n\n    ```bash\n    torchrun --standalone --nnodes=1 --nproc-per-node=4 utils\u002Fmerge_model.py --version base --bf16 --from_pretrained .\u002Fcheckpoints\u002Fmerged_lora_(cogagent\u002Fcogvlm490\u002Fcogvlm224)\n    ```\n\n5. 评估您的模型性能。\n    ```bash\n    bash finetune_demo\u002Fevaluate_(cogagent\u002Fcogvlm).sh\n    ```\n\n### 选项4：OpenAI Vision格式\n\n我们提供了与`GPT-4V`相同的API示例，您可以在`openai_demo`中查看。\n\n1. 首先启动节点\n\n```\npython openai_demo\u002Fopenai_api.py\n```\n\n2. 接着运行请求示例节点，这是一个连续对话的示例\n\n```\npython openai_demo\u002Fopenai_api_request.py\n```\n\n3. 您将得到类似如下的输出\n\n```\n这张图片展示了一幅宁静的自然场景，一条木制小路穿过一片茂盛的绿草地。远处有树木和一些零星的建筑物，可能是房屋或小型建筑。天空晴朗，点缀着几朵白云，显示出阳光明媚的一天。\n```\n\n### 硬件要求\n\n* 模型推理：\n\n  对于INT4量化：1 * RTX 3090(24G)   (CogAgent约占用12.6GB，CogVLM约占用11GB)\n\n  对于FP16：1 * A100(80G) 或 2 * RTX 3090(24G)\n\n* 微调：\n\n  对于FP16：4 * A100(80G) *[推荐]* 或 8 * RTX 3090(24G)。\n\n### 模型检查点\n\n如果您运行代码仓库中的 `basic_demo\u002Fcli_demo*.py`，它会自动下载 SAT 或 Hugging Face 的权重。或者，您也可以选择手动下载所需的权重。\n\n- CogAgent\n\n  |   模型名称    | 输入分辨率 |                             简介                             | Huggingface 模型 | SAT 模型 |\n  | :-----------: | :----: | :----------------------------------------------------------: | :------: | :-------: |\n  | cogagent-chat |  1120  | CogAgent 的聊天版本。支持 GUI Agent、多轮对话和视觉定位。 |  [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogagent-chat-hf) \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogagent-chat-hf)    |   [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogAgent\u002Ftree\u002Fmain)\u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogAgent)           |\n  | cogagent-vqa |  1120  | CogAgent 的 VQA 版本。在单轮视觉对话方面具有更强的能力。推荐用于 VQA 基准测试。 |  [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogagent-vqa-hf)\u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogagent-vqa-hf)        |    [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogAgent\u002Ftree\u002Fmain) \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogAgent)      |\nc\n- CogVLM\n\n  |          模型名称           | 输入分辨率 |                           简介                            | Huggingface 模型 | SAT 模型 |\n  | :-------------------------: | :----: | :-------------------------------------------------------: | :------: | :-------: |\n  |         cogvlm-chat-v1.1         |  490   |  同时支持多轮对话和 VQA，并可根据不同提示进行操作。   |  [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-chat-hf) \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-chat-hf)        |    [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain)  \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)       |\n  |       cogvlm-base-224       |  224   |               文本-图像预训练后的原始检查点。               |   [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-224-hf) \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-base-224-hf)       |     [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain) \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)       |\n  |       cogvlm-base-490       |  490   |      通过从 `cogvlm-base-224` 进行位置编码插值，将分辨率提升至 490。      |   [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-base-490-hf) \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-base-490-hf)       |     [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain) \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)       |\n  | cogvlm-grounding-generalist |  490   | 该检查点支持多种视觉定位任务，例如 REC、Grounding Captioning 等。  |    [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002Fcogvlm-grounding-generalist-hf)  \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002Fcogvlm-grounding-generalist-hf)       |     [HF 链接](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM\u002Ftree\u002Fmain)   \u003Cbr> [OpenXLab 链接](https:\u002F\u002Fopenxlab.org.cn\u002Fmodels\u002Fdetail\u002FTHUDM\u002FCogVLM)     |\n\n## CogVLM 简介\n\n- CogVLM 是一款强大的 **开源视觉语言模型**（**VLM**）。CogVLM-17B 拥有 100 亿个视觉参数和 70 亿个语言参数。\n\n- CogVLM-17B 在 10 个经典的跨模态基准测试中取得了最先进的性能，包括 NoCaps、Flicker30k 图像描述生成、RefCOCO、RefCOCO+、RefCOCOg、Visual7W、GQA、ScienceQA、VizWiz VQA 和 TDIUC，并在 VQAv2、OKVQA、TextVQA、COCO 图像描述生成等任务上排名第二，**超越或媲美 PaLI-X 55B**。CogVLM 还可以与您[就图像进行对话](http:\u002F\u002F36.103.203.44:7861)。\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fmetrics-min.png width=50% \u002F>\n\u003C\u002Fdiv>\n\n\u003Cdetails>\n\u003Csummary>点击查看 MM-VET、POPE、TouchStone 的结果。\u003C\u002Fsummary>\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Ctd>方法\u003C\u002Ftd>\n        \u003Ctd>LLM\u003C\u002Ftd>\n        \u003Ctd>MM-VET\u003C\u002Ftd>\n        \u003Ctd>POPE（对抗性）\u003C\u002Ftd>\n        \u003Ctd>TouchStone\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>BLIP-2\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>22.4\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>Otter\u003C\u002Ftd>\n        \u003Ctd>MPT-7B\u003C\u002Ftd>\n        \u003Ctd>24.7\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>MiniGPT4\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>24.4\u003C\u002Ftd>\n        \u003Ctd>70.4\u003C\u002Ftd>\n        \u003Ctd>531.7\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>InstructBLIP\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>25.6\u003C\u002Ftd>\n        \u003Ctd>77.3\u003C\u002Ftd>\n        \u003Ctd>552.4\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>LLaMA-Adapter v2\u003C\u002Ftd>\n        \u003Ctd>LLaMA-7B\u003C\u002Ftd>\n        \u003Ctd>31.4\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>590.1\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>LLaVA\u003C\u002Ftd>\n        \u003Ctd>LLaMA2-7B\u003C\u002Ftd>\n        \u003Ctd>28.1\u003C\u002Ftd>\n        \u003Ctd>66.3\u003C\u002Ftd>\n        \u003Ctd>602.7\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>mPLUG-Owl\u003C\u002Ftd>\n        \u003Ctd>LLaMA-7B\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>66.8\u003C\u002Ftd>\n        \u003Ctd>605.4\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>LLaVA-1.5\u003C\u002Ftd>\n        \u003Ctd>Vicuna-13B\u003C\u002Ftd>\n        \u003Ctd>36.3\u003C\u002Ftd>\n        \u003Ctd>84.5\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>Emu\u003C\u002Ftd>\n        \u003Ctd>LLaMA-13B\u003C\u002Ftd>\n        \u003Ctd>36.3\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>Qwen-VL-Chat\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>645.2\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>DreamLLM\u003C\u002Ftd>\n        \u003Ctd>Vicuna-7B\u003C\u002Ftd>\n        \u003Ctd>35.9\u003C\u002Ftd>\n        \u003Ctd>76.5\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>CogVLM\u003C\u002Ftd>\n        \u003Ctd>Vicuna-7B\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>52.8\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>87.6\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>742.0\u003C\u002Fb>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>点击查看 cogvlm-grounding-generalist-v1.1 的结果。\u003C\u002Fsummary>\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>RefCOCO\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>RefCOCO+\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>RefCOCOg\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>Visual7W\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>val\u003C\u002Ftd>\n        \u003Ctd>testA\u003C\u002Ftd>\n        \u003Ctd>testB\u003C\u002Ftd>\n        \u003Ctd>val\u003C\u002Ftd>\n        \u003Ctd>testA\u003C\u002Ftd>\n        \u003Ctd>testB\u003C\u002Ftd>\n        \u003Ctd>val\u003C\u002Ftd>\n        \u003Ctd>test\u003C\u002Ftd>\n        \u003Ctd>test\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>cogvim-grounding-generalist\u003C\u002Ftd>\n        \u003Ctd>92.51\u003C\u002Ftd>\n        \u003Ctd>93.95\u003C\u002Ftd>\n        \u003Ctd>88.73\u003C\u002Ftd>\n        \u003Ctd>87.52\u003C\u002Ftd>\n        \u003Ctd>91.81\u003C\u002Ftd>\n        \u003Ctd>81.43\u003C\u002Ftd>\n        \u003Ctd>89.46\u003C\u002Ftd>\n        \u003Ctd>90.09\u003C\u002Ftd>\n        \u003Ctd>90.96\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>cogvim-grounding-generalist-v1.1\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>92.76\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>94.75\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>88.99\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>88.68\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>92.91\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>83.39\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>89.75\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>90.79\u003C\u002Fb>\u003C\u002Ftd>\n        \u003Ctd>\u003Cb>91.05\u003C\u002Fb>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\u003C\u002Fdetails>\n\n### 示例\n\n\u003C!-- CogVLM 在回答各类视觉问题方面非常强大，包括 **详细描述与视觉问答**、**复杂计数**、**视觉数学问题求解**、**无 OCR 推理**、**无 OCR 视觉问答**、**世界知识**、**指代表达理解**、**基于视觉输入的编程**、**带描述的定位**、**带描述的视觉问答定位**等。 -->\n\n* CogVLM 能够以极低的幻觉率准确地对图像进行详细描述。\n    \u003Cdetails>\n    \u003Csummary>点击查看与 LLAVA-1.5 和 MiniGPT-4 的对比。\u003C\u002Fsummary>\n\n    \u003Cimg src=assets\u002Fllava-comparison-min.png width=50% \u002F>\n\n    \u003C\u002Fdetails>\n    \u003Cbr>\n\n* CogVLM 能够理解和回答各种类型的问题，并且有一个带有 **视觉定位** 功能的版本。\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fpear_grounding.png width=50% \u002F>\n\u003C\u002Fdiv>\n\n\u003Cbr>\n\n* CogVLM 有时能捕捉到比 GPT-4V(ision) 更为细节的内容。\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fcompare-min.png width=50% \u002F>\n\u003C\u002Fdiv>\n\n\u003C!-- ![compare](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzai-org_CogVLM_readme_f7f35dfc1155.png) -->\n\u003Cbr> \n\n\u003Cdetails>\n\u003Csummary>点击查看更多示例。\u003C\u002Fsummary>\n\n![聊天示例](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzai-org_CogVLM_readme_10130764ae1f.png)\n\n\u003C\u002Fdetails>\n\n## CogAgent 简介\n\nCogAgent 是一款基于 CogVLM 改进的开源视觉语言模型。CogAgent-18B 拥有 110 亿个视觉参数和 70 亿个语言参数。\n\nCogAgent-18B 在 9 个经典的跨模态基准测试中取得了最先进的通用性能，包括 VQAv2、OK-VQ、TextVQA、ST-VQA、ChartQA、infoVQA、DocVQA、MM-Vet 和 POPE。它在 AITW 和 Mind2Web 等 GUI 操作数据集上显著超越了现有模型。\n\n除了 CogVLM 已有的所有功能（视觉多轮对话、视觉定位）之外，CogAgent 还具备以下特点：\n\n1. 支持更高分辨率的视觉输入和对话式问答。**它支持 1120x1120 的超高清图像输入。**\n\n2. **具备视觉 Agent 的能力**，能够针对任何给定的任务和任意 GUI 截图，返回计划、下一步行动以及包含坐标的具体操作步骤。\n\n3. **增强了 GUI 相关的问答能力**，使其能够处理关于任何 GUI 截图的问题，例如网页、PC 应用程序、移动应用程序等。\n\n4. 通过改进的预训练和微调，提升了 OCR 相关任务的能力。\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fcogagent_function.jpg width=60% \u002F>\n\u003C\u002Fdiv>\n\n### GUI Agent 示例\n\n\u003Cdiv align=\"center\">\n    \u003Cimg src=assets\u002Fcogagent_main_demo.jpg width=90% \u002F>\n\u003C\u002Fdiv>\n\n## 食谱\n\n### 任务提示\n\n1. **通用多轮对话**：随意发言即可。\n\n2. **GUI 代理任务**：使用 [Agent 模板](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L761)，并将 \\\u003CTASK\\> 替换为用双引号括起来的任务指令。此查询可使 CogAgent 推断出计划和下一步行动。若在查询末尾添加 ``(with grounding)``，模型将返回包含坐标信息的规范化动作表示。\n\n   例如，要询问模型如何在当前 GUI 截图上完成“搜索 CogVLM”任务，可按以下步骤操作：\n\n   1. 从 [Agent 模板](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L761) 中随机选择一个模板。此处我们选择 ``What steps do I need to take to \u003CTASK>?``。\n\n   2. 将 \u003CTASK> 替换为用双引号括起来的任务指令，例如 ``What steps do I need to take to \"Search for CogVLM\"?``。输入该内容后，模型将输出：\n\n      > 计划：1. 在 Google 搜索栏中输入“CogVLM”。2. 查看出现的搜索结果。3. 点击相关结果以了解更多关于 CogVLM 的信息或访问更多资源。\n      >\n      > 下一步行动：将光标移动到 Google 搜索栏，并在其中输入“CogVLM”。\n\n   3. 若在末尾添加 ``(with grounding)``，即改为输入 ``What steps do I need to take to \"Search for CogVLM\"?(with grounding)``，CogAgent 的输出将是：\n\n      > 计划：1. 在 Google 搜索栏中输入“CogVLM”。2. 查看出现的搜索结果。3. 点击相关结果以了解更多关于 CogVLM 的信息或访问更多资源。\n      >\n      > 下一步行动：将光标移动到 Google 搜索栏，并在其中输入“CogVLM”。\n      > 基于场景的操作：[下拉框] 搜索 -> 输入：CogVLM，位置 [[212,498,787,564]]\n\n      提示：对于 GUI 代理任务，建议每张图像仅进行单轮对话，以获得更好的效果。\n\n3. **视觉定位**。支持三种定位模式：\n\n   - 带有定位坐标（边界框）的图像描述。使用 [caption_with_box 模板](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L537) 中的任意模板作为模型输入。例如：\n\n     > 你能对这张图片进行描述，并为每个提到的对象提供坐标 [[x0,y0,x1,y1]] 吗？\n\n   - 根据对象描述返回定位坐标（边界框）。使用 [caption2box 模板](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L345) 中的任意模板，将 ``\u003Cexpr>`` 替换为对象的描述。例如：\n\n     > 你能指出图片中的 *穿蓝色 T 恤的孩子*，并给出他们所在位置的边界框吗？\n\n   - 根据边界框坐标提供描述。使用 [box2caption 模板](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FCogVLM\u002Fblob\u002Fmain\u002Futils\u002Futils\u002Ftemplate.py#L400)，将 ``\u003Cobjs>`` 替换为位置坐标。例如：\n\n     > 请告诉我你在图片中指定区域 *[[086,540,400,760]]* 内看到了什么。\n\n   **坐标格式**：模型输入和输出中的边界框坐标采用 ``[[x1, y1, x2, y2]]`` 格式，原点位于左上角，x 轴向右，y 轴向下。（x1, y1）和（x2, y2）分别为左上角和右下角，数值为相对坐标，乘以 1000 后表示（前缀补零至三位数）。\n\n### 使用哪个 --version\n\n由于模型功能的不同，不同版本的模型可能具有不同的文本处理器 ``--version`` 规格，这意味着所使用的提示格式也会有所不同。\n\n|         模型名称          | --version |\n|:---------------------------:|:---------:|\n|        cogagent-chat        |   chat    |\n|        cogagent-vqa         | chat_old  |\n|         cogvlm-chat         | chat_old  |\n|      cogvlm-chat-v1.1       | chat_old  |\n| cogvlm-grounding-generalist |   base    |\n|       cogvlm-base-224       |   base    |\n|       cogvlm-base-490       |   base    |\n\n### 常见问题解答\n\n* 如果无法访问 huggingface.co，可以添加 `--local_tokenizer \u002Fpath\u002Fto\u002Fvicuna-7b-v1.5` 来加载分词器。\n* 如果使用 🔨[SAT](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FSwissArmyTransformer) 自动下载模型时遇到问题，可尝试手动从 🤖[modelscope](https:\u002F\u002Fwww.modelscope.cn\u002Fmodels\u002FZhipuAI\u002FCogVLM\u002Fsummary)、🤗[huggingface](https:\u002F\u002Fhuggingface.co\u002FTHUDM\u002FCogVLM) 或 💡[wisemodel](https:\u002F\u002Fwww.wisemodel.cn\u002Fmodels\u002FZhipuAI\u002FCogVLM) 下载。\n* 使用 🔨[SAT](https:\u002F\u002Fgithub.com\u002FTHUDM\u002FSwissArmyTransformer) 下载模型时，模型将保存到默认路径 `~\u002F.sat_models`。可通过设置环境变量 `SAT_HOME` 更改默认路径。例如，若希望将模型保存到 `\u002Fpath\u002Fto\u002Fmy\u002Fmodels`，可在运行 Python 命令前执行 `export SAT_HOME=\u002Fpath\u002Fto\u002Fmy\u002Fmodels`。\n\n## 许可证\n\n本仓库中的代码根据 [Apache-2.0 许可证](.\u002FLICENSE) 开源，而 CogVLM 模型权重的使用需遵守 [模型许可证](.\u002FMODEL_LICENSE)。\n\n## 引用与致谢\n\n若您认为我们的工作有所帮助，请考虑引用以下论文：\n\n```\n@misc{wang2023cogvlm,\n      title={CogVLM: 预训练语言模型的视觉专家}, \n      author={王伟瀚、吕庆松、于文猛、洪文义、齐继、王燕、季俊辉、杨卓毅、赵磊、宋锡轩、徐家政、许斌、李娟子、董宇晓、丁明、唐杰},\n      year={2023},\n      eprint={2311.03079},\n      archivePrefix={arXiv},\n      primaryClass={cs.CV}\n}\n\n@misc{hong2023cogagent,\n      title={CogAgent：用于 GUI 代理的视觉语言模型}, \n      author={洪文义、王伟瀚、吕庆松、徐家政、于文猛、季俊辉、王燕、王子涵、董宇晓、丁明、唐杰},\n      year={2023},\n      eprint={2312.08914},\n      archivePrefix={arXiv},\n      primaryClass={cs.CV}\n}\n\n```\n\n在 CogVLM 的指令微调阶段，使用了来自 [MiniGPT-4](https:\u002F\u002Fgithub.com\u002FVision-CAIR\u002FMiniGPT-4)、[LLAVA](https:\u002F\u002Fgithub.com\u002Fhaotian-liu\u002FLLaVA)、[LRV-Instruction](https:\u002F\u002Fgithub.com\u002FFuxiaoLiu\u002FLRV-Instruction)、[LLaVAR](https:\u002F\u002Fgithub.com\u002FSALT-NLP\u002FLLaVAR) 和 [Shikra](https:\u002F\u002Fgithub.com\u002Fshikras\u002Fshikra) 等项目的部分英文图文数据，以及许多经典的跨模态数据集。我们衷心感谢他们的贡献。","# CogVLM & CogAgent 快速上手指南\n\nCogVLM 是一款强大的开源视觉语言模型（VLM），支持图像理解与多轮对话；CogAgent 是其进阶版本，额外具备图形用户界面（GUI）操作代理能力，支持更高分辨率图像输入。\n\n## 环境准备\n\n### 系统要求\n- **GPU**: 推荐 NVIDIA GPU，显存需求视量化等级而定（4-bit 量化仅需约 11GB 显存）。\n- **CUDA**: 版本需 >= 11.8。\n- **Python**: 建议 Python 3.8+。\n\n### 前置依赖\n安装项目所需依赖及 spaCy 语言模型：\n\n```bash\n# CUDA >= 11.8\npip install -r requirements.txt\npython -m spacy download en_core_web_sm\n```\n\n> **提示**：若下载依赖较慢，可配置国内镜像源（如清华源、阿里源）加速 `pip` 安装。\n\n## 安装步骤\n\n所有推理代码位于 `basic_demo\u002F` 目录下，请先切换至该目录：\n\n```bash\ncd basic_demo\n```\n\n无需额外编译安装，确保依赖安装完成后即可直接运行脚本。模型权重将在首次运行时自动从 Hugging Face 或 SAT 仓库下载（也可手动下载后指定本地路径）。\n\n## 基本使用\n\n您可以选择命令行（CLI）或 Web 界面进行交互。以下提供最简单的命令行启动示例。\n\n### 方式一：使用 Hugging Face 版本（推荐）\n\n此方式基于 `transformers` 库，调用简洁。\n\n**启动 CogVLM 对话模型：**\n```bash\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-chat-hf --bf16\n```\n\n**启动 CogAgent 对话模型：**\n```bash\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogagent-chat-hf --bf16\n```\n\n**低显存方案（4-bit 量化）：**\n若显存有限，可启用 4-bit 量化（仅需约 11GB 显存）：\n```bash\npython cli_demo_hf.py --from_pretrained THUDM\u002Fcogvlm-chat-hf --quant 4\n```\n\n### 方式二：使用 SAT 版本\n\nSAT 版本支持更灵活的量化配置（4-bit\u002F8-bit）及模型并行。\n\n**启动 CogVLM 对话（FP16 + 4-bit 量化）：**\n```bash\npython cli_demo_sat.py --from_pretrained cogvlm-chat --version chat_old --fp16 --quant 4 --stream_chat\n```\n\n**启动 CogAgent 对话：**\n```bash\npython cli_demo_sat.py --from_pretrained cogagent-chat --version chat --bf16 --stream_chat\n```\n\n> **操作说明**：\n> - 输入指令后按回车生成回复。\n> - 输入 `clear` 清空对话历史。\n> - 输入 `stop` 退出程序。\n\n### 方式三：本地 Web Demo\n\n若偏好图形界面，可启动本地 Web Demo（基于 Gradio）：\n\n1. 安装 Gradio：\n   ```bash\n   pip install gradio\n   ```\n\n2. 运行演示脚本（以 CogAgent 为例）：\n   ```bash\n   python web_demo.py --from_pretrained cogagent-chat --version chat --bf16\n   ```\n\n启动后在浏览器访问显示的本地地址即可进行可视化交互。\n\n### 在线体验\n\n无需本地部署，可直接访问官方 Web Demo 体验：\n- [CogVLM2 在线演示](http:\u002F\u002F36.103.203.44:7861\u002F)","某电商平台的自动化运营团队需要每日处理成千上万张商品详情页截图，从中提取关键信息并生成合规的描述文案。\n\n### 没有 CogVLM 时\n- **识别精度低**：传统 OCR 工具无法理解图片中的复杂布局，常将价格、规格参数与背景广告文字混淆，导致数据提取错误率高。\n- **缺乏语义理解**：只能提取纯文本，无法判断图片中商品的具体属性（如“红色”、“夏季款”），需人工二次核对图片内容。\n- **多轮交互缺失**：发现图片模糊或信息不全时，系统无法像人类一样追问或根据上下文修正，只能直接报错丢弃。\n- **开发成本高**：为了解决特定场景（如促销海报分析），团队需单独训练多个专用小模型，维护难度极大。\n\n### 使用 CogVLM 后\n- **视觉专家级解析**：CogVLM 凭借 100 亿视觉参数，能精准区分商品主体与背景干扰，即使在 490*490 分辨率下也能准确提取价格和规格。\n- **深度图文理解**：不仅能读出文字，还能理解“模特穿着效果”或“包装风格”，自动生成包含颜色、材质等属性的结构化描述。\n- **支持多轮对话**：当图片信息存疑时，运营人员可直接与 CogVLM 进行多轮对话确认（如“请再确认一下左下角的保质期”），大幅减少人工介入。\n- **通用模型替代**：凭借在 10 个跨模态基准测试中的 SOTA 表现，一个 CogVLM 模型即可覆盖商品识别、海报分析、违规检测等多种任务，无需重复造轮子。\n\nCogVLM 将原本繁琐的“截图 - 人工录入 - 校对”流程升级为“截图 - 智能生成 - 人工抽检”，使运营效率提升了数倍。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fzai-org_CogVLM_f7f35dfc.png","zai-org","Z.ai","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fzai-org_f0d5ae80.png","ChatGLM, GLM-4.5, CogVLM, CodeGeeX, CogView, CogVideoX | CogDL, AMiner | Zhipu.ai (Z.ai)",null,"Zai_org","https:\u002F\u002Fwww.zhipuai.cn\u002Fen","https:\u002F\u002Fgithub.com\u002Fzai-org",[23,27],{"name":24,"color":25,"percentage":26},"Python","#3572A5",97.8,{"name":28,"color":29,"percentage":30},"Shell","#89e051",2.2,6736,455,"2026-04-16T07:06:22","Apache-2.0",3,"未说明","必需 NVIDIA GPU。支持多卡并行（2\u002F4\u002F8 卡）。显存需求：全精度 (bf16) 需较大显存（约 30GB+）；开启 4-bit 量化后仅需 11GB 显存。CUDA 版本要求 >= 11.8。",{"notes":39,"python":36,"dependencies":40},"1. 安装依赖前需确保 CUDA >= 11.8。2. 必须执行 'python -m spacy download en_core_web_sm' 下载语言模型。3. 推理代码位于 'basic_demo\u002F' 目录下，微调代码位于 'finetune_demo\u002F' 目录下。4. 支持 SAT 和 HuggingFace 两种版本，SAT 版本支持 4-bit\u002F8-bit 量化（需配合 fp16），HuggingFace 版本支持 4-bit 量化。5. 支持模型并行推理，可通过 '--nproc-per-node' 参数控制使用的 GPU 数量。",[41,42,43,44],"spacy","gradio","torch","transformers",[46],"语言模型",[48,49,50,51,52],"cross-modality","language-model","multi-modal","pretrained-models","visual-language-models",2,"ready","2026-03-27T02:49:30.150509","2026-04-18T22:35:28.975736",[58,63,68,73,77,81],{"id":59,"question_zh":60,"answer_zh":61,"source_url":62},40560,"在 WSL2 或 Windows 上使用 GPU 进行推理时速度非常慢（约 3 tokens\u002F秒），而预期应为 20+ tokens\u002F秒，且 GPU 利用率低、单核 CPU 满载，如何解决？","该问题通常与量化配置或环境设置有关。首先确认 bitsandbytes、CUDA 和 PyTorch 已正确安装并识别 GPU。检查模型是否完全加载到 GPU 上（所有参数设备应为 cuda:0）。若使用 4-bit 量化，注意 bitsandbytes 对原始模型精度有要求：4-bit 通常保留原始格式（如 bfloat16\u002Ffloat32），而 8-bit 强制要求 float16。如果硬件不支持 bfloat16（如部分 CPU 或旧 GPU），可能需要显式转换为 float16。此外，WSL2 下的 I\u002FO 或驱动兼容性问题也可能导致瓶颈，建议尝试原生 Linux 环境或更新 NVIDIA 驱动及 WSL2 内核。","https:\u002F\u002Fgithub.com\u002Fzai-org\u002FCogVLM\u002Fissues\u002F181",{"id":64,"question_zh":65,"answer_zh":66,"source_url":67},40561,"如何对 cogvlm-chat 模型进行微调？微调数据格式是什么？LoRA 是否包含视觉专家模块？","目前官方提供了 finetune_224(490)_lora.sh 脚本用于微调，但主要针对基础版本。对于 cogvlm-chat 的微调，可参考相同结构修改脚本，使用 QA 对格式的数据（即问题 - 答案配对）。关于 LoRA 范围：默认情况下，LoRA 通常只作用于语言模型部分，但若需提升视觉理解能力，也可扩展至视觉专家模块（需在代码中显式启用相关参数的梯度更新）。注意验证集 loss 为 0 可能是评估逻辑问题——当前 evaluate_demo.py 采用精确匹配（label == pred），不适用于开放性描述任务，建议改用 BLEU、ROUGE 或人工评估。","https:\u002F\u002Fgithub.com\u002Fzai-org\u002FCogVLM\u002Fissues\u002F63",{"id":69,"question_zh":70,"answer_zh":71,"source_url":72},40562,"如何让 CogVLM-chat 模型根据概率输出多个候选回答（例如 top-k 采样）？","CogVLM-chat 默认生成单一回答，若要获取多个高概率结果，需修改生成策略，使用 huggingface transformers 的 generate 方法并设置 num_return_sequences 和 do_sample=True。示例代码如下：\n\n```python\noutputs = model.generate(\n    **inputs,\n    max_new_tokens=512,\n    num_return_sequences=5,\n    do_sample=True,\n    temperature=0.7,\n    top_p=0.9\n)\n```\n\n同时确保模型已正确加载为 HuggingFace 格式。若从原始 checkpoint 转换，可使用以下脚本标准化模型结构：\n\n```python\nfrom cogvlm.modeling_cogvlm import CogVLMForCausalLM\nfrom cogvlm.configuration_cogvlm import CogVLMConfig\nimport torch\n\nconfig = CogVLMConfig.from_pretrained(ckpt_dir)\nmodel = CogVLMForCausalLM.from_pretrained(\n    ckpt_dir,\n    config=config,\n    torch_dtype=torch.bfloat16,\n    low_cpu_mem_usage=False\n).cpu().eval()\nmodel.save_pretrained(save_dir)\n```\n\n还需将原 hf 目录中的 visual.py 文件复制到 save_dir，以确保视觉模块正常加载。","https:\u002F\u002Fgithub.com\u002Fzai-org\u002FCogVLM\u002Fissues\u002F321",{"id":74,"question_zh":75,"answer_zh":76,"source_url":62},40563,"4-bit 量化时使用 float16，8-bit 时使用 bfloat16，为什么不同？16-bit 推理该选 float16 还是 bfloat16？","这种差异源于 bitsandbytes 库的设计机制：4-bit 量化会保留原始模型的权重精度（如模型原本是 bfloat16，则 4-bit 仍基于 bfloat16 构建查找表），而 8-bit 量化强制要求输入为 float16 格式。因此并非“4-bit 用 float16”，而是取决于原始模型类型。若原始模型为 bfloat16（如 CogVLM 多数版本），则 4-bit 可兼容；但 8-bit 必须转为 float16。对于 16-bit 推理：若硬件支持（如 A100、H100、RTX 3090\u002F4090），优先选用 bfloat16 以保持数值稳定性；若设备仅支持 float16（如 V100 或部分消费级显卡），则使用 float16。可通过 torch.cuda.get_device_properties(0).supports_bfloat16 判断支持情况。",{"id":78,"question_zh":79,"answer_zh":80,"source_url":72},40564,"如何将 CogVLM 或 CogAgent 模型转换为标准 HuggingFace 格式以便与其他工具兼容？","可使用官方提供的转换脚本将模型保存为标准 HF 格式。关键步骤如下：\n\n1. 更新 transformers 库：pip install transformers -U\n2. 根据模型类型选择对应类：\n   - 对于 CogVLM：\n     ```python\n     from cogvlm.modeling_cogvlm import CogVLMForCausalLM\n     from cogvlm.configuration_cogvlm import CogVLMConfig\n     config = CogVLMConfig.from_pretrained(ckpt_dir)\n     model = CogVLMForCausalLM.from_pretrained(ckpt_dir, config=config, torch_dtype=torch.bfloat16, low_cpu_mem_usage=False)\n     model.save_pretrained(save_dir)\n     ```\n   - 对于 CogAgent：\n     ```python\n     from cogagent.modeling_cogagent import CogAgentForCausalLM\n     from cogagent.configuration_cogagent import CogAgentConfig\n     config = CogAgentConfig.from_pretrained(ckpt_dir)\n     model = CogAgentForCausalLM.from_pretrained(ckpt_dir, config=config, torch_dtype=torch.bfloat16, low_cpu_mem_usage=False)\n     model.save_pretrained(save_dir)\n     ```\n3. 手动复制 visual.py 文件到 save_dir（来自原 hf 目录），否则视觉编码器无法加载。\n4. 验证生成的 config.json 和 model.safetensors 文件是否存在且完整。",{"id":82,"question_zh":83,"answer_zh":84,"source_url":67},40565,"微调过程中训练集 loss 下降但验证集 loss 始终为 0，可能是什么原因？","此现象通常由评估指标设计不当引起。当前 evaluate_demo.py 使用精确字符串匹配（label == pred）计算准确率，适用于分类或固定答案任务，但不适用于图像描述等开放生成任务——即使生成内容语义正确，只要文字不完全一致即判错，导致验证 loss 显示异常（如恒为 0 或准确率极低）。解决方案：\n- 改用基于 n-gram 重叠的指标（如 BLEU、ROUGE-L）；\n- 或使用嵌入相似度（如 BERTScore）评估语义一致性；\n- 临时关闭验证阶段或仅监控训练 loss 趋势。\n此外，检查数据预处理是否一致（如 tokenizer 截断、特殊 token 添加），避免输入\u002F标签错位。",[],[87,97,106,114,122,135],{"id":88,"name":89,"github_repo":90,"description_zh":91,"stars":92,"difficulty_score":53,"last_commit_at":93,"category_tags":94,"status":54},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",160015,"2026-04-18T11:30:52",[95,96,46],"开发框架","Agent",{"id":98,"name":99,"github_repo":100,"description_zh":101,"stars":102,"difficulty_score":35,"last_commit_at":103,"category_tags":104,"status":54},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[46,105,96,95],"图像",{"id":107,"name":108,"github_repo":109,"description_zh":110,"stars":111,"difficulty_score":53,"last_commit_at":112,"category_tags":113,"status":54},8553,"spec-kit","github\u002Fspec-kit","Spec Kit 是一款专为提升软件开发效率而设计的开源工具包，旨在帮助团队快速落地“规格驱动开发”（Spec-Driven Development）模式。传统开发中，需求文档往往与代码实现脱节，导致沟通成本高且结果不可控；而 Spec Kit 通过将规格说明书转化为可执行的指令，让 AI 直接依据明确的业务场景生成高质量代码，从而减少从零开始的随意编码，确保产出结果的可预测性。\n\n该工具特别适合希望利用 AI 辅助编程的开发者、技术负责人及初创团队。无论是启动全新项目还是在现有工程中引入规范化流程，用户只需通过简单的命令行操作，即可初始化项目并集成主流的 AI 编程助手。其核心技术亮点在于“规格即代码”的理念，支持社区扩展与预设模板，允许用户根据特定技术栈定制开发流程。此外，Spec Kit 强调官方维护的安全性，提供稳定的版本管理，帮助开发者在享受 AI 红利的同时，依然牢牢掌握架构设计的主动权，真正实现从“凭感觉写代码”到“按规格建系统”的转变。",88749,"2026-04-17T09:48:14",[46,105,96,95],{"id":115,"name":116,"github_repo":117,"description_zh":118,"stars":119,"difficulty_score":53,"last_commit_at":120,"category_tags":121,"status":54},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[95,46],{"id":123,"name":124,"github_repo":125,"description_zh":126,"stars":127,"difficulty_score":53,"last_commit_at":128,"category_tags":129,"status":54},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85267,"2026-04-18T11:00:28",[105,130,131,132,96,133,46,95,134],"数据工具","视频","插件","其他","音频",{"id":136,"name":137,"github_repo":138,"description_zh":139,"stars":140,"difficulty_score":141,"last_commit_at":142,"category_tags":143,"status":54},5784,"funNLP","fighting41love\u002FfunNLP","funNLP 是一个专为中文自然语言处理（NLP）打造的超级资源库，被誉为\"NLP 民工的乐园”。它并非单一的软件工具，而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。\n\n面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点，funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具，还独特地收录了丰富的垂直领域资源，如法律、医疗、金融行业的专用词库与数据集，甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性，从基础的字典词典到前沿的 BERT、GPT-2 模型代码，再到高质量的标注数据和竞赛方案，应有尽有。\n\n无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师，还是从事人工智能研究的学者，都能在这里找到急需的“武器弹药”。对于开发者而言，它能大幅减少寻找数据和复现模型的时间；对于研究者，它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神，极大地降低了中文自然语言处理的开发与研究成本，是中文 AI 社区不可或缺的宝藏仓库。",79857,1,"2026-04-08T20:11:31",[46,130,133]]