php可以通过curl向gemini的v1beta/decisions端点提交工单文本,在一次请求中获取故障判断、部门分类和影响评分,再根据confidence决定自动路由或人工处理。需要可用的gemini api key、php curl扩展及该模型的访问资格;key从服务端环境变量读取。

Gemini Decisions API官方REST请求示例
提交类型化问题
<?php
$key = getenv('GEMINI_API_KEY');
if (!$key) { throw new RuntimeException('缺少GEMINI_API_KEY'); }
$payload = [
'model' => 'gemini-decision-1',
'input' => '订单8821:耳机左侧间歇断音,客户要求售后处理。',
'questions' => [
'is_defect' => ['type'=>'noul','instructions'=>'客户是否描述产品自身的故障?'],
'department' => ['type'=>'choice','instructions'=>'该消息应交给哪个团队?',
'criteria'=>['support'=>'产品使用或故障','billing'=>'付款或发票','other'=>'不属于前两类']],
'severity' => ['type'=>'score','instructions'=>'问题对正常使用的影响有多大?',
'criteria'=>['无功能影响','部分功能受影响','完全无法使用']],
],
];
$ch = curl_init('https://generativelanguage.googleapis.com/v1beta/decisions');
curl_setopt_array($ch, [CURLOPT_POST=>true, CURLOPT_RETURNTRANSFER=>true,
CURLOPT_HTTPHEADER=>['Content-Type: application/json','x-goog-api-key: '.$key],
CURLOPT_POSTFIELDS=>json_encode($payload, JSON_UNESCAPED_UNICODE|JSON_THROW_ON_ERROR),
CURLOPT_CONNECTTIMEOUT=>10, CURLOPT_TIMEOUT=>30]);
$raw = curl_exec($ch);
if ($raw === false) { throw new RuntimeException(curl_error($ch)); }
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$result = json_decode($raw, true, 512, JSON_THROW_ON_ERROR);
if ($status < 200 || $status >= 300) { throw new RuntimeException('API请求失败,HTTP '.$status); }
$answer = $result['answers']['department'] ?? null;
if (!$answer) { throw new RuntimeException('响应缺少department答案'); }
// 0.8仅为示例;应使用本业务标注样本确定阈值。
$route = ($answer['confidence'] ?? 0) >= 0.8 ? $answer['choice'] : 'human_review';
echo json_encode(['route'=>$route,'answers'=>$result['answers'],'usage'=>$result['usage']],
JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_THROW_ON_ERROR);
读取答案而不是解析生成文本
运行前在当前服务环境配置GEMINI_API_KEY,将示例保存为decisions.php后用php decisions.php执行。该调用会消耗真实API用量。answers按自定义问题键返回结果;noul是“是”的概率,choice是选项键,score是等级索引的加权平均,不保证为整数。usage用于记录本次输入Token。

Gemini Decisions API概率和confidence的官方解释
设置人工处理分支
示例0.8仅演示分支,不是通用合格线。应使用自身工单的标注样本确定阈值,并检查other分类、低置信度和缺少答案的情况。三个问题相互独立,department不能引用is_defect的结果;需要联合判断时在PHP中组合。
使用AIsa生成图像与视频。仅需一个API密钥即可调用Gemini 3 Pro Image(图像)和Qwen Wan 2.6(视频)。
HTTP 400等错误响应不能当作分类结果继续执行。日志保留状态码和必要错误信息即可,不记录Key。自动分配工单与退款、发货等业务动作分开处理,后者应经过已有业务权限和审核。


















