@arizeai/phoenix-client
Version:
A client for the Phoenix API
131 lines • 5.05 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SDKProviderConverterMap = exports.SDKProviderIdMap = void 0;
const converters_1 = require("./anthropic/converters");
const converters_2 = require("./openai/converters");
const messagePartSchemas_1 = require("./openai/messagePartSchemas");
const messageSchemas_1 = require("./openai/messageSchemas");
const responseFormatSchema_1 = require("./openai/responseFormatSchema");
const toolCallSchemas_1 = require("./openai/toolCallSchemas");
const toolChoiceSchemas_1 = require("./openai/toolChoiceSchemas");
const toolSchemas_1 = require("./openai/toolSchemas");
const converters_3 = require("./phoenixPrompt/converters");
const messagePartSchemas_2 = require("./vercel/messagePartSchemas");
const utils_1 = require("./utils");
const zod_1 = require("zod");
exports.SDKProviderIdMap = {
OPENAI: "openai",
AZURE_OPENAI: "azure-openai",
ANTHROPIC: "anthropic",
PHOENIX: "phoenix",
VERCEL_AI: "ai",
};
const OPENAI = (0, utils_1.makeSDKConverters)({
messages: {
toOpenAI: messageSchemas_1.openAIMessageSchema,
fromOpenAI: messageSchemas_1.openAIMessageSchema,
},
messageParts: {
toOpenAI: messagePartSchemas_1.openaiChatPartSchema,
fromOpenAI: messagePartSchemas_1.openaiChatPartSchema,
},
toolChoices: {
toOpenAI: toolChoiceSchemas_1.openAIToolChoiceSchema,
fromOpenAI: toolChoiceSchemas_1.openAIToolChoiceSchema,
},
toolCalls: {
toOpenAI: toolCallSchemas_1.openAIToolCallSchema,
fromOpenAI: toolCallSchemas_1.openAIToolCallSchema,
},
toolDefinitions: {
toOpenAI: toolSchemas_1.openAIToolDefinitionSchema,
fromOpenAI: toolSchemas_1.openAIToolDefinitionSchema,
},
responseFormat: {
toOpenAI: responseFormatSchema_1.openaiResponseFormatSchema,
fromOpenAI: responseFormatSchema_1.openaiResponseFormatSchema,
},
});
/**
* SDK Provider Converter Map
*
* This map contains the converters for each SDK provider.
*
* If a "from" direction is not supported for a particular provider, you can set the schema to `z.unknown()`,
* passing contents directly through, but forcing the caller to handle the unknown type.
*/
exports.SDKProviderConverterMap = {
OPENAI,
AZURE_OPENAI: OPENAI,
ANTHROPIC: (0, utils_1.makeSDKConverters)({
messages: {
toOpenAI: converters_1.anthropicMessageToOpenAI,
fromOpenAI: converters_2.openAIMessageToAnthropic,
},
messageParts: {
toOpenAI: converters_1.anthropicMessagePartToOpenAI,
fromOpenAI: converters_2.openAIChatPartToAnthropic,
},
toolChoices: {
toOpenAI: converters_1.anthropicToolChoiceToOpenAI,
fromOpenAI: converters_2.openAIToolChoiceToAnthropic,
},
toolCalls: {
toOpenAI: converters_1.anthropicToolCallToOpenAI,
fromOpenAI: converters_2.openAIToolCallToAnthropic,
},
toolDefinitions: {
toOpenAI: converters_1.anthropicToolDefinitionToOpenAI,
fromOpenAI: converters_2.openAIToolDefinitionToAnthropic,
},
}),
PHOENIX: (0, utils_1.makeSDKConverters)({
messages: {
toOpenAI: converters_3.phoenixMessageToOpenAI,
fromOpenAI: converters_2.openAIMessageToPhoenixPrompt,
},
messageParts: {
toOpenAI: converters_3.phoenixMessagePartToOpenAI,
fromOpenAI: zod_1.z.unknown(),
},
toolChoices: {
toOpenAI: converters_3.phoenixToolChoiceToOpenAI,
fromOpenAI: zod_1.z.unknown(),
},
toolCalls: {
toOpenAI: converters_3.phoenixToolCallToOpenAI,
fromOpenAI: zod_1.z.unknown(),
},
toolDefinitions: {
toOpenAI: converters_3.phoenixToolDefinitionToOpenAI,
fromOpenAI: zod_1.z.unknown(),
},
responseFormat: {
toOpenAI: converters_3.phoenixResponseFormatToOpenAI,
fromOpenAI: zod_1.z.unknown(),
},
}),
VERCEL_AI: (0, utils_1.makeSDKConverters)({
messages: {
toOpenAI: messageSchemas_1.openAIMessageSchema,
fromOpenAI: converters_2.openAIMessageToVercelAI,
},
messageParts: {
fromOpenAI: messagePartSchemas_2.vercelAIChatPartSchema,
toOpenAI: messagePartSchemas_1.openaiChatPartSchema,
},
toolChoices: {
toOpenAI: toolChoiceSchemas_1.openAIToolChoiceSchema,
fromOpenAI: converters_2.openAIToolChoiceToVercelAI,
},
toolCalls: {
toOpenAI: toolCallSchemas_1.openAIToolCallSchema,
fromOpenAI: messagePartSchemas_2.vercelAIChatPartToolCallSchema,
},
toolDefinitions: {
toOpenAI: toolSchemas_1.openAIToolDefinitionSchema,
fromOpenAI: converters_2.openAIToolDefinitionToVercelAI,
},
}),
};
//# sourceMappingURL=constants.js.map