UNPKG

@maximai/maxim-js

Version:

Maxim AI JS SDK. Visit https://getmaxim.ai for more info.

31 lines (30 loc) 1.58 kB
import type { ChatCompletionMessage, CompletionRequest } from "../../models/prompt"; import type { ChatCompletionResult } from "../components"; /** * Convert an OpenAI Responses API object (or its `output` array) into a ChatCompletionResult. * * Accepts either the full Responses API response shape: * { * id, object: "response", created_at, model, output: Item[], usage?: { input_tokens?, output_tokens?, total_tokens? } * } * or a bare `output: Item[]` array. */ export declare function convertOpenAIResponsesToCompletionResult(input: any): { completionResult: ChatCompletionResult; modelParameters: Record<string, any>; }; /** * Convert an OpenAI Responses API-style messages array into a sequence of * CompletionRequest / ChatCompletionMessage items compatible with Chat Completions. * * Input examples include items like: * - { type: "message", role: "user" | "system" | "assistant", content: string | Part[] } * - { type: "function_call" | "tool_call" | "tool-use", name, arguments, callId?, id? } * - { type: "function_call_result" | "tool_result" | "tool-call-result", callId?, output } * * Mapping rules: * - Consecutive function/tool call items are batched into one assistant message with tool_calls. * - Each result item becomes a tool message with tool_call_id referring to its originating call. * - Assistant message content is null when tool_calls are present, otherwise text if available. */ export declare function convertOpenAIResponsesMessagesToCompletionMessages(items: any[]): Array<CompletionRequest | ChatCompletionMessage>;