From e64243e36850cc03df42d162b840b7811a9eb2df Mon Sep 17 00:00:00 2001 From: Tom Frenken Date: Mon, 16 Sep 2024 18:35:36 +0200 Subject: [PATCH] change visibility, naming, docs --- packages/ai-api/src/index.ts | 2 +- packages/ai-api/src/utils/deployment-resolver.ts | 4 ++-- packages/langchain/src/openai/embedding.ts | 8 ++++---- packages/langchain/src/openai/types.ts | 6 +++--- packages/langchain/src/openai/util.test.ts | 3 --- packages/langchain/src/openai/util.ts | 1 + sample-code/src/server.ts | 10 ++++++---- 7 files changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/ai-api/src/index.ts b/packages/ai-api/src/index.ts index 7d54d800..195b1ca0 100644 --- a/packages/ai-api/src/index.ts +++ b/packages/ai-api/src/index.ts @@ -5,5 +5,5 @@ export type { DeploymentIdConfiguration, ModelConfiguration, ResourceGroupConfiguration, - ConfigurationOptions + ModelDeploymentConfig } from './utils/index.js'; diff --git a/packages/ai-api/src/utils/deployment-resolver.ts b/packages/ai-api/src/utils/deployment-resolver.ts index 587088b5..b22f75cb 100644 --- a/packages/ai-api/src/utils/deployment-resolver.ts +++ b/packages/ai-api/src/utils/deployment-resolver.ts @@ -46,13 +46,13 @@ export interface ResourceGroupConfiguration { */ export type ModelDeployment = | ModelNameT - | ConfigurationOptions; + | ModelDeploymentConfig; /** * The configuration options for a model deployment. * @typeParam ModelNameT - String literal type representing the name of the model. */ -export type ConfigurationOptions = Xor< +export type ModelDeploymentConfig = Xor< ModelConfiguration, DeploymentIdConfiguration > & diff --git a/packages/langchain/src/openai/embedding.ts b/packages/langchain/src/openai/embedding.ts index 6fa7be80..a4f5093d 100644 --- a/packages/langchain/src/openai/embedding.ts +++ b/packages/langchain/src/openai/embedding.ts @@ -29,17 +29,17 @@ export class AzureOpenAiEmbeddingClient extends AzureOpenAIEmbeddings { ); const embeddings: number[][] = []; for await (const promptChunk of chunkedPrompts) { - const resArr = await this.createEmbedding({ input: promptChunk }); - resArr.data.forEach(res => embeddings.push(res.embedding)); + const embeddingResponse = await this.createEmbedding({ input: promptChunk }); + embeddingResponse.data.forEach(entry => embeddings.push(entry.embedding)); } return embeddings; } override async embedQuery(query: string): Promise { - const resArr = await this.createEmbedding({ + const embeddingResponse = await this.createEmbedding({ input: this.stripNewLines ? query.replace(/\n/g, ' ') : query }); - return resArr.data[0].embedding; + return embeddingResponse.data[0].embedding; } private async createEmbedding( diff --git a/packages/langchain/src/openai/types.ts b/packages/langchain/src/openai/types.ts index bab27267..74f2adca 100644 --- a/packages/langchain/src/openai/types.ts +++ b/packages/langchain/src/openai/types.ts @@ -10,7 +10,7 @@ import type { AzureOpenAiChatModel, AzureOpenAiEmbeddingModel } from '@sap-ai-sdk/core'; -import type { ConfigurationOptions } from '@sap-ai-sdk/ai-api'; +import type { ModelDeploymentConfig } from '@sap-ai-sdk/ai-api'; /** * Input type for OpenAI Chat models. @@ -33,7 +33,7 @@ export type OpenAiChatModelInput = Omit< > & Omit & BaseChatModelParams & - ConfigurationOptions; + ModelDeploymentConfig; /** * Chat model call options for OpenAI. @@ -60,5 +60,5 @@ export type OpenAiEmbeddingInput = Omit< OpenAIEmbeddingsParams, 'modelName' | 'model' | 'azureOpenAIApiKey' | 'apiKey' > & - ConfigurationOptions & + ModelDeploymentConfig & BaseLLMParams; diff --git a/packages/langchain/src/openai/util.test.ts b/packages/langchain/src/openai/util.test.ts index e00d191c..aa0683d8 100644 --- a/packages/langchain/src/openai/util.test.ts +++ b/packages/langchain/src/openai/util.test.ts @@ -1,6 +1,3 @@ -// mapResponseToChatResult -// mapLangchainToAiClient - import { OpenAiChatClient as OpenAiChatClientBase, OpenAiChatCompletionOutput diff --git a/packages/langchain/src/openai/util.ts b/packages/langchain/src/openai/util.ts index ab7b767f..5204bb67 100644 --- a/packages/langchain/src/openai/util.ts +++ b/packages/langchain/src/openai/util.ts @@ -143,6 +143,7 @@ export function mapBaseMessageToOpenAiChatMessage( * Converts a value to an array or returns undefined. * @param value - The value to convert. * @returns The value as an array, undefined if the input is falsy, or the original array if input is already an array. + * @internal */ export function toArrayOrUndefined(value?: T | T[]): T[] | undefined { if (value === undefined) { diff --git a/sample-code/src/server.ts b/sample-code/src/server.ts index 4c86eb84..01a96ebb 100644 --- a/sample-code/src/server.ts +++ b/sample-code/src/server.ts @@ -30,9 +30,10 @@ app.get('/embedding', async (req, res) => { try { const result = await computeEmbedding(); if (!result.length) { - throw new Error('No embedding vector returned'); + res.status(500).send('No embedding vector returned.'); + } else { + res.send('Number crunching success, got a nice vector.'); } - res.send('Number crunching success, got a nice vector.'); } catch (error: any) { console.error(error); res @@ -78,9 +79,10 @@ app.get('/langchain/embedding', async (req, res) => { try { const result = await embedQuery(); if (!result.length) { - throw new Error('No embedding vector returned'); + res.status(500).send('No embedding vector returned.'); + } else { + res.send('Number crunching success, got a nice vector.'); } - res.send('Number crunching success, got a nice vector.'); } catch (error: any) { console.error(error); res