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.2.tbz
sha256=637f60398f673dfb2e661f6ed7da169b823a870d27b48e729d5b9200e46a52b2
sha512=5aec259473395025edb6689b544e57e821cfbef9352987f95eb2182034979ce898040e06e60a9d89a40a187b77fb5b1b7183c7ec4264da9d9a834864860a5fed

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.