gemini-samples批量API使用指南:高效处理大规模AI任务
gemini-samples批量API是一款强大的工具,能够帮助用户高效处理大规模AI任务。它提供了一种异步处理大量非紧急请求的方式,让AI任务处理变得更加简单、经济且高效。## 批量API的核心优势使用gemini-samples批量API,您将获得以下显著优势:[
适合较小规模的批量任务,直接在API调用中嵌入请求内容。这种方式便捷快速,适用于处理少量提示。
示例代码路径:examples/gemini-batch-api.ipynb
2. 输入文件(Input File)
对于大规模任务,推荐使用JSON Lines(JSONL)文件。将多个请求按格式写入文件,然后通过File API上传,轻松处理大量请求。
快速上手步骤
环境准备
首先,确保安装并升级google-genai库:
%uv pip install google-genai --upgrade
然后导入必要的库并配置API密钥:
import google.genai as genai
from google.genai import types
client = genai.Client()
提交内联请求
创建内联请求列表,直接提交批量任务:
# 创建请求列表
inline_requests = [
{
'contents': [{'parts': [{'text': 'Tell me a one-sentence joke.'}], 'role': 'user'}]
},
{
'contents': [{'parts': [{'text': 'Why is the sky blue?'}], 'role': 'user'}]
}
]
# 创建批量任务
inline_batch_job = client.batches.create(
model="gemini-2.5-flash",
src=inline_requests,
config={'display_name': "inlined-requests-job-1"}
)
print(f"Created batch job: {inline_batch_job.name}")
提交文件请求
- 创建JSONL格式的请求文件:
with open("my-batch-requests.jsonl", "w") as f:
requests = [
{"key": "request-1", "request": {"contents": [{"parts": [{"text": "Describe the process of photosynthesis."}]}]}},
{"key": "request-2", "request": {"contents": [{"parts": [{"text": "What are the main ingredients in a Margherita pizza?"}]}]}}
]
for req in requests:
f.write(json.dumps(req) + "\n")
- 上传文件并创建批量任务:
# 上传文件
uploaded_file = client.files.upload(
file='my-batch-requests.jsonl',
config=types.UploadFileConfig(display_name='my-batch-requests', mime_type='application/jsonl')
)
# 创建批量任务
file_batch_job = client.batches.create(
model="gemini-2.5-flash",
src=uploaded_file.name
)
print(f"Created batch job from file: {file_batch_job.name}")
监控任务状态与获取结果
使用提供的监控函数跟踪任务进度并获取结果:
def monitor_and_get_batch_results(job_name: str, client: genai.client.Client, max_retries: int = 10):
# 监控逻辑实现
# ...
# 获取内联请求结果
inline_results = monitor_and_get_batch_results(inline_job_name, client)
# 获取文件请求结果
file_results = monitor_and_get_batch_results(file_job_name, client)
任务状态说明
批量任务可能处于以下几种状态:
- JOB_STATE_PENDING:任务待处理
- JOB_STATE_SUCCEEDED:任务成功完成
- JOB_STATE_FAILED:任务失败
- JOB_STATE_CANCELLED:任务已取消
通过监控函数,您可以实时跟踪任务状态,并在任务完成后获取结果。
应用场景
gemini-samples批量API适用于多种场景:
- 大规模数据处理:如文本分类、情感分析、实体识别等
- 内容生成:批量生成产品描述、营销文案、新闻摘要等
- 数据预处理:为机器学习模型准备训练数据
- 模型评估:批量测试模型性能,生成评估报告
最佳实践
为了获得最佳的批量处理体验,建议:
- 根据任务规模选择合适的提交方式(内联或文件)
- 合理设置任务优先级,避免不必要的紧急任务
- 定期监控任务状态,及时处理异常情况
- 对于超大规模任务,考虑分批次处理
通过gemini-samples批量API,您可以轻松应对大规模AI任务挑战,提高工作效率并降低成本。无论您是数据科学家、开发人员还是业务分析师,这款工具都能为您的AI工作流带来显著提升。
立即尝试使用examples/gemini-batch-api.ipynb中的示例代码,开启您的高效AI批量处理之旅!
【免费下载链接】gemini-samples 项目地址: https://gitcode.com/gh_mirrors/ge/gemini-samples
更多推荐






所有评论(0)