Gemini API接入企业微信与钉钉:手把手教你搭建企业内部智能客服机器人
摘要
通过配置企业微信或钉钉机器人入口,搭建PythonFastAPI中间层服务端,调用Gemini3 1ProAPI实现
想一下这个画面:员工在企业微信群或者钉钉群里直接@机器人问一句“上季度客户投诉前三名是哪几个”,或者“张经理下周三有没有空档”,然后系统自动查表、读文档、生成结论,再把结构化的答案甩回群里。省去了人工翻记录、贴截图、手动汇总的麻烦。这才是真正的效率工具。而把Gemini 3.1 Pro API接进企业微信或钉钉的机器人通道里,让它变成一个可触发、可校验、可回传结果的智能节点,这活儿是完全可以干起来的。
具体怎么操作?咱们从配入口开始,一步一步往下走。

配置企业微信/钉钉机器人入口
先说企业微信。进管理后台,找到“应用管理”→“自建应用”→创建应用,类型选“机器人”,名字可以叫“Gemini智服”之类的。保存后进详情页,复制那个“机器人Webhook地址”。这地址就是它唯一的入口。
钉钉那边类似,进开放平台→应用开发→企业内部开发→机器人→创建应用,选“群机器人”,然后启用“自定义关键词触发”,同样拿到Webhook地址。再次提醒,这个地址是消息的唯一入口,调用时必须用HTTPS POST,而且绝不能暴露在前端代码里。
两个平台都要记得开启“消息接收”权限,安全设置里把服务端的IP白名单加上。云服务器就填公网IP,本地调试的话,先弄个内网穿透。
搭建中间层服务端(推荐Python FastAPI)
新建一个Python项目。先装好依赖:pip install fastapi uvicorn python-dotenv requests。
新建一个 main.py 文件,写一个基本路由:监听 /webhook,接收企业微信或钉钉发来的JSON消息,然后提取 text.content 或者 message.content 字段,这就是原始的输入文本。
不要忘了,在 .env 文件里写上:GEMINI_API_KEY=your_actual_key_here。这个文件绝对不要提交到Git仓库。这一步漏了,后续所有调用都会返回401错误,而且密钥泄露的风险极高。
启动服务:uvicorn main:app --host 0.0.0.0 --port 8000 --reload。确认服务能正常响应HTTP请求,再往下走。
调用Gemini 3.1 Pro API并结构化输出
方法一:纯文本问答。
最直接的办法。用 requests.post 往 https://generativelanguage.googleapis.com/v1beta/models/gemini-3.1-pro:generateContent?key={GEMINI_API_KEY} 发POST请求,body写标准JSON格式:{"contents":[{"parts":[{"text":"请用中文回答:{user_input}"}]}]}。适合先快速验证连通性。
方法二:带格式约束的强结构输出(推荐生产使用)。
在企业环境里,让模型自由发挥几乎等于给自己挖坑。所以得在prompt里明确要求返回JSON格式,并限定字段。比如这样写:“请严格按以下JSON格式返回,不要任何额外说明:{\"summary\":\"\",\"key_points\":[],\"action_items\":[\"\"]}”。Gemini 3.1 Pro对这种契约式提示响应很稳定,能避免自由发挥导致解析失败。
方法三:多模态支持。
企业微信或钉钉可以上传截图,比如会议纪要找半天没找到原文件那种。平台会把图片转成临时media_id,你得先通过平台接口把图片下载下来,转成二进制,再Base64编码后,嵌入Gemini请求的 parts 里,类型是 {"inlineData": {"mimeType": "image/png", "data": "base64_encoded_string"}}。注意:单次请求总大小不能超过20MB,超限会直接报错413。
将结果安全回传至群聊
第一步,判断消息来源是企业微信还是钉钉,调用对应的发送接口。
企业微信用 https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx,钉钉用 https://oapi.dingtalk.com/robot/send?access_token=xxx。
第二步,构造回传消息体。企业微信支持text、markdown、news,钉钉支持text、markdown、feedCard。建议优先选markdown,兼容性好,能加粗、列列表、换行,员工读起来很清楚。
第三步,添加失败重试机制。网络抖动或者平台限流时,第一次发送失败,延迟1秒重试,最多两次。如果还是失败,把原始请求和错误码写进日志,并向管理员推送告警消息。绝不能静默丢弃用户请求。
第四步,在返回消息末尾自动追加一行小字:“?由Gemini 3.1 Pro生成|内容已校验|如有疑问请反馈”。这既建立信任感,也暗示了责任边界。
来源:互联网
本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。