Gemini API怎么算得更可靠?code_execution、运行结果与样本核对
启用Gemini官方Python代码执行工具,分别检查生成代码、执行结果和最终答案;用确定性练习…
文章目录

让模型直接口算一列数字,得到一个看似合理的总数并不容易核对。Gemini API可生成并执行Python,再依据结果回答。本文使用人工样本检查完整链路,不处理真实财务数据,也不把代码执行工具当作自己服务器的任意Shell。
第一步:准备有确定答案的小样本
先选择容易人工复核的数据:1、2、缺失值和3,非空合计6,缺失数量1。明确缺失不能自动当零,编号和说明不属于数值。真实任务还要定义去重、单位和筛选条件,再考虑大规模处理。
官方工具执行Python,生成其他语言不等于能在此工具运行。环境的可用库和限制要按当前文档检查,不能默认支持本地文件、任意安装包或外网。
第二步:声明code_execution工具
按当前Interactions接口启用工具,示例模型采用官方页面中的gemini-4-hydrogen,需项目具备可用权限。使用兼容SDK和服务端凭据,未执行真实付费请求,不提供虚构token或耗时数据。
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-4-hydrogen",
input="values=[1,2,None,3]。请生成并运行Python,分别求非空合计、非空数量和缺失数量。不要把None当零,解释实际执行结果。",
tools=[{"type": "code_execution"}],
)
for step in interaction.steps:
if step.type == "code_execution_call":
print(step.arguments.code)
elif step.type == "code_execution_result":
print(step.result)
第三步:检查代码是否真的实现规则
读取代码中的过滤条件、求和字段和缺失处理,不能仅看到sum就认为口径正确。模型可能修改算法多次,应记录最终成功执行的版本及其结果,不把较早失败版本的代码与较晚答案拼在一起。
代码应针对提供数据,不凭空创建更多记录。文件任务要核对实际读取的文件与行数,不能用人工硬编码的几个数字代替全量文件后仍声称完成全量计算。
第四步:区分执行成功与答案正确
检查code_execution_result是否成功、输出是否对应当前调用,再与自然语言答案比较。模型写出代码而没有执行结果,只能算代码草案。执行报错但最后仍给出数字,需要明确标为未验证。
验收:非空合计6;非空数量3;缺失数量1。再增加一个负数和一个空值,先人工计算预期,再检查是否仍按同一规则。示例是测试计划,不填写未运行结果。
第五步:扩展真实任务并保留证据
样本通过后再替换脱敏资料,保存输入身份、代码、运行输出和最终答案。异常数据应单列,不能用忽略所有异常来制造成功。输出量大时保留完整结果文件与摘要,而不是截取前几行当全量。
真实工作中确定性计算和数据口径都重要;Python跑通也可能算错字段。完成标准是规则清楚、代码对应、执行成功、样本及汇总可复核。不要将此教程的API工具与Colab导出混淆,后者运行环境和权限是另一个流程。
官方资料
资料核对日期:2026年11月15日。
本文地址:https://www.163264.com/21260


