From 4d937e761e0227132d08fa8535ebb636b31f6366 Mon Sep 17 00:00:00 2001 From: GermanVor Date: Mon, 30 Dec 2024 00:18:33 +0100 Subject: [PATCH] chore: exports --- clients/ai-assistants-v1/sdk/index.ts | 1 + clients/ai-files-v1/sdk/index.ts | 1 + .../sdk/embeddingSdk.ts | 10 ++++- .../sdk/imageGenerationSdk.ts | 11 ++++- clients/ai-foundation_models-v1/sdk/index.ts | 1 + .../sdk/textClassificationSdk.ts | 12 +++++- .../sdk/textGenerationSdk.ts | 18 ++++++++- clients/operation/sdk/index.ts | 1 + examples/generate-image.ts | 40 +++++++++---------- 9 files changed, 69 insertions(+), 26 deletions(-) diff --git a/clients/ai-assistants-v1/sdk/index.ts b/clients/ai-assistants-v1/sdk/index.ts index fd48c062..bcd20641 100644 --- a/clients/ai-assistants-v1/sdk/index.ts +++ b/clients/ai-assistants-v1/sdk/index.ts @@ -5,3 +5,4 @@ export * from './threadSdk'; export * from './searchIndexFileSdk'; export * from './searchIndexSdk'; export * from './userSdk'; +export * from '..'; diff --git a/clients/ai-files-v1/sdk/index.ts b/clients/ai-files-v1/sdk/index.ts index 807a43b9..7dd4daca 100644 --- a/clients/ai-files-v1/sdk/index.ts +++ b/clients/ai-files-v1/sdk/index.ts @@ -1 +1,2 @@ export * from './fileSdk'; +export * from '..'; diff --git a/clients/ai-foundation_models-v1/sdk/embeddingSdk.ts b/clients/ai-foundation_models-v1/sdk/embeddingSdk.ts index 964b0d94..0970be56 100644 --- a/clients/ai-foundation_models-v1/sdk/embeddingSdk.ts +++ b/clients/ai-foundation_models-v1/sdk/embeddingSdk.ts @@ -14,8 +14,10 @@ export type TextEmbeddingProps = Omit; - constructor(session: SessionArg) { - this.embeddingClient = session.client(embeddingService.EmbeddingsServiceClient); + static ENDPOINT = 'llm.api.cloud.yandex.net:443'; + + constructor(session: SessionArg, endpoint = EmbeddingSdk.ENDPOINT) { + this.embeddingClient = session.client(embeddingService.EmbeddingsServiceClient, endpoint); } textEmbedding(params: TextEmbeddingProps, args?: ClientCallArgs) { @@ -28,3 +30,7 @@ export class EmbeddingSdk { ); } } + +export const initEmbeddingSdk = (session: SessionArg, endpoint = EmbeddingSdk.ENDPOINT) => { + return new EmbeddingSdk(session, endpoint); +}; diff --git a/clients/ai-foundation_models-v1/sdk/imageGenerationSdk.ts b/clients/ai-foundation_models-v1/sdk/imageGenerationSdk.ts index 261fc5eb..cf917795 100644 --- a/clients/ai-foundation_models-v1/sdk/imageGenerationSdk.ts +++ b/clients/ai-foundation_models-v1/sdk/imageGenerationSdk.ts @@ -20,7 +20,9 @@ export class ImageGenerationSdk { ClientCallArgs >; - constructor(session: SessionArg, endpoint = 'llm.api.cloud.yandex.net:443') { + static ENDPOINT = 'llm.api.cloud.yandex.net:443'; + + constructor(session: SessionArg, endpoint = ImageGenerationSdk.ENDPOINT) { this.imageGenerationClient = session.client( imageGenerationService.ImageGenerationAsyncServiceClient, endpoint, @@ -37,3 +39,10 @@ export class ImageGenerationSdk { ); } } + +export const initImageGenerationSdk = ( + session: SessionArg, + endpoint = ImageGenerationSdk.ENDPOINT, +) => { + return new ImageGenerationSdk(session, endpoint); +}; diff --git a/clients/ai-foundation_models-v1/sdk/index.ts b/clients/ai-foundation_models-v1/sdk/index.ts index 9f504b0d..16c5d90d 100644 --- a/clients/ai-foundation_models-v1/sdk/index.ts +++ b/clients/ai-foundation_models-v1/sdk/index.ts @@ -2,3 +2,4 @@ export * from './embeddingSdk'; export * from './imageGenerationSdk'; export * from './textClassificationSdk'; export * from './textGenerationSdk'; +export * from '..'; diff --git a/clients/ai-foundation_models-v1/sdk/textClassificationSdk.ts b/clients/ai-foundation_models-v1/sdk/textClassificationSdk.ts index 214ceaa3..94712d85 100644 --- a/clients/ai-foundation_models-v1/sdk/textClassificationSdk.ts +++ b/clients/ai-foundation_models-v1/sdk/textClassificationSdk.ts @@ -29,9 +29,12 @@ export class TextClassificationSdk { ClientCallArgs >; - constructor(session: SessionArg) { + static ENDPOINT = 'llm.api.cloud.yandex.net:443'; + + constructor(session: SessionArg, endpoint = TextClassificationSdk.ENDPOINT) { this.textClassificationClient = session.client( textClassificationService.TextClassificationServiceClient, + endpoint, ); } @@ -61,3 +64,10 @@ export class TextClassificationSdk { ); } } + +export const initTextClassificationSdk = ( + session: SessionArg, + endpoint = TextClassificationSdk.ENDPOINT, +) => { + return new TextClassificationSdk(session, endpoint); +}; diff --git a/clients/ai-foundation_models-v1/sdk/textGenerationSdk.ts b/clients/ai-foundation_models-v1/sdk/textGenerationSdk.ts index c2c82241..8066b9df 100644 --- a/clients/ai-foundation_models-v1/sdk/textGenerationSdk.ts +++ b/clients/ai-foundation_models-v1/sdk/textGenerationSdk.ts @@ -28,15 +28,22 @@ export class TextGenerationSdk { ClientCallArgs >; - constructor(session: SessionArg) { + static ENDPOINT = 'llm.api.cloud.yandex.net:443'; + + constructor(session: SessionArg, endpoint = TextGenerationSdk.ENDPOINT) { this.textGenerationClient = session.client( textGenerationService.TextGenerationServiceClient, + endpoint, ); - this.tokenizerClient = session.client(textGenerationService.TokenizerServiceClient); + this.tokenizerClient = session.client( + textGenerationService.TokenizerServiceClient, + endpoint, + ); this.textGenerationAsyncClient = session.client( textGenerationService.TextGenerationAsyncServiceClient, + endpoint, ); } @@ -82,3 +89,10 @@ export class TextGenerationSdk { return operationP; } } + +export const initTextGenerationSdk = ( + session: SessionArg, + endpoint = TextGenerationSdk.ENDPOINT, +) => { + return new TextGenerationSdk(session, endpoint); +}; diff --git a/clients/operation/sdk/index.ts b/clients/operation/sdk/index.ts index 66c8968a..6e5c0f0c 100644 --- a/clients/operation/sdk/index.ts +++ b/clients/operation/sdk/index.ts @@ -1 +1,2 @@ export * from './operationSdk'; +export * from '..'; diff --git a/examples/generate-image.ts b/examples/generate-image.ts index 52a0e029..8333d51d 100644 --- a/examples/generate-image.ts +++ b/examples/generate-image.ts @@ -5,8 +5,10 @@ import { Session } from '@yandex-cloud/nodejs-sdk/dist/session'; import { initOperationSdk } from '@yandex-cloud/nodejs-sdk/operation/sdk'; -import { ImageGenerationSdk } from '@yandex-cloud/nodejs-sdk/ai-foundation_models-v1/sdk'; -import { imageGeneration } from '@yandex-cloud/nodejs-sdk/ai-foundation_models-v1'; +import { + initImageGenerationSdk, + imageGeneration, +} from '@yandex-cloud/nodejs-sdk/ai-foundation_models-v1/sdk'; import { ImageGenerationResponse } from '@yandex-cloud/nodejs-sdk/ai-foundation_models-v1/generated/yandex/cloud/ai/foundation_models/v1/image_generation/image_generation_service'; import { writeFile } from 'fs'; @@ -30,34 +32,32 @@ const folderId = getEnv('YC_FOLDER_ID'); const operationSdk = initOperationSdk(session); - const imageGenerationSdk = new ImageGenerationSdk(session); + const imageGenerationSdk = initImageGenerationSdk(session); const generateImageOperation = await imageGenerationSdk.generateImage({ folderId, - modelId: 'yandex-art/free-tier', + modelId: 'yandex-art', generationOptions: { mimeType: 'image/jpeg', - seed: 1165508436334210, }, - messages: [imageGeneration.Message.fromPartial({ text: 'Кот', weight: 1 })], + messages: [ + imageGeneration.Message.fromPartial({ + text: 'Three cats', + weight: 1, + }), + ], }); - const generateImageFinalOperation = await operationSdk.pollOperation( + const imageGenerationResponse = await operationSdk.pollOperation( generateImageOperation, 1_000, - { operationCallback: () => console.log('In Process') }, + { + operationCallback: console.log, + decoder: ImageGenerationResponse.decode, + }, ); - if (generateImageFinalOperation.response) { - console.log(ImageGenerationResponse.decode(generateImageFinalOperation.response.value)); - - writeFile( - './image.png', - ImageGenerationResponse.decode(generateImageFinalOperation.response.value).image, - { encoding: 'base64' }, - function (err) { - console.log('File created'); - }, - ); - } + writeFile('./image.png', imageGenerationResponse.image, { encoding: 'base64' }, function (err) { + console.log('File created'); + }); })();