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.tbz
sha256=44e7f6ebef6da2828ec2844dd5b38c8f37284c08e54a29e06f6a8822df6f8e10
sha512=ce31d0868abf28bcaef7b24a0ab09b37dcfc94db3de96b38ff36a03800ae59a19e8009a35314f93191b3c8f178c40f8569630d4389f56ddc2f2cc94fb7bffc3c

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.