mirror of
https://github.com/sortedcord/omnia.git
synced 2026-07-22 12:02:49 +05:30
major(llm): Support Embedding Providers
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { describe, test, expect } from "vitest";
|
||||
import { z } from "zod";
|
||||
import { MockLLMProvider } from "@omnia/llm";
|
||||
import { MockLLMProvider, MockEmbeddingProvider } from "@omnia/llm";
|
||||
|
||||
describe("MockLLMProvider Unit Tests (Tier 1)", () => {
|
||||
test("returns parsed matching data for valid mock response", async () => {
|
||||
@@ -61,3 +61,21 @@ describe("MockLLMProvider Unit Tests (Tier 1)", () => {
|
||||
expect(response.data).toBeUndefined();
|
||||
});
|
||||
});
|
||||
|
||||
describe("MockEmbeddingProvider Unit Tests (Tier 1)", () => {
|
||||
test("generates deterministic 768-dimensional vectors", async () => {
|
||||
const provider = new MockEmbeddingProvider("mock-embeddings");
|
||||
const text = "Hello world";
|
||||
const vec1 = await provider.embed(text);
|
||||
const vec2 = await provider.embed(text);
|
||||
|
||||
expect(vec1.length).toBe(768);
|
||||
expect(vec2.length).toBe(768);
|
||||
expect(vec1).toEqual(vec2); // Deterministic
|
||||
|
||||
// Ensure values are numbers between -1.0 and 1.0 (since they are generated with Math.sin)
|
||||
expect(typeof vec1[0]).toBe("number");
|
||||
expect(vec1[0]).toBeGreaterThanOrEqual(-1.0);
|
||||
expect(vec1[0]).toBeLessThanOrEqual(1.0);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user