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

GLM-OCR入门教程:3步完成Ubuntu20.04环境部署与首次调用

GLM-OCR入门教程3步完成Ubuntu20.04环境部署与首次调用你是不是也遇到过这种情况手头有一堆图片里面全是文字信息比如扫描的文档、截图的聊天记录或者拍下来的白板内容。一个个手动敲键盘录入太费时间了。用一些在线工具又担心隐私问题。今天要聊的GLM-OCR就是一个能帮你解决这个烦恼的本地化工具。简单来说它就是一个能看懂图片里文字的AI模型。你给它一张图它就能把里面的文字识别出来变成可编辑的文本。这篇教程就是专门给使用Ubuntu 20.04系统的朋友准备的。我会带你走一遍在星图GPU平台上从找到镜像到成功调用GLM-OCR的全过程。整个过程就三步跟着做半小时内你就能让这个AI助手跑起来并处理你的第一张图片。1. 第一步在星图平台找到并启动GLM-OCR万事开头难但这一步其实很简单。我们的目标是在星图GPU平台上找到一个已经配置好GLM-OCR的“环境包”然后把它运行起来。1.1 找到正确的镜像首先你需要登录星图GPU平台。进入控制台后找到“镜像”或者“应用市场”相关的入口。在搜索框里直接输入“GLM-OCR”进行搜索。你会看到一系列相关的镜像结果。这里有个小技巧注意看镜像的标签或描述优先选择那些明确标注了“最新版”、“Ubuntu 20.04”兼容并且下载量或评分较高的镜像。这能帮你避开一些潜在的兼容性问题。选好之后点击“部署”或“创建实例”。1.2 配置你的计算实例接下来平台会让你配置这个实例的参数。对于GLM-OCR这样的OCR任务它主要吃的是CPU和内存对GPU的要求反而不像图像生成模型那么高。不过为了获得更快的处理速度尤其是如果你打算批量处理图片我建议按以下配置选择GPU规格选择一款具有至少8GB显存的GPU型号例如NVIDIA T4或同等级别就完全足够了。如果没有GPU纯CPU也能运行只是速度会慢一些。系统盘建议分配50GB以上的空间给系统和后续可能存放的图片留足余地。公网IP这一步非常重要。务必勾选“分配公网IP”选项这样你才能从你自己的电脑上访问到这台云服务器里的OCR服务。配置完成后点击确认平台就会开始为你创建这个带有GLM-OCR环境的云服务器了。这个过程通常需要几分钟你可以先去喝杯水。2. 第二步连接服务器并启动OCR服务当实例状态显示为“运行中”时我们的“AI盒子”就准备好了。现在我们需要进去把它启动。2.1 登录你的云服务器在实例的管理页面找到你刚创建的那台服务器你会看到它的公网IP地址。打开你电脑上的终端如果是Windows可以使用PuTTY或WSL用SSH命令连接它。连接命令通常是这样的ssh root你的公网IP地址系统会提示你输入密码这个密码通常在实例创建时由平台提供或者是你自己设置的。输入密码后你就进入了Ubuntu 20.04系统的命令行界面。2.2 启动GLM-OCR服务成功登录后GLM-OCR的相关软件和依赖其实已经由镜像预装好了。我们只需要找到它并启动。首先我们可以检查一下服务是否已经存在。一个常见的方法是使用systemctl命令查看相关服务或者直接去常见的安装目录看看。你可以尝试输入cd /usr/local/glm-ocr # 这是一个可能的安装路径具体请参考你所用镜像的说明文档 ls -la如果看到里面有start.sh、server.py之类的启动脚本或文件那就找对地方了。启动服务通常就是运行一个命令。假设启动脚本是start.sh那么bash start.sh或者如果是Python脚本python server.py运行命令后终端会开始滚动日志。当你看到类似“Server started on port 8000”或者“Running on http://0.0.0.0:8000”这样的信息时就说明OCR服务已经成功在后台启动了。关键点请记下日志里显示的端口号比如这里的8000。我们下一步会用到它。3. 第三步编写你的第一个识别程序服务在云端跑起来了现在该我们的主角——图片——上场了。我们需要写一个简单的小程序从我们自己的电脑上把图片“送”到云端的OCR服务再把识别结果“拿”回来。3.1 准备一个Python测试脚本在你的本地电脑上不是云服务器新建一个Python文件比如叫做test_ocr.py。把下面的代码复制进去。import requests import base64 import json # 1. 配置参数这里换成你自己的信息 SERVER_URL http://你的公网IP地址:8000 # 端口号要换成你第二步记下的那个 IMAGE_PATH ./test_image.jpg # 这里放你要识别的图片路径 # 2. 读取图片并编码 def image_to_base64(image_path): with open(image_path, rb) as image_file: encoded_string base64.b64encode(image_file.read()).decode(utf-8) return encoded_string # 3. 构建请求数据 def build_payload(image_base64): payload { image: image_base64, # 以下是一些可选参数可以让识别更精准 detect_direction: True, # 是否检测文字方向 language_type: CHN_ENG, # 语言类型中英文混合 } return payload # 4. 发送请求并获取结果 def ocr_request(url, payload): headers {Content-Type: application/json} try: response requests.post(url, datajson.dumps(payload), headersheaders, timeout30) response.raise_for_status() # 检查请求是否成功 return response.json() except requests.exceptions.RequestException as e: print(f请求出错: {e}) return None # 5. 主程序 if __name__ __main__: # 读取图片 print(f正在读取图片: {IMAGE_PATH}) img_base64 image_to_base64(IMAGE_PATH) # 构建请求 data build_payload(img_base64) # 发送请求 print(正在向OCR服务发送请求...) result ocr_request(f{SERVER_URL}/ocr, data) # 注意这里的端点路径可能是 /ocr, /predict, 请参考镜像文档 # 处理结果 if result and text in result: print(\n 识别成功 ) print(识别出的文本内容) print(result[text]) elif result: print(\n识别完成但返回格式可能不同:) print(json.dumps(result, indent2, ensure_asciiFalse)) else: print(\n识别失败请检查服务状态和网络连接。)3.2 运行脚本并查看结果在运行脚本前确保三件事脚本中的SERVER_URL已经替换成了你云服务器的公网IP和正确的端口号。IMAGE_PATH指向的图片比如test_image.jpg确实存在并且最好是包含清晰文字的图片比如一张书页的截图。你的本地电脑可以访问云服务器的公网IP通常没问题。然后在终端里运行它python test_ocr.py如果一切顺利几秒钟后你就能在终端里看到图片中的文字被清晰地打印出来了。恭喜你你已经完成了GLM-OCR的首次调用4. 常见问题与解决方法第一次尝试难免会遇到一些小波折。这里我列举几个最常见的问题和解决办法。4.1 连接失败无法访问服务症状运行Python脚本时提示“连接超时”或“拒绝连接”。检查清单IP和端口再仔细核对一遍SERVER_URL里的IP地址和端口号一个数字都不能错。服务器状态回到星图平台控制台确认你的云服务器实例是“运行中”状态。安全组/防火墙这是最容易被忽略的一点。你需要到云服务器的安全组规则里添加一条“入方向”规则允许你本地电脑的IP地址或者直接允许所有IP0.0.0.0/0访问你使用的那个端口比如8000。通常协议类型选TCP。4.2 服务启动报错症状在服务器上执行启动命令后报错退出比如提示“端口被占用”或“模块未找到”。解决办法端口占用如果默认端口如8000被占用可以在启动命令中指定另一个端口例如python server.py --port 8080并记得在Python脚本中也修改端口号。依赖缺失虽然镜像已预装但极端情况下可能缺失。可以尝试根据错误提示使用pip install安装缺失的Python包。例如pip install opencv-python-headless。4.3 识别结果不理想症状文字能识别出来但错别字多或者排版混乱。优化建议提供更清晰的图片确保图片光线均匀、文字清晰、没有严重倾斜。调整请求参数回头看看Python脚本里build_payload函数中的可选参数。比如对于竖排文字可以试试设置“detect_direction”: True。如果主要是英文可以把“language_type”改成“ENG”。预处理图片在发送前可以先用简单的图像处理库如PIL对图片进行灰度化、二值化或降噪处理有时能显著提升识别精度。整个流程走下来感觉GLM-OCR的部署确实比想象中要简单。核心就是利用星图平台提供的预置镜像省去了自己搭建环境、解决依赖冲突这些最头疼的步骤。实际识别效果对于清晰的印刷体文字来说相当可靠作为自动化录入的第一步工具完全够用。如果你在尝试过程中遇到了上面没提到的问题或者有更复杂的应用场景想探讨比如批量处理、特定格式文档转换那可能需要更深入地研究一下它的高级API和配置。不过对于入门和大多数日常需求来说这三步已经能帮你打开OCR自动化的大门了。下次再遇到图片转文字的需求就让你的云端AI助手来帮忙吧。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

相关文章:

GLM-OCR入门教程:3步完成Ubuntu20.04环境部署与首次调用

GLM-OCR入门教程:3步完成Ubuntu20.04环境部署与首次调用 你是不是也遇到过这种情况:手头有一堆图片,里面全是文字信息,比如扫描的文档、截图的聊天记录,或者拍下来的白板内容。一个个手动敲键盘录入?太费时…...

为RVC模型设计自动化测试流水线:确保模型更新后的质量稳定

为RVC模型设计自动化测试流水线:确保模型更新后的质量稳定 每次更新RVC模型,心里是不是都有点打鼓?新版本的声音转换效果真的比老版本好吗?有没有在某个你没注意到的场景下,效果反而变差了?手动测试几个样…...

【CVPR26-Min Tan-杭电】基于多线索学习的伪标签进化融合与优化:用于无监督伪装检测

文章:EReCu: Pseudo-label Evolution Fusion and Refinement with Multi-Cue Learning for Unsupervised Camouflage Detection代码:https://github.com/JSLiam94/EReCu单位:杭州电子科技大学、浙江大学一、问题背景伪装目标检测的核心难点&a…...

Python战棋游戏开发:六边形地图A*寻路算法实战(附完整代码)

Python战棋游戏开发:六边形地图A*寻路算法实战(附完整代码) 战棋游戏作为一种经典的策略游戏类型,其核心玩法往往围绕着地图移动和战术决策展开。与传统的方形网格地图相比,六边形地图提供了更自然的移动路径和更丰富的…...

开源大模型实践:软萌拆拆屋LoRA融合多专家模型探索

开源大模型实践:软萌拆拆屋LoRA融合多专家模型探索 1. 引言:当AI遇见“软萌”拆解术 想象一下,你有一件设计复杂的洛丽塔裙子,想把它拆解开,把每一个蝴蝶结、每一片蕾丝都整整齐齐地铺在桌面上,拍一张既专…...

DJI Windows SDK开发避坑指南:从注册到成功运行(VS2019实测)

DJI Windows SDK开发实战:从环境搭建到关键问题解决(VS2019全流程) 第一次接触DJI Windows SDK时,那种既兴奋又忐忑的心情至今记忆犹新。作为大疆生态的重要入口,这套SDK为开发者打开了无人机控制的无限可能&#xff0…...

Windows 上 openclaw onboard --install-daemon 命令的安装位置和启动配置

如果你想禁用openclaw的启动,需要在这个任务位置进行禁用,或删除。 # Windows 上 openclaw-cn onboard --install-daemon 命令的安装位置和启动配置 ## 安装位置 当你在 Windows 上运行 openclaw-cn onboard --install-daemon 命令时,它会: 1. 生成任务脚本文件 : …...

PyTorch钩子方法实战:如何用register_forward_hook提取中间层特征图(附代码避坑指南)

PyTorch钩子方法实战:如何用register_forward_hook提取中间层特征图(附代码避坑指南) 在深度学习的模型开发与调试过程中,中间层特征图的可视化与分析是理解模型行为的关键手段。PyTorch提供的register_forward_hook方法&#xff…...

ChatGLM3-6B在医疗领域的创新应用:智能问诊与病历分析

ChatGLM3-6B在医疗领域的创新应用:智能问诊与病历分析 1. 当医生还在写病历时,AI已经完成了初步诊断建议 上周我陪家人去社区医院看慢性咳嗽,候诊时看到一位老医生正对着电脑反复修改病历,手指在键盘上停顿了好几次。旁边年轻医…...

AirLLM技术教程:低资源环境下的大模型部署解决方案

AirLLM技术教程:低资源环境下的大模型部署解决方案 【免费下载链接】airllm AirLLM 70B inference with single 4GB GPU 项目地址: https://gitcode.com/GitHub_Trending/ai/airllm 核心价值主张:破解大模型部署的资源困境 在人工智能领域&#…...

RTOS技术路线之争的办公室江湖

《死锁》 第一章 架构师的尊严 我叫陈规,规矩的规。这名字是我爹取的,他是厂里的八级钳工,一辈子信奉"没有规矩不成方圆"。我继承了他的信仰,只不过我的规矩是MISRA-C,我的方圆是AutoSAR OS的架构图。 在华夏智驾干了八年,我从写驱动的小兵混成了AutoSAR OS派…...

AI超清画质增强镜像:图片细节修复与降噪功能体验

AI超清画质增强镜像:图片细节修复与降噪功能体验 1. 引言:当模糊照片遇上AI“脑补”技术 你有没有翻出过一张老照片,却发现它已经模糊得看不清人脸?或者从网上下载了一张心仪的图片,放大后却满是马赛克和噪点&#x…...

Wan2.1问题解决指南:视频生成失败、质量不高怎么办?

Wan2.1问题解决指南:视频生成失败、质量不高怎么办? 1. 常见视频生成问题与解决方案 1.1 视频生成失败的原因排查 当Wan2.1视频生成失败时,可以按照以下步骤进行排查: 检查服务状态 访问 http://100.64.16.90:7860 确认WebUI是…...

美国FDA官网的这些宝藏文件,撰写综述类文章的优质参考资料

美国食品药品监督管理局(FDA)作为全球药品监管的标杆机构,建立了系统化、多层次的信息公开与数据查询体系。其发布的各类数据库不仅为药品研发、注册申报和临床用药提供了权威依据,也成为国际医药企业进行市场准入评估与竞争情报分…...

Alpamayo-R1-10B基础操作:Front/Left/Right三摄像头图像上传与格式规范

Alpamayo-R1-10B基础操作:Front/Left/Right三摄像头图像上传与格式规范 1. 项目概述 Alpamayo-R1-10B是NVIDIA开发的自动驾驶专用视觉-语言-动作(VLA)模型,通过100亿参数的大规模预训练,结合AlpaSim模拟器与Physical…...

NEURAL MASK 版本管理与协作:使用Git进行代码和模型资产的版本控制

NEURAL MASK 版本管理与协作:使用Git进行代码和模型资产的版本控制 1. 引言 想象一下这个场景:你和团队正在开发一个基于NEURAL MASK的智能应用,比如一个自动生成营销文案的工具。经过几天的努力,你们终于调出了一个效果不错的提…...

避开这3个坑!用nRF Connect调试BLE信标时90%人会犯的错误

避开这3个坑!用nRF Connect调试BLE信标时90%人会犯的错误 在物联网和智能硬件的开发中,BLE信标技术已经成为室内定位、近场交互的核心组件。作为开发者,我们经常使用nRF Connect这样的专业工具来分析和调试信标设备,但在这个过程中…...

2024年中国多属性建筑矢量数据(CMAB)|3100万栋单体建筑|含高度/功能/年份/质量|Sci Data权威发布

🔍 数据简介 本数据集为 《CMAB: A Multi-Attribute Building Dataset of China》,由清华大学龙瀛团队(张业成、赵慧敏、龙瀛)研发,于2025年3月12日正式发表于国际顶级期刊 Scientific Data。 这是全球首个国家级尺度…...

实时口罩检测-通用GPU优化部署:FP16精度下吞吐量提升2.1倍实测

实时口罩检测-通用GPU优化部署:FP16精度下吞吐量提升2.1倍实测 1. 项目概述 实时口罩检测是当前计算机视觉领域的重要应用场景,能够在公共场所自动识别人员是否佩戴口罩,为公共卫生管理提供技术支撑。今天我们要评测的是基于DAMO-YOLO框架的…...

如何用Lima在macOS上构建高效Linux开发环境:从入门到精通

如何用Lima在macOS上构建高效Linux开发环境:从入门到精通 【免费下载链接】lima Linux virtual machines, with a focus on running containers 项目地址: https://gitcode.com/GitHub_Trending/lim/lima 作为macOS用户,你是否曾为需要运行Linux环…...

Lingyuxiu MXJ LoRA Python入门:从零开始的艺术生成

Lingyuxiu MXJ LoRA Python入门:从零开始的艺术生成 Lingyuxiu MXJ LoRA 是一个专注于唯美真人风格人像生成的轻量化模型,它基于SDXL架构优化,能够生成高质量、细腻的人像图片。本文将带你从零开始,学习如何使用Python调用这个强大…...

StructBERT中文情感模型部署教程:Kubernetes Helm Chart封装方案

StructBERT中文情感模型部署教程:Kubernetes Helm Chart封装方案 1. 项目概述与核心价值 StructBERT 情感分类 - 中文 - 通用 base 是百度基于 StructBERT 预训练模型微调后的中文通用情感分类模型(base 量级),专门用于识别中文…...

AI在制造业落地全解析:3大核心场景+实操代码+企业案例

制造业作为实体经济的核心支柱,正面临产能瓶颈、质量管控低效、运维成本偏高、人力依赖度大等痛点,而AI技术的深度渗透,正成为制造业转型升级的“核心引擎”。本文聚焦AI在制造业的落地实践,避开空泛理论,聚焦生产质检…...

LaTeX新手必看:IEEEtran参考文献格式全解析(含期刊会议缩写查询)

LaTeX新手必看:IEEEtran参考文献格式全解析(含期刊会议缩写查询) 第一次用LaTeX写IEEE论文时,最让我头疼的就是参考文献格式。明明正文排版得漂漂亮亮,一到参考文献部分就各种报错:作者姓名顺序不对、期刊…...

基于Kubernetes弹性部署LumiPixel Canvas Quest:应对流量高峰的实战策略

基于Kubernetes弹性部署LumiPixel Canvas Quest:应对流量高峰的实战策略 1. 引言:当流量高峰遇上AI推理服务 去年双十一期间,某电商平台的AI作图服务遭遇了尴尬一幕:用户上传的商品图片堆积如山,但后台的LumiPixel C…...

广角拍照人像变形?3种主流校正算法对比与实战选择指南

广角人像摄影的救星:三大畸变校正技术深度解析与实战选择 每次用手机广角镜头拍摄人像时,边缘人物总是莫名其妙地"变胖"或"拉长",这种令人头疼的畸变问题困扰着无数摄影爱好者。作为一位长期与图像算法打交道的技术专家…...

Android面试指南:从基础到高级的知识体系构建

Android面试指南:从基础到高级的知识体系构建 【免费下载链接】android-interview-questions Your Cheat Sheet For Android Interview - Android Interview Questions 项目地址: https://gitcode.com/gh_mirrors/an/android-interview-questions 知识图谱&a…...

PDF书签目录一键生成神器PdgCntEditor保姆级教程(附下载链接)

PDF书签目录一键生成神器PdgCntEditor保姆级教程 在数字化阅读时代,PDF文档因其格式稳定、兼容性强而成为电子书和文档分享的首选格式。然而,许多PDF文档缺乏有效的书签目录,给阅读和定位内容带来不便。PdgCntEditor作为一款轻量级工具&#…...

Qwen2.5-32B-Instruct保姆级教程:Ubuntu20.04环境部署全流程

Qwen2.5-32B-Instruct保姆级教程:Ubuntu20.04环境部署全流程 想快速体验强大AI助手却卡在部署环节?这篇教程将手把手带你完成Qwen2.5-32B-Instruct在Ubuntu20.04上的完整部署流程。 1. 环境准备与系统要求 在开始部署之前,先确认你的硬件和系…...

Qwen-Audio智能语音助手效果对比:与传统ASR系统差异

Qwen-Audio智能语音助手效果对比:与传统ASR系统差异 1. 引言 还记得那些年我们和语音助手"斗智斗勇"的经历吗?对着手机喊"打开空调",它却回答"好的,正在为您播放《空调》这首歌"。传统语音识别系…...