@arizeai/phoenix-client
Version:
A client for the Phoenix API
48 lines • 1.66 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.vercelAIMessageSchema = exports.vercelAIMessageRoleSchema = void 0;
const messagePartSchemas_1 = require("./messagePartSchemas");
const zod_1 = __importDefault(require("zod"));
/*
*
* Vercel AI SDK Message Schemas
*
*/
exports.vercelAIMessageRoleSchema = zod_1.default.enum([
"system",
"user",
"assistant",
"tool",
]);
exports.vercelAIMessageSchema = zod_1.default.discriminatedUnion("role", [
zod_1.default.object({
role: zod_1.default.literal("system"),
content: zod_1.default.string(),
}),
zod_1.default.object({
role: zod_1.default.literal("user"),
content: zod_1.default.union([
zod_1.default
.union([messagePartSchemas_1.vercelAIChatPartTextSchema, messagePartSchemas_1.vercelAIChatPartImageSchema])
.array(),
zod_1.default.string(),
]),
}),
zod_1.default.object({
role: zod_1.default.literal("assistant"),
content: zod_1.default.union([
zod_1.default
.union([messagePartSchemas_1.vercelAIChatPartTextSchema, messagePartSchemas_1.vercelAIChatPartToolCallSchema])
.array(),
zod_1.default.string(),
]),
}),
zod_1.default.object({
role: zod_1.default.literal("tool"),
content: messagePartSchemas_1.vercelAIChatPartToolResultSchema.array(),
}),
]);
//# sourceMappingURL=messageSchemas.js.map