Defines a tool that can be called by the model during a conversation.
The parameters field is a JSON Schema map describing the tool's input.
Examples
iex> Planck.AI.Tool.new(
...> name: "bash",
...> description: "Execute a shell command",
...> parameters: %{
...> "type" => "object",
...> "properties" => %{
...> "command" => %{"type" => "string", "description" => "The command to run"}
...> },
...> "required" => ["command"]
...> }
...> )
%Planck.AI.Tool{name: "bash", description: "Execute a shell command", parameters: %{"type" => "object", "properties" => %{"command" => %{"type" => "string", "description" => "The command to run"}}, "required" => ["command"]}}