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/ocaml-ai-sdk.ai_provider_anthropic/Ai_provider_anthropic/Convert_tools/index.html

Module Ai_provider_anthropic.Convert_toolsSource

Convert SDK tools and tool choice to Anthropic format.

Sourcetype anthropic_tool = {
  1. name : string;
  2. description : string option;
  3. input_schema : Yojson.Basic.t;
  4. cache_control : Cache_control.t option;
}
Sourcetype anthropic_tool_choice =
  1. | Tc_auto
  2. | Tc_any
  3. | Tc_tool of {
    1. name : string;
    }
Sourceval convert_tools : ?validator:Ai_provider_anthropic__.Cache_control_validator.t -> tools:Ai_provider.Tool.t list -> tool_choice:Ai_provider.Tool_choice.t option -> unit -> anthropic_tool list * anthropic_tool_choice option

Convert SDK tools and choice. Tool_choice.None_ returns empty tools. Tool_choice.Required maps to Tc_any. Pass ~validator to share the 4-breakpoint budget with the prompt conversion.

Sourceval anthropic_tool_to_json : anthropic_tool -> Yojson.Basic.t
Sourceval anthropic_tool_choice_to_json : anthropic_tool_choice -> Yojson.Basic.t
Sourceval json_response_tool : schema:Yojson.Basic.t -> anthropic_tool

Build the synthetic json tool used as a fallback for structured outputs on models that don't support Anthropic's native output_config.format. The tool is always named json — matching upstream @ai-sdk/anthropic — and carries the user-supplied schema as its input_schema. The caller is responsible for forcing tool_choice to this tool (see forced_json_tool_choice).

Sourceval forced_json_tool_choice : anthropic_tool_choice

Tool choice forcing the model to emit only the synthetic json tool.