package ocaml-ai-sdk

  1. Overview
  2. Docs
OCaml AI SDK - Provider abstraction for AI models

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ocaml-ai-sdk-0.4.tbz
sha256=4f3f22ae61d360b994cd75323bcb6b6bf915f6755fd1e7bab6844ca8a240c1e7
sha512=3c52b17096da818f5d3bcf9fe16826c3bec4533d6a1681e8ba0f957f37ee4f425696017cb78f1a24732f8851010d436cf446f873b72b6a4f5004d6b492072abf

doc/ocaml-ai-sdk.ai_provider_openrouter/Ai_provider_openrouter/Openrouter_api/index.html

Module Ai_provider_openrouter.Openrouter_apiSource

HTTP client for the OpenRouter Chat Completions API.

Sourcetype request_body
Sourceval request_body_to_json : request_body -> Melange_json.t
Sourceval make_request_body : model:string -> messages:Melange_json.t list -> ?models:string list -> ?temperature:float -> ?top_p:float -> ?top_k:int -> ?max_tokens:int -> ?frequency_penalty:float -> ?presence_penalty:float -> ?stop:string list -> ?seed:int -> ?response_format:Melange_json.t -> ?tools:Melange_json.t list -> ?tool_choice:Melange_json.t -> ?parallel_tool_calls:bool -> ?logit_bias:Melange_json.t -> ?logprobs:Melange_json.t -> ?top_logprobs:Melange_json.t -> ?user:string -> ?include_reasoning:bool -> ?reasoning:Melange_json.t -> ?usage:Melange_json.t -> ?plugins:Melange_json.t list -> ?web_search_options:Melange_json.t -> ?provider:Melange_json.t -> ?debug:Melange_json.t -> ?cache_control:Melange_json.t -> stream:bool -> compatibility:Config.compatibility -> unit -> request_body

Build a typed request body for the Chat Completions API. Extends OpenAI-compatible parameters with OpenRouter-specific fields.

Sourceval merge_extra_body : Yojson.Basic.t -> (string * Yojson.Basic.t) list -> Yojson.Basic.t

Merge extra_body key-value pairs into the serialized request JSON.

Sourceval chat_completions : config:Config.t -> body:request_body -> extra_body:(string * Yojson.Basic.t) list -> extra_headers:(string * string) list -> stream:bool -> [ `Json of Yojson.Basic.t | `Stream of string Lwt_stream.t ] Lwt.t

Send a request to the Chat Completions API. Returns `Json for non-streaming, `Stream for streaming (raw SSE lines). Checks for HTTP 200 error responses (OpenRouter returns errors with 200 status).