Arize Phoenix TS
    Preparing search index...
    llmProviderToolDefinitionSchema: ZodUnion<
        readonly [
            ZodObject<
                {
                    function: ZodObject<
                        {
                            description: ZodOptional<ZodString>;
                            name: ZodString;
                            parameters: ZodObject<
                                {
                                    additionalProperties: ZodOptional<ZodBoolean>;
                                    properties: ZodRecord<ZodString, ZodUnion<readonly [(...), (...)]>>;
                                    required: ZodOptional<ZodArray<ZodString>>;
                                    strict: ZodOptional<ZodBoolean>;
                                    type: ZodLiteral<"object">;
                                },
                                $loose,
                            >;
                        },
                        $loose,
                    >;
                    type: ZodLiteral<"function">;
                },
                $loose,
            >,
            ZodObject<
                {
                    description: ZodString;
                    input_schema: ZodObject<
                        {
                            additionalProperties: ZodOptional<ZodBoolean>;
                            properties: ZodRecord<
                                ZodString,
                                ZodUnion<
                                    readonly [
                                        ZodObject<{ description: ...; enum: ...; type: ... }, $loose>,
                                        ZodObject<{ anyOf: ... }, $strip>,
                                    ],
                                >,
                            >;
                            required: ZodOptional<ZodArray<ZodString>>;
                            type: ZodLiteral<"object">;
                        },
                        $loose,
                    >;
                    name: ZodString;
                },
                $strip,
            >,
            ZodObject<
                {
                    function: ZodObject<
                        {
                            description: ZodOptional<ZodString>;
                            name: ZodString;
                            parameters: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
                            strict: ZodOptional<ZodBoolean>;
                        },
                        $strip,
                    >;
                    type: ZodLiteral<"function">;
                },
                $strip,
            >,
        ],
    > = ...

    Union of all tool call formats

    This is useful for functions that need to accept any tool definition format