@openai-oauth/ai-sdk 2.0.0-beta.2 → 2.0.0-beta.3
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/README.md +24 -0
- package/dist/index.d.ts +5 -2
- package/dist/index.js +12 -4
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -23,6 +23,27 @@ const result = await generateText({
|
|
|
23
23
|
});
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
+
Generate or edit images with GPT Image 2:
|
|
27
|
+
|
|
28
|
+
```ts
|
|
29
|
+
import { readFile } from "node:fs/promises";
|
|
30
|
+
import { generateImage } from "ai";
|
|
31
|
+
|
|
32
|
+
const result = await generateImage({
|
|
33
|
+
model: openai.image("gpt-image-2"),
|
|
34
|
+
prompt: "A tiny house in a forest",
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
const inputImage = await readFile("input.png");
|
|
38
|
+
const edited = await generateImage({
|
|
39
|
+
model: openai.image("gpt-image-2"),
|
|
40
|
+
prompt: {
|
|
41
|
+
text: "Add a red hat",
|
|
42
|
+
images: [inputImage],
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
```
|
|
46
|
+
|
|
26
47
|
## Package Notes
|
|
27
48
|
|
|
28
49
|
`@openai-oauth/ai-sdk` accepts any OpenAI OAuth credential source.
|
|
@@ -63,6 +84,8 @@ const openai = createOpenAIOAuth(credentials);
|
|
|
63
84
|
|
|
64
85
|
openai("gpt-5.4-mini");
|
|
65
86
|
openai.languageModel("gpt-5.4-mini");
|
|
87
|
+
openai.image("gpt-image-2");
|
|
88
|
+
openai.imageModel("gpt-image-2");
|
|
66
89
|
```
|
|
67
90
|
|
|
68
91
|
Exports:
|
|
@@ -72,6 +95,7 @@ Exports:
|
|
|
72
95
|
- `OpenAIOAuthProviderInput`
|
|
73
96
|
- `OpenAIOAuthProviderSettings`
|
|
74
97
|
- `OpenAIOAuthModelId`
|
|
98
|
+
- `OpenAIOAuthImageModelId`
|
|
75
99
|
|
|
76
100
|
## More
|
|
77
101
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { ProviderV3, LanguageModelV3 } from '@ai-sdk/provider';
|
|
1
|
+
import { ProviderV3, LanguageModelV3, ImageModelV3 } from '@ai-sdk/provider';
|
|
2
2
|
import { OpenAIOAuthTransport, OpenAIOAuth } from '@openai-oauth/core';
|
|
3
3
|
|
|
4
4
|
type OpenAIOAuthModelId = string;
|
|
5
|
+
type OpenAIOAuthImageModelId = string;
|
|
5
6
|
type OpenAIOAuthProviderSettings = {
|
|
6
7
|
name?: string;
|
|
7
8
|
};
|
|
@@ -9,7 +10,9 @@ type OpenAIOAuthProviderInput = OpenAIOAuthTransport | OpenAIOAuth;
|
|
|
9
10
|
interface OpenAIOAuthProvider extends ProviderV3 {
|
|
10
11
|
(modelId: OpenAIOAuthModelId): LanguageModelV3;
|
|
11
12
|
languageModel(modelId: OpenAIOAuthModelId): LanguageModelV3;
|
|
13
|
+
image(modelId: OpenAIOAuthImageModelId): ImageModelV3;
|
|
14
|
+
imageModel(modelId: OpenAIOAuthImageModelId): ImageModelV3;
|
|
12
15
|
}
|
|
13
16
|
declare const createOpenAIOAuth: (input: OpenAIOAuthProviderInput, settings?: OpenAIOAuthProviderSettings) => OpenAIOAuthProvider;
|
|
14
17
|
|
|
15
|
-
export { type OpenAIOAuthModelId, type OpenAIOAuthProvider, type OpenAIOAuthProviderInput, type OpenAIOAuthProviderSettings, createOpenAIOAuth };
|
|
18
|
+
export { type OpenAIOAuthImageModelId, type OpenAIOAuthModelId, type OpenAIOAuthProvider, type OpenAIOAuthProviderInput, type OpenAIOAuthProviderSettings, createOpenAIOAuth };
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
// src/provider.ts
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
OpenAIImageModel,
|
|
4
|
+
OpenAIResponsesLanguageModel
|
|
5
|
+
} from "@ai-sdk/openai/internal";
|
|
3
6
|
import {
|
|
4
7
|
NoSuchModelError
|
|
5
8
|
} from "@ai-sdk/provider";
|
|
@@ -228,17 +231,22 @@ var createOpenAIOAuth = (input, settings = {}) => {
|
|
|
228
231
|
fileIdPrefixes: ["file-"]
|
|
229
232
|
};
|
|
230
233
|
const createModel = (modelId) => new CodexResponsesLanguageModel(modelId, config);
|
|
234
|
+
const createImageModel = (modelId) => new OpenAIImageModel(modelId, {
|
|
235
|
+
provider: `${providerName}.image`,
|
|
236
|
+
url: ({ path }) => `${baseURL}${path}`,
|
|
237
|
+
headers: () => withUserAgentSuffix({}, "oai-oauth/0.0.0"),
|
|
238
|
+
fetch: oauthFetch
|
|
239
|
+
});
|
|
231
240
|
const providerFn = (modelId) => createModel(modelId);
|
|
232
241
|
const specificationVersion = "v3";
|
|
233
242
|
return Object.assign(providerFn, {
|
|
234
243
|
specificationVersion,
|
|
235
244
|
languageModel: createModel,
|
|
245
|
+
image: createImageModel,
|
|
236
246
|
embeddingModel: (modelId) => {
|
|
237
247
|
throw new NoSuchModelError({ modelId, modelType: "embeddingModel" });
|
|
238
248
|
},
|
|
239
|
-
imageModel:
|
|
240
|
-
throw new NoSuchModelError({ modelId, modelType: "imageModel" });
|
|
241
|
-
}
|
|
249
|
+
imageModel: createImageModel
|
|
242
250
|
});
|
|
243
251
|
};
|
|
244
252
|
export {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openai-oauth/ai-sdk",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.3",
|
|
4
4
|
"description": "Vercel AI SDK provider adapter for openai-oauth auth handles.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"openai",
|
|
@@ -43,10 +43,10 @@
|
|
|
43
43
|
"@ai-sdk/openai": "3.0.41",
|
|
44
44
|
"@ai-sdk/provider": "3.0.8",
|
|
45
45
|
"@ai-sdk/provider-utils": "4.0.19",
|
|
46
|
-
"@openai-oauth/core": "2.0.0-beta.
|
|
46
|
+
"@openai-oauth/core": "2.0.0-beta.3"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@openai-oauth/local": "2.0.0-beta.
|
|
49
|
+
"@openai-oauth/local": "2.0.0-beta.3",
|
|
50
50
|
"@types/node": "20.17.24",
|
|
51
51
|
"ai": "6.0.116",
|
|
52
52
|
"typescript": "latest",
|