Skip to Content
模型用法GPT-6 Luna

GPT-6 Luna

OpenAI 的 GPT-6 Luna 既是对话模型,也支持通过 Decisions API 进行类型化判断。判断模式的用法与 Jev 相同:请求中提供待判断的内容和一组问题,模型为每个问题返回结构化答案及其概率。与 Jev 相比,GPT-6 Luna 支持图片输入。

本页介绍 GPT-6 Luna 的判断用法。对话用法见 GPT 系列。

与 Jev 的选择

要点需要对图片进行判断时,使用 GPT-6 Luna;仅处理文本或 JSON 且对响应速度要求较高时,使用 Jev。
GPT-6 LunaJev
模型 IDopenai/gpt-6-lunatypesafe/jev-latest
输入文本、图片文本、JSON
问题类型predicate、choice、scorepredicate、choice、score
调用路径/v1/decisions、/openai/v1/decisions、/typesafe/v1/systemone同左
单次耗时(实测)约 0.5 秒(首次请求可能需要约 2.5 秒)约 0.3 秒

同一组问题在两个模型上的判断结果基本一致:实测同一条退款工单,两者均判定为退款申请并分配给 billing。

快速开始

接入信息
Base URLhttps://api.ofox.ai/v1
模型 IDopenai/gpt-6-luna
接口路径/v1/decisionsPOST

使用 OpenAI 官方 Python SDK 调用时,需安装包含 client.decisions 的版本(pip install -U openai,实测 3.31.0 可用)。API Key 的创建方式见 Jev · 快速开始。

luna_text.py
import os from openai import OpenAI client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"]) r = client.decisions.create( model="openai/gpt-6-luna", input="客户留言:我被重复扣款了,今天必须退款。", questions=[ {"type": "predicate", "name": "refund", "instructions": "客户是否在申请退款?"}, { "type": "choice", "name": "team", "instructions": "这张工单应由哪个团队处理?", "choices": [ {"value": "billing", "description": "扣款、发票、退款"}, {"value": "technical", "description": "故障、报错、接入问题"}, {"value": "other", "description": "以上都不是"}, ], }, ], ) refund, team = r.answers print(refund.probability, team.choice, team.confidence)

输出:

1.0 billing 1.0

图片判断

传入图片时,input 需使用消息数组,在 content 中以 input_image 传入图片,图片使用 base64 data URL。可同时传入一段 input_text 说明图片来源。

luna_image.py
import base64 import os from openai import OpenAI client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"]) with open("product.jpg", "rb") as f: image = "data:image/jpeg;base64," + base64.b64encode(f.read()).decode() r = client.decisions.create( model="openai/gpt-6-luna", input=[{ "role": "user", "content": [ {"type": "input_text", "text": "用户上传的商品图片"}, {"type": "input_image", "image_url": image}, ], }], questions=[ {"type": "predicate", "name": "has_text", "instructions": "图片中是否有文字?"}, { "type": "choice", "name": "shape", "instructions": "图片左侧的图形是什么形状?", "choices": [{"value": "circle"}, {"value": "square"}, {"value": "triangle"}, {"value": "other"}], }, ], ) for a in r.answers: print(a.name, getattr(a, "probability", None) or a.choice) print(r.usage.prompt_tokens)

输出:

has_text 1.0 shape circle 535

示例图片为白底上的红色圆形、蓝色方形与一行文字,两个问题均判断正确。字段定义见 Decisions API · 输入格式。

问题设计与上线准备

Jev 文档中的以下内容同样适用于 GPT-6 Luna:

  • 问题设计:选项应覆盖全部情况、为选项编写描述、为问题设置 name,以及返回字段的含义。
  • 上线准备:使用人工标注样本设置置信度阈值、将多个问题合并到同一请求。

计费

判断模式与对话模式分别计费,判断模式的单价见模型页 。实测判断请求返回的 usage 仅包含 prompt_tokens(含图片部分),不包含 completion_tokens。

常见报错

报错信息与处理方法见 Jev · 常见报错 与 Decisions API · 常见报错。其中与 Jev 图片输入相关的报错不适用于 GPT-6 Luna。

官方文档

常见问题

GPT-6 Luna 的判断模式与对话模式有何区别?

判断模式通过 /v1/decisions 调用,仅在给定的选项和级别内作答,并返回概率与置信度;对话模式通过 /v1/chat/completions 或 /v1/responses 调用,生成文本回答。两种模式分别计费。

何时选择 GPT-6 Luna,何时选择 Jev?

需要对图片进行判断时选择 GPT-6 Luna;仅处理文本或 JSON 且对响应速度要求较高时选择 Jev。两者的请求格式与问题类型相同,切换时仅需修改 model。

是否可以使用 TypeSafe SDK 调用 GPT-6 Luna?

可以。实测 /typesafe/v1/systemone 与 /openai/v1/decisions 均可调用 openai/gpt-6-luna,调用方式与 Jev 相同。

最后更新于