gemini使用+部署教程

gemini 使用

gemini总共分为模型对话,build,dashboard三个模块

gemini ai studio

studio区别于常规的开发,笔者认为,对于从没开发过程序的人来说,他不需要搞懂开发过程的使用的框架和底层代码,而是只做页面的呈现,让ai开发不只是效力于开发者,还效力于普通人

playground
build

在build界面,有以下菜单栏

其中build主界面可以开发,也可以选择不同的模型增强当前生成的精确度

而gallery可以观览gemini自动生成的APP

查看效果,查看源码(Prompt + Workflow),一键 Fork 成你自己的 App,自定义逻辑,发布为你的专属应用

dashboard

在google云中创建项目,在google云中可以看到当前api被请求的次数

在创建api Key是导入这个原有的创建的demo test项目

现在我们可以进入到当前的google云的API与服务的界面查看当前的已经启用的API,

api key后端调用

接下来根据此前创建的api key遵循https://ai.google.dev/gemini-api/docs/quickstart?hl=zh-cn#gogemini api key文档调用api

1.先安装Google GenAI SDK

复制代码
go get google.golang.org/genai

2.设置gemini api key为环境变量

在windows中设置:

每个 Gemini API 密钥都与一个 Google Cloud 项目相关联,所以每次调用api 的时候要在google 云中创建对应的项目

直接设置 API Key → 选择模型 → 发送请求 → 打印结果

复制代码
package main

import (
    "context"
    "fmt"
    "log"
    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }

    result, err := client.Models.GenerateContent(
        ctx,
        "gemini-2.5-flash",
        genai.Text("Explain how AI works in a few words"),
        nil,
    )
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(result.Text())
}

如果需要硬编码api key的话,只进行简单的调用,就需要显式设置api key

复制代码
package main

import (
    "context"
    "fmt"
    "log"
    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, &genai.ClientConfig{
        APIKey:  "YOUR_API_KEY",
        Backend: genai.BackendGeminiAPI,
    })
    if err != nil {
        log.Fatal(err)
    }

    result, err := client.Models.GenerateContent(
        ctx,
        "gemini-2.5-flash",
        genai.Text("Explain how AI works in a few words"),
        nil,
    )
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(result.Text())
}

如果出现报错

复制代码
2025/12/09 11:12:30 doRequest: error sending request: Post "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent": dial tcp 142.250.69.170:443: i/o timeout

这是因为Go 程序无法访问 Google 的 Gemini API

笔者设置了代理之后报错 Gemini API 429 资源耗尽

查询reddit论坛关于 Gemini API 429 资源耗尽 https://www.reddit.com/r/Bard/comments/1ip8lj5/429_resource_has_been_exhausted_eg_check_quota/?tl=zh-hans的讨论,疑似是gemini官方的配额问题,这里目前无法进一步的解决,后续解决完成后,会上传到博客

也推荐reddit这个论坛,他是按照 Subreddit 的不同板块 的国外最大型社区论坛 ,技术内容非常强

gemini中部署无AI功能的网站

左侧栏找到build中的gallery,gallery中以一个可视化研究的alphaqubit静态网页

将应用clone到github上

在github上创建关于这个静态网页的repo

创建完仓库后点击stage and commits

github上有了完整的代码后就可以看到这个名为package.json的代码

这是一个react项目,并且是通过vue build的

再看到index.html文件末尾,我们需要编辑末尾的这个div标签元素,把react的入口文件引入

复制代码
<body>
    <div id="root"></div>
    <script type="module" src="/index.tsx"></script>
  </body>

==》commit changes

项目准备完成后,点击Vercel: Build and deploy the best web experiences with the AI Cloud -- Vercel

打开vercel,vercel是一个可以部署前端网页的网站,用github的账号登录vercel

打开主页,点击add new project

vercel会自动识别项目框架,所以只需要修改环境变量

这里强制为GEMINI_API_KEY,value值随便填,这里只需要一个value占位,前端的项目也不能传输api key,因为前端代码任何看到源代码

最后点击deploy部署成功

我们就可以看到前端的网页https://research-of-demo.vercel.app/但是,请注意这里的vercel.app这里国内无法直连

所以我们点击continue to dashboard,进入到网页后,看到菜单栏->settings再点击domain,点击add domain,可以绑定一个自己的域名,没域名的可以再阿里云申请一个自己的域名再填写到下图

其实,还有一种部署方式可以逃脱国内无法直连的弊端,我们需要用到另一个部署前端项目的网站netlifyPush your ideas to the web | Netlify

用vercel部署next.js网站时最好的,而部署静态网站,vue,react netlif是更好的选择

举个例子:

当你写了一个前端项目 npm run build

  • 它会自动构建
  • 自动部署
  • 自动分配一个 .netlify.app 域名
  • 自动 https
  • 自动预览环境
  • 自动 CI/CD

所以,现在我们用跟vercel同样的步骤去部署这个netlify,这里多余的步骤不做赘述

gemini中部署有AI功能的网站

在gallery中找到名为isvg generator的样例,这个网站gemini会调用AI功能生成这个svg图片,在code中需要一个gemini api key,但是这时候笔者就想到,对于一个纯前端的项目,我们如何去保护这个api key呢?

这里gemini还提供了另外一种部署方式,将这个项目部署到google云中

点击一个已经创建的项目,注意这里必须已经绑卡,并设置了结算,我这边绑定不了

这里整个api的调用过程如下

实践-3D粒子系统

prompt:

用Three.js和mediapipe创建一个实时交互的3D粒子系统。要求:1. 通过摄像头检测双手张合控制粒子群的收缩与扩散;2. 当手势为1时,粒子组成文字(),当手势为2时组成文字 () 当手势为3时,组成文字 () 3.粒子需实时响应手势变化;

当前系统可以自动生成一个粒子系统,会自动申请当前浏览器的摄像头访问权限,并根据屏幕前的手势做出粒子响应

相关推荐
搜yyzk6684 小时前
智能电话机器人:1天千通电话,高效低成本
人工智能
程序员黑豆7 小时前
Java类型推断完全指南:从var到菱形运算符,掌握使用限制与最佳实践
java·前端·ai编程
fthux8 小时前
装闭 RenoPit 源码解析(09):AnalysisEngine装修闭坑分析主流程
人工智能·ai·开源·github·open source·renopit
敏编程8 小时前
开源项目 NextBand:探索融合健康传感、语音交互与 AI Agent 的下一代可穿戴设备
人工智能
风流 少年8 小时前
Spring AI 2.0:Memory
java·后端·spring
ovO8 小时前
我按下“发送”之后:DeepSeek Harness 如何把一次请求变成 1,177 个增量片段
人工智能·开源·deepseek
码匠许师傅8 小时前
【C++ 面试真题】聊聊 C++ 的移动语义与右值引用
java·c++·面试
昨日之日20068 小时前
LTX-2.5:更清晰、更可控、同步音画、多镜头连贯的AI视频神器
人工智能·音视频
九硕智慧建筑一体化厂家9 小时前
数字化管控落地,直流照明构筑安全照明体系
运维·人工智能·笔记·安全·智慧城市
江厌019 小时前
本地部署DeepSeek显卡怎么选?我把显存计算公式和实测记录写下来了
人工智能·百度·联想工作站·代理商推荐·渠道对比·工作站