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.1.tbz
sha256=cb3b82428abcda76c02ec92f8103a4db28edf3f42795794a37135e9a3c40af96
sha512=11be8889ee25bee67b2be00553c42a4692bc73e5ce23985e8bb87f8a07e9d8f556b5a63b219fe5fe30366c8b0d4edae494afa80ccfbfcb112f1fa1e458de55bf
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)"
>