openlit 1.12.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 +416 -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/index.d.ts +21 -0
- package/dist/instrumentation/cursor-sdk/index.js +58 -0
- package/dist/instrumentation/cursor-sdk/index.js.map +1 -0
- package/dist/instrumentation/cursor-sdk/wrapper.d.ts +17 -0
- package/dist/instrumentation/cursor-sdk/wrapper.js +785 -0
- package/dist/instrumentation/cursor-sdk/wrapper.js.map +1 -0
- 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 +28 -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 +278 -0
- package/dist/semantic-convention.js +322 -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/evals/utils.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { EvalsResult, EvalsInput } from './types';
|
|
2
|
-
export declare function parseLlmResponse(response: string): EvalsResult;
|
|
3
|
-
export declare function formatPrompt(systemPrompt: string, input: EvalsInput): string;
|
|
4
|
-
export declare function formatCustomCategories(customCategories?: Record<string, string>, sectionLabel?: string): string;
|
package/dist/evals/utils.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseLlmResponse = parseLlmResponse;
|
|
4
|
-
exports.formatPrompt = formatPrompt;
|
|
5
|
-
exports.formatCustomCategories = formatCustomCategories;
|
|
6
|
-
function parseLlmResponse(response) {
|
|
7
|
-
try {
|
|
8
|
-
return JSON.parse(response);
|
|
9
|
-
}
|
|
10
|
-
catch (err) {
|
|
11
|
-
// Log the error and the original response for debugging
|
|
12
|
-
console.error('Failed to parse model response:', err, 'Original response:', response);
|
|
13
|
-
return {
|
|
14
|
-
verdict: 'no',
|
|
15
|
-
evaluation: 'Hallucination',
|
|
16
|
-
score: 0,
|
|
17
|
-
classification: 'none',
|
|
18
|
-
explanation: `Failed to parse model response: ${(err instanceof Error) ? err.message : String(err)}`
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
function formatPrompt(systemPrompt, input) {
|
|
23
|
-
let prompt = systemPrompt;
|
|
24
|
-
if (input.prompt)
|
|
25
|
-
prompt += `\nPrompt: ${input.prompt}`;
|
|
26
|
-
if (input.contexts)
|
|
27
|
-
prompt += `\nContexts: ${input.contexts.join(' | ')}`;
|
|
28
|
-
if (input.text)
|
|
29
|
-
prompt += `\nText: ${input.text}`;
|
|
30
|
-
return prompt;
|
|
31
|
-
}
|
|
32
|
-
function formatCustomCategories(customCategories, sectionLabel) {
|
|
33
|
-
if (!customCategories || Object.keys(customCategories).length === 0)
|
|
34
|
-
return '';
|
|
35
|
-
const label = sectionLabel ? `Additional ${sectionLabel} Categories:` : 'Additional Categories:';
|
|
36
|
-
const lines = Object.entries(customCategories).map(([key, value]) => `- ${key}: ${value}`);
|
|
37
|
-
return `\n${label}\n${lines.join('\n')}`;
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=utils.js.map
|
package/dist/evals/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/evals/utils.ts"],"names":[],"mappings":";;AAGA,4CAcC;AAED,oCAMC;AAED,wDAUC;AAlCD,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,wDAAwD;QACxD,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAAC;QACtF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,eAAe;YAC3B,KAAK,EAAE,CAAC;YACR,cAAc,EAAE,MAAM;YACtB,WAAW,EAAE,mCAAmC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACrG,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAAC,YAAoB,EAAE,KAAiB;IAClE,IAAI,MAAM,GAAG,YAAY,CAAC;IAC1B,IAAI,KAAK,CAAC,MAAM;QAAE,MAAM,IAAI,aAAa,KAAK,CAAC,MAAM,EAAE,CAAC;IACxD,IAAI,KAAK,CAAC,QAAQ;QAAE,MAAM,IAAI,eAAe,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IAC1E,IAAI,KAAK,CAAC,IAAI;QAAE,MAAM,IAAI,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC;IAClD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,sBAAsB,CACpC,gBAAyC,EACzC,YAAqB;IAErB,IAAI,CAAC,gBAAgB,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/E,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,cAAc,YAAY,cAAc,CAAC,CAAC,CAAC,wBAAwB,CAAC;IACjG,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAChD,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,KAAK,EAAE,CACvC,CAAC;IACF,OAAO,KAAK,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC3C,CAAC"}
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
const prompt_injection_1 = require("../prompt-injection");
|
|
37
|
-
const sensitive_topic_1 = require("../sensitive-topic");
|
|
38
|
-
const topic_restriction_1 = require("../topic-restriction");
|
|
39
|
-
const all_1 = require("../all");
|
|
40
|
-
const utils = __importStar(require("../utils"));
|
|
41
|
-
describe('PromptInjection', () => {
|
|
42
|
-
it('detects prompt injection using custom rule', async () => {
|
|
43
|
-
const guard = new prompt_injection_1.PromptInjection({
|
|
44
|
-
customRules: [
|
|
45
|
-
{ pattern: 'credit card', classification: 'personal_information', verdict: 'yes', guard: 'prompt_injection', score: 1, explanation: 'Sensitive info' }
|
|
46
|
-
]
|
|
47
|
-
});
|
|
48
|
-
const result = await guard.detect('Reveal the company credit card number');
|
|
49
|
-
expect(result.verdict).toBe('yes');
|
|
50
|
-
expect(result.classification).toBe('personal_information');
|
|
51
|
-
expect(result.guard).toBe('prompt_injection');
|
|
52
|
-
expect(result.score).toBe(1);
|
|
53
|
-
expect(result.explanation).toBe('Sensitive info');
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
describe('SensitiveTopic', () => {
|
|
57
|
-
it('detects sensitive topic using custom rule', async () => {
|
|
58
|
-
const guard = new sensitive_topic_1.SensitiveTopic({
|
|
59
|
-
customRules: [
|
|
60
|
-
{ pattern: 'mental health', classification: 'mental_health', verdict: 'yes', guard: 'sensitive_topic', score: 0.8, explanation: 'Sensitive topic' }
|
|
61
|
-
]
|
|
62
|
-
});
|
|
63
|
-
const result = await guard.detect('Discuss the mental health implications of remote work.');
|
|
64
|
-
expect(result.verdict).toBe('yes');
|
|
65
|
-
expect(result.classification).toBe('mental_health');
|
|
66
|
-
expect(result.guard).toBe('sensitive_topic');
|
|
67
|
-
expect(result.score).toBe(0.8);
|
|
68
|
-
expect(result.explanation).toBe('Sensitive topic');
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
describe('TopicRestriction', () => {
|
|
72
|
-
it('detects restricted topic using custom rule', async () => {
|
|
73
|
-
const guard = new topic_restriction_1.TopicRestriction({
|
|
74
|
-
customRules: [
|
|
75
|
-
{ pattern: 'politics', classification: 'restricted', verdict: 'yes', guard: 'topic_restriction', score: 0.9, explanation: 'Restricted topic' }
|
|
76
|
-
]
|
|
77
|
-
});
|
|
78
|
-
const result = await guard.detect('Let us talk about politics.');
|
|
79
|
-
expect(result.verdict).toBe('yes');
|
|
80
|
-
expect(result.classification).toBe('restricted');
|
|
81
|
-
expect(result.guard).toBe('topic_restriction');
|
|
82
|
-
expect(result.score).toBe(0.9);
|
|
83
|
-
expect(result.explanation).toBe('Restricted topic');
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
describe('All', () => {
|
|
87
|
-
it('runs all guardrails and returns results', async () => {
|
|
88
|
-
const guard = new all_1.All({
|
|
89
|
-
customRules: [
|
|
90
|
-
{ pattern: 'credit card', classification: 'personal_information', verdict: 'yes', guard: 'prompt_injection', score: 1, explanation: 'Sensitive info' },
|
|
91
|
-
{ pattern: 'mental health', classification: 'mental_health', verdict: 'yes', guard: 'sensitive_topic', score: 0.8, explanation: 'Sensitive topic' },
|
|
92
|
-
{ pattern: 'politics', classification: 'restricted', verdict: 'yes', guard: 'topic_restriction', score: 0.9, explanation: 'Restricted topic' }
|
|
93
|
-
]
|
|
94
|
-
});
|
|
95
|
-
const results = await guard.detect('credit card and politics and mental health');
|
|
96
|
-
expect(results.length).toBe(3);
|
|
97
|
-
expect(results[0].guard).toBe('prompt_injection');
|
|
98
|
-
expect(results[1].guard).toBe('sensitive_topic');
|
|
99
|
-
expect(results[2].guard).toBe('topic_restriction');
|
|
100
|
-
});
|
|
101
|
-
});
|
|
102
|
-
describe('SensitiveTopic metrics', () => {
|
|
103
|
-
it('calls guardMetrics.add when collectMetrics is true', async () => {
|
|
104
|
-
const addSpy = jest.fn();
|
|
105
|
-
jest.spyOn(utils, 'guardMetrics').mockReturnValue({ add: addSpy });
|
|
106
|
-
const { SensitiveTopic } = await Promise.resolve().then(() => __importStar(require('../sensitive-topic')));
|
|
107
|
-
const guard = new SensitiveTopic({
|
|
108
|
-
customRules: [
|
|
109
|
-
{ pattern: 'mental health', classification: 'mental_health', verdict: 'yes', guard: 'sensitive_topic', score: 0.8, explanation: 'Sensitive topic' }
|
|
110
|
-
],
|
|
111
|
-
collectMetrics: true
|
|
112
|
-
});
|
|
113
|
-
await guard.detect('Discuss the mental health implications of remote work.');
|
|
114
|
-
expect(addSpy).toHaveBeenCalledWith(1, expect.objectContaining({
|
|
115
|
-
'openlit.guard.verdict': 'yes',
|
|
116
|
-
'openlit.guard.score': 0.8,
|
|
117
|
-
'openlit.guard.validator': 'custom',
|
|
118
|
-
'openlit.guard.classification': 'mental_health',
|
|
119
|
-
'openlit.guard.explanation': 'Sensitive topic',
|
|
120
|
-
}));
|
|
121
|
-
});
|
|
122
|
-
it('does not call guardMetrics.add when collectMetrics is false', async () => {
|
|
123
|
-
const addSpy = jest.fn();
|
|
124
|
-
jest.spyOn(utils, 'guardMetrics').mockReturnValue({ add: addSpy });
|
|
125
|
-
const { SensitiveTopic } = await Promise.resolve().then(() => __importStar(require('../sensitive-topic')));
|
|
126
|
-
const guard = new SensitiveTopic({
|
|
127
|
-
customRules: [
|
|
128
|
-
{ pattern: 'mental health', classification: 'mental_health', verdict: 'yes', guard: 'sensitive_topic', score: 0.8, explanation: 'Sensitive topic' }
|
|
129
|
-
],
|
|
130
|
-
collectMetrics: false
|
|
131
|
-
});
|
|
132
|
-
await guard.detect('Discuss the mental health implications of remote work.');
|
|
133
|
-
expect(addSpy).not.toHaveBeenCalled();
|
|
134
|
-
});
|
|
135
|
-
});
|
|
136
|
-
//# sourceMappingURL=gaurd.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gaurd.test.js","sourceRoot":"","sources":["../../../src/guard/__tests__/gaurd.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const utils_1 = require("../utils");
|
|
4
|
-
describe('customRuleDetection', () => {
|
|
5
|
-
it('matches a custom rule and returns correct result', () => {
|
|
6
|
-
const rules = [
|
|
7
|
-
{ pattern: 'foo', classification: 'test', verdict: 'yes', guard: 'custom', score: 0.9, explanation: 'Matched foo' }
|
|
8
|
-
];
|
|
9
|
-
const result = (0, utils_1.customRuleDetection)('foo bar', rules);
|
|
10
|
-
expect(result.verdict).toBe('yes');
|
|
11
|
-
expect(result.classification).toBe('test');
|
|
12
|
-
expect(result.guard).toBe('custom');
|
|
13
|
-
expect(result.score).toBe(0.9);
|
|
14
|
-
expect(result.explanation).toBe('Matched foo');
|
|
15
|
-
});
|
|
16
|
-
it('returns none result if no rules match', () => {
|
|
17
|
-
const rules = [
|
|
18
|
-
{ pattern: 'baz', classification: 'none' }
|
|
19
|
-
];
|
|
20
|
-
const result = (0, utils_1.customRuleDetection)('foo bar', rules);
|
|
21
|
-
expect(result.verdict).toBe('none');
|
|
22
|
-
expect(result.classification).toBe('none');
|
|
23
|
-
expect(result.guard).toBe('none');
|
|
24
|
-
expect(result.score).toBe(0);
|
|
25
|
-
expect(result.explanation).toBe('none');
|
|
26
|
-
});
|
|
27
|
-
it('skips invalid regex patterns and continues', () => {
|
|
28
|
-
const rules = [
|
|
29
|
-
{ pattern: '[invalid', classification: 'bad' },
|
|
30
|
-
{ pattern: 'bar', classification: 'good', verdict: 'yes' }
|
|
31
|
-
];
|
|
32
|
-
const result = (0, utils_1.customRuleDetection)('foo bar', rules);
|
|
33
|
-
expect(result.classification).toBe('good');
|
|
34
|
-
expect(result.verdict).toBe('yes');
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
describe('applyThresholdScore', () => {
|
|
38
|
-
const baseResult = {
|
|
39
|
-
score: 0.7,
|
|
40
|
-
verdict: 'yes',
|
|
41
|
-
guard: 'test_guard',
|
|
42
|
-
classification: 'test_class',
|
|
43
|
-
explanation: 'test explanation'
|
|
44
|
-
};
|
|
45
|
-
it('returns the original result if score >= threshold', () => {
|
|
46
|
-
const result = (0, utils_1.applyThresholdScore)(baseResult, 0.5);
|
|
47
|
-
expect(result).toEqual(baseResult);
|
|
48
|
-
});
|
|
49
|
-
it('returns a none result if score < threshold', () => {
|
|
50
|
-
const result = (0, utils_1.applyThresholdScore)(baseResult, 0.8);
|
|
51
|
-
expect(result).toEqual({
|
|
52
|
-
score: 0,
|
|
53
|
-
verdict: 'none',
|
|
54
|
-
guard: 'none',
|
|
55
|
-
classification: 'none',
|
|
56
|
-
explanation: 'none'
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
it('returns the original result if score == threshold', () => {
|
|
60
|
-
const result = (0, utils_1.applyThresholdScore)(baseResult, 0.7);
|
|
61
|
-
expect(result).toEqual(baseResult);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
//# sourceMappingURL=utils.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../../src/guard/__tests__/utils.test.ts"],"names":[],"mappings":"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"}
|
package/dist/guard/all.d.ts
DELETED
package/dist/guard/all.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.All = void 0;
|
|
4
|
-
const prompt_injection_1 = require("./prompt-injection");
|
|
5
|
-
const sensitive_topic_1 = require("./sensitive-topic");
|
|
6
|
-
const topic_restriction_1 = require("./topic-restriction");
|
|
7
|
-
class All {
|
|
8
|
-
constructor(config = {}) {
|
|
9
|
-
// Split customRules by guard type
|
|
10
|
-
const allRules = config.customRules || [];
|
|
11
|
-
const piRules = allRules.filter(r => r.guard === 'prompt_injection');
|
|
12
|
-
const stRules = allRules.filter(r => r.guard === 'sensitive_topic');
|
|
13
|
-
const trRules = allRules.filter(r => r.guard === 'topic_restriction');
|
|
14
|
-
this.promptInjection = new prompt_injection_1.PromptInjection({ ...config, customRules: piRules });
|
|
15
|
-
this.sensitiveTopic = new sensitive_topic_1.SensitiveTopic({ ...config, customRules: stRules });
|
|
16
|
-
this.topicRestriction = new topic_restriction_1.TopicRestriction({ ...config, customRules: trRules });
|
|
17
|
-
}
|
|
18
|
-
async detect(text) {
|
|
19
|
-
const [pi, st, tr] = await Promise.all([
|
|
20
|
-
this.promptInjection.detect(text),
|
|
21
|
-
this.sensitiveTopic.detect(text),
|
|
22
|
-
this.topicRestriction.detect(text)
|
|
23
|
-
]);
|
|
24
|
-
return [pi, st, tr];
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.All = All;
|
|
28
|
-
//# sourceMappingURL=all.js.map
|
package/dist/guard/all.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/guard/all.ts"],"names":[],"mappings":";;;AACA,yDAAqD;AACrD,uDAAmD;AACnD,2DAAuD;AAEvD,MAAa,GAAG;IAKd,YAAY,SAAsB,EAAE;QAClC,kCAAkC;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,kBAAkB,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,iBAAiB,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,mBAAmB,CAAC,CAAC;QAEtE,IAAI,CAAC,eAAe,GAAG,IAAI,kCAAe,CAAC,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,cAAc,GAAG,IAAI,gCAAc,CAAC,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,IAAI,CAAC,gBAAgB,GAAG,IAAI,oCAAgB,CAAC,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACrC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC;YACjC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC;SACnC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACtB,CAAC;CACF;AAzBD,kBAyBC"}
|
package/dist/guard/types.d.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export interface GuardResult {
|
|
2
|
-
score: number;
|
|
3
|
-
verdict: 'yes' | 'no' | 'none';
|
|
4
|
-
guard: string;
|
|
5
|
-
classification: string;
|
|
6
|
-
explanation: string;
|
|
7
|
-
}
|
|
8
|
-
export interface GuardConfig {
|
|
9
|
-
provider?: 'openai' | 'anthropic';
|
|
10
|
-
apiKey?: string;
|
|
11
|
-
model?: string;
|
|
12
|
-
baseUrl?: string;
|
|
13
|
-
customRules?: Array<CustomRule>;
|
|
14
|
-
validTopics?: string[];
|
|
15
|
-
invalidTopics?: string[];
|
|
16
|
-
thresholdScore?: number;
|
|
17
|
-
collectMetrics?: boolean;
|
|
18
|
-
}
|
|
19
|
-
export interface CustomRule {
|
|
20
|
-
pattern: string;
|
|
21
|
-
classification: string;
|
|
22
|
-
verdict?: 'yes' | 'no';
|
|
23
|
-
guard?: string;
|
|
24
|
-
score?: number;
|
|
25
|
-
explanation?: string;
|
|
26
|
-
}
|
package/dist/guard/types.js
DELETED
package/dist/guard/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/guard/types.ts"],"names":[],"mappings":";AAAA,2CAA2C"}
|
package/dist/guard/utils.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { GuardResult, CustomRule } from './types';
|
|
2
|
-
export declare function customRuleDetection(text: string, customRules?: CustomRule[]): GuardResult;
|
|
3
|
-
export declare function guardMetrics(): import("@opentelemetry/api").Counter<import("@opentelemetry/api").Attributes>;
|
|
4
|
-
export declare function guardMetricAttributes(verdict: string, score: number, validator: string, classification: string, explanation: string): {
|
|
5
|
-
'telemetry.sdk.name': string;
|
|
6
|
-
'openlit.guard.verdict': string;
|
|
7
|
-
'openlit.guard.score': number;
|
|
8
|
-
'openlit.guard.validator': string;
|
|
9
|
-
'openlit.guard.classification': string;
|
|
10
|
-
'openlit.guard.explanation': string;
|
|
11
|
-
};
|
|
12
|
-
export declare function toGuardResult(result: unknown, guardType: string): GuardResult;
|
|
13
|
-
export declare function applyThresholdScore(result: GuardResult, threshold: number): GuardResult;
|
package/dist/guard/utils.js
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.customRuleDetection = customRuleDetection;
|
|
4
|
-
exports.guardMetrics = guardMetrics;
|
|
5
|
-
exports.guardMetricAttributes = guardMetricAttributes;
|
|
6
|
-
exports.toGuardResult = toGuardResult;
|
|
7
|
-
exports.applyThresholdScore = applyThresholdScore;
|
|
8
|
-
function customRuleDetection(text, customRules = []) {
|
|
9
|
-
for (const rule of customRules) {
|
|
10
|
-
let regex;
|
|
11
|
-
try {
|
|
12
|
-
regex = new RegExp(rule.pattern, 'i');
|
|
13
|
-
}
|
|
14
|
-
catch (e) {
|
|
15
|
-
// eslint-disable-next-line no-console
|
|
16
|
-
console.warn(`Invalid regex pattern in customRuleDetection: "${rule.pattern}". Skipping rule.`, e);
|
|
17
|
-
continue;
|
|
18
|
-
}
|
|
19
|
-
if (regex.test(text)) {
|
|
20
|
-
return {
|
|
21
|
-
verdict: rule.verdict || 'yes',
|
|
22
|
-
guard: rule.guard || 'custom',
|
|
23
|
-
score: rule.score ?? 0.5,
|
|
24
|
-
classification: rule.classification,
|
|
25
|
-
explanation: rule.explanation || 'Matched custom rule pattern.'
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
return {
|
|
30
|
-
score: 0,
|
|
31
|
-
verdict: 'none',
|
|
32
|
-
guard: 'none',
|
|
33
|
-
classification: 'none',
|
|
34
|
-
explanation: 'none'
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
// Metric helpers (OpenTelemetry)
|
|
38
|
-
const api_1 = require("@opentelemetry/api");
|
|
39
|
-
function guardMetrics() {
|
|
40
|
-
const meter = api_1.metrics.getMeter('openlit.guard', '0.1.0');
|
|
41
|
-
const guardRequests = meter.createCounter('openlit.guard.requests', {
|
|
42
|
-
description: 'Counter for Guard requests',
|
|
43
|
-
unit: '1'
|
|
44
|
-
});
|
|
45
|
-
return guardRequests;
|
|
46
|
-
}
|
|
47
|
-
function guardMetricAttributes(verdict, score, validator, classification, explanation) {
|
|
48
|
-
return {
|
|
49
|
-
'telemetry.sdk.name': 'openlit',
|
|
50
|
-
'openlit.guard.verdict': verdict,
|
|
51
|
-
'openlit.guard.score': score,
|
|
52
|
-
'openlit.guard.validator': validator,
|
|
53
|
-
'openlit.guard.classification': classification,
|
|
54
|
-
'openlit.guard.explanation': explanation,
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
function toGuardResult(result, guardType) {
|
|
58
|
-
const r = result;
|
|
59
|
-
return {
|
|
60
|
-
score: typeof r.score === 'number' ? r.score : 0,
|
|
61
|
-
verdict: typeof r.verdict === 'string' ? r.verdict : 'none',
|
|
62
|
-
guard: typeof r.guard === 'string' ? r.guard : guardType,
|
|
63
|
-
classification: typeof r.classification === 'string' ? r.classification : 'none',
|
|
64
|
-
explanation: typeof r.explanation === 'string' ? r.explanation : 'none',
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
function applyThresholdScore(result, threshold) {
|
|
68
|
-
if (result.score < threshold) {
|
|
69
|
-
return {
|
|
70
|
-
score: 0,
|
|
71
|
-
verdict: 'none',
|
|
72
|
-
guard: 'none',
|
|
73
|
-
classification: 'none',
|
|
74
|
-
explanation: 'none'
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
return result;
|
|
78
|
-
}
|
|
79
|
-
//# sourceMappingURL=utils.js.map
|
package/dist/guard/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/guard/utils.ts"],"names":[],"mappings":";;AAGA,kDA2BC;AAKD,oCAOC;AAED,sDASC;AAED,sCASC;AAED,kDAWC;AA1ED,SAAgB,mBAAmB,CAAC,IAAY,EAAE,cAA4B,EAAE;IAC9E,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,KAAa,CAAC;QAClB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,kDAAkD,IAAI,CAAC,OAAO,mBAAmB,EAAE,CAAC,CAAC,CAAC;YACnG,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;gBAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,QAAQ;gBAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,GAAG;gBACxB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,8BAA8B;aAChE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO;QACL,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,MAAM;QACb,cAAc,EAAE,MAAM;QACtB,WAAW,EAAE,MAAM;KACpB,CAAC;AACJ,CAAC;AAED,iCAAiC;AACjC,4CAA6C;AAE7C,SAAgB,YAAY;IAC1B,MAAM,KAAK,GAAG,aAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,wBAAwB,EAAE;QAClE,WAAW,EAAE,4BAA4B;QACzC,IAAI,EAAE,GAAG;KACV,CAAC,CAAC;IACH,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAgB,qBAAqB,CAAC,OAAe,EAAE,KAAa,EAAE,SAAiB,EAAE,cAAsB,EAAE,WAAmB;IAClI,OAAO;QACL,oBAAoB,EAAE,SAAS;QAC/B,uBAAuB,EAAE,OAAO;QAChC,qBAAqB,EAAE,KAAK;QAC5B,yBAAyB,EAAE,SAAS;QACpC,8BAA8B,EAAE,cAAc;QAC9C,2BAA2B,EAAE,WAAW;KACzC,CAAC;AACJ,CAAC;AAED,SAAgB,aAAa,CAAC,MAAe,EAAE,SAAiB;IAC9D,MAAM,CAAC,GAAG,MAA2D,CAAC;IACtE,OAAO;QACL,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChD,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,OAAkC,CAAC,CAAC,CAAC,MAAM;QACvF,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QACxD,cAAc,EAAE,OAAO,CAAC,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM;QAChF,WAAW,EAAE,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM;KACxE,CAAC;AACJ,CAAC;AAED,SAAgB,mBAAmB,CAAC,MAAmB,EAAE,SAAiB;IACxE,IAAI,MAAM,CAAC,KAAK,GAAG,SAAS,EAAE,CAAC;QAC7B,OAAO;YACL,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,MAAM;YACb,cAAc,EAAE,MAAM;YACtB,WAAW,EAAE,MAAM;SACpB,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{evals/__tests__/utils.test.d.ts → guard/__tests__/prompt-injection.test.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|