@maximai/maxim-js
Version:
Maxim AI JS SDK. Visit https://getmaxim.ai for more info.
31 lines (30 loc) • 1.58 kB
TypeScript
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>;