当前位置: 首页 > news >正文

【LLM:Gemini】文本摘要、信息提取、验证和纠错、重新排列图表、视频理解、图像理解、模态组合

开始使用Gemini

目录

开始使用Gemini

Gemini简介

Gemini实验结果

Gemini的多模态推理能力

文本摘要

信息提取

验证和纠错

重新排列图表

视频理解

图像理解

模态组合

Gemini多面手编程助理

库的使用

引用


本文概述了Gemini模型和如何有效地提示和使用这些模型。本章也包括了有关Gemini模型的功能,技巧,应用,限制,论文和其他阅读材料。

Gemini简介

Gemini是Google Deepmind最新、最强大的AI模型。它原生支持多模态,具备跨模态推理能力,包括文本,图像,视频,音频和代码。

Gemini分为三个版本:

  • Ultra - 三个模型版本中功能最强大,适用于高度复杂的任务
  • Pro - 适用于广泛任务的最佳模型
  • Nano - 性能最佳的模型,适用于终端设备和内存有限的任务;包括1.8B参数(Nano-1)和3.25B参数(Nano-2)两个版本,从较大的Gemini模型中蒸馏训练得到,采用4位量化。

根据随附的技术报告(opens in a new tab),Gemini在32个基准测试中的30个上取得了领先,涵盖了语言、编码、推理和多模态推理等任务。

Gemini是第一个在MMLU(opens in a new tab)(大规模多任务语言理解)上超越人类专家的模型,声称在20项多模态测试基准处于领先水平。Gemini Ultra在MMLU上达到90.0%准确率,在MMMU基准(opens in a new tab)上达到62.4%准确率,相当于大学水平的学科知识和推理能力。

Gemini模型在32K的序列长度上进行训练,并建立在具有高效注意力机制(例如, multi-query attention(opens in a new tab))的Transformer解码器之上,在跨越上下文长度进行查询时表现出98%的准确率。这个重要的功能支撑了新的应用场景如文档检索和视频理解。

Gemini模型基于多模态和多语言数据进行训练,例如网络文档,书籍和代码数据,包括图像,音频和视频数据。这些模型经过所有模态数据的联合训练,展现出强大的跨模态推理能力,甚至在每个领域都具有强大的能力。

Gemini实验结果

Gemini Ultra在与思维链提示(chain-of-thought (CoT) prompting)(opens in a new tab)和自洽性(self-consistency)(opens in a new tab)等有助于处理模型不确定性的方法相结合时,达到了最高的准确率。

技术报告中提到,Gemini Ultra在32个样本上的MMLU测试效果,从贪婪采样(greedy sampling)方法的84.0%提高到不确定性路由思维链(uncertainty-routed chain-of-thought)方法(包括CoT和多数投票(majority voting))的90.0%,如果仅使用32个思维链样本,则略微提高到85.0%。类似地,思维链(CoT)和自洽性(self-consistency)在GSM8K小学数学基准上实现了94.4%的准确率。此外,Gemini Ultra正确地实现了74.4%的HumanEval(opens in a new tab)代码补全问题。下表总结了Gemini的测试结果以及与其他著名模型的结果对比。

Gemini Nano模型在事实性(即检索相关任务),推理,STEM(科学、技术、工程、数学),编码,多模态和多语言任务方面也表现出强大的性能。

除了标准的多语言功能之外,Gemini在多语言数学和摘要基准(例如MGSM(opens in a new tab)和XLSum(opens in a new tab))上分别表现出了出色的效果。

Gemini模型在32K的序列长度上进行训练,在跨越上下文长度进行查询时表现出98%的准确率。这个重要的功能支持了新的应用场景如文档检索和视频理解。

在遵循指令,创意写作和安全等重要能力方面,经过指令调整的Gemini模型受到人类评估者的一致青睐。

Gemini的多模态推理能力

Gemini经过原生多模态训练,表现出了将跨模态能力与大语言模型的推理能力相结合的能力。它的功能包括但不限于从表格,图表和图形中提取信息。还有其他有趣的功能,例如从输入中辨别细粒度的细节,跨空间和时间聚合上下文以及跨不同模态组合信息。

Gemini在图像理解任务,例如高级目标检测(high-level object recognition),细粒度语音识别(fine-grained transcription),图表理解和多模态推理方面始终优于现有方法。一些图像理解和生成功能还可以跨多种全球语言进行传输(例如,使用印地语和罗马尼亚语等语言生成图像描述)。

文本摘要

虽然Gemini是作为多模态系统进行训练的,但它拥有现代大语言模型(如GPT-3.5、Claude和Llama)中存在的许多功能。以下是使用Gemini Pro实现简单文本摘要任务的示例。本例中我们使用Google AI Studio(opens in a new tab),温度值(temperature)为0。

提示:

Your task is to summarize an abstract into one sentence.Avoid technical jargon and explain it in the simplest of words.Abstract: Antibiotics are a type of medication used to treat bacterial infections. They work by either killing the bacteria or preventing them from reproducing, allowing the body’s immune system to fight off the infection. Antibiotics are usually taken orally in the form of pills, capsules, or liquid solutions, or sometimes administered intravenously. They are not effective against viral infections, and using them inappropriately can lead to antibiotic resistance.

Gemini Pro输出:

Antibiotics are medicines used to kill or stop the growth of bacteria causing infections, but they don't work against viruses.

Google AI Studio里的任务和模型响应(高亮)截图

信息提取

接下来的示例是一个分析一段文本并提取所需信息的任务。注意,本例使用零样本提示,因此结果并不完美,但模型的性能相对较好。

提示:

Your task is to extract model names from machine learning paper abstracts. Your response is an array of the model names in the format [\"model_name\"]. If you don't find model names in the abstract or you are not sure, return [\"NA\"]Abstract: Large Language Models (LLMs), such as ChatGPT and GPT-4, have revolutionized natural language processing research and demonstrated potential in Artificial General Intelligence (AGI). However, the expensive training and deployment of LLMs present challenges to transparent and open academic research. To address these issues, this project open-sources the Chinese LLaMA and Alpaca…

Gemini Pro输出:

[\"LLMs\", \"ChatGPT\", \"GPT-4\", \"Chinese LLaMA\", \"Alpaca\"]

验证和纠错

Gemini模型展示了令人印象深刻的跨模态推理能力。例如,下图(左)是一个物理问题的解答,该问题是由一位物理老师画的。然后,Gemini被提示对该问题进行推理,并解释该学生在答案中出错的地方(如果有错误)。该模型还被指示解决问题并使用LaTeX来完成数学部分。右图是模型的响应,详细解释了问题和答案。

重新排列图表

以下是技术报告中的另一个有趣的示例,展示了基于Gemini的多模态推理能力生成用于重新排列subplots的matplotlib代码。左上角展示的是多模态提示,生成的代码显示在右侧,代码渲染显示在左下角。该模型利用多种功能来解决任务,例如,识别,代码生成,subplot位置的抽象推理以及按照指示以将subplot重新排列在所需位置。

视频理解

Gemini Ultra在各种少样本(few-shot)视频字幕生成任务和零样本(zero-shot)视频问答任务中取得了最先进的结果。下面的示例展示了为模型提供了一个视频和文本指令作为输入。它可以分析视频并对情况进行推理,以提供适当的答案,或者,在本示例中,提供了视频中的人物如何改进技术的建议。

图像理解

Gemini Ultra也可以基于少样本(few-shot)提示生成图片。如下例所示,可以使用图像和文本交错的示例提示,其中用户提供了有关两种颜色和图像建议的信息。然后,模型接受提示中的最终指令,然后基于它看到的颜色和一些想法做出响应。

模态组合

Gemini模型还展示了原生支持处理一系列音频和图像的能力。从示例中,我们使用一系列音频和图像来提示模型。然后,该能模型基于每次交互的上下文做出文本响应。

Gemini多面手编程助理

Gemini还被用于构建一个名为AlphaCode 2的多面手助理,它将推理功能与搜索和工具使用相结合,用来解决编程竞赛问题。AlphaCode 2在Codeforces编程竞赛平台的参赛者中名列前15%。

库的使用

下面这个简单的示例演示了如何使用Gemini API提示Gemini Pro模型。你需要安装google-generativeai库并从Google AI Studio获取API密钥。下面的示例是以上章节中提到的信息提取任务的代码。

"""At the command line, only need to run once to install the package via pip: $ pip install google-generativeai""" import google.generativeai as genai genai.configure(api_key="YOUR_API_KEY") # Set up the modelgeneration_config = {  "temperature": 0,  "top_p": 1,  "top_k": 1,  "max_output_tokens": 2048,} safety_settings = [  {    "category": "HARM_CATEGORY_HARASSMENT",    "threshold": "BLOCK_MEDIUM_AND_ABOVE"  },  {    "category": "HARM_CATEGORY_HATE_SPEECH",    "threshold": "BLOCK_MEDIUM_AND_ABOVE"  },  {    "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",    "threshold": "BLOCK_MEDIUM_AND_ABOVE"  },  {    "category": "HARM_CATEGORY_DANGEROUS_CONTENT",    "threshold": "BLOCK_MEDIUM_AND_ABOVE"  }] model = genai.GenerativeModel(model_name="gemini-pro",                              generation_config=generation_config,                              safety_settings=safety_settings) prompt_parts = [  "Your task is to extract model names from machine learning paper abstracts. Your response is an array of the model names in the format [\\\"model_name\\\"]. If you don't find model names in the abstract or you are not sure, return [\\\"NA\\\"]\n\nAbstract: Large Language Models (LLMs), such as ChatGPT and GPT-4, have revolutionized natural language processing research and demonstrated potential in Artificial General Intelligence (AGI). However, the expensive training and deployment of LLMs present challenges to transparent and open academic research. To address these issues, this project open-sources the Chinese LLaMA and Alpaca… [\\\"LLMs\\\", \\\"ChatGPT\\\", \\\"GPT-4\\\", \\\"Chinese LLaMA\\\", \\\"Alpaca\\\"]",] response = model.generate_content(prompt_parts)print(response.text)

引用

  • Introducing Gemini: our largest and most capable AI model(opens in a new tab)
  • How it’s Made: Interacting with Gemini through multimodal prompting(opens in a new tab)
  • Welcome to the Gemini era(opens in a new tab)
  • Gemini: A Family of Highly Capable Multimodal Models - Technical Report(opens in a new tab)
  • Fast Transformer Decoding: One Write-Head is All You Need

相关文章:

【LLM:Gemini】文本摘要、信息提取、验证和纠错、重新排列图表、视频理解、图像理解、模态组合

开始使用Gemini 目录 开始使用Gemini Gemini简介 Gemini实验结果 Gemini的多模态推理能力 文本摘要 信息提取 验证和纠错 重新排列图表 视频理解 图像理解 模态组合 Gemini多面手编程助理 库的使用 引用 本文概述了Gemini模型和如何有效地提示和使用这些模型。本…...

CMS之Wordpress建设

下载 https://cn.wordpress.org/ 宝塔安装Wordpress 创建网站 上传文件、并解压、剪切文件到项目根目录 安装 -> 数据库信息 -> 标题信息 http://wordpress.xxxxx.com 登录 http://wordpress.xxxxxxxxx.com/wp-admin/ 1. 主题(模板) wordpress-基本使用-02-在主题…...

使用Neo4j存储聊天记录的简单教程

引言 在当今的数据驱动世界中,关系型数据库有时难以处理复杂的、相互关联的数据集。Neo4j作为一款开源图数据库,以其高效管理高连接数据的能力而广受欢迎。本篇文章将详细介绍如何使用Neo4j来存储聊天信息历史,引导您在实际项目中利用其强大…...

前端面试常考算法

快速排序 #include<iostream> #include<cstdio> using namespace std; const int N 100005; int a[N];void quick_sort(int a[], int l, int r) {if (l > r) return;int x a[l r >> 1];int i l - 1, j r 1;while (i < j) {while (a[i] < x);…...

【机试准备】常用容器与函数

Vector详解 原文链接&#xff1a;【超详细】C vector 详解 例题&#xff0c;这一篇就够了-CSDN博客 向量&#xff08;Vector&#xff09;是一个封装了动态大小数组的顺序容器&#xff08;Sequence Container&#xff09;。跟任意其它类型容器一样&#xff0c;它能够存放各种…...

Base 社区见面会 | 新加坡站

活动信息 备受期待的 Base 社区见面会将于 Token2049 期间在新加坡举行&#xff0c;为 Base 爱好者和生态系统建设者提供一个独特的交流机会。本次活动由 DAOBase 组织&#xff0c;Base 和 Coinbase 提供支持&#xff0c;并得到了以下合作伙伴的大力支持&#xff1a; The Sand…...

麒麟操作系统搭建Nacos集群

Nacos 集群搭建 2.4.2 环境介绍 操作系统Kylin Linux Advanced Server V10 (Lance)Kylin Linux Advanced Server V10 (Lance)Kylin Linux Advanced Server V10 (Lance)内核版本Linux 4.19.90-52.22.v2207.ky10.aarch64Linux 4.19.90-52.22.v2207.ky10.aarch64Linux 4.19.90-52…...

Imagination推出性能最高且具有高等级功能安全性的汽车GPU IP

Imagination DXS GPU 进一步扩大其在汽车领域的领先地位 产品亮点 &#xff1a; 峰值性能比 Imagination 上一代汽车 GPU 提高了 50%&#xff0c;可扩展至 192GPixel/s、6 TFLOPS 和 24TOPS计算工作负载的性能提升多达十倍引入创新的分布式功能安全机制&#xff0c;以最小的…...

端口大全说明,HTTP,TCP,UDP常见端口对照表

HTTP,TCP,UDP常见端口对照表,下面罗列了包括在Linux 中的服务、守护进程、和程序所使用的最常见的通信端口小贴士&#xff1a;CtrlF 快速查找 Http端口号&#xff08;点标题可收缩或展开&#xff09; No1.最常用端口 端口号码/层名称注释1tcpmuxTCP端口服务多路复用5rje远程作…...

dplyr、tidyverse和ggplot2初探

dplyr、tidyverse 和 ggplot2 之间有紧密的联系&#xff0c;它们都是 R 语言中用于数据处理和可视化的工具&#xff0c;且都源于 Hadley Wickham 的工作。它们各自有不同的功能&#xff0c;但可以无缝协作&#xff0c;帮助用户完成从数据处理到数据可视化的工作流。以下是它们之…...

pandas:读取各类文件方法以及爬虫时json数据保存

文件的读取与写入 | 常用读文件方法 | 说明 | | -------------- | ---------------- | | read_csv | 读取CSV文件 | | read_excel | 读取Excel文件 | | read_html | 读取网页HTML文件 | | read_table | 通用读取方法 | | 常用写文…...

二、(JS)JS中常见的键盘事件

一、常见的键盘事件 onkeydown 某个键盘按键被按下onkeypress 某个键盘按键被按下onkeyup 某个键盘按键被松开 二、事件的执行顺序 onkeydown、onkeypress、onkeyup down 事件先发生&#xff1b;press 发生在文本被输入&#xff1b;up …...

【CSS】样式水平垂直居中

行内元素&#xff1a; 如果被设置元素为文本、图片等行内元素时&#xff0c;水平居中是通过给父元素设置 text-align:center <body> <div class"txtCenter">我想要在父容器中水平居中显示。</div> </body>div是文本元素的父元素 因此我们对…...

深入理解数据分析的使用流程:从数据准备到洞察挖掘

数据分析是企业和技术团队实现价值的核心。 5 秒内你能否让数据帮你做出决策&#xff1f; 通过本文&#xff0c;我们将深入探讨如何将原始数据转化为有意义的洞察&#xff0c;帮助你快速掌握数据分析的关键流程。 目录 数据分析的五个核心步骤1. 数据获取常用数据获取方式 2. 数…...

CSS 响应式设计(补充)——WEB开发系列36

随着移动设备的普及&#xff0c;网页设计的焦点逐渐转向了响应式设计。响应式设计不仅要求网页在各种屏幕尺寸上良好展示&#xff0c;还要适应不同设备的特性。 一、响应式设计之前的灵活布局 在响应式设计流行之前&#xff0c;网页布局通常是固定的或流动的。固定布局使用固定…...

Qt常用控件——QDateTimeEdit

文章目录 QDateTimeEdit核心属性及信号时间计算器 QDateTimeEdit核心属性及信号 QDateEdit作为日期的微调框QTimeEdit作为时间的微调框QDateTimeEdit作为时间日期的微调框 它们的使用方式都是类似的&#xff0c;本篇以QDateTimeEdit作为示例 核心属性&#xff1a; 属性说明…...

什么是上拉,下拉?

上拉就是将引脚通过一个电阻连接到电源&#xff0c;作用&#xff1a;1.使IO口的不确定电平稳定在高点平&#xff0c;2、为了增加IO口拉电流的能力。 下拉就是将引脚通过一个电阻与GND相连&#xff0c;作用&#xff1a;1.从器件输出电流 2.当IO口为输入状态时&#xff0c;引脚的…...

76-mysql的聚集索引和非聚集索引区别

MySQL中的聚集索引和非聚集索引的主要区别在于它们的存储方式和使用方式。 聚集索引&#xff08;Clustered Index&#xff09;&#xff1a; 聚集索引的叶子页包含了行的全部数据。 每个表只能有一个聚集索引&#xff0c;因为一个表中的数据只能按照一种方式存储。 当你查询的…...

每日一题——第八十八题

题目&#xff1a;输入一个9位的无符号整数&#xff0c;判断其是否有重复数字 #include<stdio.h> #include<stdbool.h> #include<string.h> int main() {char num_str[10];printf("请输入一个9位数的无符号数&#xff1a;");scanf_s("%9d&quo…...

【创作活动】学习使用哪个编程工具让你的工作效率翻倍?

学习使用哪个编程工具让你的工作效率翻倍&#xff1f; 在日益繁忙的工作环境中&#xff0c;选择合适的编程工具已成为提升开发者工作效率的关键。不同的工具能够帮助我们简化代码编写、自动化任务、提升调试速度&#xff0c;甚至让团队协作更加顺畅。那么&#xff0c;哪款编程…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...

Android第十三次面试总结(四大 组件基础)

Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成&#xff0c;用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机&#xff1a; ​onCreate()​​ ​调用时机​&#xff1a;Activity 首次创建时调用。​…...

抽象类和接口(全)

一、抽象类 1.概念&#xff1a;如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象&#xff0c;这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法&#xff0c;包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中&#xff0c;⼀个类如果被 abs…...

java高级——高阶函数、如何定义一个函数式接口类似stream流的filter

java高级——高阶函数、stream流 前情提要文章介绍一、函数伊始1.1 合格的函数1.2 有形的函数2. 函数对象2.1 函数对象——行为参数化2.2 函数对象——延迟执行 二、 函数编程语法1. 函数对象表现形式1.1 Lambda表达式1.2 方法引用&#xff08;Math::max&#xff09; 2 函数接口…...

大数据治理的常见方式

大数据治理的常见方式 大数据治理是确保数据质量、安全性和可用性的系统性方法&#xff0c;以下是几种常见的治理方式&#xff1a; 1. 数据质量管理 核心方法&#xff1a; 数据校验&#xff1a;建立数据校验规则&#xff08;格式、范围、一致性等&#xff09;数据清洗&…...

ThreadLocal 源码

ThreadLocal 源码 此类提供线程局部变量。这些变量不同于它们的普通对应物&#xff0c;因为每个访问一个线程局部变量的线程&#xff08;通过其 get 或 set 方法&#xff09;都有自己独立初始化的变量副本。ThreadLocal 实例通常是类中的私有静态字段&#xff0c;这些类希望将…...

react菜单,动态绑定点击事件,菜单分离出去单独的js文件,Ant框架

1、菜单文件treeTop.js // 顶部菜单 import { AppstoreOutlined, SettingOutlined } from ant-design/icons; // 定义菜单项数据 const treeTop [{label: Docker管理,key: 1,icon: <AppstoreOutlined />,url:"/docker/index"},{label: 权限管理,key: 2,icon:…...