需完成Node.js环境搭建、Discord应用注册、Gemini SDK集成、环境变量配置及消息响应逻辑编写;依次执行项目初始化、依赖安装、Bot Token与API Key获取、.env配置、index.js开发及服务器添加,最后运行node index.js启动验证。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望在 Discord 平台上部署一个能调用 Gemini 模型进行智能交互的机器人,但尚未搭建基础环境或配置 API 连接,则需完成 Node.js 运行时准备、Discord 开发者应用注册、Gemini SDK 集成及事件监听逻辑编写。以下是实现该机器人的关键步骤:
一、初始化项目并安装核心依赖
创建独立的项目目录并初始化 package.json,确保具备 Node.js 运行能力;随后安装 Discord 官方 SDK 与 Google 的 Gemini JavaScript 客户端,为后续消息处理与模型调用提供基础支持。
1、在终端中执行 mkdir discord-gemini-bot && cd discord-gemini-bot 创建项目文件夹。
2、运行 npm init -y 生成默认 package.json 文件。
3、执行 npm install @discordjs/rest @discordjs/core @google/generative-ai dotenv 安装必需依赖。
二、注册 Discord 应用并获取 Bot Token
Discord 要求所有机器人必须通过开发者门户注册,并启用对应权限与意图,Token 是机器人身份认证的唯一密钥,需严格保密且不可硬编码于源码中。
1、访问 https://discord.com/developers/applications 并点击“New Application”创建新应用。
2、进入 “Bot” 标签页,点击 “Add Bot”,确认后复制显示的 Token 值。
3、在 “Privileged Gateway Intents” 区域启用 Message Content Intent,否则机器人无法读取普通消息内容。
三、配置 Gemini API 密钥与环境变量
Gemini 模型调用需使用 Google AI Studio 生成的 API Key,该密钥须通过环境变量注入,避免泄露风险;同时需确保 Key 具备 generative-language API 的调用权限。
1、前往 https://aistudio.google.com/app/apikey 登录 Google 账号并创建新 API Key。
2、在项目根目录创建 .env 文件,写入 GEMINI_API_KEY=your_api_key_here。
使用AIsa生成图像与视频。仅需一个API密钥即可调用Gemini 3 Pro Image(图像)和Qwen Wan 2.6(视频)。
3、在代码入口文件顶部添加 require('dotenv').config() 以加载环境变量。
四、编写机器人主逻辑与消息响应流程
机器人需监听 Discord 的 messageCreate 事件,对提及自身或符合前缀的消息提取文本,调用 Gemini 模型生成回复,并将结果以频道消息形式发送回用户。
1、创建 index.js,导入 @discordjs/core 与 @google/generative-ai 模块。
2、使用 GoogleGenerativeAI 初始化模型实例,指定 model: 'gemini-1.5-flash' 或兼容版本。
3、在 client.on('messageCreate', async (message) => { ... }) 中判断是否为有效触发:排除机器人自身消息、检查是否被提及或匹配命令前缀(如 !gemini)。
4、提取用户提问内容,传入 model.generateContent() 方法,等待 Promise 解析后调用 message.reply() 发送响应。
五、启动机器人并验证基础功能
完成代码编写后,需将机器人添加至目标服务器并赋予必要权限;启动进程后观察控制台日志与 Discord 频道内响应行为,确认连接建立与消息流转正常。
1、在 Discord 开发者门户的 “OAuth2 > URL Generator” 页面,勾选 bot 和 applications.commands,复制生成链接并在浏览器中打开,选择目标服务器完成添加。
2、确保服务器已授予机器人 Send Messages 和 Read Message History 权限。
3、在终端运行 node index.js 启动服务,查看控制台输出是否显示 Ready! Logged in as [bot-username]。
4、在 Discord 频道中发送 @YourBotName Hello,观察是否收到 Gemini 生成的回复文本。

















