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.2.tbz
sha256=17063971a74ccd72619a43ecfcb29d28cdf08f90d406a960bd475f65fee1a0d9
sha512=1f3f2d1d7fa4f53843cc1b303cbf9d6dcc85780e7c768ced723f3de83ea897748fa231b48e729216abcc069dee818edc6751a45271541e8a007369bf6e9d23e3

doc/src/ocaml-ai-sdk.ai_provider/prompt.ml.html

Source file prompt.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
type file_data =
  | Bytes of bytes
  | Base64 of string
  | Url of string

type user_part =
  | Text of {
      text : string;
      provider_options : Provider_options.t;
    }
  | File of {
      data : file_data;
      media_type : string;
      filename : string option;
      provider_options : Provider_options.t;
    }

type assistant_part =
  | Text of {
      text : string;
      provider_options : Provider_options.t;
    }
  | File of {
      data : file_data;
      media_type : string;
      filename : string option;
      provider_options : Provider_options.t;
    }
  | Reasoning of {
      text : string;
      provider_options : Provider_options.t;
    }
  | Tool_call of {
      id : string;
      name : string;
      args : Yojson.Basic.t;
      provider_options : Provider_options.t;
    }

type tool_result_content =
  | Result_text of string
  | Result_image of {
      data : string;
      media_type : string;
    }

type tool_result = {
  tool_call_id : string;
  tool_name : string;
  result : Yojson.Basic.t;
  is_error : bool;
  content : tool_result_content list;
  provider_options : Provider_options.t;
}

type message =
  | System of { content : string }
  | User of { content : user_part list }
  | Assistant of { content : assistant_part list }
  | Tool of { content : tool_result list }