UNPKG

sambanova

Version:

The official TypeScript library for the Samba Nova API

157 lines 4.68 kB
import { APIResource } from "../core/resource.mjs"; import { APIPromise } from "../core/api-promise.mjs"; import { RequestOptions } from "../internal/request-options.mjs"; export declare class Embeddings extends APIResource { /** * Create embeddings * * @example * ```ts * const embeddingsResponse = await client.embeddings.create({ * input: [ * 'text to embed number 1', * 'text to embed number 2', * ], * model: 'E5-Mistral-7B-Instruct', * }); * ``` */ create(body: EmbeddingCreateParams, options?: RequestOptions): APIPromise<EmbeddingsResponse>; } /** * Embeddings response returned by the model */ export interface EmbeddingsResponse { /** * The list of embeddings generated by the model. */ data: Array<EmbeddingsResponse.Data>; /** * The name of the model used to generate the embedding. */ model: string; /** * The object type, which is always "list". */ object: 'list'; /** * Usage metrics for the completion, embeddings,transcription or translation * request */ usage: EmbeddingsResponse.Usage | null; } export declare namespace EmbeddingsResponse { /** * Represents an embedding vector returned by embeddings endpoint. */ interface Data { /** * List of floats containing the embedding vector. */ embedding: Array<number> | null; /** * The index of the embedding in the list of embeddings. */ index: number; /** * Object type, always embedding. */ object: 'embedding'; } /** * Usage metrics for the completion, embeddings,transcription or translation * request */ interface Usage { /** * acceptance rate */ acceptance_rate?: number; /** * number of tokens generated in completion */ completion_tokens?: number; /** * completion tokens per second after first token generation */ completion_tokens_after_first_per_sec?: number; /** * completion tokens per second after first token generation first ten */ completion_tokens_after_first_per_sec_first_ten?: number; /** * completion tokens per second after first token generation */ completion_tokens_after_first_per_sec_graph?: number; /** * completion tokens per second */ completion_tokens_per_sec?: number; /** * The Unix timestamp (in seconds) of when the generation finished. */ end_time?: number; /** * whether or not is last response, always true for non streaming response */ is_last_response?: true; /** * number of tokens used in the prompt sent */ prompt_tokens?: number; /** * Extra tokens details */ prompt_tokens_details?: Usage.PromptTokensDetails; /** * The Unix timestamp (in seconds) of when the generation started. */ start_time?: number; /** * also TTF, time (in seconds) taken to generate the first token */ time_to_first_token?: number; /** * total time (in seconds) taken to generate the full generation */ total_latency?: number; /** * prompt tokens + completion tokens */ total_tokens?: number; /** * tokens per second including prompt and completion */ total_tokens_per_sec?: number; [k: string]: unknown; } namespace Usage { /** * Extra tokens details */ interface PromptTokensDetails { /** * amount of cached tokens */ cached_tokens?: number; [k: string]: unknown; } } } export interface EmbeddingCreateParams { /** * Input text to embed. to embed multiple inputs in a single request, pass an array * of strings. The input must not exceed the max input tokens for the model */ input: string | Array<string>; /** * The model ID to use See available * [models](https://docs.sambanova.ai/cloud/docs/get-started/supported-models) */ model: (string & {}) | 'E5-Mistral-7B-Instruct'; [k: string]: unknown; } export declare namespace Embeddings { export { type EmbeddingsResponse as EmbeddingsResponse, type EmbeddingCreateParams as EmbeddingCreateParams, }; } //# sourceMappingURL=embeddings.d.mts.map