@ fevex/ openai (英语)
官方开放AI ModelGateway fevex的适配器. 见
兼容和发布政策。 。 。 .
npm install @fevex/core @fevex/openai
import { createOpenAI } from '@fevex/openai';
const model = createOpenAI({
apiKey: process.env.OPENAI_API_KEY!,
organization: process.env.OPENAI_ORG_ID,
project: process.env.OPENAI_PROJECT_ID,
schemaPolicy: 'strict',
})('gpt-5.6');
适配器使用本地 fetch 并且只执行Fevex模型合同.
工具执行、 验证、 事件和重试等运行时行为属于
改为 @fevex/core。返回的网关包括 metadata: { provider: "openai", model: modelId } 用于追踪、 eval 成本计算器和 OpenTelemeter 导出.
文本、工具和延续
无 outputSchema,将 OpenAI 文本作为精确的字符串返回
反应API, 即使它看起来像JSON。 与 outputSchema,则
适配器在 Fevex 执行本地计划验证前需要有效的 JSON .
拒绝,回复不全和功能错位的呼叫明显失败.
在工具循环期间,适配器存储原始响应项,包括
aPI要求的推理项目, (中文(简体) ),
不透明 providerState。Fevex 返回该状态到下一个模式步骤
自动。 直接 ModelGateway 消费者也必须这样做
不得检查。 那个适配器 stateCodec 让费韦克斯
只有在私人的持久检查站内才能使用.
核心推理工作转至 reasoning.effort· ;
provider-default 使提供者选项不受影响。 核心合同
包含 none, (中文(简体) ), minimal, (中文(简体) ), low, (中文(简体) ), medium, (中文(简体) ), high, (中文(简体) ), xhigh 财务报告和审定财务报表 max 这样
目前的GPT-5.6模型可以使用其已记录的工作水平. 特定模式
支持仍然属于 OpenAI,所以一个不支持的值被报告
API (英语). 只能通过提供方设置提供 modelOptions.reasoning。 。 。 .
createOpenAI 接收连接设置( e)apiKey选项
organization, (中文(简体) ), project, (中文(简体) ), baseURL,计划政策和 fetch)和型号
创建网关时会提供ID. 说明理由的努力是故意的
每个请求设置 ModelInput而不是工厂的设置.
适配器总是使用响应流式API. 它只发出
response.output_text.delta 作为可见输出并构建终端结果
从 response.completed; 推理和部分函数参数依然存在
私处.
工具名称和 schemaName 必须匹配 [A-Za-z0-9_-]{1,64}. 费韦克斯拥有
字段,例如模型、输入、工具、工具选择、计划格式、并行调用
和输出上限覆盖冲突 modelOptions。背景提供者任务
和内置工具 留在这个网关之外.
Schema 政策
schemaPolicy 默认为 "strict"。在发送请求之前,适配器
对照OpenAI文件记录的检查工具输入和最终产出
结构化产出子集。 。 。 .
每个方案必须有一个对象根;每个对象必须要求其全部
属性和设置 additionalProperties: false不支持的关键字和
文件大小限制抛出 OpenAIError 与
code: "PROVIDER_SCHEMA_UNSUPPORTED" 在此之前 fetch 运行.
设定 schemaPolicy: "best-effort" 来发送工具 strict: false对象
输出使用 JSON 模式,其他 JSON 值使用一个 schema 指令. 费韦克斯
仍然验证本地返回的值, 但 OpenAI 不保证计划
遵守此模式, 因此调用者可能需要重试无效的结果 .
| 政策 | 工具输入 | 最后产出 |
|---|---|---|
strict | OpenAI 严格的函数计划 | 结构化产出 |
best-effort | 非限制性函数计划a | JSON 模式或 JSON 指令 |