Module Responses.Request

type model =
  1. | O3
  2. | Gpt4
  3. | O4_mini
  4. | Gpt4o
  5. | Gpt4_1
  6. | Gpt3
  7. | Gpt3_16k
val sexp_of_model : model -> Sexplib0.Sexp.t
val model_of_sexp : Sexplib0.Sexp.t -> model
val bin_shape_model : Bin_prot.Shape.t
val bin_size_model : model Bin_prot.Size.sizer
val bin_write_model : model Bin_prot.Write.writer
val bin_writer_model : model Bin_prot.Type_class.writer
val bin_read_model : model Bin_prot.Read.reader
val __bin_read_model__ : (int -> model) Bin_prot.Read.reader
val bin_reader_model : model Bin_prot.Type_class.reader
val model_to_str : model -> string
val model_of_str_exn : string -> model
module Reasoning : sig ... end
module Tool : sig ... end
type t = {
  1. input : Item.t list;
  2. model : model;
  3. max_output_tokens : int option;
  4. parallel_tool_calls : bool option;
  5. reasoning : Reasoning.t option;
  6. store : bool option;
  7. stream : bool option;
  8. temperature : float option;
  9. tools : Tool.t list option;
  10. top_p : float option;
}
include Ppx_jsonaf_conv_lib.Jsonafable.S with type t := t
val t_of_jsonaf : Jsonaf_kernel__.Type.t -> t
val jsonaf_of_t : t -> Jsonaf_kernel__.Type.t
include Sexplib0.Sexpable.S with type t := t
val t_of_sexp : Sexplib0.Sexp.t -> t
val sexp_of_t : t -> Sexplib0.Sexp.t
val create : ?max_output_tokens:int -> ?parallel_tool_calls:bool -> ?store:bool -> ?stream:bool -> ?temperature:float -> ?top_p:float -> ?reasoning:Reasoning.t -> ?tools:Tool.t list -> model:model -> input:Item.t list -> unit -> t