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.6.tbz
sha256=44e7f6ebef6da2828ec2844dd5b38c8f37284c08e54a29e06f6a8822df6f8e10
sha512=ce31d0868abf28bcaef7b24a0ab09b37dcfc94db3de96b38ff36a03800ae59a19e8009a35314f93191b3c8f178c40f8569630d4389f56ddc2f2cc94fb7bffc3c

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

Module Ai_provider_openrouter.Cache_controlSource

Prompt caching control for OpenRouter requests.

Mirrors the per-part cache_control shape used by upstream @openrouter/ai-sdk-provider. The upstream TypeScript type is { type: 'ephemeral' } (see src/chat/convert-to-openrouter-chat-messages.ts); the OpenRouter documentation additionally accepts an optional ttl field ("5m" default, "1h" explicit) for Anthropic upstreams, which we surface here.

Sourcetype breakpoint =
  1. | Ephemeral
    (*

    Cache control type. Currently only Ephemeral is supported.

    *)
Sourcetype ttl =
  1. | Ttl_5m
  2. | Ttl_1h

Cache TTL. OpenRouter (Anthropic upstreams) accepts "5m" (default) or "1h".

Sourcetype t = {
  1. cache_type : breakpoint;
  2. ttl : ttl option;
}
Sourceval ephemeral : t

Ephemeral cache control with default 5-minute TTL.

Sourceval ephemeral_1h : t

Ephemeral cache control with explicit 1-hour TTL.

Sourceval to_json : t -> Yojson.Basic.t
Sourceval of_json : Yojson.Basic.t -> t