package ocaml-ai-sdk
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
OCaml AI SDK - Provider abstraction for AI models
Install
dune-project
Dependency
Authors
Maintainers
Sources
ocaml-ai-sdk-0.6.tbz
sha256=44e7f6ebef6da2828ec2844dd5b38c8f37284c08e54a29e06f6a8822df6f8e10
sha512=ce31d0868abf28bcaef7b24a0ab09b37dcfc94db3de96b38ff36a03800ae59a19e8009a35314f93191b3c8f178c40f8569630d4389f56ddc2f2cc94fb7bffc3c
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.
Source
val 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_bodyBuild a typed request body for the Chat Completions API. Extends OpenAI-compatible parameters with OpenRouter-specific fields.
Merge extra_body key-value pairs into the serialized request JSON.
Source
val provider_error_of_http_response :
body:string ->
Cohttp.Response.t ->
Ai_provider.Provider_error.tConvert a non-successful HTTP response, preserving Retry-After metadata.
Source
val 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.tSend 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).
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>