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

doc/src/ocaml-ai-sdk.ai_provider_openai/openai_options.ml.html

Source file openai_options.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
type reasoning_effort =
  | Re_none
  | Minimal
  | Low
  | Medium
  | High
  | Xhigh

type service_tier =
  | St_auto
  | Flex
  | Priority
  | St_default

type prediction = {
  type_ : string;
  content : string;
}

type t = {
  logit_bias : (int * float) list;
  logprobs : int option;
  parallel_tool_calls : bool option;
  user : string option;
  reasoning_effort : reasoning_effort option;
  max_completion_tokens : int option;
  store : bool option;
  metadata : (string * string) list;
  prediction : prediction option;
  service_tier : service_tier option;
  strict_json_schema : bool;
  system_message_mode : Model_catalog.system_message_mode option;
}

let default =
  {
    logit_bias = [];
    logprobs = None;
    parallel_tool_calls = None;
    user = None;
    reasoning_effort = None;
    max_completion_tokens = None;
    store = None;
    metadata = [];
    prediction = None;
    service_tier = None;
    strict_json_schema = true;
    system_message_mode = None;
  }

type _ Ai_provider.Provider_options.key += Openai : t Ai_provider.Provider_options.key

let to_provider_options opts = Ai_provider.Provider_options.set Openai opts Ai_provider.Provider_options.empty

let of_provider_options opts = Ai_provider.Provider_options.find Openai opts

let reasoning_effort_to_string = function
  | Re_none -> "none"
  | Minimal -> "minimal"
  | Low -> "low"
  | Medium -> "medium"
  | High -> "high"
  | Xhigh -> "xhigh"

let service_tier_to_string = function
  | St_auto -> "auto"
  | Flex -> "flex"
  | Priority -> "priority"
  | St_default -> "default"