openlit 1.13.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -1
- package/dist/__tests__/manual-trace.test.js +118 -0
- package/dist/__tests__/manual-trace.test.js.map +1 -0
- package/dist/__tests__/register.test.js +90 -0
- package/dist/__tests__/register.test.js.map +1 -0
- package/dist/config.d.ts +7 -1
- package/dist/config.js +3 -1
- package/dist/config.js.map +1 -1
- package/dist/evals/__tests__/offline.test.js +418 -0
- package/dist/evals/__tests__/offline.test.js.map +1 -0
- package/dist/evals/index.d.ts +2 -5
- package/dist/evals/index.js +12 -26
- package/dist/evals/index.js.map +1 -1
- package/dist/evals/offline.d.ts +6 -0
- package/dist/evals/offline.js +347 -0
- package/dist/evals/offline.js.map +1 -0
- package/dist/evals/types.d.ts +69 -18
- package/dist/evals/types.js +20 -0
- package/dist/evals/types.js.map +1 -1
- package/dist/guard/__tests__/integration.test.js +178 -0
- package/dist/guard/__tests__/integration.test.js.map +1 -0
- package/dist/guard/__tests__/pii.test.js +109 -0
- package/dist/guard/__tests__/pii.test.js.map +1 -0
- package/dist/guard/__tests__/pipeline.test.js +162 -0
- package/dist/guard/__tests__/pipeline.test.js.map +1 -0
- package/dist/guard/__tests__/prompt-injection.test.js +92 -0
- package/dist/guard/__tests__/prompt-injection.test.js.map +1 -0
- package/dist/guard/base.d.ts +75 -14
- package/dist/guard/base.js +130 -53
- package/dist/guard/base.js.map +1 -1
- package/dist/guard/custom.d.ts +19 -0
- package/dist/guard/custom.js +46 -0
- package/dist/guard/custom.js.map +1 -0
- package/dist/guard/index.d.ts +24 -5
- package/dist/guard/index.js +39 -21
- package/dist/guard/index.js.map +1 -1
- package/dist/guard/integration.d.ts +32 -0
- package/dist/guard/integration.js +328 -0
- package/dist/guard/integration.js.map +1 -0
- package/dist/guard/moderation.d.ts +18 -0
- package/dist/guard/moderation.js +61 -0
- package/dist/guard/moderation.js.map +1 -0
- package/dist/guard/pii.d.ts +17 -0
- package/dist/guard/pii.js +94 -0
- package/dist/guard/pii.js.map +1 -0
- package/dist/guard/pipeline.d.ts +18 -0
- package/dist/guard/pipeline.js +96 -0
- package/dist/guard/pipeline.js.map +1 -0
- package/dist/guard/prompt-injection.d.ts +20 -6
- package/dist/guard/prompt-injection.js +59 -68
- package/dist/guard/prompt-injection.js.map +1 -1
- package/dist/guard/schema.d.ts +20 -0
- package/dist/guard/schema.js +99 -0
- package/dist/guard/schema.js.map +1 -0
- package/dist/guard/sensitive-topic.d.ts +22 -6
- package/dist/guard/sensitive-topic.js +78 -64
- package/dist/guard/sensitive-topic.js.map +1 -1
- package/dist/guard/topic-restriction.d.ts +21 -6
- package/dist/guard/topic-restriction.js +43 -64
- package/dist/guard/topic-restriction.js.map +1 -1
- package/dist/helpers.d.ts +133 -2
- package/dist/helpers.js +415 -5
- package/dist/helpers.js.map +1 -1
- package/dist/index.d.ts +54 -30
- package/dist/index.js +104 -22
- package/dist/index.js.map +1 -1
- package/dist/instrumentation/__tests__/ai21-rag-trace-comparison.test.d.ts +13 -0
- package/dist/instrumentation/__tests__/ai21-rag-trace-comparison.test.js +176 -0
- package/dist/instrumentation/__tests__/ai21-rag-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/ai21-trace-comparison.test.d.ts +10 -0
- package/dist/instrumentation/__tests__/ai21-trace-comparison.test.js +203 -0
- package/dist/instrumentation/__tests__/ai21-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/assemblyai-wrapper.test.js +262 -0
- package/dist/instrumentation/__tests__/assemblyai-wrapper.test.js.map +1 -0
- package/dist/instrumentation/__tests__/astra-trace-comparison.test.d.ts +7 -0
- package/dist/instrumentation/__tests__/astra-trace-comparison.test.js +160 -0
- package/dist/instrumentation/__tests__/astra-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/browser-use-wrapper.test.js +284 -0
- package/dist/instrumentation/__tests__/browser-use-wrapper.test.js.map +1 -0
- package/dist/instrumentation/__tests__/cache-pricing.test.d.ts +12 -0
- package/dist/instrumentation/__tests__/cache-pricing.test.js +95 -0
- package/dist/instrumentation/__tests__/cache-pricing.test.js.map +1 -0
- package/dist/instrumentation/__tests__/elevenlabs-wrapper.test.d.ts +1 -0
- package/dist/instrumentation/__tests__/elevenlabs-wrapper.test.js +282 -0
- package/dist/instrumentation/__tests__/elevenlabs-wrapper.test.js.map +1 -0
- package/dist/instrumentation/__tests__/firecrawl-wrapper.test.d.ts +1 -0
- package/dist/instrumentation/__tests__/firecrawl-wrapper.test.js +238 -0
- package/dist/instrumentation/__tests__/firecrawl-wrapper.test.js.map +1 -0
- package/dist/instrumentation/__tests__/gpu-collector.test.d.ts +1 -0
- package/dist/instrumentation/__tests__/gpu-collector.test.js +247 -0
- package/dist/instrumentation/__tests__/gpu-collector.test.js.map +1 -0
- package/dist/instrumentation/__tests__/gradient-trace-comparison.test.d.ts +11 -0
- package/dist/instrumentation/__tests__/gradient-trace-comparison.test.js +391 -0
- package/dist/instrumentation/__tests__/gradient-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/groq-trace-comparison.test.js +150 -0
- package/dist/instrumentation/__tests__/groq-trace-comparison.test.js.map +1 -1
- package/dist/instrumentation/__tests__/helpers-genai.test.d.ts +14 -0
- package/dist/instrumentation/__tests__/helpers-genai.test.js +347 -0
- package/dist/instrumentation/__tests__/helpers-genai.test.js.map +1 -0
- package/dist/instrumentation/__tests__/langchain-role-map.test.d.ts +1 -0
- package/dist/instrumentation/__tests__/langchain-role-map.test.js +19 -0
- package/dist/instrumentation/__tests__/langchain-role-map.test.js.map +1 -0
- package/dist/instrumentation/__tests__/mem0-trace-comparison.test.d.ts +13 -0
- package/dist/instrumentation/__tests__/mem0-trace-comparison.test.js +208 -0
- package/dist/instrumentation/__tests__/mem0-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/pg-trace-comparison.test.d.ts +21 -0
- package/dist/instrumentation/__tests__/pg-trace-comparison.test.js +455 -0
- package/dist/instrumentation/__tests__/pg-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/transformers-trace-comparison.test.d.ts +11 -0
- package/dist/instrumentation/__tests__/transformers-trace-comparison.test.js +214 -0
- package/dist/instrumentation/__tests__/transformers-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/vertexai-trace-comparison.test.d.ts +6 -0
- package/dist/instrumentation/__tests__/vertexai-trace-comparison.test.js +409 -0
- package/dist/instrumentation/__tests__/vertexai-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/__tests__/vllm-trace-comparison.test.d.ts +1 -0
- package/dist/instrumentation/__tests__/vllm-trace-comparison.test.js +519 -0
- package/dist/instrumentation/__tests__/vllm-trace-comparison.test.js.map +1 -0
- package/dist/instrumentation/ai21/index.d.ts +11 -0
- package/dist/instrumentation/ai21/index.js +67 -0
- package/dist/instrumentation/ai21/index.js.map +1 -0
- package/dist/instrumentation/ai21/wrapper.d.ts +54 -0
- package/dist/instrumentation/ai21/wrapper.js +511 -0
- package/dist/instrumentation/ai21/wrapper.js.map +1 -0
- package/dist/instrumentation/anthropic/wrapper.js +56 -2
- package/dist/instrumentation/anthropic/wrapper.js.map +1 -1
- package/dist/instrumentation/assemblyai/index.d.ts +12 -0
- package/dist/instrumentation/assemblyai/index.js +91 -0
- package/dist/instrumentation/assemblyai/index.js.map +1 -0
- package/dist/instrumentation/assemblyai/wrapper.d.ts +35 -0
- package/dist/instrumentation/assemblyai/wrapper.js +233 -0
- package/dist/instrumentation/assemblyai/wrapper.js.map +1 -0
- package/dist/instrumentation/astra/index.d.ts +11 -0
- package/dist/instrumentation/astra/index.js +87 -0
- package/dist/instrumentation/astra/index.js.map +1 -0
- package/dist/instrumentation/astra/wrapper.d.ts +39 -0
- package/dist/instrumentation/astra/wrapper.js +349 -0
- package/dist/instrumentation/astra/wrapper.js.map +1 -0
- package/dist/instrumentation/azure-ai-inference/wrapper.d.ts +13 -0
- package/dist/instrumentation/azure-ai-inference/wrapper.js +60 -1
- package/dist/instrumentation/azure-ai-inference/wrapper.js.map +1 -1
- package/dist/instrumentation/bedrock/wrapper.d.ts +13 -0
- package/dist/instrumentation/bedrock/wrapper.js +78 -2
- package/dist/instrumentation/bedrock/wrapper.js.map +1 -1
- package/dist/instrumentation/browser-use/index.d.ts +11 -0
- package/dist/instrumentation/browser-use/index.js +98 -0
- package/dist/instrumentation/browser-use/index.js.map +1 -0
- package/dist/instrumentation/browser-use/wrapper.d.ts +12 -0
- package/dist/instrumentation/browser-use/wrapper.js +706 -0
- package/dist/instrumentation/browser-use/wrapper.js.map +1 -0
- package/dist/instrumentation/claude-agent-sdk/wrapper.js +90 -4
- package/dist/instrumentation/claude-agent-sdk/wrapper.js.map +1 -1
- package/dist/instrumentation/cohere/wrapper.d.ts +13 -0
- package/dist/instrumentation/cohere/wrapper.js +59 -0
- package/dist/instrumentation/cohere/wrapper.js.map +1 -1
- package/dist/instrumentation/cursor-sdk/wrapper.js +111 -15
- package/dist/instrumentation/cursor-sdk/wrapper.js.map +1 -1
- package/dist/instrumentation/elevenlabs/index.d.ts +12 -0
- package/dist/instrumentation/elevenlabs/index.js +92 -0
- package/dist/instrumentation/elevenlabs/index.js.map +1 -0
- package/dist/instrumentation/elevenlabs/wrapper.d.ts +34 -0
- package/dist/instrumentation/elevenlabs/wrapper.js +280 -0
- package/dist/instrumentation/elevenlabs/wrapper.js.map +1 -0
- package/dist/instrumentation/firecrawl/index.d.ts +13 -0
- package/dist/instrumentation/firecrawl/index.js +115 -0
- package/dist/instrumentation/firecrawl/index.js.map +1 -0
- package/dist/instrumentation/firecrawl/wrapper.d.ts +22 -0
- package/dist/instrumentation/firecrawl/wrapper.js +378 -0
- package/dist/instrumentation/firecrawl/wrapper.js.map +1 -0
- package/dist/instrumentation/google-ai/wrapper.d.ts +13 -0
- package/dist/instrumentation/google-ai/wrapper.js +85 -1
- package/dist/instrumentation/google-ai/wrapper.js.map +1 -1
- package/dist/instrumentation/gpu/index.d.ts +38 -0
- package/dist/instrumentation/gpu/index.js +233 -0
- package/dist/instrumentation/gpu/index.js.map +1 -0
- package/dist/instrumentation/gradient/index.d.ts +12 -0
- package/dist/instrumentation/gradient/index.js +74 -0
- package/dist/instrumentation/gradient/index.js.map +1 -0
- package/dist/instrumentation/gradient/utils.d.ts +14 -0
- package/dist/instrumentation/gradient/utils.js +119 -0
- package/dist/instrumentation/gradient/utils.js.map +1 -0
- package/dist/instrumentation/gradient/wrapper.d.ts +76 -0
- package/dist/instrumentation/gradient/wrapper.js +584 -0
- package/dist/instrumentation/gradient/wrapper.js.map +1 -0
- package/dist/instrumentation/groq/wrapper.js +42 -0
- package/dist/instrumentation/groq/wrapper.js.map +1 -1
- package/dist/instrumentation/huggingface/wrapper.d.ts +13 -0
- package/dist/instrumentation/huggingface/wrapper.js +66 -0
- package/dist/instrumentation/huggingface/wrapper.js.map +1 -1
- package/dist/instrumentation/index.js +26 -0
- package/dist/instrumentation/index.js.map +1 -1
- package/dist/instrumentation/langchain/wrapper.js +5 -8
- package/dist/instrumentation/langchain/wrapper.js.map +1 -1
- package/dist/instrumentation/langgraph/wrapper.js +12 -11
- package/dist/instrumentation/langgraph/wrapper.js.map +1 -1
- package/dist/instrumentation/llamaindex/wrapper.d.ts +14 -1
- package/dist/instrumentation/llamaindex/wrapper.js +68 -0
- package/dist/instrumentation/llamaindex/wrapper.js.map +1 -1
- package/dist/instrumentation/mcp/index.d.ts +20 -0
- package/dist/instrumentation/mcp/index.js +282 -0
- package/dist/instrumentation/mcp/index.js.map +1 -0
- package/dist/instrumentation/mcp/wrapper.d.ts +72 -0
- package/dist/instrumentation/mcp/wrapper.js +571 -0
- package/dist/instrumentation/mcp/wrapper.js.map +1 -0
- package/dist/instrumentation/mem0/index.d.ts +17 -0
- package/dist/instrumentation/mem0/index.js +113 -0
- package/dist/instrumentation/mem0/index.js.map +1 -0
- package/dist/instrumentation/mem0/wrapper.d.ts +37 -0
- package/dist/instrumentation/mem0/wrapper.js +298 -0
- package/dist/instrumentation/mem0/wrapper.js.map +1 -0
- package/dist/instrumentation/mistral/wrapper.d.ts +13 -0
- package/dist/instrumentation/mistral/wrapper.js +60 -1
- package/dist/instrumentation/mistral/wrapper.js.map +1 -1
- package/dist/instrumentation/ollama/wrapper.d.ts +13 -0
- package/dist/instrumentation/ollama/wrapper.js +67 -1
- package/dist/instrumentation/ollama/wrapper.js.map +1 -1
- package/dist/instrumentation/openai/wrapper.d.ts +13 -0
- package/dist/instrumentation/openai/wrapper.js +89 -3
- package/dist/instrumentation/openai/wrapper.js.map +1 -1
- package/dist/instrumentation/pg/index.d.ts +20 -0
- package/dist/instrumentation/pg/index.js +74 -0
- package/dist/instrumentation/pg/index.js.map +1 -0
- package/dist/instrumentation/pg/wrapper.d.ts +66 -0
- package/dist/instrumentation/pg/wrapper.js +441 -0
- package/dist/instrumentation/pg/wrapper.js.map +1 -0
- package/dist/instrumentation/replicate/wrapper.d.ts +13 -0
- package/dist/instrumentation/replicate/wrapper.js +61 -0
- package/dist/instrumentation/replicate/wrapper.js.map +1 -1
- package/dist/instrumentation/strands/processor.d.ts +6 -0
- package/dist/instrumentation/strands/processor.js +73 -3
- package/dist/instrumentation/strands/processor.js.map +1 -1
- package/dist/instrumentation/strands/utils.d.ts +2 -2
- package/dist/instrumentation/strands/utils.js +15 -2
- package/dist/instrumentation/strands/utils.js.map +1 -1
- package/dist/instrumentation/together/wrapper.d.ts +13 -0
- package/dist/instrumentation/together/wrapper.js +59 -1
- package/dist/instrumentation/together/wrapper.js.map +1 -1
- package/dist/instrumentation/transformers/index.d.ts +35 -0
- package/dist/instrumentation/transformers/index.js +119 -0
- package/dist/instrumentation/transformers/index.js.map +1 -0
- package/dist/instrumentation/transformers/wrapper.d.ts +49 -0
- package/dist/instrumentation/transformers/wrapper.js +472 -0
- package/dist/instrumentation/transformers/wrapper.js.map +1 -0
- package/dist/instrumentation/vercel-ai/wrapper.d.ts +13 -0
- package/dist/instrumentation/vercel-ai/wrapper.js +106 -1
- package/dist/instrumentation/vercel-ai/wrapper.js.map +1 -1
- package/dist/instrumentation/vertexai/index.d.ts +11 -0
- package/dist/instrumentation/vertexai/index.js +70 -0
- package/dist/instrumentation/vertexai/index.js.map +1 -0
- package/dist/instrumentation/vertexai/wrapper.d.ts +67 -0
- package/dist/instrumentation/vertexai/wrapper.js +529 -0
- package/dist/instrumentation/vertexai/wrapper.js.map +1 -0
- package/dist/instrumentation/vllm/index.d.ts +13 -0
- package/dist/instrumentation/vllm/index.js +67 -0
- package/dist/instrumentation/vllm/index.js.map +1 -0
- package/dist/instrumentation/vllm/wrapper.d.ts +60 -0
- package/dist/instrumentation/vllm/wrapper.js +482 -0
- package/dist/instrumentation/vllm/wrapper.js.map +1 -0
- package/dist/llm/index.d.ts +9 -2
- package/dist/llm/index.js.map +1 -1
- package/dist/manual-trace.d.ts +40 -0
- package/dist/manual-trace.js +103 -0
- package/dist/manual-trace.js.map +1 -0
- package/dist/otel/metrics.d.ts +11 -0
- package/dist/otel/metrics.js +48 -0
- package/dist/otel/metrics.js.map +1 -1
- package/dist/register.d.ts +4 -0
- package/dist/register.js +52 -0
- package/dist/register.js.map +1 -0
- package/dist/score/__tests__/score.test.d.ts +1 -0
- package/dist/score/__tests__/score.test.js +143 -0
- package/dist/score/__tests__/score.test.js.map +1 -0
- package/dist/score/index.d.ts +2 -0
- package/dist/score/index.js +6 -0
- package/dist/score/index.js.map +1 -0
- package/dist/score/score.d.ts +15 -0
- package/dist/score/score.js +135 -0
- package/dist/score/score.js.map +1 -0
- package/dist/semantic-convention.d.ts +273 -0
- package/dist/semantic-convention.js +317 -0
- package/dist/semantic-convention.js.map +1 -1
- package/dist/types.d.ts +15 -1
- package/package.json +18 -1
- package/dist/evals/__tests__/anthropic.test.js +0 -9
- package/dist/evals/__tests__/anthropic.test.js.map +0 -1
- package/dist/evals/__tests__/base.test.js +0 -37
- package/dist/evals/__tests__/base.test.js.map +0 -1
- package/dist/evals/__tests__/core.test.js +0 -33
- package/dist/evals/__tests__/core.test.js.map +0 -1
- package/dist/evals/__tests__/metrics.test.js +0 -59
- package/dist/evals/__tests__/metrics.test.js.map +0 -1
- package/dist/evals/__tests__/openai.test.js +0 -9
- package/dist/evals/__tests__/openai.test.js.map +0 -1
- package/dist/evals/__tests__/providers.test.js +0 -14
- package/dist/evals/__tests__/providers.test.js.map +0 -1
- package/dist/evals/__tests__/utils.test.js +0 -46
- package/dist/evals/__tests__/utils.test.js.map +0 -1
- package/dist/evals/all.d.ts +0 -4
- package/dist/evals/all.js +0 -35
- package/dist/evals/all.js.map +0 -1
- package/dist/evals/base.d.ts +0 -15
- package/dist/evals/base.js +0 -51
- package/dist/evals/base.js.map +0 -1
- package/dist/evals/bias.d.ts +0 -4
- package/dist/evals/bias.js +0 -35
- package/dist/evals/bias.js.map +0 -1
- package/dist/evals/hallucination.d.ts +0 -4
- package/dist/evals/hallucination.js +0 -32
- package/dist/evals/hallucination.js.map +0 -1
- package/dist/evals/llm/anthropic.d.ts +0 -5
- package/dist/evals/llm/anthropic.js +0 -42
- package/dist/evals/llm/anthropic.js.map +0 -1
- package/dist/evals/llm/openai.d.ts +0 -6
- package/dist/evals/llm/openai.js +0 -28
- package/dist/evals/llm/openai.js.map +0 -1
- package/dist/evals/llm/providers.d.ts +0 -7
- package/dist/evals/llm/providers.js +0 -10
- package/dist/evals/llm/providers.js.map +0 -1
- package/dist/evals/metrics.d.ts +0 -9
- package/dist/evals/metrics.js +0 -38
- package/dist/evals/metrics.js.map +0 -1
- package/dist/evals/toxicity.d.ts +0 -4
- package/dist/evals/toxicity.js +0 -33
- package/dist/evals/toxicity.js.map +0 -1
- package/dist/evals/utils.d.ts +0 -4
- package/dist/evals/utils.js +0 -39
- package/dist/evals/utils.js.map +0 -1
- package/dist/guard/__tests__/gaurd.test.js +0 -136
- package/dist/guard/__tests__/gaurd.test.js.map +0 -1
- package/dist/guard/__tests__/utils.test.js +0 -64
- package/dist/guard/__tests__/utils.test.js.map +0 -1
- package/dist/guard/all.d.ts +0 -8
- package/dist/guard/all.js +0 -28
- package/dist/guard/all.js.map +0 -1
- package/dist/guard/types.d.ts +0 -26
- package/dist/guard/types.js +0 -4
- package/dist/guard/types.js.map +0 -1
- package/dist/guard/utils.d.ts +0 -13
- package/dist/guard/utils.js +0 -79
- package/dist/guard/utils.js.map +0 -1
- /package/dist/{evals/__tests__/anthropic.test.d.ts → __tests__/manual-trace.test.d.ts} +0 -0
- /package/dist/{evals/__tests__/metrics.test.d.ts → __tests__/register.test.d.ts} +0 -0
- /package/dist/evals/__tests__/{base.test.d.ts → offline.test.d.ts} +0 -0
- /package/dist/{evals/__tests__/core.test.d.ts → guard/__tests__/integration.test.d.ts} +0 -0
- /package/dist/{evals/__tests__/openai.test.d.ts → guard/__tests__/pii.test.d.ts} +0 -0
- /package/dist/{evals/__tests__/providers.test.d.ts → guard/__tests__/pipeline.test.d.ts} +0 -0
- /package/dist/{evals/__tests__/utils.test.d.ts → guard/__tests__/prompt-injection.test.d.ts} +0 -0
- /package/dist/{guard/__tests__/gaurd.test.d.ts → instrumentation/__tests__/assemblyai-wrapper.test.d.ts} +0 -0
- /package/dist/{guard/__tests__/utils.test.d.ts → instrumentation/__tests__/browser-use-wrapper.test.d.ts} +0 -0
package/dist/helpers.js
CHANGED
|
@@ -3,10 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.OTEL_ASSISTANT_ROLE = exports.LANGCHAIN_ROLE_MAP = void 0;
|
|
6
7
|
exports.isFrameworkLlmActive = isFrameworkLlmActive;
|
|
7
8
|
exports.runWithFrameworkLlm = runWithFrameworkLlm;
|
|
8
9
|
exports.setFrameworkLlmActive = setFrameworkLlmActive;
|
|
9
10
|
exports.resetFrameworkLlmActive = resetFrameworkLlmActive;
|
|
11
|
+
exports.getCurrentAgentVersion = getCurrentAgentVersion;
|
|
12
|
+
exports.setAgentVersion = setAgentVersion;
|
|
13
|
+
exports.resetAgentVersion = resetAgentVersion;
|
|
14
|
+
exports.runWithAgentVersion = runWithAgentVersion;
|
|
10
15
|
exports.isLangGraphActive = isLangGraphActive;
|
|
11
16
|
exports.runWithLangGraph = runWithLangGraph;
|
|
12
17
|
exports.isCreateAgentActive = isCreateAgentActive;
|
|
@@ -17,11 +22,13 @@ exports.getFrameworkParentContext = getFrameworkParentContext;
|
|
|
17
22
|
exports.setFrameworkParentContext = setFrameworkParentContext;
|
|
18
23
|
exports.clearFrameworkParentContext = clearFrameworkParentContext;
|
|
19
24
|
exports.getServerAddressForProvider = getServerAddressForProvider;
|
|
25
|
+
exports.mapLangChainRole = mapLangChainRole;
|
|
20
26
|
exports.applyCustomSpanAttributes = applyCustomSpanAttributes;
|
|
21
27
|
exports.getMergedCustomAttributes = getMergedCustomAttributes;
|
|
22
28
|
exports.injectAdditionalAttributes = injectAdditionalAttributes;
|
|
23
29
|
exports.usingAttributes = usingAttributes;
|
|
24
30
|
const js_tiktoken_1 = require("js-tiktoken");
|
|
31
|
+
const crypto_1 = require("crypto");
|
|
25
32
|
const api_1 = require("@opentelemetry/api");
|
|
26
33
|
const api_logs_1 = require("@opentelemetry/api-logs");
|
|
27
34
|
const async_hooks_1 = require("async_hooks");
|
|
@@ -69,6 +76,66 @@ function setFrameworkLlmActive() {
|
|
|
69
76
|
function resetFrameworkLlmActive() {
|
|
70
77
|
_frameworkLlmActive.enterWith(false);
|
|
71
78
|
}
|
|
79
|
+
// ---------------------------------------------------------------------------
|
|
80
|
+
// User-supplied agent version label (mirrors Python's _current_agent_version)
|
|
81
|
+
// ---------------------------------------------------------------------------
|
|
82
|
+
const _currentAgentVersion = new async_hooks_1.AsyncLocalStorage();
|
|
83
|
+
/**
|
|
84
|
+
* Returns the user-supplied agent version label set via
|
|
85
|
+
* `OpenLit.setAgentVersion()` / `runWithAgentVersion()`, if any.
|
|
86
|
+
*
|
|
87
|
+
* Provider wrappers stamp this on `gen_ai.agent.version` so the server-side
|
|
88
|
+
* materializer can group traces by the user's preferred label in addition to
|
|
89
|
+
* the auto-computed `openlit.agent.version_hash` fingerprint.
|
|
90
|
+
*/
|
|
91
|
+
function getCurrentAgentVersion() {
|
|
92
|
+
return _currentAgentVersion.getStore();
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Set the agent version label for the current execution context.
|
|
96
|
+
*
|
|
97
|
+
* IMPORTANT: this uses `AsyncLocalStorage.enterWith` which permanently
|
|
98
|
+
* mutates the current async resource. Sequential requests handled on the
|
|
99
|
+
* same Node worker (or reused thread/connection) will inherit the label
|
|
100
|
+
* until something overwrites or clears it. **Always pair with a matching
|
|
101
|
+
* `resetAgentVersion()` in a `finally` block**, or prefer
|
|
102
|
+
* `runWithAgentVersion(label, fn)` which guarantees scoped cleanup.
|
|
103
|
+
*
|
|
104
|
+
* @example
|
|
105
|
+
* try {
|
|
106
|
+
* setAgentVersion('hotfix-2026-05-12');
|
|
107
|
+
* await runAgent();
|
|
108
|
+
* } finally {
|
|
109
|
+
* resetAgentVersion();
|
|
110
|
+
* }
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* // Preferred — automatic scope cleanup, no leak risk:
|
|
114
|
+
* await runWithAgentVersion('hotfix-2026-05-12', () => runAgent());
|
|
115
|
+
*/
|
|
116
|
+
function setAgentVersion(version) {
|
|
117
|
+
if (typeof version !== 'string' || version.length === 0)
|
|
118
|
+
return;
|
|
119
|
+
_currentAgentVersion.enterWith(version);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Clear the agent version label set by `setAgentVersion()`. No-op if no
|
|
123
|
+
* label is active. See the `setAgentVersion` docstring for the leak
|
|
124
|
+
* scenario this guards against.
|
|
125
|
+
*/
|
|
126
|
+
function resetAgentVersion() {
|
|
127
|
+
_currentAgentVersion.enterWith(undefined);
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Run `fn` with the given agent version label bound to the current async
|
|
131
|
+
* scope. Mirrors `openlit.agent_version_context()` in Python and is the
|
|
132
|
+
* recommended way to attach a label — the store is automatically restored
|
|
133
|
+
* when `fn` resolves so there is no risk of leaking the label across
|
|
134
|
+
* subsequent requests.
|
|
135
|
+
*/
|
|
136
|
+
function runWithAgentVersion(version, fn) {
|
|
137
|
+
return _currentAgentVersion.run(version, fn);
|
|
138
|
+
}
|
|
72
139
|
const _langGraphActive = new async_hooks_1.AsyncLocalStorage();
|
|
73
140
|
/**
|
|
74
141
|
* Returns true when a LangGraph wrapper is controlling execution.
|
|
@@ -138,6 +205,8 @@ const PROVIDER_DEFAULT_ENDPOINTS = {
|
|
|
138
205
|
'gcp.vertex_ai': ['aiplatform.googleapis.com', 443],
|
|
139
206
|
mistral_ai: ['api.mistral.ai', 443],
|
|
140
207
|
groq: ['api.groq.com', 443],
|
|
208
|
+
ai21: ['api.ai21.com', 443],
|
|
209
|
+
digitalocean: ['inference.do-ai.run', 443],
|
|
141
210
|
together: ['api.together.xyz', 443],
|
|
142
211
|
fireworks: ['api.fireworks.ai', 443],
|
|
143
212
|
perplexity: ['api.perplexity.ai', 443],
|
|
@@ -156,6 +225,22 @@ const PROVIDER_DEFAULT_ENDPOINTS = {
|
|
|
156
225
|
function getServerAddressForProvider(provider) {
|
|
157
226
|
return PROVIDER_DEFAULT_ENDPOINTS[provider] || ['', 0];
|
|
158
227
|
}
|
|
228
|
+
/** LangChain/LangGraph message type → OTel GenAI role (mirrors Python LANGCHAIN_ROLE_MAPPING). */
|
|
229
|
+
exports.LANGCHAIN_ROLE_MAP = {
|
|
230
|
+
system: 'system',
|
|
231
|
+
human: 'user',
|
|
232
|
+
ai: 'assistant',
|
|
233
|
+
tool: 'tool',
|
|
234
|
+
function: 'tool',
|
|
235
|
+
};
|
|
236
|
+
exports.OTEL_ASSISTANT_ROLE = exports.LANGCHAIN_ROLE_MAP.ai;
|
|
237
|
+
/** Map a raw LangChain message type/role to the OTel GenAI convention value. */
|
|
238
|
+
function mapLangChainRole(rawRole) {
|
|
239
|
+
if (!rawRole) {
|
|
240
|
+
return exports.OTEL_ASSISTANT_ROLE;
|
|
241
|
+
}
|
|
242
|
+
return exports.LANGCHAIN_ROLE_MAP[rawRole] ?? rawRole;
|
|
243
|
+
}
|
|
159
244
|
/**
|
|
160
245
|
* Apply global (from init) and context-scoped (from usingAttributes /
|
|
161
246
|
* injectAdditionalAttributes) custom attributes to a span.
|
|
@@ -227,7 +312,25 @@ class OpenLitHelper {
|
|
|
227
312
|
const encoding = (0, js_tiktoken_1.encodingForModel)('gpt2');
|
|
228
313
|
return encoding.encode(text).length;
|
|
229
314
|
}
|
|
230
|
-
|
|
315
|
+
/**
|
|
316
|
+
* Compute chat completion cost, optionally accounting for prompt-cache tokens.
|
|
317
|
+
*
|
|
318
|
+
* When the model's pricing entry defines `cacheReadPrice` / `cacheCreationPrice`,
|
|
319
|
+
* the matching cache tokens are billed at those rates instead of the regular
|
|
320
|
+
* prompt price.
|
|
321
|
+
*
|
|
322
|
+
* Token accounting differs across providers:
|
|
323
|
+
* - Anthropic's native API reports `promptTokens` exclusive of cache tokens,
|
|
324
|
+
* so cache tokens are added on top (keep `promptTokensIncludeCache` false).
|
|
325
|
+
* - OpenAI / LangChain report `promptTokens` inclusive of cache read tokens,
|
|
326
|
+
* so pass `promptTokensIncludeCache: true` to subtract the re-priced cache
|
|
327
|
+
* tokens from the prompt base and avoid billing them twice.
|
|
328
|
+
*
|
|
329
|
+
* Cache tokens are only re-priced (and, when inclusive, only subtracted) when a
|
|
330
|
+
* dedicated cache price exists, so the result is identical to the legacy
|
|
331
|
+
* behaviour for any model without cache pricing configured.
|
|
332
|
+
*/
|
|
333
|
+
static getChatModelCost(model, pricingInfo, promptTokens, completionTokens, cacheReadTokens = 0, cacheCreationTokens = 0, promptTokensIncludeCache = false) {
|
|
231
334
|
try {
|
|
232
335
|
const chatPricing = pricingInfo?.chat;
|
|
233
336
|
if (!chatPricing)
|
|
@@ -238,8 +341,29 @@ class OpenLitHelper {
|
|
|
238
341
|
}
|
|
239
342
|
if (modelPricing == null)
|
|
240
343
|
return 0;
|
|
241
|
-
const
|
|
242
|
-
|
|
344
|
+
const cacheRead = cacheReadTokens || 0;
|
|
345
|
+
const cacheCreation = cacheCreationTokens || 0;
|
|
346
|
+
let billablePromptTokens = promptTokens;
|
|
347
|
+
let cacheCost = 0;
|
|
348
|
+
if (modelPricing.cacheReadPrice != null) {
|
|
349
|
+
cacheCost += (cacheRead / OpenLitHelper.PROMPT_TOKEN_FACTOR) * modelPricing.cacheReadPrice;
|
|
350
|
+
if (promptTokensIncludeCache) {
|
|
351
|
+
billablePromptTokens -= cacheRead;
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
if (modelPricing.cacheCreationPrice != null) {
|
|
355
|
+
cacheCost +=
|
|
356
|
+
(cacheCreation / OpenLitHelper.PROMPT_TOKEN_FACTOR) * modelPricing.cacheCreationPrice;
|
|
357
|
+
if (promptTokensIncludeCache) {
|
|
358
|
+
billablePromptTokens -= cacheCreation;
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
if (billablePromptTokens < 0) {
|
|
362
|
+
billablePromptTokens = 0;
|
|
363
|
+
}
|
|
364
|
+
const cost = (billablePromptTokens / OpenLitHelper.PROMPT_TOKEN_FACTOR) * modelPricing.promptPrice +
|
|
365
|
+
(completionTokens / OpenLitHelper.PROMPT_TOKEN_FACTOR) * modelPricing.completionPrice +
|
|
366
|
+
cacheCost;
|
|
243
367
|
return isNaN(cost) ? 0 : cost;
|
|
244
368
|
}
|
|
245
369
|
catch {
|
|
@@ -274,9 +398,18 @@ class OpenLitHelper {
|
|
|
274
398
|
return 0;
|
|
275
399
|
}
|
|
276
400
|
}
|
|
277
|
-
static getAudioModelCost(model, pricingInfo, prompt) {
|
|
401
|
+
static getAudioModelCost(model, pricingInfo, prompt, duration) {
|
|
278
402
|
try {
|
|
279
|
-
const
|
|
403
|
+
const rate = pricingInfo?.audio?.[model];
|
|
404
|
+
if (typeof rate !== 'number') {
|
|
405
|
+
return 0;
|
|
406
|
+
}
|
|
407
|
+
if (prompt) {
|
|
408
|
+
const cost = (prompt.length / OpenLitHelper.PROMPT_TOKEN_FACTOR) * rate;
|
|
409
|
+
return isNaN(cost) ? 0 : cost;
|
|
410
|
+
}
|
|
411
|
+
const durationSeconds = typeof duration === 'number' && Number.isFinite(duration) ? duration : 0;
|
|
412
|
+
const cost = durationSeconds * rate;
|
|
280
413
|
return isNaN(cost) ? 0 : cost;
|
|
281
414
|
}
|
|
282
415
|
catch (error) {
|
|
@@ -396,6 +529,281 @@ class OpenLitHelper {
|
|
|
396
529
|
return '[]';
|
|
397
530
|
}
|
|
398
531
|
}
|
|
532
|
+
/**
|
|
533
|
+
* Extract system message(s) from a chat-completions messages array.
|
|
534
|
+
* Returns an OTel ``gen_ai.system_instructions`` payload
|
|
535
|
+
* (``[{"type": "text", "content": "..."}]``) JSON-encoded as a string,
|
|
536
|
+
* or ``undefined`` when no system message is present.
|
|
537
|
+
*
|
|
538
|
+
* Mirrors Python's ``build_system_instructions_from_messages``.
|
|
539
|
+
*/
|
|
540
|
+
static buildSystemInstructionsFromMessages(messages) {
|
|
541
|
+
if (!Array.isArray(messages) || messages.length === 0)
|
|
542
|
+
return undefined;
|
|
543
|
+
try {
|
|
544
|
+
const instructions = [];
|
|
545
|
+
for (const msg of messages) {
|
|
546
|
+
if (!msg || msg.role !== 'system')
|
|
547
|
+
continue;
|
|
548
|
+
const content = msg.content;
|
|
549
|
+
if (Array.isArray(content)) {
|
|
550
|
+
for (const part of content) {
|
|
551
|
+
if (part && part.type === 'text' && part.text) {
|
|
552
|
+
instructions.push({ type: 'text', content: String(part.text) });
|
|
553
|
+
}
|
|
554
|
+
else if (typeof part === 'string' && part) {
|
|
555
|
+
instructions.push({ type: 'text', content: part });
|
|
556
|
+
}
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
else if (content) {
|
|
560
|
+
instructions.push({ type: 'text', content: String(content) });
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
if (instructions.length === 0)
|
|
564
|
+
return undefined;
|
|
565
|
+
return JSON.stringify(instructions);
|
|
566
|
+
}
|
|
567
|
+
catch {
|
|
568
|
+
return undefined;
|
|
569
|
+
}
|
|
570
|
+
}
|
|
571
|
+
/**
|
|
572
|
+
* Normalize a request ``tools`` array into the OTel
|
|
573
|
+
* ``gen_ai.tool.definitions`` schema and return it as a JSON string,
|
|
574
|
+
* or ``undefined`` when there is nothing usable.
|
|
575
|
+
*
|
|
576
|
+
* Accepts both the OpenAI-style schema
|
|
577
|
+
* (``{"type": "function", "function": {...}}``) and the flat schema
|
|
578
|
+
* (``{"name": ..., "description": ..., "parameters": ...}``), and
|
|
579
|
+
* Anthropic's ``input_schema`` synonym for ``parameters``.
|
|
580
|
+
*
|
|
581
|
+
* Mirrors Python's ``build_tool_definitions``.
|
|
582
|
+
*/
|
|
583
|
+
static buildToolDefinitions(tools) {
|
|
584
|
+
if (!tools)
|
|
585
|
+
return undefined;
|
|
586
|
+
const list = Array.isArray(tools) ? tools : [];
|
|
587
|
+
if (list.length === 0)
|
|
588
|
+
return undefined;
|
|
589
|
+
try {
|
|
590
|
+
const definitions = [];
|
|
591
|
+
for (const tool of list) {
|
|
592
|
+
if (!tool || typeof tool !== 'object')
|
|
593
|
+
continue;
|
|
594
|
+
try {
|
|
595
|
+
if (tool.type === 'function' && tool.function && typeof tool.function === 'object') {
|
|
596
|
+
const fn = tool.function;
|
|
597
|
+
const name = fn.name ?? '';
|
|
598
|
+
if (!name)
|
|
599
|
+
continue;
|
|
600
|
+
definitions.push({
|
|
601
|
+
type: 'function',
|
|
602
|
+
name,
|
|
603
|
+
description: fn.description ?? '',
|
|
604
|
+
parameters: fn.parameters ?? {},
|
|
605
|
+
});
|
|
606
|
+
continue;
|
|
607
|
+
}
|
|
608
|
+
if (tool.name) {
|
|
609
|
+
definitions.push({
|
|
610
|
+
type: 'function',
|
|
611
|
+
name: tool.name,
|
|
612
|
+
description: tool.description ?? '',
|
|
613
|
+
parameters: tool.parameters ?? tool.input_schema ?? {},
|
|
614
|
+
});
|
|
615
|
+
}
|
|
616
|
+
}
|
|
617
|
+
catch {
|
|
618
|
+
continue;
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
if (definitions.length === 0)
|
|
622
|
+
return undefined;
|
|
623
|
+
return JSON.stringify(definitions);
|
|
624
|
+
}
|
|
625
|
+
catch {
|
|
626
|
+
return undefined;
|
|
627
|
+
}
|
|
628
|
+
}
|
|
629
|
+
/**
|
|
630
|
+
* Compute the canonical agent-version fingerprint.
|
|
631
|
+
*
|
|
632
|
+
* Mirrors `fingerprint()` in
|
|
633
|
+
* `src/client/src/lib/platform/agents/snapshot.ts` so that the SDK stamps
|
|
634
|
+
* `openlit.agent.version_hash` with the same value the server-side
|
|
635
|
+
* materializer derives from `otel_traces`. The hash covers the parts that
|
|
636
|
+
* meaningfully change agent behavior: system prompt, tool set (name +
|
|
637
|
+
* schema), primary model, and sampling config.
|
|
638
|
+
*
|
|
639
|
+
* Accepts the same shapes used by the SDK chat finalizers:
|
|
640
|
+
* - `systemInstructions`: the JSON string emitted on
|
|
641
|
+
* `gen_ai.system_instructions`, the original list of `{type,content}`
|
|
642
|
+
* parts, or a plain string.
|
|
643
|
+
* - `toolDefinitions`: the JSON string emitted on
|
|
644
|
+
* `gen_ai.tool.definitions`, or the original list of
|
|
645
|
+
* `{type, name, description, parameters}` items.
|
|
646
|
+
*/
|
|
647
|
+
static computeAgentVersionHash(args) {
|
|
648
|
+
// This runs on every chat/llm span on the hot path. The hashing code
|
|
649
|
+
// touches user-supplied payloads (tool schemas, runtime configs) and a
|
|
650
|
+
// single odd value historically blew up the whole span. Return '' on
|
|
651
|
+
// any failure so the wrapper falls back to time-window matching and the
|
|
652
|
+
// span still gets exported. Mirrors the Python SDK's defensive
|
|
653
|
+
// try/except in `compute_agent_version_hash`.
|
|
654
|
+
// Process-local LRU memoization. Provider wrappers re-invoke this with
|
|
655
|
+
// identical inputs on every LLM request for the same agent; the cache
|
|
656
|
+
// key uses cheap string coercion so building it is far cheaper than the
|
|
657
|
+
// canonical JSON serialization + SHA1 work we'd otherwise repeat.
|
|
658
|
+
const cacheKey = OpenLitHelper._buildAgentVersionCacheKey(args);
|
|
659
|
+
if (cacheKey) {
|
|
660
|
+
const cached = OpenLitHelper._versionHashCache.get(cacheKey);
|
|
661
|
+
if (cached !== undefined) {
|
|
662
|
+
// Re-insert to bump recency in JS Map (insertion-order eviction).
|
|
663
|
+
OpenLitHelper._versionHashCache.delete(cacheKey);
|
|
664
|
+
OpenLitHelper._versionHashCache.set(cacheKey, cached);
|
|
665
|
+
return cached;
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
try {
|
|
669
|
+
const normalizeWhitespace = (s) => (s || '').replace(/\s+/g, ' ').trim();
|
|
670
|
+
const canonical = (value) => {
|
|
671
|
+
if (Array.isArray(value))
|
|
672
|
+
return value.map(canonical);
|
|
673
|
+
if (value && typeof value === 'object') {
|
|
674
|
+
const sorted = {};
|
|
675
|
+
for (const k of Object.keys(value).sort()) {
|
|
676
|
+
sorted[k] = canonical(value[k]);
|
|
677
|
+
}
|
|
678
|
+
return sorted;
|
|
679
|
+
}
|
|
680
|
+
return value;
|
|
681
|
+
};
|
|
682
|
+
const roundTo3 = (v) => {
|
|
683
|
+
if (v === undefined || v === null)
|
|
684
|
+
return null;
|
|
685
|
+
const n = typeof v === 'number' ? v : Number(v);
|
|
686
|
+
if (!Number.isFinite(n))
|
|
687
|
+
return null;
|
|
688
|
+
return Math.round(n * 1000) / 1000;
|
|
689
|
+
};
|
|
690
|
+
const coerceMaxTokens = (v) => {
|
|
691
|
+
if (v === undefined || v === null)
|
|
692
|
+
return null;
|
|
693
|
+
const n = typeof v === 'number' ? v : Number(v);
|
|
694
|
+
if (!Number.isFinite(n))
|
|
695
|
+
return null;
|
|
696
|
+
return Math.trunc(n);
|
|
697
|
+
};
|
|
698
|
+
const sp = (() => {
|
|
699
|
+
const raw = args.systemInstructions;
|
|
700
|
+
if (raw == null)
|
|
701
|
+
return '';
|
|
702
|
+
if (typeof raw === 'string')
|
|
703
|
+
return raw;
|
|
704
|
+
try {
|
|
705
|
+
return JSON.stringify(raw);
|
|
706
|
+
}
|
|
707
|
+
catch {
|
|
708
|
+
return '';
|
|
709
|
+
}
|
|
710
|
+
})();
|
|
711
|
+
const parsedTools = (() => {
|
|
712
|
+
const raw = args.toolDefinitions;
|
|
713
|
+
if (raw == null)
|
|
714
|
+
return [];
|
|
715
|
+
if (typeof raw === 'string') {
|
|
716
|
+
try {
|
|
717
|
+
const parsed = JSON.parse(raw);
|
|
718
|
+
return Array.isArray(parsed) ? parsed : [];
|
|
719
|
+
}
|
|
720
|
+
catch {
|
|
721
|
+
return [];
|
|
722
|
+
}
|
|
723
|
+
}
|
|
724
|
+
return Array.isArray(raw) ? raw : [];
|
|
725
|
+
})();
|
|
726
|
+
const tools = parsedTools
|
|
727
|
+
.map((t) => {
|
|
728
|
+
if (!t || typeof t !== 'object')
|
|
729
|
+
return null;
|
|
730
|
+
const rec = t;
|
|
731
|
+
const name = typeof rec.name === 'string' ? rec.name : '';
|
|
732
|
+
if (!name)
|
|
733
|
+
return null;
|
|
734
|
+
const schema = rec.parameters !== undefined
|
|
735
|
+
? rec.parameters
|
|
736
|
+
: rec.input_schema !== undefined
|
|
737
|
+
? rec.input_schema
|
|
738
|
+
: rec.schema !== undefined
|
|
739
|
+
? rec.schema
|
|
740
|
+
: null;
|
|
741
|
+
return { n: name, s: canonical(schema) };
|
|
742
|
+
})
|
|
743
|
+
.filter((t) => t !== null)
|
|
744
|
+
// Byte-order (codepoint) sort to stay deterministic across locales
|
|
745
|
+
// and to match the Python SDK's default `tools.sort(key=lambda t: t["n"])`,
|
|
746
|
+
// which also sorts by Unicode codepoint. `localeCompare` is locale-
|
|
747
|
+
// dependent and would diverge from the server fingerprint for
|
|
748
|
+
// non-ASCII tool names.
|
|
749
|
+
.sort((a, b) => (a.n < b.n ? -1 : a.n > b.n ? 1 : 0));
|
|
750
|
+
const providersSorted = [...(args.providers || [])].filter(Boolean).sort();
|
|
751
|
+
const rc = args.runtimeConfig || {};
|
|
752
|
+
const payload = canonical({
|
|
753
|
+
sp: normalizeWhitespace(sp),
|
|
754
|
+
tools,
|
|
755
|
+
model: args.primaryModel || '',
|
|
756
|
+
cfg: {
|
|
757
|
+
temperature: roundTo3(rc.temperature ?? null),
|
|
758
|
+
top_p: roundTo3(rc.top_p ?? null),
|
|
759
|
+
max_tokens: coerceMaxTokens(rc.max_tokens ?? null),
|
|
760
|
+
provider: rc.provider || providersSorted[0] || '',
|
|
761
|
+
},
|
|
762
|
+
});
|
|
763
|
+
const result = (0, crypto_1.createHash)('sha1')
|
|
764
|
+
.update(JSON.stringify(payload))
|
|
765
|
+
.digest('hex')
|
|
766
|
+
.slice(0, 16);
|
|
767
|
+
if (cacheKey) {
|
|
768
|
+
OpenLitHelper._versionHashCache.set(cacheKey, result);
|
|
769
|
+
if (OpenLitHelper._versionHashCache.size > OpenLitHelper._VERSION_HASH_CACHE_MAX) {
|
|
770
|
+
const firstKey = OpenLitHelper._versionHashCache.keys().next().value;
|
|
771
|
+
if (firstKey !== undefined)
|
|
772
|
+
OpenLitHelper._versionHashCache.delete(firstKey);
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
return result;
|
|
776
|
+
}
|
|
777
|
+
catch {
|
|
778
|
+
return '';
|
|
779
|
+
}
|
|
780
|
+
}
|
|
781
|
+
/**
|
|
782
|
+
* Build a stable, cheap cache key for the version-hash memoization. Uses
|
|
783
|
+
* `JSON.stringify` of inputs (orders-of-magnitude cheaper than the full
|
|
784
|
+
* canonical pass we want to skip on a cache hit). Returns `null` if
|
|
785
|
+
* inputs can't be stringified (circular refs etc.) — the caller falls
|
|
786
|
+
* back to uncached computation.
|
|
787
|
+
*/
|
|
788
|
+
static _buildAgentVersionCacheKey(args) {
|
|
789
|
+
try {
|
|
790
|
+
const si = typeof args.systemInstructions === 'string' || args.systemInstructions == null
|
|
791
|
+
? args.systemInstructions ?? ''
|
|
792
|
+
: JSON.stringify(args.systemInstructions);
|
|
793
|
+
const td = typeof args.toolDefinitions === 'string' || args.toolDefinitions == null
|
|
794
|
+
? args.toolDefinitions ?? ''
|
|
795
|
+
: JSON.stringify(args.toolDefinitions);
|
|
796
|
+
const rc = args.runtimeConfig ? JSON.stringify(args.runtimeConfig) : '';
|
|
797
|
+
const prov = [...(args.providers || [])]
|
|
798
|
+
.filter(Boolean)
|
|
799
|
+
.sort()
|
|
800
|
+
.join(',');
|
|
801
|
+
return `${si}|${td}|${args.primaryModel || ''}|${rc}|${prov}`;
|
|
802
|
+
}
|
|
803
|
+
catch {
|
|
804
|
+
return null;
|
|
805
|
+
}
|
|
806
|
+
}
|
|
399
807
|
/**
|
|
400
808
|
* Build OTel-spec output messages JSON string from provider response.
|
|
401
809
|
* Format: [{"role": "assistant", "parts": [{"type": "text", "content": "..."}], "finish_reason": "stop"}]
|
|
@@ -484,5 +892,7 @@ class OpenLitHelper {
|
|
|
484
892
|
}
|
|
485
893
|
}
|
|
486
894
|
OpenLitHelper.PROMPT_TOKEN_FACTOR = 1000;
|
|
895
|
+
OpenLitHelper._VERSION_HASH_CACHE_MAX = 256;
|
|
896
|
+
OpenLitHelper._versionHashCache = new Map();
|
|
487
897
|
exports.default = OpenLitHelper;
|
|
488
898
|
//# sourceMappingURL=helpers.js.map
|
package/dist/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
|