在Google Colab中调用Gemini的API实现智能问答

news/2025/2/11 19:27:14/

一、引言

Google终于放出大招,在2023年12月6日正式推出规模最大、功能最强大的人工智能模型Gemini,对标ChatGPT,甚至有要赶超ChatGPT-4.0的节奏。

相比之前的Bard,Gemini的文本理解能力、图片识别能力和语义抽取能力大大增强,可以进行复杂深入的推理分析,精确的文本信息抽取,细节入微的理解判断,将有助于用户在文本生成、智能问答、科学研究等领域实现历史性的突破。

更为重要的是Google随后开放了免费Gemini的API的申请,大家可以通过以下网站轻松申请到免费的API。

API​ai.google.dev

二、如何在Colab中调用Gemini的API

那么如何使用Gemini的API呢?本文将教你一步一步在Google Colab中用python调用Gemini的API。

第一步:申请Gemini的API Key

打开网站后显示如下,可以点击【Get API key in Google AI Studio】

Gemini的官方页面

进入到Google AI studio后,点击Get API key就可以得到一个Gemini的API key。与ChatGPT不同的时,这个key可以反复查看,不用担心生成后忘记或者丢失。

申请API key

第二步:配置Google Colab

有了API key后,我们可以在Google的Colab中搭建一个项目,具体网址如下:

Google Colab​

进入到Colab中,我们新建一个记事本,把Gemini的API key复制一下,点击Colab左侧的小钥匙图标,添加一个环境变量:【GOOGLE_API_KEY】,它的值就定义为你的API key,这样就可以通过GOOGLE_API_KEY=userdata.get('GOOGLE_API_KEY')安全调用,同时在运行时不在代码中显示你的key,从而防止key泄露。

配置环境变量

第三步: 调用Gemini的API代码

接着,我们需要把以下代码粘贴到记事本的单元格中。本文使用的是Gemini自带的Python代码,并加以修改以后如下:

import pathlib
import textwrapimport google.generativeai as genai# Used to securely store your API key
from google.colab import userdatafrom IPython.display import display
from IPython.display import Markdowndef to_markdown(text):text = text.replace('•', '  *')return Markdown(textwrap.indent(text, '> ', predicate=lambda _: True))GOOGLE_API_KEY=userdata.get('GOOGLE_API_KEY')genai.configure(api_key=GOOGLE_API_KEY)model = genai.GenerativeModel('gemini-pro')response = model.generate_content("Tell me 5 resorts in the US for international travelers.")md_content = to_markdown(response.text)display(md_content)

在上面response一列可以输入自己的问题,如我输入的是:【Tell me 5 resorts in the US for international travelers.】告诉我美国的五大旅游胜地?经过Gemini的处理,我们得到了下面markdown格式的内容:

Gemini的Markdown格式显示

三、学后反思

  1. Gemini目前是Google推出的最强大的人工智能工具,性能上不次于Chatgpt plus,而且还免费开放其API 申请,如果能结合APIkey + Colab + Python使用,对于用户来说将简单方便。

  2. 使用Colab的好处是,我们不用在本地安装Python软件,配置安装环境,能够节省本地资源,同时减少运行环境不完善带来的报错,是我们调试Python程序的绝佳平台。

  3. 以上的资源均为免费,可以节省预算,又能最大限度地综合发挥各大平台的优势,方便我们使用。动手能力强的小伙伴可以试试。

  4. 使用Python的原因是,我们可以更好地批量调用Gemini的API,而不用一次输入一个问题,而是一次输入多个问题,静待答案的生成。Google强大的计算能力能让我们统筹各项工作,不用担心本地计算资源不足的问题。

关注我,一个喜欢Python爱好者,带给你不一样的学习体验。


http://www.ppmy.cn/news/1288121.html

相关文章

bash 变量作用域

在shell 编程中,对 bash 变量作用域的理解是非常重要的,特别是在某些函数会被多次调用的情况,如果在函数中定义的是全局变量,就会导致下一次调用的时候,出现错误的逻辑的时候不容易发现。 bash的变量分成三种&#xff…

c++_09_继承

1 继承 C的继承是弱继承 继承的语法: class 子类 : 继承方式1 基类1, 继承方式2 基类2, ... { ... }; 继承方式: 共有继承 public 保护继承 protected 私有继承 private 2 继承的基本属性(3种继承方式均有) 继承所…

Mysql实时数据同步工具Alibaba Canal 使用

目录 Mysql实时数据同步工具Alibaba Canal 使用Canal是什么?工作原理重要版本更新说明 环境准备安装Canalwindow Java : Canal Client 集成依赖编码 工作流程开启原生MQRocketMQ 安装部署 canal配置说明1.1 canal.properties常用配置介绍:2.common参数定…

【C Primer Plus第六版 学习笔记】 第十六章 C预处理器和C库

有基础,进阶用,个人查漏补缺 第十五章的内容之前学过,跳过 预处理之前,编译器必须对该程序进行一些翻译处理 首先把源代码中出现的字符映射到原字符集 其次编译器定位每个反斜杠后面跟着换行符的实例,并删除它们&…

在Go中使用Goroutines和Channels发送电子邮件

学习如何使用Goroutines和Channels在Go中发送电子邮件 在现代软件开发的世界中,通信是一个关键元素。发送电子邮件是各种目的的常见实践,例如用户通知、报告等。Go是一种静态类型和编译语言,为处理此类任务提供了高效和并发的方式。在本文中&…

Linux(ubuntu)下git / github/gitee使用

先附上git命令 linuxchenxiao:~$ cd Templates/ 先进入一个目录,也可mkdir新建一个目录:用于接下来初始化为git可以管理的仓库 这个目录就是所说的工作目录,指当前正在进行开发的项目的本地目录。 linuxchenxiao:~/Templates$ git init 已…

msvcp140_1.dll丢失怎样修复,缺失msvcp140_1.dll是什么原因

在日常使用电脑的过程中,我们经常会遇到一些错误提示,其中之一就是“msvcp140_1.dll丢失”。那么,msvcp140_1.dll究竟是什么文件?为什么会出现丢失的情况?又该如何解决这个问题呢?本文将详细介绍msvcp140_1…

postman进阶使用

前言 对于postman的基础其实很容易上手实现,也有很多教程。 对于小编我来说,也基本可以实现开发任务。 但是今年我们的高级测试,搞了一下postman,省去很多工作,让我感觉很有必要学一下 这篇文章是在 高级测试工程师ht…