来源:HIT专家网 作者: 蔡磊
【编者按】
为呼应2025年南湖HIT论坛“价值导向,前瞻‘十五五’”的核心主题,2025年9月,HIT专家网以“工程实践”为抓手,面向全国医院信息部门发起案例征集——聚焦真实项目,要求案例突出价值显性化、方法可借鉴。征集周期内,论坛组委会共收到超过20个有效案例,内容涵盖医疗大模型应用、业务流程优化、医保支付、网络安全、医联体建设、临床科研、IT运维等领域。
经HIT专家网学术指导委员会专家评审,确定了一批“2025年南湖HIT论坛‘价值导向’工程实践案例”,并从中进一步遴选出3个代表性案例通过2025年南湖HIT论坛分享,本文是3个代表性案例之一。
一、项目背景与需求分析
微信等IM即时通讯工具的普及,越来越多工作群的建立,使得医院工作人员关于信息系统的问题咨询和文件摆渡的需求,渐渐从电话向微信群转移。医院信息科工作人员经常面对“消息轰炸”:“信息科,我有个文件需要传走”“电脑为什么打不开了”“今天谁值班”……许多消息都难以及时回复处理,特别是经常性、重复性的问题回复非常浪费人力。
此外,医院工作人员在日常工作中常常会碰到通过微信下发的文件,需要在微信与内网电脑之间互传。由于网络安全的要求,内网用户不能直接连通内外网,需要找到一个相对安全且体验较好的办法,解决微信文件的传输问题。由于微信转发的文件,大多存在微信目录下,如果采用其他上传方式(如网盘),操作不熟悉的用户可能会找不到文件。
二、功能设计
在人力资源有限、保障网络安全的前提下,针对上述问题,医院信息科开展头脑风暴,集思广益,决定采用Python语言,自主研发微信运维机器人,可以有效解决医院工作人员的困难,提升信息科的服务能力、运维能力。
该机器人具有三个功能:
1.采用NLP分词技术,拆分关键字,根据关键字检索常见问题知识库,并给用户回复。
2.采用微信官方图片服务器作为中转,用户发送图片和文件后,首先会上传到微信的官方服务器,然后机器人自动下载到前置机服务器,前置机服务器运行杀毒软件进行查杀后,转移到内网用户FTP目录下。如图1所示。
3.针对微信用户,读取微信昵称中配置的工号,自动响应微信加好友功能,并且对用户的动作精准记录。
三、系统设计与实现
该系统采用Python 3.7.1开发,采用itchat库,利用开源的微信个人号接口,可以实现微信群、微信好友的消息,以及文件、图片等的监听。
1.itchat的登录和启动
itchat 的登录采用itchat.auto_login()函数完成,不带参数会生成一个二维码图片文件提供扫描登录;itchat.run(),则启动自动回复。
2.各种类型的消息注册
itchat可以根据收到的消息类型。寻找对应的已注册方法,如果消息类型没有注册,则该消息将会被舍弃。
itchat.content包含的消息类型参数,如表1所示。
表1
| 参数 | 类型 | Text 键值 |
| TEXT | 文本 | 文本内容(文字消息) |
| PICTURE | 图片 | 图片/表情 |
| RECORDING | 语音 | 下载方法 |
| ATTACHMENT | 附件 | 下载方法 |
| FRIENDS | 好友邀请 | 添加好友所需参数 |
语句为:
@itchat.msg_register([TEXT,SHARING,PICTURE,RECORDING,ATTACHMENT,VIDEO], isGroupChat=True)
[TEXT,SHARING,PICTURE,RECORDING,ATTACHMENT,VIDEO]
参数是注册的消息类型。isGroupChat = True,表示注册为微信群的消息,isFriendChat表示好友之间,isGroupChat表示群聊,isMapChat表示公众号。
3.知识库应用
(1)采用jieba NLP分词解析关键字,对接受到的消息进行权重拆分成词组,然后检索excel为存储的文件是否有该关键字信息。如果存在该关键字对应的字典,则返回该字典信息。
import jieba
strwenti=msg[‘Text’] # 或者文本消息
tags = jieba.analyse.extract_tags(wenti, topK=10)#根据权重进行分词,产生关键词
for nlp1 in tags: #循环关键词 对知识库进行检索
#检索关键字回复信息
strSeachrret=get_date_fromexcel(u’kbase’,nlp1,1) #对关键词查excel表,查找关键字对应的字典
if strSeachrret is None: #没有检索到内容
itchat.send(‘我还小,您说的我有时会不明白呢,不过我会慢慢学习的!’, msg[‘FromUserName’])
else:
itchat.send(strSeachrret,msg[‘FromUserName’]) #回复关键字对应的字典
(2)采用excel作为知识库的存储,本例用excel作为知识库的存储数据库,用两个列来表示,如表2所示。
表2
| 我现在会 | 我回答 |
| 软件无法登陆 | 首先检查屏幕右下方网络连接图标是否有红叉:如果有,请检查网线是否插紧;如果网络正常依然无法登录,请联系信息科值班电XXX进行处理。 |
| 传文件 | 正确的指令是:微信发电脑、电脑发微信 |
| 今天谁值班 | 信息科值班电话xxxx |
| … | … |
# excel 查表函数
def get_date_fromexcel(sheeetname,searchtext,colindex):
workbook = xlrd.open_workbook(u’xxkconf.xls’) #打开excel,默认目录
table_emp = workbook.sheet_by_name(sheeetname) #取excel的sheet,根据sheet name获取
nrows=table_emp.nrows # excel 所有行
for i in range(nrows): #循环行
row=table_emp.row_values(i)
if searchtext in row[0]: #如果检索关键字 存在
return row[colindex]
四、应用总结
微信运维机器人自2023年6月开始试运行。截至2025年4月,医院通过机器人共传送文件191582份(仅根据FTP文件个数统计),通过机器人代替人工进行文件中转,达到了很好的效果。在问题咨询方面,通过微信收到问题消息后,知识库自动应答37326条次(该数据不精确,统计方法:查询Excel表格1次,即计数1次)。虽然没有完全代替人工,但也大大提高了通用问题的回复效率。
五、结论和展望
微信运维机器人的开发,还存在着以下问题:
1.NLP分词后的关键字的粒度问题。多个关键字解析后,命中多个关键字,导致回复多个问题,不一定是用户需要的最佳答案。随着AI的兴起,未来考虑本地部署大模型,通过语义分析来解决这一问题。
2.微信机器人的稳定性问题。由于采用模拟微信网页版环境,抓取发送相关request,达到网页版微信的功能。2025年5月,微信已经全面封控基于Web的微信协议,目前正在开发基于企业微信的客服功能。
3.微信机器人如何对隐私数据进行分级分类识别,避免隐私数据外传。目前考虑采用Tika、Textract等解析word、txt、pdf、ppt等通用文本类型(中的文字,并识别隐私数据,避免隐私数据外传。但图片还需依赖OCR类的实现。
4.微信机器人的应用范围问题。目前应用仅面向院内员工,可根据情况制作规则库,为患者提供服务,扩大应用范围。
虽然微信机器人还存在很多问题,但确实方便了医院人员的日常工作。信息化也需要为医院工作人员服务。同时,通过信息科的自主研发,节省了文件摆渡系统的投入,信息科人员的学习氛围进一步增强,也无形中提升了科室满意度,改善了信息科的服务质量和效率,为临床工作保驾护航。
【演讲视频】
【课件下载】

精彩不容错过!
【责任编辑:陈曦 版式:明超】
HIT专家网






评论前必须登录!
注册