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.5.tbz
sha256=9e3437d6ebf48ec9f5d9a8afd62eaeece124023f02dbd87e4b291205fd309b72
sha512=605c10ed62c0cbc31a151b7031cc80a284d5c94231c1ef423ae7439572e3fadddab4a45f52eaeeef83973a8e324839b9fda03f9082deef1b6781353f63975510

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).