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.1.tbz
sha256=467ed85a42617ce399d0032d81f27f8dd2e8ca9b0753daeb2cbd84bf46761370
sha512=f5e96feea16c6ffdb45f49ee3e84e9cdb5426245c1ac32acc6434c15b949cc576c1007ed463bf1362dce507d10700eb96acf5a42fa7eed4e8e491ae0214a2e4a

doc/src/ocaml-ai-sdk.ai_core/stop_condition.ml.html

Source file stop_condition.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
type t = steps:Generate_text_result.step list -> bool Lwt.t

let step_count_is n ~steps = Lwt.return (List.compare_length_with steps n >= 0)

let rec last_opt = function
  | [] -> None
  | [ x ] -> Some x
  | _ :: tl -> last_opt tl

let has_tool_call tool_name ~(steps : Generate_text_result.step list) =
  match last_opt steps with
  | None -> Lwt.return false
  | Some last ->
    Lwt.return
      (List.exists (fun (tc : Generate_text_result.tool_call) -> String.equal tc.tool_name tool_name) last.tool_calls)

let is_met conditions ~steps = Lwt_list.exists_s (fun cond -> cond ~steps) conditions