@openai-oauth/ai-sdk 2.0.0-beta.1 → 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 +26 -0
- package/dist/index.d.ts +5 -2
- package/dist/index.js +13 -6
- 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.
|
|
@@ -54,6 +75,8 @@ export async function POST(request: Request) {
|
|
|
54
75
|
}
|
|
55
76
|
```
|
|
56
77
|
|
|
78
|
+
Use `@openai-oauth/react` to establish the browser credentials. See the [Sign in with ChatGPT setup](https://github.com/EvanZhouDev/openai-oauth#sign-in-with-chatgpt-setup).
|
|
79
|
+
|
|
57
80
|
API shape:
|
|
58
81
|
|
|
59
82
|
```ts
|
|
@@ -61,6 +84,8 @@ const openai = createOpenAIOAuth(credentials);
|
|
|
61
84
|
|
|
62
85
|
openai("gpt-5.4-mini");
|
|
63
86
|
openai.languageModel("gpt-5.4-mini");
|
|
87
|
+
openai.image("gpt-image-2");
|
|
88
|
+
openai.imageModel("gpt-image-2");
|
|
64
89
|
```
|
|
65
90
|
|
|
66
91
|
Exports:
|
|
@@ -70,6 +95,7 @@ Exports:
|
|
|
70
95
|
- `OpenAIOAuthProviderInput`
|
|
71
96
|
- `OpenAIOAuthProviderSettings`
|
|
72
97
|
- `OpenAIOAuthModelId`
|
|
98
|
+
- `OpenAIOAuthImageModelId`
|
|
73
99
|
|
|
74
100
|
## More
|
|
75
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";
|
|
@@ -212,8 +215,7 @@ var toTransport = (input) => {
|
|
|
212
215
|
fetch: input.fetch,
|
|
213
216
|
headers: input.headers,
|
|
214
217
|
instructions: input.instructions,
|
|
215
|
-
openAIBaseURL: input.openAIBaseURL
|
|
216
|
-
storeResponses: input.storeResponses
|
|
218
|
+
openAIBaseURL: input.openAIBaseURL
|
|
217
219
|
});
|
|
218
220
|
};
|
|
219
221
|
var createOpenAIOAuth = (input, settings = {}) => {
|
|
@@ -229,17 +231,22 @@ var createOpenAIOAuth = (input, settings = {}) => {
|
|
|
229
231
|
fileIdPrefixes: ["file-"]
|
|
230
232
|
};
|
|
231
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
|
+
});
|
|
232
240
|
const providerFn = (modelId) => createModel(modelId);
|
|
233
241
|
const specificationVersion = "v3";
|
|
234
242
|
return Object.assign(providerFn, {
|
|
235
243
|
specificationVersion,
|
|
236
244
|
languageModel: createModel,
|
|
245
|
+
image: createImageModel,
|
|
237
246
|
embeddingModel: (modelId) => {
|
|
238
247
|
throw new NoSuchModelError({ modelId, modelType: "embeddingModel" });
|
|
239
248
|
},
|
|
240
|
-
imageModel:
|
|
241
|
-
throw new NoSuchModelError({ modelId, modelType: "imageModel" });
|
|
242
|
-
}
|
|
249
|
+
imageModel: createImageModel
|
|
243
250
|
});
|
|
244
251
|
};
|
|
245
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",
|