@sweetretry/ai-sdk-volcengine-adapter 0.1.1 → 0.1.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 +66 -10
- package/package.json +11 -2
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
npm install ai-sdk-volcengine-adapter
|
|
8
|
+
npm install @sweetretry/ai-sdk-volcengine-adapter
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
## Setup
|
|
@@ -19,7 +19,7 @@ export ARK_API_KEY=your-api-key
|
|
|
19
19
|
Or pass it directly when creating the provider:
|
|
20
20
|
|
|
21
21
|
```typescript
|
|
22
|
-
import { createVolcengine } from 'ai-sdk-volcengine-adapter';
|
|
22
|
+
import { createVolcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
23
23
|
|
|
24
24
|
const volcengine = createVolcengine({
|
|
25
25
|
apiKey: 'your-api-key',
|
|
@@ -32,7 +32,7 @@ const volcengine = createVolcengine({
|
|
|
32
32
|
|
|
33
33
|
```typescript
|
|
34
34
|
import { generateText } from 'ai';
|
|
35
|
-
import { volcengine } from 'ai-sdk-volcengine-adapter';
|
|
35
|
+
import { volcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
36
36
|
|
|
37
37
|
const { text } = await generateText({
|
|
38
38
|
model: volcengine('doubao-seed-1-8-251228'),
|
|
@@ -46,7 +46,7 @@ console.log(text);
|
|
|
46
46
|
|
|
47
47
|
```typescript
|
|
48
48
|
import { streamText } from 'ai';
|
|
49
|
-
import { volcengine } from 'ai-sdk-volcengine-adapter';
|
|
49
|
+
import { volcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
50
50
|
|
|
51
51
|
const result = streamText({
|
|
52
52
|
model: volcengine('doubao-seed-1-8-251228'),
|
|
@@ -64,7 +64,7 @@ Enable extended thinking to get reasoning content from the model:
|
|
|
64
64
|
|
|
65
65
|
```typescript
|
|
66
66
|
import { streamText } from 'ai';
|
|
67
|
-
import { volcengine } from 'ai-sdk-volcengine-adapter';
|
|
67
|
+
import { volcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
68
68
|
|
|
69
69
|
const result = streamText({
|
|
70
70
|
model: volcengine('doubao-seed-1-8-251228'),
|
|
@@ -85,11 +85,60 @@ for await (const part of result.fullStream) {
|
|
|
85
85
|
}
|
|
86
86
|
```
|
|
87
87
|
|
|
88
|
+
### PDF File Support
|
|
89
|
+
|
|
90
|
+
You can include PDF files in your messages:
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
import { generateText } from 'ai';
|
|
94
|
+
import { volcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
95
|
+
import fs from 'fs';
|
|
96
|
+
|
|
97
|
+
const pdfBuffer = fs.readFileSync('document.pdf');
|
|
98
|
+
|
|
99
|
+
const { text } = await generateText({
|
|
100
|
+
model: volcengine('doubao-seed-1-6-vision-250815'),
|
|
101
|
+
messages: [
|
|
102
|
+
{
|
|
103
|
+
role: 'user',
|
|
104
|
+
content: [
|
|
105
|
+
{
|
|
106
|
+
type: 'file',
|
|
107
|
+
data: pdfBuffer,
|
|
108
|
+
mimeType: 'application/pdf',
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
type: 'text',
|
|
112
|
+
text: 'Summarize this PDF document.',
|
|
113
|
+
},
|
|
114
|
+
],
|
|
115
|
+
},
|
|
116
|
+
],
|
|
117
|
+
});
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### Image Generation
|
|
121
|
+
|
|
122
|
+
Generate images using Volcengine's image models:
|
|
123
|
+
|
|
124
|
+
```typescript
|
|
125
|
+
import { generateImage } from 'ai';
|
|
126
|
+
import { volcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
127
|
+
|
|
128
|
+
const { images } = await generateImage({
|
|
129
|
+
model: volcengine.image('doubao-seedream-4-5-251128'),
|
|
130
|
+
prompt: 'A beautiful sunset over mountains',
|
|
131
|
+
size: '1024x1024',
|
|
132
|
+
});
|
|
133
|
+
|
|
134
|
+
// images[0] contains the base64 encoded image
|
|
135
|
+
```
|
|
136
|
+
|
|
88
137
|
### Tool Calling
|
|
89
138
|
|
|
90
139
|
```typescript
|
|
91
140
|
import { generateText } from 'ai';
|
|
92
|
-
import { volcengine } from 'ai-sdk-volcengine-adapter';
|
|
141
|
+
import { volcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
93
142
|
import { z } from 'zod';
|
|
94
143
|
|
|
95
144
|
const { text, toolCalls } = await generateText({
|
|
@@ -115,7 +164,7 @@ Use the built-in web search tool:
|
|
|
115
164
|
|
|
116
165
|
```typescript
|
|
117
166
|
import { generateText } from 'ai';
|
|
118
|
-
import { volcengine, volcengineTools } from 'ai-sdk-volcengine-adapter';
|
|
167
|
+
import { volcengine, volcengineTools } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
119
168
|
|
|
120
169
|
const { text } = await generateText({
|
|
121
170
|
model: volcengine('doubao-seed-1-8-251228'),
|
|
@@ -128,18 +177,25 @@ const { text } = await generateText({
|
|
|
128
177
|
|
|
129
178
|
## Supported Models
|
|
130
179
|
|
|
180
|
+
### Chat Models
|
|
181
|
+
|
|
131
182
|
- `doubao-seed-1-8-251228` - Latest Doubao Seed model
|
|
132
183
|
- `doubao-seed-code-preview-251028` - Code-optimized model
|
|
133
184
|
- `doubao-seed-1-6-lite-251015` - Lightweight model
|
|
134
185
|
- `doubao-seed-1-6-flash-250828` - Fast inference model
|
|
135
|
-
- `doubao-seed-1-6-vision-250815` - Vision-capable model
|
|
186
|
+
- `doubao-seed-1-6-vision-250815` - Vision-capable model (supports images and PDFs)
|
|
187
|
+
|
|
188
|
+
### Image Models
|
|
189
|
+
|
|
190
|
+
- `doubao-seedream-4-5-251128` - Latest Seedream image generation model
|
|
191
|
+
- `doubao-seedream-4-0-250828` - Seedream 4.0 model
|
|
136
192
|
|
|
137
193
|
You can also use any model ID string for custom endpoints.
|
|
138
194
|
|
|
139
195
|
## Provider Options
|
|
140
196
|
|
|
141
197
|
```typescript
|
|
142
|
-
import { createVolcengine } from 'ai-sdk-volcengine-adapter';
|
|
198
|
+
import { createVolcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
143
199
|
|
|
144
200
|
const volcengine = createVolcengine({
|
|
145
201
|
// Custom base URL (default: https://ark.cn-beijing.volces.com/api/v3)
|
|
@@ -162,7 +218,7 @@ const volcengine = createVolcengine({
|
|
|
162
218
|
|
|
163
219
|
```typescript
|
|
164
220
|
import { generateText } from 'ai';
|
|
165
|
-
import { volcengine } from 'ai-sdk-volcengine-adapter';
|
|
221
|
+
import { volcengine } from '@sweetretry/ai-sdk-volcengine-adapter';
|
|
166
222
|
|
|
167
223
|
const { text } = await generateText({
|
|
168
224
|
model: volcengine('doubao-seed-1-8-251228'),
|
package/package.json
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sweetretry/ai-sdk-volcengine-adapter",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Volcengine adapter for AI SDK",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "SweetRetry <zimin.zhang2000@gmail.com>",
|
|
7
|
+
"homepage": "https://github.com/SweetRetry/ai-sdk-volcengine-adapter#readme",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/SweetRetry/ai-sdk-volcengine-adapter.git"
|
|
11
|
+
},
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/SweetRetry/ai-sdk-volcengine-adapter/issues"
|
|
14
|
+
},
|
|
7
15
|
"keywords": [
|
|
8
16
|
"ai",
|
|
9
17
|
"ai-sdk",
|
|
@@ -23,7 +31,8 @@
|
|
|
23
31
|
}
|
|
24
32
|
},
|
|
25
33
|
"files": [
|
|
26
|
-
"dist"
|
|
34
|
+
"dist",
|
|
35
|
+
"README.md"
|
|
27
36
|
],
|
|
28
37
|
"sideEffects": false,
|
|
29
38
|
"scripts": {
|