@aeye/openai 0.3.8 → 0.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/aeye-openai.md +178 -0
- package/dist/openai.d.ts +53 -8
- package/dist/openai.d.ts.map +1 -1
- package/dist/openai.js +169 -34
- package/dist/openai.js.map +1 -1
- package/package.json +5 -4
package/aeye-openai.md
ADDED
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
# @aeye/openai
|
|
2
|
+
|
|
3
|
+
One-line purpose: OpenAI provider for the `@aeye/ai` framework — chat, vision, reasoning, tools, structured output, image generation/edit, transcription, speech, and embeddings via the official `openai` SDK. Also the base class for any OpenAI-compatible provider.
|
|
4
|
+
|
|
5
|
+
## When to use
|
|
6
|
+
|
|
7
|
+
- You want to call OpenAI (GPT-4o, GPT-4, o-series, DALL-E, gpt-image, Whisper, TTS, text-embedding-3-*) through `@aeye/ai`.
|
|
8
|
+
- You need a base class to build an OpenAI-compatible provider (Azure OpenAI, OpenRouter, local OpenAI-shaped endpoints). `@aeye/openrouter` is built this way.
|
|
9
|
+
|
|
10
|
+
## Install / import
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npm install @aeye/openai openai
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
```typescript
|
|
17
|
+
import {
|
|
18
|
+
OpenAIProvider,
|
|
19
|
+
type OpenAIConfig,
|
|
20
|
+
type OpenAIHooks,
|
|
21
|
+
// error classes (from @aeye/openai)
|
|
22
|
+
ProviderError,
|
|
23
|
+
ProviderAuthError,
|
|
24
|
+
RateLimitError,
|
|
25
|
+
ProviderRateLimitError,
|
|
26
|
+
ProviderQuotaError,
|
|
27
|
+
ContextWindowError,
|
|
28
|
+
} from '@aeye/openai';
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
`@aeye/ai` and `@aeye/core` are peer/runtime dependencies (they ship as `dependencies`). The `openai` SDK and `zod` are also dependencies.
|
|
32
|
+
|
|
33
|
+
## Register with an `@aeye/ai` instance
|
|
34
|
+
|
|
35
|
+
A provider is registered by passing it into `AI.with().providers({...})`. The key you give it is the provider's local name in the registry.
|
|
36
|
+
|
|
37
|
+
```typescript
|
|
38
|
+
import { AI } from '@aeye/ai';
|
|
39
|
+
import { OpenAIProvider } from '@aeye/openai';
|
|
40
|
+
|
|
41
|
+
const openai = new OpenAIProvider({
|
|
42
|
+
apiKey: process.env.OPENAI_API_KEY!,
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
const ai = AI.with()
|
|
46
|
+
.providers({ openai })
|
|
47
|
+
.create({ /* AI config: modelSources, hooks, defaultContext, ... */ });
|
|
48
|
+
|
|
49
|
+
// Chat
|
|
50
|
+
const response = await ai.chat.get({
|
|
51
|
+
messages: [{ role: 'user', content: 'Hello!' }],
|
|
52
|
+
});
|
|
53
|
+
console.log(response.content);
|
|
54
|
+
|
|
55
|
+
// Explicit model selection is done via metadata, not the provider
|
|
56
|
+
const r2 = await ai.chat.get(
|
|
57
|
+
{ messages: [{ role: 'user', content: 'Hi' }] },
|
|
58
|
+
{ metadata: { model: 'openai/gpt-4o' } }
|
|
59
|
+
);
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
You can also use the provider directly without the `AI` facade:
|
|
63
|
+
|
|
64
|
+
```typescript
|
|
65
|
+
const executor = openai.createExecutor();
|
|
66
|
+
const res = await executor(
|
|
67
|
+
{ messages: [{ role: 'user', content: 'Hello!' }] },
|
|
68
|
+
{}, // AIContext
|
|
69
|
+
{ model: 'gpt-4o' } // AIMetadata
|
|
70
|
+
);
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Authentication / credentials
|
|
74
|
+
|
|
75
|
+
- `apiKey` is **required** on `OpenAIConfig` (typed `string`). Conventionally supply `process.env.OPENAI_API_KEY`.
|
|
76
|
+
- `organization` and `project` map to the OpenAI SDK's `organization` / `project` options.
|
|
77
|
+
- `baseURL` lets you point at an OpenAI-compatible endpoint (e.g. Azure). There is no special env var handling in this package — credentials come from the config object you pass.
|
|
78
|
+
|
|
79
|
+
## Configuration (`OpenAIConfig`)
|
|
80
|
+
|
|
81
|
+
| Field | Type | Notes |
|
|
82
|
+
|-------|------|-------|
|
|
83
|
+
| `apiKey` | `string` (required) | OpenAI API key |
|
|
84
|
+
| `baseURL` | `string` | Custom/compatible endpoint |
|
|
85
|
+
| `organization` | `string` | Org ID |
|
|
86
|
+
| `project` | `string` | Project ID |
|
|
87
|
+
| `store` | `boolean` | Allow OpenAI to store call contents. Defaults to `false` |
|
|
88
|
+
| `retry` | `RetryConfig` | Per-provider retry (maxRetries, initialDelay, retryableStatuses, etc.) |
|
|
89
|
+
| `retryEvents` | `RetryEvents` | Retry lifecycle callbacks (e.g. `onRetry`) |
|
|
90
|
+
| `hooks` | `OpenAIHooks` | Per-operation `beforeRequest` / `afterRequest` / `onError` |
|
|
91
|
+
| `defaultModels` | object | Fallback model per capability: `chat`, `imageGenerate`, `imageEdit`, `imageAnalyze`, `transcription`, `speech`, `embedding` |
|
|
92
|
+
|
|
93
|
+
Retry config can also be overridden per request via `request.extra.retry` / `request.extra.retryEvents`.
|
|
94
|
+
|
|
95
|
+
### Hooks
|
|
96
|
+
|
|
97
|
+
`OpenAIHooks` has a block per operation: `chat`, `imageGenerate`, `imageEdit`, `imageAnalyze`, `transcribe`, `speech`, `embed`. Each block may define `beforeRequest(request, params, ctx, metadata)`, `afterRequest(request, params, response, ctx, metadata)`, and `onError(request, params, error, ctx, metadata)`. The `params` argument is the raw OpenAI SDK params, so you can inspect/mutate the exact wire payload.
|
|
98
|
+
|
|
99
|
+
## Supported capabilities
|
|
100
|
+
|
|
101
|
+
| Capability | API surface | Models |
|
|
102
|
+
|-----------|-------------|--------|
|
|
103
|
+
| Chat (+ streaming) | `ai.chat.get` / `ai.chat.stream` | GPT-4o, GPT-4, GPT-3.5, o-series |
|
|
104
|
+
| Vision | `ai.chat` with `image` content | GPT-4o / GPT-4V |
|
|
105
|
+
| Reasoning | `ai.chat` with `request.reason.effort` → `reasoning_effort` | o1, o3-mini, etc. |
|
|
106
|
+
| Tools / function calling | `ai.chat` with `tools` | GPT-4o, GPT-4 |
|
|
107
|
+
| Structured output | `ai.chat` with a schema `responseFormat` | GPT-4o (strict json_schema) |
|
|
108
|
+
| Image generation | `ai.image.generate` | `dall-e-2`, `dall-e-3`, `gpt-image-*` |
|
|
109
|
+
| Image edit | `ai.image.edit` | `dall-e-2`, `gpt-image-*` |
|
|
110
|
+
| Transcription (+ stream) | `ai.transcribe` | `whisper-1`, gpt-4o transcribe |
|
|
111
|
+
| Speech / TTS | `ai.speech` | `tts-1`, `tts-1-hd`, gpt-4o-mini-tts |
|
|
112
|
+
| Embeddings | `ai.embed` | `text-embedding-3-small` / `-large` |
|
|
113
|
+
|
|
114
|
+
### Strict / structured output
|
|
115
|
+
|
|
116
|
+
The provider only emits OpenAI-shaped strict schemas (`supportedStrictFamilies = {'openai'}`). Strict mode for a tool or structured output engages only when the resolved model's strict format is `openai` **and** the model declares the `toolsStrict` / `structured` capability; otherwise it silently falls back to a lenient (non-strict) schema. A shared `SchemaBudget` is used so tools and the response format cooperate on per-request limits.
|
|
117
|
+
|
|
118
|
+
## Usage examples
|
|
119
|
+
|
|
120
|
+
```typescript
|
|
121
|
+
// Vision
|
|
122
|
+
await ai.chat.get({
|
|
123
|
+
messages: [{
|
|
124
|
+
role: 'user',
|
|
125
|
+
content: [
|
|
126
|
+
{ type: 'text', content: 'Describe this image' },
|
|
127
|
+
{ type: 'image', content: 'https://example.com/cat.png' },
|
|
128
|
+
],
|
|
129
|
+
}],
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
// Tools
|
|
133
|
+
import { z } from 'zod';
|
|
134
|
+
await ai.chat.get({
|
|
135
|
+
messages: [{ role: 'user', content: 'Weather in SF?' }],
|
|
136
|
+
tools: [{
|
|
137
|
+
name: 'get_weather',
|
|
138
|
+
description: 'Get current weather',
|
|
139
|
+
parameters: z.object({ location: z.string() }),
|
|
140
|
+
}],
|
|
141
|
+
toolChoice: 'auto',
|
|
142
|
+
});
|
|
143
|
+
|
|
144
|
+
// Image generation
|
|
145
|
+
await ai.image.generate.get({ prompt: 'A sunset over mountains', size: '1024x1024' });
|
|
146
|
+
|
|
147
|
+
// Embeddings
|
|
148
|
+
await ai.embed.get({ texts: ['Hello world'] });
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
## Extending for OpenAI-compatible providers
|
|
152
|
+
|
|
153
|
+
`OpenAIProvider<TConfig>` is designed for subclassing. Override:
|
|
154
|
+
|
|
155
|
+
- `createClient(config)` — point at a different `baseURL` / set custom headers.
|
|
156
|
+
- `convertModel(model)` — enrich `ModelInfo`.
|
|
157
|
+
- `listModels(config)` — custom model discovery.
|
|
158
|
+
- `augmentChatRequest` / `augmentChatMessage` / `augmentChatContent` / `augmentChatChunk` / `augmentChatResponse` — inject provider-specific params and parse extra response fields.
|
|
159
|
+
- `augmentImageGenerateRequest`, `augmentImageEditRequest`, `augmentTranscriptionRequest`, `augmentSpeechRequest`, `augmentEmbeddingRequest`.
|
|
160
|
+
- `supportedStrictFamilies` — widen accepted strict descriptor families.
|
|
161
|
+
|
|
162
|
+
```typescript
|
|
163
|
+
class AzureProvider extends OpenAIProvider {
|
|
164
|
+
readonly name = 'azure';
|
|
165
|
+
protected createClient(config: OpenAIConfig) {
|
|
166
|
+
return new OpenAI({ apiKey: config.apiKey, baseURL: 'https://my.openai.azure.com/v1' });
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
## Gotchas
|
|
172
|
+
|
|
173
|
+
- `apiKey` is required by the type; this package does not auto-read `OPENAI_API_KEY` for you (you pass it in).
|
|
174
|
+
- Model is required at request time — supply it via `request.model`, `ctx.metadata.model`, request metadata, or `defaultModels`. Missing model throws `ProviderError`.
|
|
175
|
+
- `store` defaults to `false`; set it explicitly if you rely on OpenAI storing calls.
|
|
176
|
+
- Context-window overflow is not thrown on the chat path — the executor/streamer returns a `Response` with `finishReason: 'length'` instead.
|
|
177
|
+
- Streaming chat always sends `stream_options.include_usage: true` so usage arrives in trailing chunks.
|
|
178
|
+
- Retry types (`RetryConfig`, `RetryEvents`) are accepted structurally via `OpenAIConfig` but are not re-exported from the package entry point.
|
package/dist/openai.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Also serves as base class for OpenAI-compatible providers.
|
|
6
6
|
*/
|
|
7
7
|
import type { AIContextAny, AIMetadataAny, EmbeddingRequest, EmbeddingResponse, ImageAnalyzeRequest, ImageEditRequest, ImageGenerationRequest, ImageGenerationResponse, Message, ModelInfo, Provider, SpeechRequest, SpeechResponse, TranscriptionRequest, TranscriptionResponse } from '@aeye/ai';
|
|
8
|
-
import { BaseRequest, type Chunk, type Executor, type MessageContent, ModelInput, type Request, type Response, type Streamer, type ToolCall } from '@aeye/core';
|
|
8
|
+
import { BaseRequest, type Chunk, type DescriptorFamily, type Executor, type MessageContent, ModelInput, type Request, type Response, SchemaBudget, type Streamer, type ToolCall } from '@aeye/core';
|
|
9
9
|
import OpenAI from 'openai';
|
|
10
10
|
import { type RetryConfig, type RetryEvents } from './retry';
|
|
11
11
|
/**
|
|
@@ -313,12 +313,50 @@ export declare class OpenAIProvider<TConfig extends OpenAIConfig = OpenAIConfig>
|
|
|
313
313
|
/**
|
|
314
314
|
* Convert @aeye tool definitions to OpenAI format.
|
|
315
315
|
*
|
|
316
|
-
*
|
|
316
|
+
* Strict-mode is a best-effort wish: a tool's `strict: true` only takes
|
|
317
|
+
* effect when `resolveStrictFormat(model) === 'openai'` (resolved from
|
|
318
|
+
* the model's `strictFormat` override, or its `provider` / `id` prefix).
|
|
319
|
+
* Numeric
|
|
320
|
+
* priority (`strict: <n>`) competes for slot allocation under the shared
|
|
321
|
+
* `SchemaBudget`; tools that don't fit fall back to LENIENT silently.
|
|
317
322
|
*
|
|
318
|
-
*
|
|
319
|
-
*
|
|
323
|
+
* Tools are emitted in their original declaration order, but slot
|
|
324
|
+
* allocation walks them in *descending priority* order so the most-wanted
|
|
325
|
+
* strict items consume the budget first.
|
|
326
|
+
*
|
|
327
|
+
* @param request @aeye request (mutated: each tool's `descriptor` field is
|
|
328
|
+
* pinned for the validation roundtrip)
|
|
329
|
+
* @param model the resolved model the request is targeting
|
|
330
|
+
* @param budget shared allocator (also fed by `convertResponseFormat`)
|
|
331
|
+
*/
|
|
332
|
+
protected convertTools(request: Request, model?: ModelInfo, budget?: SchemaBudget): OpenAI.Chat.ChatCompletionTool[] | undefined;
|
|
333
|
+
/**
|
|
334
|
+
* The set of strict descriptor families this provider can speak on the
|
|
335
|
+
* wire. Defaults to `['openai']` — the OpenAI Chat Completions API only
|
|
336
|
+
* accepts OpenAI-shaped strict schemas. Subclasses or custom providers
|
|
337
|
+
* extending OpenAIProvider can extend this set to accept additional
|
|
338
|
+
* registered families (e.g. a custom `'openai-tight'` variant).
|
|
339
|
+
*/
|
|
340
|
+
protected supportedStrictFamilies: ReadonlySet<DescriptorFamily>;
|
|
341
|
+
/**
|
|
342
|
+
* Build a SchemaBudget tuned to the strictest of the model's tool /
|
|
343
|
+
* structured-output families. Anthropic-style per-request limits apply
|
|
344
|
+
* across BOTH tool schemas and the response_format schema, so the budget
|
|
345
|
+
* is shared between `convertTools` and `convertResponseFormat`.
|
|
346
|
+
*
|
|
347
|
+
* Strict mode engages only when the model's resolved family is in
|
|
348
|
+
* `supportedStrictFamilies` AND the model has the corresponding
|
|
349
|
+
* capability (`'toolsStrict'` for tools, `'structured'` for output).
|
|
350
|
+
* Mismatched families fall back to LENIENT silently — protects the
|
|
351
|
+
* wire from receiving a dialect the API doesn't understand.
|
|
320
352
|
*/
|
|
321
|
-
protected
|
|
353
|
+
protected buildSchemaBudget(model?: ModelInfo): SchemaBudget;
|
|
354
|
+
/**
|
|
355
|
+
* Allocate per-tool descriptors in descending-priority order, then return
|
|
356
|
+
* them in original declaration order. Mutates `request.tools[i].descriptor`
|
|
357
|
+
* to record the chosen id for the Prompt's validation roundtrip.
|
|
358
|
+
*/
|
|
359
|
+
private allocateToolDescriptors;
|
|
322
360
|
/**
|
|
323
361
|
* Convert @aeye tool choice to OpenAI format.
|
|
324
362
|
*
|
|
@@ -331,12 +369,19 @@ export declare class OpenAIProvider<TConfig extends OpenAIConfig = OpenAIConfig>
|
|
|
331
369
|
/**
|
|
332
370
|
* Convert @aeye response format to OpenAI format.
|
|
333
371
|
*
|
|
334
|
-
*
|
|
372
|
+
* Strict structured output is best-effort: honored only when the chosen
|
|
373
|
+
* `resolveStrictFormat(model) === 'openai'` AND the model has the
|
|
374
|
+
* `'structured'` capability. For unsupported models
|
|
375
|
+
* the LENIENT descriptor is used and the API-level `strict: true` flag is
|
|
376
|
+
* omitted — silent fallback. The chosen descriptor is pinned on the
|
|
377
|
+
* `responseFormat.descriptor` so the Prompt validator can apply the
|
|
378
|
+
* matching strictify before parsing model output.
|
|
335
379
|
*
|
|
336
|
-
* @param request @aeye request object
|
|
380
|
+
* @param request @aeye request object (mutated to record descriptor)
|
|
381
|
+
* @param model the resolved model the request is targeting
|
|
337
382
|
* @returns OpenAI-formatted response format or undefined
|
|
338
383
|
*/
|
|
339
|
-
protected convertResponseFormat(request: Request): OpenAI.Chat.ChatCompletionCreateParams['response_format'] | undefined;
|
|
384
|
+
protected convertResponseFormat(request: Request, model?: ModelInfo, budget?: SchemaBudget): OpenAI.Chat.ChatCompletionCreateParams['response_format'] | undefined;
|
|
340
385
|
/**
|
|
341
386
|
* List available models from OpenAI.
|
|
342
387
|
*
|
package/dist/openai.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAEhB,sBAAsB,EACtB,uBAAuB,EACvB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,aAAa,EACb,cAAc,EAEd,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAU,WAAW,EAAE,KAAK,KAAK,EAAE,KAAK,QAAQ,
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
|
package/dist/openai.js
CHANGED
|
@@ -4,12 +4,33 @@
|
|
|
4
4
|
* Provider for OpenAI's GPT models, DALL-E, Whisper, and TTS.
|
|
5
5
|
* Also serves as base class for OpenAI-compatible providers.
|
|
6
6
|
*/
|
|
7
|
-
import { detectTier } from '@aeye/ai';
|
|
8
|
-
import { toFile, getModel, toBase64, toJSONSchema, toText, toURL, getResponseFromChunks } from '@aeye/core';
|
|
7
|
+
import { detectTier, isModelInfo, resolveStrictFormat } from '@aeye/ai';
|
|
8
|
+
import { toFile, getDescriptor, getModel, LENIENT, SchemaBudget, strictestOf, strictify, strictPriority, toBase64, toJSONSchema, toText, toURL, getResponseFromChunks } from '@aeye/core';
|
|
9
9
|
import OpenAI from 'openai';
|
|
10
10
|
import { isContextWindowError, parseContextWindowError, withRetry } from './retry';
|
|
11
11
|
import { ContextWindowError, ProviderError } from './types';
|
|
12
12
|
// ============================================================================
|
|
13
|
+
// OpenAI Provider Configuration
|
|
14
|
+
// ============================================================================
|
|
15
|
+
/**
|
|
16
|
+
* Resolve the full `ModelInfo` for the request when available.
|
|
17
|
+
*
|
|
18
|
+
* `BaseAPI` injects `selected.model` into `ctx.metadata.model` after model
|
|
19
|
+
* selection, so on the standard execution path we get the strict-format
|
|
20
|
+
* declarations directly from there. External callers that bypass `BaseAPI`
|
|
21
|
+
* (e.g. invoking the executor directly) may pass only a model id — we
|
|
22
|
+
* return undefined in that case and the caller falls back to LENIENT.
|
|
23
|
+
*/
|
|
24
|
+
function pickModelInfo(metadata, ctx, modelId) {
|
|
25
|
+
const candidates = [metadata?.model, ctx?.metadata?.model];
|
|
26
|
+
for (const c of candidates) {
|
|
27
|
+
if (c && typeof c === 'object' && isModelInfo(c) && c.id === modelId) {
|
|
28
|
+
return c;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
// ============================================================================
|
|
13
34
|
// OpenAI Provider Class
|
|
14
35
|
// ============================================================================
|
|
15
36
|
/**
|
|
@@ -544,23 +565,94 @@ export class OpenAIProvider {
|
|
|
544
565
|
/**
|
|
545
566
|
* Convert @aeye tool definitions to OpenAI format.
|
|
546
567
|
*
|
|
547
|
-
*
|
|
568
|
+
* Strict-mode is a best-effort wish: a tool's `strict: true` only takes
|
|
569
|
+
* effect when `resolveStrictFormat(model) === 'openai'` (resolved from
|
|
570
|
+
* the model's `strictFormat` override, or its `provider` / `id` prefix).
|
|
571
|
+
* Numeric
|
|
572
|
+
* priority (`strict: <n>`) competes for slot allocation under the shared
|
|
573
|
+
* `SchemaBudget`; tools that don't fit fall back to LENIENT silently.
|
|
548
574
|
*
|
|
549
|
-
*
|
|
550
|
-
*
|
|
575
|
+
* Tools are emitted in their original declaration order, but slot
|
|
576
|
+
* allocation walks them in *descending priority* order so the most-wanted
|
|
577
|
+
* strict items consume the budget first.
|
|
578
|
+
*
|
|
579
|
+
* @param request @aeye request (mutated: each tool's `descriptor` field is
|
|
580
|
+
* pinned for the validation roundtrip)
|
|
581
|
+
* @param model the resolved model the request is targeting
|
|
582
|
+
* @param budget shared allocator (also fed by `convertResponseFormat`)
|
|
551
583
|
*/
|
|
552
|
-
convertTools(request) {
|
|
584
|
+
convertTools(request, model, budget) {
|
|
553
585
|
if (!request.tools || request.tools.length === 0)
|
|
554
586
|
return undefined;
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
587
|
+
const localBudget = budget ?? this.buildSchemaBudget(model);
|
|
588
|
+
const descriptors = this.allocateToolDescriptors(request, localBudget);
|
|
589
|
+
return request.tools.map((tool, i) => {
|
|
590
|
+
const descriptor = descriptors[i];
|
|
591
|
+
const strictifiedSchema = strictify(tool.parameters, descriptor);
|
|
592
|
+
// Only set the API-level strict flag when we're actually emitting a
|
|
593
|
+
// strict-mode-compatible schema. Setting strict:true with a schema
|
|
594
|
+
// that violates OpenAI's strict-mode rules is the failure mode we
|
|
595
|
+
// are trying to avoid.
|
|
596
|
+
const result = {
|
|
597
|
+
type: 'function',
|
|
598
|
+
function: {
|
|
599
|
+
name: tool.name,
|
|
600
|
+
description: tool.description,
|
|
601
|
+
parameters: toJSONSchema(strictifiedSchema, descriptor),
|
|
602
|
+
...(descriptor.strict ? { strict: true } : {}),
|
|
603
|
+
},
|
|
604
|
+
};
|
|
605
|
+
return result;
|
|
606
|
+
});
|
|
607
|
+
}
|
|
608
|
+
/**
|
|
609
|
+
* The set of strict descriptor families this provider can speak on the
|
|
610
|
+
* wire. Defaults to `['openai']` — the OpenAI Chat Completions API only
|
|
611
|
+
* accepts OpenAI-shaped strict schemas. Subclasses or custom providers
|
|
612
|
+
* extending OpenAIProvider can extend this set to accept additional
|
|
613
|
+
* registered families (e.g. a custom `'openai-tight'` variant).
|
|
614
|
+
*/
|
|
615
|
+
supportedStrictFamilies = new Set(['openai']);
|
|
616
|
+
/**
|
|
617
|
+
* Build a SchemaBudget tuned to the strictest of the model's tool /
|
|
618
|
+
* structured-output families. Anthropic-style per-request limits apply
|
|
619
|
+
* across BOTH tool schemas and the response_format schema, so the budget
|
|
620
|
+
* is shared between `convertTools` and `convertResponseFormat`.
|
|
621
|
+
*
|
|
622
|
+
* Strict mode engages only when the model's resolved family is in
|
|
623
|
+
* `supportedStrictFamilies` AND the model has the corresponding
|
|
624
|
+
* capability (`'toolsStrict'` for tools, `'structured'` for output).
|
|
625
|
+
* Mismatched families fall back to LENIENT silently — protects the
|
|
626
|
+
* wire from receiving a dialect the API doesn't understand.
|
|
627
|
+
*/
|
|
628
|
+
buildSchemaBudget(model) {
|
|
629
|
+
const family = model ? resolveStrictFormat(model) : undefined;
|
|
630
|
+
const familySupported = family !== undefined && this.supportedStrictFamilies.has(family);
|
|
631
|
+
const tools = familySupported && model.capabilities.has('toolsStrict')
|
|
632
|
+
? getDescriptor(family, true)
|
|
633
|
+
: LENIENT;
|
|
634
|
+
const out = familySupported && model.capabilities.has('structured')
|
|
635
|
+
? getDescriptor(family, true)
|
|
636
|
+
: LENIENT;
|
|
637
|
+
return new SchemaBudget(strictestOf(tools, out));
|
|
638
|
+
}
|
|
639
|
+
/**
|
|
640
|
+
* Allocate per-tool descriptors in descending-priority order, then return
|
|
641
|
+
* them in original declaration order. Mutates `request.tools[i].descriptor`
|
|
642
|
+
* to record the chosen id for the Prompt's validation roundtrip.
|
|
643
|
+
*/
|
|
644
|
+
allocateToolDescriptors(request, budget) {
|
|
645
|
+
const tools = request.tools;
|
|
646
|
+
const order = tools
|
|
647
|
+
.map((t, i) => ({ i, p: strictPriority(t.strict) }))
|
|
648
|
+
.sort((a, b) => b.p - a.p);
|
|
649
|
+
const descriptors = new Array(tools.length);
|
|
650
|
+
for (const { i } of order) {
|
|
651
|
+
const tool = tools[i];
|
|
652
|
+
descriptors[i] = budget.allocateTool(tool.parameters, tool.strict);
|
|
653
|
+
tool.descriptor = descriptors[i].id;
|
|
654
|
+
}
|
|
655
|
+
return descriptors;
|
|
564
656
|
}
|
|
565
657
|
/**
|
|
566
658
|
* Convert @aeye tool choice to OpenAI format.
|
|
@@ -590,12 +682,19 @@ export class OpenAIProvider {
|
|
|
590
682
|
/**
|
|
591
683
|
* Convert @aeye response format to OpenAI format.
|
|
592
684
|
*
|
|
593
|
-
*
|
|
685
|
+
* Strict structured output is best-effort: honored only when the chosen
|
|
686
|
+
* `resolveStrictFormat(model) === 'openai'` AND the model has the
|
|
687
|
+
* `'structured'` capability. For unsupported models
|
|
688
|
+
* the LENIENT descriptor is used and the API-level `strict: true` flag is
|
|
689
|
+
* omitted — silent fallback. The chosen descriptor is pinned on the
|
|
690
|
+
* `responseFormat.descriptor` so the Prompt validator can apply the
|
|
691
|
+
* matching strictify before parsing model output.
|
|
594
692
|
*
|
|
595
|
-
* @param request @aeye request object
|
|
693
|
+
* @param request @aeye request object (mutated to record descriptor)
|
|
694
|
+
* @param model the resolved model the request is targeting
|
|
596
695
|
* @returns OpenAI-formatted response format or undefined
|
|
597
696
|
*/
|
|
598
|
-
convertResponseFormat(request) {
|
|
697
|
+
convertResponseFormat(request, model, budget) {
|
|
599
698
|
if (!request.responseFormat)
|
|
600
699
|
return undefined;
|
|
601
700
|
if (typeof request.responseFormat === 'string') {
|
|
@@ -607,16 +706,18 @@ export class OpenAIProvider {
|
|
|
607
706
|
}
|
|
608
707
|
return undefined;
|
|
609
708
|
}
|
|
610
|
-
const
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
strict,
|
|
618
|
-
},
|
|
709
|
+
const localBudget = budget ?? this.buildSchemaBudget(model);
|
|
710
|
+
const descriptor = localBudget.allocateOutput(request.responseFormat.type, request.responseFormat.strict ?? 1);
|
|
711
|
+
request.responseFormat.descriptor = descriptor.id;
|
|
712
|
+
const strictifiedSchema = strictify(request.responseFormat.type, descriptor);
|
|
713
|
+
const json_schema = {
|
|
714
|
+
name: 'response',
|
|
715
|
+
schema: toJSONSchema(strictifiedSchema, descriptor),
|
|
619
716
|
};
|
|
717
|
+
if (descriptor.strict) {
|
|
718
|
+
json_schema.strict = true;
|
|
719
|
+
}
|
|
720
|
+
return { type: 'json_schema', json_schema };
|
|
620
721
|
}
|
|
621
722
|
// ============================================================================
|
|
622
723
|
// Provider Interface Implementation
|
|
@@ -705,11 +806,20 @@ export class OpenAIProvider {
|
|
|
705
806
|
const client = this.createClient(effectiveConfig);
|
|
706
807
|
return async (request, ctx, metadata, requestSignal) => {
|
|
707
808
|
const { model, retry } = this.getRequestData(request, requestSignal, ctx, effectiveConfig, 'chat', metadata?.model || effectiveConfig.defaultModels?.chat);
|
|
809
|
+
// Resolve full ModelInfo for strict-format decisions. BaseAPI injects
|
|
810
|
+
// the selected ModelInfo into ctx.metadata.model after model selection;
|
|
811
|
+
// fall back to the lightweight model from getRequestData when no
|
|
812
|
+
// ModelInfo is available (e.g. external callers bypassing BaseAPI).
|
|
813
|
+
const modelInfo = pickModelInfo(metadata, ctx, model.id);
|
|
814
|
+
// One budget shared across tools + structured output. Anthropic-style
|
|
815
|
+
// per-request limits apply across the whole request, so allocations
|
|
816
|
+
// need to cooperate rather than each hold their own counter.
|
|
817
|
+
const budget = this.buildSchemaBudget(modelInfo);
|
|
708
818
|
const messages = await this.convertMessages(request, effectiveConfig);
|
|
709
|
-
const tools = this.convertTools(request);
|
|
819
|
+
const tools = this.convertTools(request, modelInfo, budget);
|
|
710
820
|
const tool_choice = tools?.length ? this.convertToolChoice(request) : undefined;
|
|
711
821
|
const parallel_tool_calls = tools?.length ? !request.toolsOneAtATime : undefined;
|
|
712
|
-
const response_format = this.convertResponseFormat(request);
|
|
822
|
+
const response_format = this.convertResponseFormat(request, modelInfo, budget);
|
|
713
823
|
const params = {
|
|
714
824
|
model: model.id,
|
|
715
825
|
messages,
|
|
@@ -803,11 +913,13 @@ export class OpenAIProvider {
|
|
|
803
913
|
const client = this.createClient(effectiveConfig);
|
|
804
914
|
return async function* (request, ctx, metadata, requestSignal) {
|
|
805
915
|
const { model, retry, signal } = this.getRequestData(request, requestSignal, ctx, effectiveConfig, 'streaming chat', metadata?.model || effectiveConfig.defaultModels?.chat);
|
|
916
|
+
const modelInfo = pickModelInfo(metadata, ctx, model.id);
|
|
917
|
+
const budget = this.buildSchemaBudget(modelInfo);
|
|
806
918
|
const messages = await this.convertMessages(request, effectiveConfig);
|
|
807
|
-
const tools = this.convertTools(request);
|
|
919
|
+
const tools = this.convertTools(request, modelInfo, budget);
|
|
808
920
|
const tool_choice = tools?.length ? this.convertToolChoice(request) : undefined;
|
|
809
921
|
const parallel_tool_calls = tools?.length ? !request.toolsOneAtATime : undefined;
|
|
810
|
-
const response_format = this.convertResponseFormat(request);
|
|
922
|
+
const response_format = this.convertResponseFormat(request, modelInfo, budget);
|
|
811
923
|
const params = {
|
|
812
924
|
model: model.id,
|
|
813
925
|
messages,
|
|
@@ -873,6 +985,7 @@ export class OpenAIProvider {
|
|
|
873
985
|
const toolCallsMap = new Map();
|
|
874
986
|
const toolCalls = [];
|
|
875
987
|
const chunks = [];
|
|
988
|
+
let maxIndexSeen = -1;
|
|
876
989
|
try {
|
|
877
990
|
for await (const chunk of stream) {
|
|
878
991
|
if (signal?.aborted) {
|
|
@@ -880,9 +993,15 @@ export class OpenAIProvider {
|
|
|
880
993
|
}
|
|
881
994
|
const choice = chunk?.choices[0];
|
|
882
995
|
const delta = choice?.delta;
|
|
996
|
+
// OpenAI streams `finish_reason: null` on every intermediate chunk
|
|
997
|
+
// and only sets a real value on the last chunk for the choice.
|
|
998
|
+
// Normalize null → undefined so downstream `!== undefined` checks
|
|
999
|
+
// (used by the tool-call finalization logic below) don't treat
|
|
1000
|
+
// every intermediate chunk as "the model is done".
|
|
1001
|
+
const finishReasonRaw = choice?.finish_reason ?? undefined;
|
|
883
1002
|
const yieldChunk = {
|
|
884
1003
|
content: delta?.content || undefined,
|
|
885
|
-
finishReason:
|
|
1004
|
+
finishReason: finishReasonRaw,
|
|
886
1005
|
refusal: delta?.refusal ?? undefined,
|
|
887
1006
|
usage: chunk.usage ? convertOpenAIUsage(chunk.usage) : undefined,
|
|
888
1007
|
};
|
|
@@ -893,7 +1012,7 @@ export class OpenAIProvider {
|
|
|
893
1012
|
if (delta?.tool_calls) {
|
|
894
1013
|
for (const tc of delta.tool_calls) {
|
|
895
1014
|
const existing = toolCallsMap.get(tc.index);
|
|
896
|
-
const toolCall = existing || { id: '', name: '', arguments: '', named: false, finished: false, updated: true };
|
|
1015
|
+
const toolCall = existing || { id: '', name: '', arguments: '', named: false, finished: false, updated: true, index: tc.index };
|
|
897
1016
|
if (tc.id) {
|
|
898
1017
|
toolCall.id = tc.id;
|
|
899
1018
|
toolCall.updated = true;
|
|
@@ -910,6 +1029,9 @@ export class OpenAIProvider {
|
|
|
910
1029
|
toolCallsMap.set(tc.index, toolCall);
|
|
911
1030
|
toolCalls.push(toolCall);
|
|
912
1031
|
}
|
|
1032
|
+
if (typeof tc.index === 'number' && tc.index > maxIndexSeen) {
|
|
1033
|
+
maxIndexSeen = tc.index;
|
|
1034
|
+
}
|
|
913
1035
|
if (toolCall.arguments) {
|
|
914
1036
|
if (!toolCall.named) {
|
|
915
1037
|
yieldChunk.toolCallNamed = toolCall;
|
|
@@ -921,8 +1043,21 @@ export class OpenAIProvider {
|
|
|
921
1043
|
}
|
|
922
1044
|
}
|
|
923
1045
|
}
|
|
1046
|
+
// Finalize tool calls only when we have positive evidence they're done.
|
|
1047
|
+
// The previous "updated == false this chunk" check was wrong: providers
|
|
1048
|
+
// (OpenRouter especially, with stream_options.include_usage) interleave
|
|
1049
|
+
// usage-only / keep-alive chunks that have no `choices`/`delta`, which
|
|
1050
|
+
// would prematurely flip a still-streaming tool_call to finished and
|
|
1051
|
+
// emit it with partial arguments — downstream parse() then rejected
|
|
1052
|
+
// it as "called with NO arguments". Only finalize when:
|
|
1053
|
+
// 1. finish_reason is set on this chunk (the whole response is done), or
|
|
1054
|
+
// 2. a higher tc.index appeared (per OpenAI streaming convention,
|
|
1055
|
+
// tool_calls arrive in index order, so a newer index implies the
|
|
1056
|
+
// older ones are complete).
|
|
1057
|
+
// Anything still unfinished by stream end is handled by the finally block.
|
|
1058
|
+
const hasFinishReason = yieldChunk.finishReason !== undefined;
|
|
924
1059
|
for (const toolCall of toolCalls) {
|
|
925
|
-
if (!toolCall.
|
|
1060
|
+
if (!toolCall.finished && (hasFinishReason || toolCall.index < maxIndexSeen)) {
|
|
926
1061
|
toolCall.finished = true;
|
|
927
1062
|
yieldChunk.toolCall = toolCall;
|
|
928
1063
|
if (!toolCall.named) {
|
package/dist/openai.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aeye/openai",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.9",
|
|
4
4
|
"description": "@aeye OpenAI - OpenAI integration for @aeye",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -43,11 +43,12 @@
|
|
|
43
43
|
"files": [
|
|
44
44
|
"dist",
|
|
45
45
|
"README.md",
|
|
46
|
-
"LICENSE"
|
|
46
|
+
"LICENSE",
|
|
47
|
+
"aeye-*.md"
|
|
47
48
|
],
|
|
48
49
|
"dependencies": {
|
|
49
|
-
"@aeye/ai": "^0.3.
|
|
50
|
-
"@aeye/core": "^0.3.
|
|
50
|
+
"@aeye/ai": "^0.3.9",
|
|
51
|
+
"@aeye/core": "^0.3.9",
|
|
51
52
|
"openai": "^6.6.0",
|
|
52
53
|
"zod": "^4.1.12"
|
|
53
54
|
},
|