google gemini 大模型
Gemini 产品
- 大语言模型:文本生成
- 高级推理模型:思维链
- 深度研究 RAG 检索增强生成 + 大模型

大语言模型基本使用

Canvas 画布

深度研究 RAG + 大模型


大模型介绍

Gemini 大模型
Gemini 2.0 Flash 提供新一代功能和增强型功能,包括更快的速度、原生工具使用、多模态生成功能,以及 100 万个 token 的上下文窗口。

Gemma 轻量级模型
Gemma 是一系列先进的轻量级开放模型, 研发创新型企业所用的研究和技术, Gemini 模型。 Gemma 由 Google DeepMind 和其他 Google 团队开发,其名字以 拉丁语 gemma,意思是宝石。Gemma 模型的权重 通过用于促进创新、协作和 负责任地使用人工智能 (AI)。
Gemma 模型可以在 以及你的硬件、移动设备或托管服务中。您 也可以使用调优方法自定义这些模型, 执行对您和您的用户至关重要的特定任务。杰玛模特绘画 从 Gemini 系列模型中汲取的灵感和技术沿袭, 。
ollama 私有部署 gemma

Google AI Studio

API 调用

\
- 您可以使用 OpenAI 库(Python 和 TypeScript/JavaScript)以及 REST API 访问 Gemini 模型,只需更新三行代码并使用 Gemini API 密钥即可
- 如果您尚未使用 OpenAI 库,我们建议您直接调用 Gemini API。
HTTP 接口
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=${GEMINI_API_KEY}" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[{"text": "Write a story about a magic backpack."}]
}]
}'
OpenAI 兼容
from openai import OpenAI
client = OpenAI(
api_key="GEMINI_API_KEY",
base_url="https://generativelanguage.googleapis.com/v1beta/openai/"
)
response = client.chat.completions.create(
model="gemini-2.0-flash",
n=1,
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{
"role": "user",
"content": "Explain to me how AI works"
}
]
)
print(response.choices[0].message)
官方标准库调用
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(
model="gemini-2.0-flash",
contents=["How does AI work?"])
print(response.text)
多模态支持
- Gemini 模型能够处理图片和视频,从而支持许多先进的开发者应用场景,而这些场景在过去需要使用特定领域的模型。Gemini 的部分视觉功能包括:
- 为图片添加文字说明并回答有关图片的问题
- 转写和推理 PDF 文件(最多包含 200 万个令牌)
- 对时长最长 90 分钟的视频进行描述、细分和信息提取
- 检测图片中的对象并返回其边界框坐标
图片视觉识别
# pip install google-genai
from google import genai
from google.genai import types
import PIL.Image
image = PIL.Image.open('/path/to/image.png')
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(
model="gemini-2.0-flash",
contents=["What is this image?", image])
print(response.text)
视频分析
# Only for videos of size <20Mb
video_file_name = "/path/to/your/video.mp4"
video_bytes = open(video_file_name, 'rb').read()
response = client.models.generate_content(
model='models/gemini-2.0-flash',
contents=types.Content(
parts=[
types.Part(text='Can you summarize this video?'),
types.Part(
inline_data=types.Blob(data=video_bytes, mime_type='video/mp4')
)
]
)
)