MCPcopy Create free account
hub / github.com/anus-dev/ANUS / generateEmbedding

Method generateEmbedding

packages/core/src/core/client.ts:729–762  ·  view source on GitHub ↗
(texts: string[])

Source from the content-addressed store, hash-verified

727 }
728
729 async generateEmbedding(texts: string[]): Promise<number[][]> {
730 if (!texts || texts.length === 0) {
731 return [];
732 }
733 const embedModelParams: EmbedContentParameters = {
734 model: this.embeddingModel,
735 contents: texts,
736 };
737
738 const embedContentResponse =
739 await this.getContentGenerator().embedContent(embedModelParams);
740 if (
741 !embedContentResponse.embeddings ||
742 embedContentResponse.embeddings.length === 0
743 ) {
744 throw new Error('No embeddings found in API response.');
745 }
746
747 if (embedContentResponse.embeddings.length !== texts.length) {
748 throw new Error(
749 `API returned a mismatched number of embeddings. Expected ${texts.length}, got ${embedContentResponse.embeddings.length}.`,
750 );
751 }
752
753 return embedContentResponse.embeddings.map((embedding, index) => {
754 const values = embedding.values;
755 if (!values || values.length === 0) {
756 throw new Error(
757 `API returned an empty embedding for input text at index ${index}: "${texts[index]}"`,
758 );
759 }
760 return values;
761 });
762 }
763
764 async tryCompressChat(
765 prompt_id: string,

Callers 1

client.test.tsFile · 0.80

Calls 2

getContentGeneratorMethod · 0.95
embedContentMethod · 0.65

Tested by

no test coverage detected