This is JS/TS SDK for enabling Maxim observability. Maxim is an enterprise grade evaluation and observability platform.
npm install @maximai/maxim-js
const maxim = new Maxim({apiKey: "maxim-api-key"});
const logger = await maxim.logger({ id: "log-repository-id" });
// Start a trace
logger.trace({id:"trace-id"})
// Add a span
logger.traceSpan("trace-id",{"id":"span-id","name":"Intent detection service"});
// Add llm call to this span
const generationId = uuid();
logger.spanGeneration("span-id",{
id: generationId,
name: "test-inference",
model: "gpt-3.5-turbo-16k",
messages: [
{
role: "user",
content: "Hello, how are you?",
},
],
modelParameters: {
temperature: 3,
},
provider: "openai",
})
// Make the actual call to the LLM
const result = llm_call();
// Log back the result
logger.generationResult(generationId, result);
// Ending span
logger.spanEnd("span-id");
// Ending trace
logger.traceEnd("trace-id");
Use our Maxim Langchain Tracer to integrate Maxim observability with just 2 lines of code.
- Fix: There was a critical bug in the implementation of HTTP POST calls where some of the payloads were getting truncated.
- Fix: For ending any entity, we make sure endTimestamp is captured from client side. This was not the case earlier in some scenarios.
- Fix: Data payload will always be a valid JSON
- Improvement: Adds exponential retries to the API calls to Maxim server.
- Improvement: Readme updates.
- Improvement: Detailed logs in debug mode
- Adds scaffold to support LangchainTracer for Maxim SDK.
- Exposes MaximLogger for writing wrappers for different developer SDKs.
- Adds more type-safety for generation messages
- Adds support input/output for traces
- Adds support for node 12+
- Fixed a critical bug related to pushing generation results to the Maxim platform
- Improved error handling for network connectivity issues
- Enhanced performance when logging large volumes of data
- Adds retrieval updates
- Adds ChatMessage support
- Adds prompt chain support
- Adds vision model support for prompts
- Adds separate error reporting method for generations
- Adds top level methods for easier SDK integration
- Fixes logs push error
- Minor bug fixes
- Updates default base url
- Prompt selection algorithm v2
- Minor bug fixes
- Moves to new base URL
- Adds all new logging support
- Adds support for adding dataset entries via SDK.
- Folders, Tags and advanced filtering support.
- Add support for customizing default matching algorithm.
- Adds realtim sync for prompt deployment.
- Adds support for deployment variables and custom fields. [Breaking change from earlier versions.]
- Adds support for new SDK apis.
- Adds support for custom fields for Prompts.