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/src/ocaml-ai-sdk.ai_provider_openrouter/cache_control_options.ml.html

Source file cache_control_options.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
type _ Ai_provider.Provider_options.key += Cache : Cache_control.t Ai_provider.Provider_options.key

let with_cache_control ?cache_control opts =
  match cache_control with
  | None -> opts
  | Some cc -> Ai_provider.Provider_options.set Cache cc opts

let get_cache_control po =
  match Ai_provider.Provider_options.find Cache po with
  | Some cc -> Some cc
  | None ->
  match Ai_provider.Provider_options.find Ai_provider_anthropic.Cache_control_options.Cache po with
  | Some (a : Ai_provider_anthropic.Cache_control.t) ->
    let ttl =
      match a.ttl with
      | Some Ttl_5m -> Some Cache_control.Ttl_5m
      | Some Ttl_1h -> Some Cache_control.Ttl_1h
      | None -> None
    in
    Some { Cache_control.cache_type = Ephemeral; ttl }
  | None -> None