Class: Anthropic::Models::Beta::BetaTool

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/anthropic/models/beta/beta_tool.rb

Defined Under Namespace

Modules: Type Classes: InputSchema

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(properties: nil, required: nil, type: :object) ⇒ void

JSON schema for this tool's input.

This defines the shape of the input that your tool accepts and that the model will produce.

Parameters:

  • properties (Object, nil) (defaults to: nil)
  • required (Array<String>, nil) (defaults to: nil)
  • type (Symbol, :object) (defaults to: :object)


# File 'lib/anthropic/models/beta/beta_tool.rb', line 46

Instance Attribute Details

#cache_controlAnthropic::Models::Beta::BetaCacheControlEphemeral?

Create a cache control breakpoint at this content block.



28
# File 'lib/anthropic/models/beta/beta_tool.rb', line 28

optional :cache_control, -> { Anthropic::Beta::BetaCacheControlEphemeral }, nil?: true

#descriptionString?

Description of what this tool does.

Tool descriptions should be as detailed as possible. The more information that the model has about what the tool is and how to use it, the better it will perform. You can use natural language descriptions to reinforce important aspects of the tool input JSON schema.

Returns:

  • (String, nil)


39
# File 'lib/anthropic/models/beta/beta_tool.rb', line 39

optional :description, String

#input_schemaAnthropic::Models::Beta::BetaTool::InputSchema

JSON schema for this tool's input.

This defines the shape of the input that your tool accepts and that the model will produce.



14
# File 'lib/anthropic/models/beta/beta_tool.rb', line 14

required :input_schema, -> { Anthropic::Beta::BetaTool::InputSchema }

#nameString

Name of the tool.

This is how the tool will be called by the model and in tool_use blocks.

Returns:

  • (String)


22
# File 'lib/anthropic/models/beta/beta_tool.rb', line 22

required :name, String

#typeSymbol, ...

Returns:



44
# File 'lib/anthropic/models/beta/beta_tool.rb', line 44

optional :type, enum: -> { Anthropic::Beta::BetaTool::Type }, nil?: true