当前位置: 首页 > article >正文

GLM-OCR赋能Agent智能体:让AI能“看懂”图片指令

GLM-OCR赋能Agent智能体让AI能“看懂”图片指令你有没有想过未来的AI助手可能不再需要你打字输入指令想象一下这样的场景你随手拍下一张产品照片圈出你想了解的商品然后AI就能自动识别图片中的文字指令和商品信息并为你完成搜索、比价甚至下单。这听起来像是科幻电影里的情节但今天借助GLM-OCR与智能体技术的结合这种“看图办事”的能力正在成为现实。传统的AI智能体大多依赖于纯文本交互用户需要将想法转化为精确的文字指令。但在很多实际场景中图片本身就是最直接、最丰富的信息载体。一张截图、一份文档照片、一个带有文字标注的图表都包含了复杂的指令和上下文。GLM-OCR的出现就像为智能体装上了一双“眼睛”让它能直接“看懂”图片里的文字信息从而开启了一种全新的、更自然的人机交互方式。这篇文章我们就来聊聊如何用GLM-OCR赋能智能体构建一个能处理图片指令的“全能助手”。1. 为什么智能体需要“看懂”图片在深入技术细节之前我们先看看几个具体的场景你就能明白为什么这项能力如此重要。场景一购物比价。你在朋友家看到一个心仪的小家电直接拍照发给智能体图片里可能附带了你手写的备注“查查这个型号网上卖多少钱”。智能体需要先识别图片中的家电型号再理解你的文字指令最后去执行比价任务。场景二办公自动化。同事发来一张会议白板的照片上面有手写的待办事项和流程图。你希望智能体能自动提取这些任务并整理成清单或创建日历提醒。这要求AI不仅能识别印刷体最好还能理解一些手写体。场景三学习辅助。学生遇到一道复杂的数学题题目本身是一张图片。他可以直接把题图发给智能体并附上“讲解一下解题思路”的语音或文字。智能体需要先准确提取题目中的所有文字和公式才能进行后续的解答。这些场景的共同点是指令和任务目标都嵌在图片里。如果智能体只能处理纯文本那么用户就必须充当“翻译”手动把图片信息转成文字这无疑增加了使用门槛破坏了交互的流畅性。GLM-OCR的价值就在于它能够高质量地完成这“临门一脚”的识别工作将图片中的视觉信息转化为智能体可以理解和处理的文本信息流。2. GLM-OCR为智能体准备的“视觉文本转换器”GLM-OCR并不是一个简单的通用OCR工具。它在设计之初就考虑到了与大语言模型生态的深度融合这使得它成为赋能智能体的绝佳选择。它的几个核心特点正好切中了智能体应用的需求。首先它的识别精度高特别是对复杂场景的适应性强。智能体接收到的图片指令千奇百怪可能是手机随手拍的光线不佳的照片可能是带有复杂背景的屏幕截图也可能是排版多样的文档。GLM-OCR在训练时使用了海量多样化的数据对于模糊、倾斜、透视变形、艺术字体等情况的处理能力比较出色这保证了信息提取的可靠性。其次它支持中英文混合识别且对中文优化得很好。这对于中文用户为主的场景至关重要。很多用户的图片指令是中文的或者中英文混杂的。GLM-OCR能够准确识别并区分确保后续的指令解析不会因为文字错误而“跑偏”。最后也是最重要的一点它易于集成。GLM-OCR通常提供清晰的API接口或本地部署方案输出是结构化的文本信息包括文字内容、位置坐标等。智能体的“大脑”——通常是一个大语言模型——可以非常方便地消费这些文本信息将其作为自己推理和决策的输入。你可以把GLM-OCR想象成智能体感知层的一个专业模块。当一张图片输入进来这个模块负责“阅读”图片上的所有文字并将其整理成一份清晰的“简报”交给上层的逻辑处理中心。没有它智能体面对图片就是“睁眼瞎”有了它智能体就获得了处理多模态指令的基础能力。3. 动手搭建一个能处理图片指令的智能体原型理论说了这么多我们来点实际的。下面我将带你一步步搭建一个简单的、能处理图片指令的智能体原型。这个原型的核心流程是接收图片 - GLM-OCR提取文字 - 大语言模型解析指令并执行 - 返回结果。我们假设一个经典场景用户上传一张包含商品图片和手写文字“查一下价格”的图片智能体自动识别商品并搜索其价格信息。3.1 环境准备与核心工具我们需要准备以下几个核心组件GLM-OCR服务这是我们的“眼睛”。你可以选择使用其提供的在线API如果可用或者在自己的服务器上部署其开源模型。为了演示我们假设有一个本地运行的GLM-OCR服务它提供了一个HTTP API端点。大语言模型LLM这是智能体的“大脑”。我们将使用一个开源的、支持API调用的LLM例如ChatGLM、Qwen等。这里我们使用一个兼容OpenAI API格式的模型服务。任务执行工具这是智能体的“手”。根据解析出的指令它需要调用外部工具。在这个例子里我们需要一个“网络搜索”工具。为了简化我们用模拟函数代替真实的搜索引擎。开发框架我们使用简单的Python脚本进行流程编排。你也可以使用更专业的智能体框架如LangChain、Semantic Kernel来构建但这里我们用最直接的方式以便理解。首先安装必要的Python库pip install requests pillow openai3.2 核心代码实现我们的智能体工作流将分为三个清晰的步骤步骤一图片文字提取使用GLM-OCR我们编写一个函数将图片发送给GLM-OCR服务并获取识别出的所有文本块。import requests from PIL import Image import io def extract_text_from_image(image_path, ocr_api_urlhttp://localhost:8000/ocr): 调用GLM-OCR API提取图片中的文字。 :param image_path: 图片文件路径或Bytes :param ocr_api_url: GLM-OCR服务的API地址 :return: 识别出的文本字符串 # 准备图片数据 if isinstance(image_path, str): with open(image_path, rb) as f: image_data f.read() else: image_data image_path # 假设已经是bytes files {image: (image.jpg, image_data, image/jpeg)} try: response requests.post(ocr_api_url, filesfiles) response.raise_for_status() # 检查请求是否成功 result response.json() # 假设GLM-OCR返回的JSON结构包含一个text字段是所有识别文本的合并 # 实际结构可能需要根据API文档调整 extracted_text result.get(text, ) # 或者如果返回的是带坐标的文本块列表可以合并它们 # extracted_text .join([block[text] for block in result.get(blocks, [])]) return extracted_text.strip() except Exception as e: print(fOCR识别失败: {e}) return # 示例识别一张本地图片 image_text extract_text_from_image(user_uploaded_image.jpg) print(f识别出的文字: {image_text}) # 假设图片上有“苹果手机”和手写的“查一下价格” # 输出可能为“苹果手机 查一下价格”步骤二指令解析与任务规划使用LLM拿到图片中的文字后我们需要让LLM理解用户的意图并规划出要执行的动作。from openai import OpenAI # 注意这里假设你的LLM服务兼容OpenAI API格式 client OpenAI(base_urlhttp://localhost:1234/v1, api_keynot-needed) # 本地模型地址 def parse_instruction_and_plan(extracted_text): 使用LLM解析从图片中提取的文字判断用户意图并生成执行计划。 :param extracted_text: OCR提取的文本 :return: 解析后的结构化指令例如 {action: search_price, target: 苹果手机} system_prompt 你是一个任务解析助手。用户会提供一段从图片中识别出来的文字这段文字可能包含用户指令和任务目标对象。 你的工作是 1. 理解用户的真实意图例如查询价格、搜索信息、翻译等。 2. 识别任务的目标对象是什么例如一个产品名称、一个关键词、一段待处理的文本。 3. 以JSON格式输出包含两个字段action动作如 search_price, search_info, translate和 target目标对象。 只输出JSON不要有其他任何解释。 user_message f从图片中识别出的文字是{extracted_text} try: response client.chat.completions.create( modellocal-model, # 你的模型名称 messages[ {role: system, content: system_prompt}, {role: user, content: user_message} ], temperature0.1 # 低温度保证输出稳定 ) result_text response.choices[0].message.content.strip() # 解析JSON结果 import json plan json.loads(result_text) return plan except Exception as e: print(fLLM解析失败: {e}) return None # 示例解析上一步得到的文字 plan parse_instruction_and_plan(image_text) print(f解析出的计划: {plan}) # 输出可能为{action: search_price, target: 苹果手机}步骤三任务执行与结果整合根据LLM规划出的动作调用相应的工具执行任务并将结果返回给用户。def execute_task(plan): 根据计划执行具体任务。 :param plan: 包含action和target的字典 :return: 任务执行结果字符串 action plan.get(action) target plan.get(target) if not action or not target: return 无法解析出有效的指令或目标。 if action search_price: # 这里模拟一个搜索价格的动作实际应调用搜索引擎API # 例如调用电商平台API或使用SerpAPI等工具 price_info simulate_price_search(target) return f关于【{target}】的价格信息{price_info} elif action search_info: info simulate_web_search(target) return f关于【{target}】的搜索结果{info} else: return f暂不支持【{action}】这个动作。 def simulate_price_search(product_name): 模拟搜索价格返回模拟数据 # 在实际应用中这里应替换为真实的API调用 mock_data { 苹果手机: 某电商平台最新款售价约5999元起各渠道价格略有浮动建议比价。, 笔记本电脑: 主流品牌价格区间在4000-10000元具体型号差异较大。 } return mock_data.get(product_name, 未找到该商品的具体价格信息请提供更准确的型号。) # 整合整个流程 def image_instruction_agent(image_input): print(步骤1: 正在识别图片文字...) text extract_text_from_image(image_input) if not text: return 抱歉未能从图片中识别出有效文字。 print(f识别结果: {text}) print(步骤2: 正在理解您的指令...) plan parse_instruction_and_plan(text) if not plan: return 抱歉未能理解您的指令意图。 print(f执行计划: {plan}) print(步骤3: 正在执行任务...) result execute_task(plan) return result # 运行智能体 final_result image_instruction_agent(user_uploaded_image.jpg) print(\n--- 智能体回复 ---) print(final_result)运行这段代码你就得到了一个最简单的、能处理图片指令的智能体雏形。它完成了从“看到”到“理解”再到“执行”的完整闭环。4. 超越原型让智能体更强大、更实用上面的原型展示了核心思想但一个真正实用的智能体还需要考虑更多。我们可以从以下几个方向进行增强1. 多轮对话与上下文理解真正的交互往往是多轮的。用户可能在智能体返回价格后继续上传另一张图片问“那这个型号呢”。我们需要让智能体记住之前的对话上下文。这可以通过在调用LLM时将历史对话记录也作为输入来实现让LLM知道当前指令是上一轮对话的延续。2. 更丰富的工具集除了搜索价格智能体可以集成更多工具文档处理识别合同、发票图片提取关键信息并归档。翻译识别外文菜单、说明书直接翻译并解释。数据分析识别图表图片中的数据进行简单的趋势分析或总结。代码生成识别手绘的流程图或架构草图尝试生成对应的代码框架。3. 处理更复杂的图片指令用户上传的图片可能包含多个指令或更模糊的指示。例如一张产品规格表的截图用户圈出了几个参数并手写“对比一下这两个”。这要求GLM-OCR需要能输出带位置坐标的文本以便确定哪些文字被圈选。LLM需要更强大的推理能力理解“对比”这个动作具体意味着要对提取出的哪些数据做比较。4. 错误处理与用户体验OCR置信度GLM-OCR可以返回每个识别文字的置信度。对于低置信度的部分智能体可以主动询问用户确认比如“识别出‘苹某手机’请问是‘苹果手机’吗”指令模糊澄清当LLM无法确定用户意图时应该主动提问例如“您是想查询价格还是想了解这款产品的详细信息”5. 潜在的应用场景与展望将GLM-OCR与智能体结合其应用场景远不止于购物比价。它可以渗透到许多领域智能客服用户直接发送问题截图客服机器人自动提取问题并解答甚至识别截图中的错误代码。教育辅导学生上传题目照片智能辅导助手解题并讲解上传笔记照片自动整理成知识卡片。工业运维现场工人拍摄设备仪表盘或故障代码智能系统自动识别读数、解析告警并推送操作手册或维修方案。无障碍服务为视障人士提供“视觉助手”识别眼前的物品说明书、路牌、药品标签并用语音播报和解释。这项技术的核心价值在于它极大地降低了人机交互的认知负荷。用户不再需要将复杂的视觉信息“翻译”成精确的文本命令而是可以用最自然的方式——拍照、截图、标注——来下达指令。这让人工智能助手变得更像一位能“眼观六路”的真人助理。6. 总结回过头来看用GLM-OCR赋能智能体本质上是为AI补全了“视觉文本理解”这一关键感知能力。它拆除了横亘在图片这种富信息载体与文本驱动型智能体之间的一堵墙。我们构建的原型虽然简单但它清晰地勾勒出了“感知-认知-行动”的智能体增强路径。在实际应用中你会遇到比示例更复杂的情况图片质量参差不齐、指令模糊歧义、需要串联多个工具才能完成任务。但解决问题的思路是相通的选择一个可靠的OCR引擎作为感知基石用一个强大的LLM作为决策中枢再围绕具体场景为其配备合适的工具集。在这个过程中GLM-OCR因其对中文场景的良好支持和易于集成的特性成为一个非常不错的起点。技术最终要服务于体验。当用户发现只需要对着一张包含文字的图片说“处理一下这个”AI就能心领神会并完成任务时那种流畅和自然的感受才是这项技术最大的魅力所在。你不妨也从我们提供的简单代码开始尝试为你设想的场景打造一个能“看懂”图片的智能助手吧。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

相关文章:

GLM-OCR赋能Agent智能体:让AI能“看懂”图片指令

GLM-OCR赋能Agent智能体:让AI能“看懂”图片指令 你有没有想过,未来的AI助手可能不再需要你打字输入指令?想象一下这样的场景:你随手拍下一张产品照片,圈出你想了解的商品,然后AI就能自动识别图片中的文字…...

驱动清理工具技术指南:从问题诊断到风险规避

驱动清理工具技术指南:从问题诊断到风险规避 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/display-drivers-uninstaller 驱动…...

手把手教你用Python实现11种视频质量诊断算法(附代码)

Python实战:11种视频质量诊断算法的工程化实现指南 引言:视频质量诊断的技术价值与应用场景 在安防监控、视频会议、流媒体服务等领域,视频质量直接影响着信息传递的有效性。一个专业的视频质量诊断系统(VQD)能够自动检…...

Neo4j批量导入实战:从CSV到图数据库的5种高效方法对比

Neo4j批量导入实战:从CSV到图数据库的5种高效方法对比 当数据规模突破百万级时,传统的单条插入方式会让Neo4j变得像老式打字机一样缓慢。我曾亲历一个社交网络项目,最初用常规方法导入800万用户关系花费了26小时,而优化后的批量导…...

Zemax非序列转序列避坑指南:从光源设置到惠更斯衍射分析

Zemax非序列转序列避坑指南:从光源设置到惠更斯衍射分析 在光学设计领域,Zemax作为行业标杆软件,其非序列模式(Non-Sequential Mode)与序列模式(Sequential Mode)的转换是许多工程师必须掌握的技…...

Qwen3文本生成落地指南:基于vLLM的int4 AWQ量化模型免配置镜像实操

Qwen3文本生成落地指南:基于vLLM的int4 AWQ量化模型免配置镜像实操 1. 模型简介 Qwen3-14b_int4_awq是基于Qwen3-14b模型的int4 AWQ量化版本,通过AngelSlim技术进行压缩优化,专门用于高效文本生成任务。这个版本在保持良好生成质量的同时&a…...

AXI协议事务属性全解析:从Device到Normal的内存访问控制指南

AXI协议事务属性全解析:从Device到Normal的内存访问控制指南 在复杂的SoC设计中,AXI总线作为连接处理器、存储器和外设的核心枢纽,其事务属性配置直接决定了系统性能和功能正确性。本文将深入剖析AXI协议中Device与Normal内存类型的访问控制机…...

QT安装报错vcredist_x64.exe无法启动?三步搞定最新VC运行库配置

QT安装报错vcredist_x64.exe无法启动?三步搞定最新VC运行库配置 每次打开QT安装程序,满心期待准备大展拳脚时,却被"process failed to start"或"请求的操作需要提升"这样的错误提示当头一棒,那种感觉就像开车…...

Phi-3-vision-128k-instruct零基础上手:学生党用笔记本GPU跑通图文AI

Phi-3-vision-128k-instruct零基础上手:学生党用笔记本GPU跑通图文AI 1. 模型简介 Phi-3-Vision-128K-Instruct是一个轻量级的多模态模型,支持图文对话功能。这个模型特别适合学生党在普通笔记本GPU上运行,因为它经过优化,对硬件…...

OBS多平台直播完全指南:从环境适配到功能扩展的进阶之路

OBS多平台直播完全指南:从环境适配到功能扩展的进阶之路 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp OBS多平台直播已成为内容创作者扩大影响力的核心需求,但…...

FireRedASR-AED-L模型部署避坑指南:从Windows到Linux的兼容性处理

FireRedASR-AED-L模型部署避坑指南:从Windows到Linux的兼容性处理 你是不是也遇到过这种情况?在自己电脑上(通常是Windows)跑得好好的项目,代码逻辑清晰,功能一切正常,结果一到服务器&#xff…...

ONNX模型修改实战:从节点增删到子图提取的完整指南

ONNX模型修改实战:从节点增删到子图提取的完整指南 在深度学习模型部署的工程实践中,ONNX作为跨平台中间表示格式已成为行业标准。但当面对实际业务需求时,原始导出的模型往往需要经过结构调整才能适配目标环境。本文将深入剖析ONNX模型修改的…...

Phi-3-vision-128k-instruct实际效果:菜单图片识别+多语言翻译+营养成分分析一体化演示

Phi-3-vision-128k-instruct实际效果:菜单图片识别多语言翻译营养成分分析一体化演示 1. 模型简介 Phi-3-Vision-128K-Instruct是一个轻量级的多模态模型,支持128K超长上下文处理能力。这个模型特别擅长处理图文混合的复杂任务,比如菜单识别…...

如何提高DeepSeek-R1首次响应速度?缓存机制优化

如何提高DeepSeek-R1首次响应速度?缓存机制优化 1. 理解首次响应速度的重要性 当你第一次使用DeepSeek-R1模型时,可能会注意到响应速度没有想象中那么快。这不是模型本身的问题,而是因为首次运行时需要加载模型权重、初始化推理环境等一系列…...

人脸识别OOD模型在酒店行业的应用:客户识别系统

人脸识别OOD模型在酒店行业的应用:客户识别系统 1. 引言 酒店行业正面临着前所未有的服务升级压力。想象一下这样的场景:一位客人拖着行李箱走进酒店大堂,前台工作人员立即叫出他的名字:"王先生,欢迎再次光临&a…...

Qwen3-14b_int4_awq企业落地路径:从POC验证到API封装再到业务系统集成

Qwen3-14b_int4_awq企业落地路径:从POC验证到API封装再到业务系统集成 1. 模型简介与核心价值 Qwen3-14b_int4_awq是基于Qwen3-14b模型的int4量化版本,采用AngelSlim技术进行压缩优化,专为文本生成任务设计。该模型在保持较高生成质量的同时…...

华为荣耀V9免TWRP直刷Magisk全攻略(附Shamiko隐藏Root技巧)

1. 华为荣耀V9免TWRP刷Magisk全流程 很多华为荣耀V9用户想要获取Root权限,但苦于找不到适配的TWRP Recovery。其实完全不需要第三方Recovery,用官方镜像就能搞定。我实测了从EMUI 9.1到10.0的多个版本,这个方法都适用。下面就把完整操作流程拆…...

Halcon矩阵变换实战:从原理到代码,手把手实现图像几何变换

1. 图像几何变换的核心原理 当你用手机拍完照片后点击"旋转"按钮时,有没有想过这个看似简单的操作背后藏着怎样的数学魔法?图像几何变换的本质,就是通过矩阵运算重新计算每个像素点的位置。就像玩拼图游戏时移动每一块拼图的位置&a…...

Neeshck-Z-lmage_LYX_v2入门到精通:从环境启动到生成高清大图的完整指南

Neeshck-Z-lmage_LYX_v2入门到精通:从环境启动到生成高清大图的完整指南 1. 引言:开启你的AI绘画之旅 想象一下,你有一台神奇的画布,只需输入文字描述,就能在几分钟内生成专业级的高清图像。Neeshck-Z-lmage_LYX_v2正…...

乙巳马年春联生成终端入门必看:繁体字与简体字双向转换

乙巳马年春联生成终端入门必看:繁体字与简体字双向转换 春节贴春联,是传承千年的文化习俗。一副好对联,不仅寓意吉祥,更能彰显品味。如今,借助AI技术,我们不仅能快速生成文采斐然的春联,还能在…...

AcousticSense AI效果展示:Pop与Electronic在中频段频谱纹理差异解析

AcousticSense AI效果展示:Pop与Electronic在中频段频谱纹理差异解析 1. 引言:当AI学会"看见"音乐 你有没有想过,人工智能不仅能听懂音乐,还能"看见"音乐?AcousticSense AI正是这样一个神奇的系…...

启辰R30近光灯不亮?手把手教你用万用表检测H4灯泡(附保险盒图解)

启辰R30近光灯故障排查指南:从原理到实操的完整解决方案 前言:当爱车的"眼睛"失去光明 深夜驾车回家,突然发现近光灯不亮——这种经历想必让不少启辰R30车主心有余悸。作为车辆夜间行驶的主要照明系统,近光灯故障不仅影…...

PowerMock实战:如何优雅地Mock私有方法(附避坑指南)

PowerMock实战:私有方法Mock的艺术与避坑指南 在金融科技系统开发中,单元测试的完备性直接关系到资金交易的安全性与稳定性。面对那些不得不测试却又被声明为private的核心算法方法,传统测试手段往往束手无策。本文将深入探讨如何运用PowerMo…...

HC-SR04超声波测距传感器工作原理与Arduino驱动实战

HC-SR04超声波测距传感器工作原理与Arduino驱动实战 最近在做一个智能小车的项目,需要让它能感知前方的障碍物,第一时间就想到了HC-SR04这个经典的超声波传感器。它价格便宜、使用简单,是很多创客和嵌入式新手的入门首选。但很多朋友在第一次…...

MATLAB新手必看:如何将struct数据一键导出到Excel(附完整代码)

MATLAB数据处理实战:从Struct到Excel的高效转换指南 在工程计算和科研数据分析中,MATLAB作为一款强大的数值计算工具,经常需要处理各种复杂数据结构。其中,struct(结构体)因其灵活的字段存储方式成为常见的…...

Python实战:5分钟搞定辗转相除法求最大公约数(附完整代码)

Python实战:5分钟掌握辗转相除法的核心实现与优化技巧 在编程面试或日常开发中,计算两个数的最大公约数(GCD)是个高频需求。想象一下这样的场景:你需要快速约分一个分数,或者为加密算法生成密钥对&#xff…...

ROS实战:如何快速将激光雷达点云数据保存为PCD文件(附常见问题解决)

ROS实战:激光雷达点云数据高效保存与深度优化指南 激光雷达作为机器人感知环境的核心传感器,其点云数据的处理效率直接影响着自动驾驶、SLAM等系统的实时性能。但在实际项目中,开发者常会遇到数据保存效率低、格式兼容性差、坐标系错乱等问题…...

软交换 vs 传统程控交换:5个关键区别及现代通信网中的应用场景

软交换与传统程控交换的深度对比:技术演进与组网实践 当运营商开始将核心网从TDM机房迁移到云化架构时,某省级通信公司的工程师发现,原本需要三个月才能完成的局点扩容,现在通过虚拟化软交换平台只需两周即可上线。这个真实案例揭…...

Kotlin开发必知:lateinit和lazy的5个实战场景对比(附避坑指南)

Kotlin开发必知:lateinit和lazy的5个实战场景对比(附避坑指南) 在Kotlin开发中,lateinit和lazy都是延迟初始化的利器,但它们的设计初衷和适用场景却大不相同。很多开发者虽然知道这两个关键字的存在,却常常…...

Janus-Pro-7B效果实测:多轮图片问答中上下文保持能力与逻辑演进

Janus-Pro-7B效果实测:多轮图片问答中上下文保持能力与逻辑演进 1. 引言:当AI开始“看图说话”时,它在想什么? 你有没有遇到过这样的情况?给AI看一张图,问它“这是什么”,它能回答。接着问“为…...