@eyepop.ai/eyepop 3.16.0 → 3.17.1
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 +77 -4
- package/dist/eyepop.index.d.mts +36 -23
- package/dist/eyepop.index.d.ts +36 -23
- package/dist/eyepop.index.js +635 -218
- package/dist/eyepop.index.js.map +1 -1
- package/dist/eyepop.index.mjs +631 -217
- package/dist/eyepop.index.mjs.map +1 -1
- package/dist/eyepop.min.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -50,7 +50,7 @@ Set `EYEPOP_API_KEY` in your server environment. API keys are secrets and must n
|
|
|
50
50
|
export EYEPOP_API_KEY=<your_api_key>
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
Create transient sessions with a pop when the worker endpoint is constructed. This lets EyePop schedule the right compute before media is processed.
|
|
54
54
|
|
|
55
55
|
```typescript
|
|
56
56
|
import { EyePop } from '@eyepop.ai/eyepop'
|
|
@@ -80,6 +80,27 @@ import { EyePop } from '@eyepop.ai/eyepop'
|
|
|
80
80
|
|
|
81
81
|
For transient sessions, pass `pop` when creating the endpoint whenever possible. Use `endpoint.changePop(pop)` only when an already connected transient worker needs to switch Pops.
|
|
82
82
|
|
|
83
|
+
When `sessionUuid` is not provided, the SDK creates compute sessions with `POST /v1/sessions?wait=true`.
|
|
84
|
+
|
|
85
|
+
ModelLess CPU pops use the same constructor-pop path:
|
|
86
|
+
|
|
87
|
+
```typescript
|
|
88
|
+
const endpoint = await EyePop.workerEndpoint({
|
|
89
|
+
pop: {
|
|
90
|
+
components: [
|
|
91
|
+
{
|
|
92
|
+
type: 'inference',
|
|
93
|
+
ability: 'eyepop.localize-objects:latest',
|
|
94
|
+
categoryName: 'objects',
|
|
95
|
+
params: {
|
|
96
|
+
prompts: [{ prompt: 'person' }],
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
}).connect()
|
|
102
|
+
```
|
|
103
|
+
|
|
83
104
|
You can also pass the key explicitly from server-side configuration:
|
|
84
105
|
|
|
85
106
|
```typescript
|
|
@@ -118,6 +139,31 @@ import { EyePop } from '@eyepop.ai/eyepop'
|
|
|
118
139
|
|
|
119
140
|
Persistent sessions are normally preconfigured. In that case, process media directly and do not call `changePop()` unless your deployment is meant to accept runtime Pop changes.
|
|
120
141
|
|
|
142
|
+
Persistent deployments are created through compute-api or EyePop tooling. For example, a trusted server can create a persistent deployment with an inline pop and then pass the returned `session_uuid` to the SDK:
|
|
143
|
+
|
|
144
|
+
```shell
|
|
145
|
+
curl -sS -X POST "https://compute.eyepop.ai/v1/deployments?wait=true" \
|
|
146
|
+
-H "Authorization: Bearer $EYEPOP_API_KEY" \
|
|
147
|
+
-H "Content-Type: application/json" \
|
|
148
|
+
-d '{
|
|
149
|
+
"display_name": "node-modeless-deployment",
|
|
150
|
+
"pop": {
|
|
151
|
+
"components": [
|
|
152
|
+
{
|
|
153
|
+
"type": "inference",
|
|
154
|
+
"ability": "eyepop.localize-objects:latest",
|
|
155
|
+
"categoryName": "objects",
|
|
156
|
+
"params": {
|
|
157
|
+
"prompts": [{ "prompt": "person" }]
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
]
|
|
161
|
+
}
|
|
162
|
+
}'
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
The response includes `session_uuid`, `session_status`, `status_url`, and worker access metadata. Poll `status_url` until the deployment reaches `pipeline_ok`, then connect with `sessionUuid`.
|
|
166
|
+
|
|
121
167
|
### Browser and Mobile Clients
|
|
122
168
|
|
|
123
169
|
Do not put `EYEPOP_API_KEY` in browser or mobile application code. Create EyePop sessions from a trusted backend, then pass only the session JSON to the client.
|
|
@@ -183,6 +229,33 @@ const results = await endpoint.process({
|
|
|
183
229
|
})
|
|
184
230
|
```
|
|
185
231
|
|
|
232
|
+
### Image Groups (multiple images, one result)
|
|
233
|
+
|
|
234
|
+
Send several images as a **single** source that the pop processes **together** as one inference unit — for example a multi-image VLM prompt. The group yields **one** prediction for the whole set, unlike batching below, where each image is an independent inference.
|
|
235
|
+
|
|
236
|
+
```typescript
|
|
237
|
+
// Local files
|
|
238
|
+
const results = await endpoint.uploadGroup(['a.jpg', 'b.jpg', 'c.jpg'])
|
|
239
|
+
for await (const result of results) {
|
|
240
|
+
console.log(result)
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
// In-memory streams (optional parallel MIME types)
|
|
244
|
+
import fs from 'node:fs'
|
|
245
|
+
import { Readable } from 'node:stream'
|
|
246
|
+
const stream1 = Readable.toWeb(fs.createReadStream('a.jpg'))
|
|
247
|
+
const stream2 = Readable.toWeb(fs.createReadStream('b.jpg'))
|
|
248
|
+
const results = await endpoint.uploadStreamGroup([stream1, stream2], ['image/jpeg', 'image/jpeg'])
|
|
249
|
+
|
|
250
|
+
// Remote URLs (the server fetches each)
|
|
251
|
+
const results = await endpoint.loadFromGroup([
|
|
252
|
+
'https://example.com/a.jpg',
|
|
253
|
+
'https://example.com/b.jpg',
|
|
254
|
+
])
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
Image order is preserved end-to-end. A group may contain **up to 16 images** (enforced server-side). The pop's ability must be multi-image-capable; a single-image ability handed a group returns an error.
|
|
258
|
+
|
|
186
259
|
### Canceling Jobs
|
|
187
260
|
|
|
188
261
|
Queued and in-progress jobs can be cancelled from the result iterator:
|
|
@@ -202,18 +275,18 @@ for await (const result of results) {
|
|
|
202
275
|
|
|
203
276
|
## Endpoint Options
|
|
204
277
|
|
|
205
|
-
By default, `EyePop.workerEndpoint().connect()` starts a worker when needed and cancels queued jobs on that worker when it connects.
|
|
278
|
+
By default, `EyePop.workerEndpoint({ pop }).connect()` starts a transient worker when needed and cancels queued jobs on that worker when it connects.
|
|
206
279
|
|
|
207
280
|
Disable worker startup:
|
|
208
281
|
|
|
209
282
|
```typescript
|
|
210
|
-
const endpoint = await EyePop.workerEndpoint({ autoStart: false }).connect()
|
|
283
|
+
const endpoint = await EyePop.workerEndpoint({ pop, autoStart: false }).connect()
|
|
211
284
|
```
|
|
212
285
|
|
|
213
286
|
Keep pending jobs:
|
|
214
287
|
|
|
215
288
|
```typescript
|
|
216
|
-
const endpoint = await EyePop.workerEndpoint({ stopJobs: false }).connect()
|
|
289
|
+
const endpoint = await EyePop.workerEndpoint({ pop, stopJobs: false }).connect()
|
|
217
290
|
```
|
|
218
291
|
|
|
219
292
|
## Visualization
|
package/dist/eyepop.index.d.mts
CHANGED
|
@@ -1099,19 +1099,6 @@ interface WorkerOptions extends Options {
|
|
|
1099
1099
|
isLocalMode?: boolean;
|
|
1100
1100
|
}
|
|
1101
1101
|
|
|
1102
|
-
declare enum SessionStatus {
|
|
1103
|
-
UNKNOWN = "unknown",
|
|
1104
|
-
PENDING = "pending",
|
|
1105
|
-
RUNNING = "running",
|
|
1106
|
-
STOPPED = "stopped",
|
|
1107
|
-
FAILED = "failed",
|
|
1108
|
-
ERROR = "error",
|
|
1109
|
-
PIPELINE_CREATING = "pipeline_creating",
|
|
1110
|
-
PIPELINE_OK = "pipeline_ok",
|
|
1111
|
-
PIPELINE_CHECKING = "pipeline_checking",
|
|
1112
|
-
PIPELINE_ERROR = "pipeline_error",
|
|
1113
|
-
UPGRADING = "upgrading"
|
|
1114
|
-
}
|
|
1115
1102
|
declare class WorkerEndpoint extends Endpoint<WorkerEndpoint> {
|
|
1116
1103
|
private _baseUrl;
|
|
1117
1104
|
private _pipelineId;
|
|
@@ -1153,6 +1140,9 @@ declare class WorkerEndpoint extends Endpoint<WorkerEndpoint> {
|
|
|
1153
1140
|
process({ source, componentParams, motionDetect, roi }: ProcessRequest): Promise<ResultStream>;
|
|
1154
1141
|
private processV1;
|
|
1155
1142
|
private processV2;
|
|
1143
|
+
uploadGroup(paths: string[], params?: ProcessParams): Promise<ResultStream>;
|
|
1144
|
+
uploadStreamGroup(streams: Array<ReadableStream<Uint8Array> | Blob | BufferSource>, mimeTypes?: string[], params?: ProcessParams): Promise<ResultStream>;
|
|
1145
|
+
loadFromGroup(urls: string[], params?: ProcessParams): Promise<ResultStream>;
|
|
1156
1146
|
private uploadFile;
|
|
1157
1147
|
private uploadStream;
|
|
1158
1148
|
private uploadPath;
|
|
@@ -1163,24 +1153,16 @@ declare class WorkerEndpoint extends Endpoint<WorkerEndpoint> {
|
|
|
1163
1153
|
private jobStatus;
|
|
1164
1154
|
protected reconnect(): Promise<WorkerEndpoint>;
|
|
1165
1155
|
private startWebApiSessionWithPopId;
|
|
1166
|
-
private static SESSION_DEAD;
|
|
1167
1156
|
private static WAIT_FOR_IS_READY;
|
|
1168
|
-
private static CHECK_FOR_IS_READY_INTERVAL;
|
|
1169
1157
|
private sessionReadyTimeoutMs;
|
|
1170
|
-
private sessionHealthReady;
|
|
1171
1158
|
private getComputeSession;
|
|
1172
|
-
private getOnDemandComputeSession;
|
|
1173
|
-
private getPermanentComputeSession;
|
|
1174
1159
|
private startTransientPipeline;
|
|
1175
1160
|
private ensureTransientPipelineStarted;
|
|
1176
1161
|
private changeTransientPop;
|
|
1177
1162
|
private deleteTransientPipeline;
|
|
1178
|
-
private pipelineIdFromSession;
|
|
1179
1163
|
protected authorizationHeader(): Promise<string>;
|
|
1180
1164
|
private computeAuthorizationHeader;
|
|
1181
|
-
private setComputeSessionAccessToken;
|
|
1182
1165
|
private setTransientPipelinePop;
|
|
1183
|
-
private sessionCreateBody;
|
|
1184
1166
|
}
|
|
1185
1167
|
|
|
1186
1168
|
interface DataOptions extends Options {
|
|
@@ -1343,7 +1325,20 @@ declare class EyepopLineDecoder {
|
|
|
1343
1325
|
flush(): string[];
|
|
1344
1326
|
}
|
|
1345
1327
|
declare function readableStreamFromString(s: string): ReadableStream<Uint8Array>;
|
|
1328
|
+
type MultipartContent = ReadableStream<Uint8Array> | Blob | BufferSource | string;
|
|
1329
|
+
interface MultipartPart {
|
|
1330
|
+
name: string;
|
|
1331
|
+
contentType?: string | null;
|
|
1332
|
+
content: MultipartContent;
|
|
1333
|
+
}
|
|
1334
|
+
declare function randomMultipartBoundary(): string;
|
|
1335
|
+
/**
|
|
1336
|
+
* Streams a multipart/form-data body part by part, piping each part's bytes through as they
|
|
1337
|
+
* become available instead of buffering any part's full content in memory first.
|
|
1338
|
+
*/
|
|
1339
|
+
declare function encodeMultipartFormData(parts: MultipartPart[], boundary: string): ReadableStream<Uint8Array>;
|
|
1346
1340
|
|
|
1341
|
+
type UploadBody = ReadableStream<Uint8Array> | Blob | BufferSource;
|
|
1347
1342
|
declare class AbstractJob implements ResultStream {
|
|
1348
1343
|
protected _getSession: () => Promise<WorkerSession>;
|
|
1349
1344
|
protected _params: ProcessParams;
|
|
@@ -1362,12 +1357,14 @@ declare class AbstractJob implements ResultStream {
|
|
|
1362
1357
|
}
|
|
1363
1358
|
declare class UploadJob extends AbstractJob {
|
|
1364
1359
|
private readonly _uploadStream;
|
|
1360
|
+
private readonly _uploadBodyFactory;
|
|
1365
1361
|
private readonly _mimeType;
|
|
1366
1362
|
private readonly _size;
|
|
1367
1363
|
private readonly _needsFullDuplex;
|
|
1368
1364
|
private readonly _videoMode;
|
|
1369
1365
|
get [Symbol.toStringTag](): string;
|
|
1370
|
-
constructor(stream:
|
|
1366
|
+
constructor(stream: UploadBody, mimeType: string, size: number | undefined, videoMode: VideoMode | undefined, params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger, uploadBodyFactory?: () => Promise<UploadBody>);
|
|
1367
|
+
private uploadBody;
|
|
1371
1368
|
protected onEvent(event: StreamEvent): Promise<void>;
|
|
1372
1369
|
protected startJob(): Promise<Response>;
|
|
1373
1370
|
}
|
|
@@ -1377,6 +1374,22 @@ declare class LoadFromJob extends AbstractJob {
|
|
|
1377
1374
|
get [Symbol.toStringTag](): string;
|
|
1378
1375
|
protected startJob(): Promise<Response>;
|
|
1379
1376
|
}
|
|
1377
|
+
interface UploadSource {
|
|
1378
|
+
readonly stream: ReadableStream<Uint8Array> | Blob | BufferSource;
|
|
1379
|
+
readonly mimeType: string | null;
|
|
1380
|
+
}
|
|
1381
|
+
declare class UploadGroupJob extends AbstractJob {
|
|
1382
|
+
private readonly _sources;
|
|
1383
|
+
get [Symbol.toStringTag](): string;
|
|
1384
|
+
constructor(sources: UploadSource[], params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger);
|
|
1385
|
+
protected startJob(): Promise<Response>;
|
|
1386
|
+
}
|
|
1387
|
+
declare class LoadFromGroupJob extends AbstractJob {
|
|
1388
|
+
private readonly _urls;
|
|
1389
|
+
get [Symbol.toStringTag](): string;
|
|
1390
|
+
constructor(urls: string[], params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger);
|
|
1391
|
+
protected startJob(): Promise<Response>;
|
|
1392
|
+
}
|
|
1380
1393
|
declare class LoadFromAssetUuidJob extends AbstractJob {
|
|
1381
1394
|
private readonly _assetUuid;
|
|
1382
1395
|
constructor(assetUuid: string, params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger);
|
|
@@ -1454,4 +1467,4 @@ declare namespace EyePop {
|
|
|
1454
1467
|
function dataEndpoint(opts?: DataOptions): DataEndpoint;
|
|
1455
1468
|
}
|
|
1456
1469
|
|
|
1457
|
-
export { type AbilityAliasEntry, AbstractJob, type AliasResolution, type Annotation, AnnotationInclusionMode, AnnotationType, type ApiKeyAuth, type Area, AreaType, ArtifactType, type Asset, type AssetImport, AssetInclusionMode, AssetStatus, AssetUrlType, type AssetUuidSource, type Auth0Options, type Authentication, type AutoAnnotate, type AutoAnnotateParams, type AutoAnnotatePrompt, AutoAnnotateStatus, AutoAnnotateTask, type AutoPromptConfig, type AutoTask, type BaseArea, type BaseComponent, type BaseTask, type Box, type ChangeEvent, ChangeType, type ClassificationTask, type ComponentFinderComponent, type ComponentParams, type Contour, type ContourArea, type ContourFinderComponent, ContourType, type CreateWorkflow, type CreateWorkflowConfig, DEFAULT_PREDICTION_VERSION, DataApiType, DataEndpoint, type DataOptions, type DataSession, type Dataset, type DatasetAutoAnnotate, type DatasetAutoAnnotateCreate, type DatasetAutoAnnotateUpdate, type DatasetCreate, type DatasetHeroAssetUpdate, type DatasetParent, type DatasetUpdate, type DatasetVersion, type DatasetVersionAssetStats, type DownloadResponse, Endpoint, EndpointState, type EvaluateConfig, type EvaluateFilter, type EvaluateRequest, type EvaluateResponse, type EvaluateRunInfo, EvaluationStatus, ExportedBy, EyePop, EyepopLineDecoder, type FileSource, type ForwardComponent, ForwardOperatorType, type HttpClient, type InferRequest, type InferRunInfo, type InferRuntimeConfig, type InferenceComponent, InferenceType, type ListWorkFlowItem, type ListWorkFlowItemMetadata, type ListWorkflowItemMetadataLabels, LoadFromAssetUuidJob, LoadFromJob, LoadMediaStreamJob, type LocalAuth, type Mask, type MediaStreamSource, type Model, type ModelCreate, type ModelExport, ModelExportStatus, ModelFormat, type ModelMetrics, ModelPrecisionType, type ModelSample, ModelStatus, ModelTask, type ModelTrainingProgress, ModelTrainingStage, ModelType, type ModelUpdate, type MotionDetectConfig, MotionModel, type OAuth2Auth, type OnChangeEvent, type Options, type PathSource, type PlatformSupport, type Point2d, type Point3d, type Pop, type PopComponent, PopComponentType, type PopCrop, type PopForward, type PopForwardOperator, type PredictedClass, type PredictedEmbedding, type PredictedKeyPoint, type PredictedKeyPoints, type PredictedMesh, type PredictedMotion, type PredictedObject, type PredictedText, type Prediction, PredictionVersion, type ProcessParams, type ProcessRequest, type QcAiHubExportParams, type RectangleArea, type ResultStream, type Roi, Semaphore, type Session, type SessionAuth,
|
|
1470
|
+
export { type AbilityAliasEntry, AbstractJob, type AliasResolution, type Annotation, AnnotationInclusionMode, AnnotationType, type ApiKeyAuth, type Area, AreaType, ArtifactType, type Asset, type AssetImport, AssetInclusionMode, AssetStatus, AssetUrlType, type AssetUuidSource, type Auth0Options, type Authentication, type AutoAnnotate, type AutoAnnotateParams, type AutoAnnotatePrompt, AutoAnnotateStatus, AutoAnnotateTask, type AutoPromptConfig, type AutoTask, type BaseArea, type BaseComponent, type BaseTask, type Box, type ChangeEvent, ChangeType, type ClassificationTask, type ComponentFinderComponent, type ComponentParams, type Contour, type ContourArea, type ContourFinderComponent, ContourType, type CreateWorkflow, type CreateWorkflowConfig, DEFAULT_PREDICTION_VERSION, DataApiType, DataEndpoint, type DataOptions, type DataSession, type Dataset, type DatasetAutoAnnotate, type DatasetAutoAnnotateCreate, type DatasetAutoAnnotateUpdate, type DatasetCreate, type DatasetHeroAssetUpdate, type DatasetParent, type DatasetUpdate, type DatasetVersion, type DatasetVersionAssetStats, type DownloadResponse, Endpoint, EndpointState, type EvaluateConfig, type EvaluateFilter, type EvaluateRequest, type EvaluateResponse, type EvaluateRunInfo, EvaluationStatus, ExportedBy, EyePop, EyepopLineDecoder, type FileSource, type ForwardComponent, ForwardOperatorType, type HttpClient, type InferRequest, type InferRunInfo, type InferRuntimeConfig, type InferenceComponent, InferenceType, type ListWorkFlowItem, type ListWorkFlowItemMetadata, type ListWorkflowItemMetadataLabels, LoadFromAssetUuidJob, LoadFromGroupJob, LoadFromJob, LoadMediaStreamJob, type LocalAuth, type Mask, type MediaStreamSource, type Model, type ModelCreate, type ModelExport, ModelExportStatus, ModelFormat, type ModelMetrics, ModelPrecisionType, type ModelSample, ModelStatus, ModelTask, type ModelTrainingProgress, ModelTrainingStage, ModelType, type ModelUpdate, type MotionDetectConfig, MotionModel, type MultipartContent, type MultipartPart, type OAuth2Auth, type OnChangeEvent, type Options, type PathSource, type PlatformSupport, type Point2d, type Point3d, type Pop, type PopComponent, PopComponentType, type PopCrop, type PopForward, type PopForwardOperator, type PredictedClass, type PredictedEmbedding, type PredictedKeyPoint, type PredictedKeyPoints, type PredictedMesh, type PredictedMotion, type PredictedObject, type PredictedText, type Prediction, PredictionVersion, type ProcessParams, type ProcessRequest, type QcAiHubExportParams, type RectangleArea, type ResultStream, type Roi, Semaphore, type Session, type SessionAuth, type Source, Stream, type StreamEvent, type StreamSource, type StreamTime, TaskMode, TaskType, type TimeSpan, type TrackingComponent, TranscodeMode, type TransformInto, TransientPopId, UploadGroupJob, UploadJob, type UploadSource, type UrlSource, UserReview, VideoMode, type VlmAbility, type VlmAbilityCreate, type VlmAbilityGroup, type VlmAbilityGroupCreate, type VlmAbilityGroupUpdate, VlmAbilityStatus, type VlmAbilityUpdate, WebrtcBase, WebrtcWhep, WebrtcWhip, WorkerEndpoint, type WorkerOptions, type WorkerSession, type Workflow, WorkflowPhase, EyePop as default, encodeMultipartFormData, getBaseUrl, randomMultipartBoundary, readableStreamFromString };
|
package/dist/eyepop.index.d.ts
CHANGED
|
@@ -1099,19 +1099,6 @@ interface WorkerOptions extends Options {
|
|
|
1099
1099
|
isLocalMode?: boolean;
|
|
1100
1100
|
}
|
|
1101
1101
|
|
|
1102
|
-
declare enum SessionStatus {
|
|
1103
|
-
UNKNOWN = "unknown",
|
|
1104
|
-
PENDING = "pending",
|
|
1105
|
-
RUNNING = "running",
|
|
1106
|
-
STOPPED = "stopped",
|
|
1107
|
-
FAILED = "failed",
|
|
1108
|
-
ERROR = "error",
|
|
1109
|
-
PIPELINE_CREATING = "pipeline_creating",
|
|
1110
|
-
PIPELINE_OK = "pipeline_ok",
|
|
1111
|
-
PIPELINE_CHECKING = "pipeline_checking",
|
|
1112
|
-
PIPELINE_ERROR = "pipeline_error",
|
|
1113
|
-
UPGRADING = "upgrading"
|
|
1114
|
-
}
|
|
1115
1102
|
declare class WorkerEndpoint extends Endpoint<WorkerEndpoint> {
|
|
1116
1103
|
private _baseUrl;
|
|
1117
1104
|
private _pipelineId;
|
|
@@ -1153,6 +1140,9 @@ declare class WorkerEndpoint extends Endpoint<WorkerEndpoint> {
|
|
|
1153
1140
|
process({ source, componentParams, motionDetect, roi }: ProcessRequest): Promise<ResultStream>;
|
|
1154
1141
|
private processV1;
|
|
1155
1142
|
private processV2;
|
|
1143
|
+
uploadGroup(paths: string[], params?: ProcessParams): Promise<ResultStream>;
|
|
1144
|
+
uploadStreamGroup(streams: Array<ReadableStream<Uint8Array> | Blob | BufferSource>, mimeTypes?: string[], params?: ProcessParams): Promise<ResultStream>;
|
|
1145
|
+
loadFromGroup(urls: string[], params?: ProcessParams): Promise<ResultStream>;
|
|
1156
1146
|
private uploadFile;
|
|
1157
1147
|
private uploadStream;
|
|
1158
1148
|
private uploadPath;
|
|
@@ -1163,24 +1153,16 @@ declare class WorkerEndpoint extends Endpoint<WorkerEndpoint> {
|
|
|
1163
1153
|
private jobStatus;
|
|
1164
1154
|
protected reconnect(): Promise<WorkerEndpoint>;
|
|
1165
1155
|
private startWebApiSessionWithPopId;
|
|
1166
|
-
private static SESSION_DEAD;
|
|
1167
1156
|
private static WAIT_FOR_IS_READY;
|
|
1168
|
-
private static CHECK_FOR_IS_READY_INTERVAL;
|
|
1169
1157
|
private sessionReadyTimeoutMs;
|
|
1170
|
-
private sessionHealthReady;
|
|
1171
1158
|
private getComputeSession;
|
|
1172
|
-
private getOnDemandComputeSession;
|
|
1173
|
-
private getPermanentComputeSession;
|
|
1174
1159
|
private startTransientPipeline;
|
|
1175
1160
|
private ensureTransientPipelineStarted;
|
|
1176
1161
|
private changeTransientPop;
|
|
1177
1162
|
private deleteTransientPipeline;
|
|
1178
|
-
private pipelineIdFromSession;
|
|
1179
1163
|
protected authorizationHeader(): Promise<string>;
|
|
1180
1164
|
private computeAuthorizationHeader;
|
|
1181
|
-
private setComputeSessionAccessToken;
|
|
1182
1165
|
private setTransientPipelinePop;
|
|
1183
|
-
private sessionCreateBody;
|
|
1184
1166
|
}
|
|
1185
1167
|
|
|
1186
1168
|
interface DataOptions extends Options {
|
|
@@ -1343,7 +1325,20 @@ declare class EyepopLineDecoder {
|
|
|
1343
1325
|
flush(): string[];
|
|
1344
1326
|
}
|
|
1345
1327
|
declare function readableStreamFromString(s: string): ReadableStream<Uint8Array>;
|
|
1328
|
+
type MultipartContent = ReadableStream<Uint8Array> | Blob | BufferSource | string;
|
|
1329
|
+
interface MultipartPart {
|
|
1330
|
+
name: string;
|
|
1331
|
+
contentType?: string | null;
|
|
1332
|
+
content: MultipartContent;
|
|
1333
|
+
}
|
|
1334
|
+
declare function randomMultipartBoundary(): string;
|
|
1335
|
+
/**
|
|
1336
|
+
* Streams a multipart/form-data body part by part, piping each part's bytes through as they
|
|
1337
|
+
* become available instead of buffering any part's full content in memory first.
|
|
1338
|
+
*/
|
|
1339
|
+
declare function encodeMultipartFormData(parts: MultipartPart[], boundary: string): ReadableStream<Uint8Array>;
|
|
1346
1340
|
|
|
1341
|
+
type UploadBody = ReadableStream<Uint8Array> | Blob | BufferSource;
|
|
1347
1342
|
declare class AbstractJob implements ResultStream {
|
|
1348
1343
|
protected _getSession: () => Promise<WorkerSession>;
|
|
1349
1344
|
protected _params: ProcessParams;
|
|
@@ -1362,12 +1357,14 @@ declare class AbstractJob implements ResultStream {
|
|
|
1362
1357
|
}
|
|
1363
1358
|
declare class UploadJob extends AbstractJob {
|
|
1364
1359
|
private readonly _uploadStream;
|
|
1360
|
+
private readonly _uploadBodyFactory;
|
|
1365
1361
|
private readonly _mimeType;
|
|
1366
1362
|
private readonly _size;
|
|
1367
1363
|
private readonly _needsFullDuplex;
|
|
1368
1364
|
private readonly _videoMode;
|
|
1369
1365
|
get [Symbol.toStringTag](): string;
|
|
1370
|
-
constructor(stream:
|
|
1366
|
+
constructor(stream: UploadBody, mimeType: string, size: number | undefined, videoMode: VideoMode | undefined, params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger, uploadBodyFactory?: () => Promise<UploadBody>);
|
|
1367
|
+
private uploadBody;
|
|
1371
1368
|
protected onEvent(event: StreamEvent): Promise<void>;
|
|
1372
1369
|
protected startJob(): Promise<Response>;
|
|
1373
1370
|
}
|
|
@@ -1377,6 +1374,22 @@ declare class LoadFromJob extends AbstractJob {
|
|
|
1377
1374
|
get [Symbol.toStringTag](): string;
|
|
1378
1375
|
protected startJob(): Promise<Response>;
|
|
1379
1376
|
}
|
|
1377
|
+
interface UploadSource {
|
|
1378
|
+
readonly stream: ReadableStream<Uint8Array> | Blob | BufferSource;
|
|
1379
|
+
readonly mimeType: string | null;
|
|
1380
|
+
}
|
|
1381
|
+
declare class UploadGroupJob extends AbstractJob {
|
|
1382
|
+
private readonly _sources;
|
|
1383
|
+
get [Symbol.toStringTag](): string;
|
|
1384
|
+
constructor(sources: UploadSource[], params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger);
|
|
1385
|
+
protected startJob(): Promise<Response>;
|
|
1386
|
+
}
|
|
1387
|
+
declare class LoadFromGroupJob extends AbstractJob {
|
|
1388
|
+
private readonly _urls;
|
|
1389
|
+
get [Symbol.toStringTag](): string;
|
|
1390
|
+
constructor(urls: string[], params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger);
|
|
1391
|
+
protected startJob(): Promise<Response>;
|
|
1392
|
+
}
|
|
1380
1393
|
declare class LoadFromAssetUuidJob extends AbstractJob {
|
|
1381
1394
|
private readonly _assetUuid;
|
|
1382
1395
|
constructor(assetUuid: string, params: ProcessParams, getSession: () => Promise<WorkerSession>, client: HttpClient, requestLogger: Logger);
|
|
@@ -1454,4 +1467,4 @@ declare namespace EyePop {
|
|
|
1454
1467
|
function dataEndpoint(opts?: DataOptions): DataEndpoint;
|
|
1455
1468
|
}
|
|
1456
1469
|
|
|
1457
|
-
export { type AbilityAliasEntry, AbstractJob, type AliasResolution, type Annotation, AnnotationInclusionMode, AnnotationType, type ApiKeyAuth, type Area, AreaType, ArtifactType, type Asset, type AssetImport, AssetInclusionMode, AssetStatus, AssetUrlType, type AssetUuidSource, type Auth0Options, type Authentication, type AutoAnnotate, type AutoAnnotateParams, type AutoAnnotatePrompt, AutoAnnotateStatus, AutoAnnotateTask, type AutoPromptConfig, type AutoTask, type BaseArea, type BaseComponent, type BaseTask, type Box, type ChangeEvent, ChangeType, type ClassificationTask, type ComponentFinderComponent, type ComponentParams, type Contour, type ContourArea, type ContourFinderComponent, ContourType, type CreateWorkflow, type CreateWorkflowConfig, DEFAULT_PREDICTION_VERSION, DataApiType, DataEndpoint, type DataOptions, type DataSession, type Dataset, type DatasetAutoAnnotate, type DatasetAutoAnnotateCreate, type DatasetAutoAnnotateUpdate, type DatasetCreate, type DatasetHeroAssetUpdate, type DatasetParent, type DatasetUpdate, type DatasetVersion, type DatasetVersionAssetStats, type DownloadResponse, Endpoint, EndpointState, type EvaluateConfig, type EvaluateFilter, type EvaluateRequest, type EvaluateResponse, type EvaluateRunInfo, EvaluationStatus, ExportedBy, EyePop, EyepopLineDecoder, type FileSource, type ForwardComponent, ForwardOperatorType, type HttpClient, type InferRequest, type InferRunInfo, type InferRuntimeConfig, type InferenceComponent, InferenceType, type ListWorkFlowItem, type ListWorkFlowItemMetadata, type ListWorkflowItemMetadataLabels, LoadFromAssetUuidJob, LoadFromJob, LoadMediaStreamJob, type LocalAuth, type Mask, type MediaStreamSource, type Model, type ModelCreate, type ModelExport, ModelExportStatus, ModelFormat, type ModelMetrics, ModelPrecisionType, type ModelSample, ModelStatus, ModelTask, type ModelTrainingProgress, ModelTrainingStage, ModelType, type ModelUpdate, type MotionDetectConfig, MotionModel, type OAuth2Auth, type OnChangeEvent, type Options, type PathSource, type PlatformSupport, type Point2d, type Point3d, type Pop, type PopComponent, PopComponentType, type PopCrop, type PopForward, type PopForwardOperator, type PredictedClass, type PredictedEmbedding, type PredictedKeyPoint, type PredictedKeyPoints, type PredictedMesh, type PredictedMotion, type PredictedObject, type PredictedText, type Prediction, PredictionVersion, type ProcessParams, type ProcessRequest, type QcAiHubExportParams, type RectangleArea, type ResultStream, type Roi, Semaphore, type Session, type SessionAuth,
|
|
1470
|
+
export { type AbilityAliasEntry, AbstractJob, type AliasResolution, type Annotation, AnnotationInclusionMode, AnnotationType, type ApiKeyAuth, type Area, AreaType, ArtifactType, type Asset, type AssetImport, AssetInclusionMode, AssetStatus, AssetUrlType, type AssetUuidSource, type Auth0Options, type Authentication, type AutoAnnotate, type AutoAnnotateParams, type AutoAnnotatePrompt, AutoAnnotateStatus, AutoAnnotateTask, type AutoPromptConfig, type AutoTask, type BaseArea, type BaseComponent, type BaseTask, type Box, type ChangeEvent, ChangeType, type ClassificationTask, type ComponentFinderComponent, type ComponentParams, type Contour, type ContourArea, type ContourFinderComponent, ContourType, type CreateWorkflow, type CreateWorkflowConfig, DEFAULT_PREDICTION_VERSION, DataApiType, DataEndpoint, type DataOptions, type DataSession, type Dataset, type DatasetAutoAnnotate, type DatasetAutoAnnotateCreate, type DatasetAutoAnnotateUpdate, type DatasetCreate, type DatasetHeroAssetUpdate, type DatasetParent, type DatasetUpdate, type DatasetVersion, type DatasetVersionAssetStats, type DownloadResponse, Endpoint, EndpointState, type EvaluateConfig, type EvaluateFilter, type EvaluateRequest, type EvaluateResponse, type EvaluateRunInfo, EvaluationStatus, ExportedBy, EyePop, EyepopLineDecoder, type FileSource, type ForwardComponent, ForwardOperatorType, type HttpClient, type InferRequest, type InferRunInfo, type InferRuntimeConfig, type InferenceComponent, InferenceType, type ListWorkFlowItem, type ListWorkFlowItemMetadata, type ListWorkflowItemMetadataLabels, LoadFromAssetUuidJob, LoadFromGroupJob, LoadFromJob, LoadMediaStreamJob, type LocalAuth, type Mask, type MediaStreamSource, type Model, type ModelCreate, type ModelExport, ModelExportStatus, ModelFormat, type ModelMetrics, ModelPrecisionType, type ModelSample, ModelStatus, ModelTask, type ModelTrainingProgress, ModelTrainingStage, ModelType, type ModelUpdate, type MotionDetectConfig, MotionModel, type MultipartContent, type MultipartPart, type OAuth2Auth, type OnChangeEvent, type Options, type PathSource, type PlatformSupport, type Point2d, type Point3d, type Pop, type PopComponent, PopComponentType, type PopCrop, type PopForward, type PopForwardOperator, type PredictedClass, type PredictedEmbedding, type PredictedKeyPoint, type PredictedKeyPoints, type PredictedMesh, type PredictedMotion, type PredictedObject, type PredictedText, type Prediction, PredictionVersion, type ProcessParams, type ProcessRequest, type QcAiHubExportParams, type RectangleArea, type ResultStream, type Roi, Semaphore, type Session, type SessionAuth, type Source, Stream, type StreamEvent, type StreamSource, type StreamTime, TaskMode, TaskType, type TimeSpan, type TrackingComponent, TranscodeMode, type TransformInto, TransientPopId, UploadGroupJob, UploadJob, type UploadSource, type UrlSource, UserReview, VideoMode, type VlmAbility, type VlmAbilityCreate, type VlmAbilityGroup, type VlmAbilityGroupCreate, type VlmAbilityGroupUpdate, VlmAbilityStatus, type VlmAbilityUpdate, WebrtcBase, WebrtcWhep, WebrtcWhip, WorkerEndpoint, type WorkerOptions, type WorkerSession, type Workflow, WorkflowPhase, EyePop as default, encodeMultipartFormData, getBaseUrl, randomMultipartBoundary, readableStreamFromString };
|