@arizeai/phoenix-evals 0.0.3 → 0.0.5
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/dist/esm/llm/generateClassification.d.ts +2 -1
- package/dist/esm/llm/generateClassification.d.ts.map +1 -1
- package/dist/esm/llm/generateClassification.js +8 -1
- package/dist/esm/llm/generateClassification.js.map +1 -1
- package/dist/esm/telemetry/index.d.ts +2 -0
- package/dist/esm/telemetry/index.d.ts.map +1 -0
- package/dist/esm/telemetry/index.js +3 -0
- package/dist/esm/telemetry/index.js.map +1 -0
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/index.d.ts.map +1 -1
- package/dist/esm/types/index.js +1 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/otel.d.ts +17 -0
- package/dist/esm/types/otel.d.ts.map +1 -0
- package/dist/esm/types/otel.js +2 -0
- package/dist/esm/types/otel.js.map +1 -0
- package/dist/src/llm/createClassifier.js +3 -12
- package/dist/src/llm/createClassifier.js.map +1 -1
- package/dist/src/llm/generateClassification.d.ts +2 -1
- package/dist/src/llm/generateClassification.d.ts.map +1 -1
- package/dist/src/llm/generateClassification.js +19 -23
- package/dist/src/llm/generateClassification.js.map +1 -1
- package/dist/src/telemetry/index.d.ts +2 -0
- package/dist/src/telemetry/index.d.ts.map +1 -0
- package/dist/src/telemetry/index.js +6 -0
- package/dist/src/telemetry/index.js.map +1 -0
- package/dist/src/types/index.d.ts +1 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +1 -0
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/types/otel.d.ts +17 -0
- package/dist/src/types/otel.d.ts.map +1 -0
- package/dist/src/types/otel.js +3 -0
- package/dist/src/types/otel.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -3
- package/src/llm/generateClassification.ts +12 -3
- package/src/telemetry/index.ts +3 -0
- package/src/types/index.ts +1 -0
- package/src/types/otel.ts +17 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@arizeai/phoenix-evals",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"description": "A library for running evaluations for AI use cases",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -42,19 +42,21 @@
|
|
|
42
42
|
"license": "ELv2",
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@ai-sdk/openai": "^1.1.15",
|
|
45
|
+
"@arizeai/openinference-instrumentation-openai": "^2.3.0",
|
|
45
46
|
"@types/mustache": "^4.2.6",
|
|
46
47
|
"@types/node": "^24.0.10",
|
|
47
48
|
"nock": "^14.0.5",
|
|
48
49
|
"tsx": "^4.19.3",
|
|
49
50
|
"typedoc": "^0.27.9",
|
|
50
|
-
"vitest": "^2.1.9",
|
|
51
51
|
"typescript": "^5.8.2",
|
|
52
|
-
"
|
|
52
|
+
"vitest": "^2.1.9",
|
|
53
|
+
"@arizeai/phoenix-client": "2.3.4"
|
|
53
54
|
},
|
|
54
55
|
"engines": {
|
|
55
56
|
"node": ">=18"
|
|
56
57
|
},
|
|
57
58
|
"dependencies": {
|
|
59
|
+
"@opentelemetry/api": "^1.9.0",
|
|
58
60
|
"ai": "^4.1.47",
|
|
59
61
|
"mustache": "^4.2.0",
|
|
60
62
|
"zod": "^3.25.75"
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { ClassificationResult, WithLLM } from "../types/evals";
|
|
2
|
+
import { WithTelemetry } from "../types/otel";
|
|
2
3
|
import type { WithPrompt } from "../types/prompts";
|
|
3
4
|
import { generateObject } from "ai";
|
|
4
5
|
import { z } from "zod";
|
|
5
|
-
|
|
6
|
-
interface ClassifyArgs extends WithLLM, WithPrompt {
|
|
6
|
+
import { tracer } from "../telemetry";
|
|
7
|
+
interface ClassifyArgs extends WithLLM, WithPrompt, WithTelemetry {
|
|
7
8
|
/**
|
|
8
9
|
* The labels to classify the example into. E.x. ["correct", "incorrect"]
|
|
9
10
|
*/
|
|
@@ -23,7 +24,14 @@ interface ClassifyArgs extends WithLLM, WithPrompt {
|
|
|
23
24
|
export async function generateClassification(
|
|
24
25
|
args: ClassifyArgs
|
|
25
26
|
): Promise<ClassificationResult> {
|
|
26
|
-
const { labels, model, schemaName, schemaDescription, ...prompt } =
|
|
27
|
+
const { labels, model, schemaName, schemaDescription, telemetry, ...prompt } =
|
|
28
|
+
args;
|
|
29
|
+
|
|
30
|
+
const experimental_telemetry = {
|
|
31
|
+
isEnabled: telemetry?.isEnabled ?? true,
|
|
32
|
+
functionId: "generateClassification",
|
|
33
|
+
tracer: telemetry?.tracer ?? tracer,
|
|
34
|
+
};
|
|
27
35
|
|
|
28
36
|
const result = await generateObject({
|
|
29
37
|
model,
|
|
@@ -33,6 +41,7 @@ export async function generateClassification(
|
|
|
33
41
|
explanation: z.string(), // We place the explanation in hopes it uses reasoning to explain the label.
|
|
34
42
|
label: z.enum(labels),
|
|
35
43
|
}),
|
|
44
|
+
experimental_telemetry,
|
|
36
45
|
...prompt,
|
|
37
46
|
});
|
|
38
47
|
return {
|
package/src/types/index.ts
CHANGED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Tracer } from "@opentelemetry/api";
|
|
2
|
+
|
|
3
|
+
export interface WithTelemetry {
|
|
4
|
+
telemetry?: {
|
|
5
|
+
/**
|
|
6
|
+
* Whether OpenTelemetry is enabled on the call.
|
|
7
|
+
* Defaults to true for visibility into the evals calls.
|
|
8
|
+
* @default true
|
|
9
|
+
*/
|
|
10
|
+
isEnabled?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* The tracer to use for the call.
|
|
13
|
+
* If not provided, the traces will get picked up by the global tracer.
|
|
14
|
+
*/
|
|
15
|
+
tracer?: Tracer;
|
|
16
|
+
};
|
|
17
|
+
}
|