anthropic 0.0.0 → 0.1.0.pre.beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (808) hide show
  1. checksums.yaml +4 -4
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +648 -6
  4. data/README.md +311 -70
  5. data/SECURITY.md +27 -0
  6. data/lib/anthropic/bedrock.rb +5 -0
  7. data/lib/anthropic/client.rb +102 -12
  8. data/lib/anthropic/errors.rb +192 -0
  9. data/lib/anthropic/file_part.rb +55 -0
  10. data/lib/anthropic/helpers/bedrock/client.rb +259 -0
  11. data/lib/anthropic/helpers/vertex/client.rb +218 -0
  12. data/lib/anthropic/internal/jsonl_stream.rb +26 -0
  13. data/lib/anthropic/internal/page.rb +99 -0
  14. data/lib/anthropic/internal/stream.rb +58 -0
  15. data/lib/anthropic/internal/transport/base_client.rb +558 -0
  16. data/lib/anthropic/internal/transport/pooled_net_requester.rb +209 -0
  17. data/lib/anthropic/internal/type/array_of.rb +162 -0
  18. data/lib/anthropic/internal/type/base_model.rb +481 -0
  19. data/lib/anthropic/internal/type/base_page.rb +55 -0
  20. data/lib/anthropic/internal/type/base_stream.rb +90 -0
  21. data/lib/anthropic/internal/type/boolean.rb +71 -0
  22. data/lib/anthropic/internal/type/converter.rb +292 -0
  23. data/lib/anthropic/internal/type/enum.rb +145 -0
  24. data/lib/anthropic/internal/type/file_input.rb +103 -0
  25. data/lib/anthropic/internal/type/hash_of.rb +182 -0
  26. data/lib/anthropic/internal/type/request_parameters.rb +42 -0
  27. data/lib/anthropic/internal/type/union.rb +252 -0
  28. data/lib/anthropic/internal/type/unknown.rb +75 -0
  29. data/lib/anthropic/internal/util.rb +907 -0
  30. data/lib/anthropic/internal.rb +20 -0
  31. data/lib/anthropic/models/anthropic_beta.rb +47 -0
  32. data/lib/anthropic/models/api_error_object.rb +21 -0
  33. data/lib/anthropic/models/authentication_error.rb +21 -0
  34. data/lib/anthropic/models/base64_image_source.rb +40 -0
  35. data/lib/anthropic/models/base64_pdf_source.rb +27 -0
  36. data/lib/anthropic/models/beta/beta_base64_image_source.rb +44 -0
  37. data/lib/anthropic/models/beta/beta_base64_pdf_block.rb +73 -0
  38. data/lib/anthropic/models/beta/beta_base64_pdf_source.rb +31 -0
  39. data/lib/anthropic/models/beta/beta_cache_control_ephemeral.rb +19 -0
  40. data/lib/anthropic/models/beta/beta_citation_char_location.rb +49 -0
  41. data/lib/anthropic/models/beta/beta_citation_char_location_param.rb +49 -0
  42. data/lib/anthropic/models/beta/beta_citation_content_block_location.rb +49 -0
  43. data/lib/anthropic/models/beta/beta_citation_content_block_location_param.rb +49 -0
  44. data/lib/anthropic/models/beta/beta_citation_page_location.rb +49 -0
  45. data/lib/anthropic/models/beta/beta_citation_page_location_param.rb +49 -0
  46. data/lib/anthropic/models/beta/beta_citation_web_search_result_location_param.rb +43 -0
  47. data/lib/anthropic/models/beta/beta_citations_config_param.rb +19 -0
  48. data/lib/anthropic/models/beta/beta_citations_delta.rb +43 -0
  49. data/lib/anthropic/models/beta/beta_citations_web_search_result_location.rb +43 -0
  50. data/lib/anthropic/models/beta/beta_content_block.rb +30 -0
  51. data/lib/anthropic/models/beta/beta_content_block_param.rb +36 -0
  52. data/lib/anthropic/models/beta/beta_content_block_source.rb +41 -0
  53. data/lib/anthropic/models/beta/beta_content_block_source_content.rb +22 -0
  54. data/lib/anthropic/models/beta/beta_image_block_param.rb +48 -0
  55. data/lib/anthropic/models/beta/beta_input_json_delta.rb +25 -0
  56. data/lib/anthropic/models/beta/beta_message.rb +148 -0
  57. data/lib/anthropic/models/beta/beta_message_delta_usage.rb +52 -0
  58. data/lib/anthropic/models/beta/beta_message_param.rb +52 -0
  59. data/lib/anthropic/models/beta/beta_message_tokens_count.rb +25 -0
  60. data/lib/anthropic/models/beta/beta_metadata.rb +27 -0
  61. data/lib/anthropic/models/beta/beta_model_info.rb +51 -0
  62. data/lib/anthropic/models/beta/beta_plain_text_source.rb +31 -0
  63. data/lib/anthropic/models/beta/beta_raw_content_block_delta.rb +28 -0
  64. data/lib/anthropic/models/beta/beta_raw_content_block_delta_event.rb +31 -0
  65. data/lib/anthropic/models/beta/beta_raw_content_block_start_event.rb +53 -0
  66. data/lib/anthropic/models/beta/beta_raw_content_block_stop_event.rb +25 -0
  67. data/lib/anthropic/models/beta/beta_raw_message_delta_event.rb +68 -0
  68. data/lib/anthropic/models/beta/beta_raw_message_start_event.rb +25 -0
  69. data/lib/anthropic/models/beta/beta_raw_message_stop_event.rb +19 -0
  70. data/lib/anthropic/models/beta/beta_raw_message_stream_event.rb +30 -0
  71. data/lib/anthropic/models/beta/beta_redacted_thinking_block.rb +25 -0
  72. data/lib/anthropic/models/beta/beta_redacted_thinking_block_param.rb +25 -0
  73. data/lib/anthropic/models/beta/beta_server_tool_usage.rb +20 -0
  74. data/lib/anthropic/models/beta/beta_server_tool_use_block.rb +37 -0
  75. data/lib/anthropic/models/beta/beta_server_tool_use_block_param.rb +48 -0
  76. data/lib/anthropic/models/beta/beta_signature_delta.rb +25 -0
  77. data/lib/anthropic/models/beta/beta_stop_reason.rb +23 -0
  78. data/lib/anthropic/models/beta/beta_text_block.rb +43 -0
  79. data/lib/anthropic/models/beta/beta_text_block_param.rb +43 -0
  80. data/lib/anthropic/models/beta/beta_text_citation.rb +26 -0
  81. data/lib/anthropic/models/beta/beta_text_citation_param.rb +26 -0
  82. data/lib/anthropic/models/beta/beta_text_delta.rb +25 -0
  83. data/lib/anthropic/models/beta/beta_thinking_block.rb +31 -0
  84. data/lib/anthropic/models/beta/beta_thinking_block_param.rb +31 -0
  85. data/lib/anthropic/models/beta/beta_thinking_config_disabled.rb +19 -0
  86. data/lib/anthropic/models/beta/beta_thinking_config_enabled.rb +38 -0
  87. data/lib/anthropic/models/beta/beta_thinking_config_param.rb +31 -0
  88. data/lib/anthropic/models/beta/beta_thinking_delta.rb +25 -0
  89. data/lib/anthropic/models/beta/beta_tool.rb +96 -0
  90. data/lib/anthropic/models/beta/beta_tool_bash_20241022.rb +40 -0
  91. data/lib/anthropic/models/beta/beta_tool_bash_20250124.rb +40 -0
  92. data/lib/anthropic/models/beta/beta_tool_choice.rb +32 -0
  93. data/lib/anthropic/models/beta/beta_tool_choice_any.rb +35 -0
  94. data/lib/anthropic/models/beta/beta_tool_choice_auto.rb +35 -0
  95. data/lib/anthropic/models/beta/beta_tool_choice_none.rb +21 -0
  96. data/lib/anthropic/models/beta/beta_tool_choice_tool.rb +43 -0
  97. data/lib/anthropic/models/beta/beta_tool_computer_use_20241022.rb +64 -0
  98. data/lib/anthropic/models/beta/beta_tool_computer_use_20250124.rb +64 -0
  99. data/lib/anthropic/models/beta/beta_tool_result_block_param.rb +79 -0
  100. data/lib/anthropic/models/beta/beta_tool_text_editor_20241022.rb +40 -0
  101. data/lib/anthropic/models/beta/beta_tool_text_editor_20250124.rb +40 -0
  102. data/lib/anthropic/models/beta/beta_tool_union.rb +32 -0
  103. data/lib/anthropic/models/beta/beta_tool_use_block.rb +37 -0
  104. data/lib/anthropic/models/beta/beta_tool_use_block_param.rb +48 -0
  105. data/lib/anthropic/models/beta/beta_url_image_source.rb +25 -0
  106. data/lib/anthropic/models/beta/beta_url_pdf_source.rb +25 -0
  107. data/lib/anthropic/models/beta/beta_usage.rb +52 -0
  108. data/lib/anthropic/models/beta/beta_web_search_result_block.rb +43 -0
  109. data/lib/anthropic/models/beta/beta_web_search_result_block_param.rb +43 -0
  110. data/lib/anthropic/models/beta/beta_web_search_tool_20250305.rb +126 -0
  111. data/lib/anthropic/models/beta/beta_web_search_tool_request_error.rb +39 -0
  112. data/lib/anthropic/models/beta/beta_web_search_tool_result_block.rb +31 -0
  113. data/lib/anthropic/models/beta/beta_web_search_tool_result_block_content.rb +24 -0
  114. data/lib/anthropic/models/beta/beta_web_search_tool_result_block_param.rb +41 -0
  115. data/lib/anthropic/models/beta/beta_web_search_tool_result_block_param_content.rb +26 -0
  116. data/lib/anthropic/models/beta/beta_web_search_tool_result_error.rb +39 -0
  117. data/lib/anthropic/models/beta/message_count_tokens_params.rb +292 -0
  118. data/lib/anthropic/models/beta/message_create_params.rb +351 -0
  119. data/lib/anthropic/models/beta/messages/batch_cancel_params.rb +26 -0
  120. data/lib/anthropic/models/beta/messages/batch_create_params.rb +424 -0
  121. data/lib/anthropic/models/beta/messages/batch_delete_params.rb +26 -0
  122. data/lib/anthropic/models/beta/messages/batch_list_params.rb +57 -0
  123. data/lib/anthropic/models/beta/messages/batch_results_params.rb +26 -0
  124. data/lib/anthropic/models/beta/messages/batch_retrieve_params.rb +26 -0
  125. data/lib/anthropic/models/beta/messages/beta_deleted_message_batch.rb +34 -0
  126. data/lib/anthropic/models/beta/messages/beta_message_batch.rb +133 -0
  127. data/lib/anthropic/models/beta/messages/beta_message_batch_canceled_result.rb +19 -0
  128. data/lib/anthropic/models/beta/messages/beta_message_batch_errored_result.rb +25 -0
  129. data/lib/anthropic/models/beta/messages/beta_message_batch_expired_result.rb +19 -0
  130. data/lib/anthropic/models/beta/messages/beta_message_batch_individual_response.rb +43 -0
  131. data/lib/anthropic/models/beta/messages/beta_message_batch_request_counts.rb +63 -0
  132. data/lib/anthropic/models/beta/messages/beta_message_batch_result.rb +31 -0
  133. data/lib/anthropic/models/beta/messages/beta_message_batch_succeeded_result.rb +25 -0
  134. data/lib/anthropic/models/beta/model_list_params.rb +55 -0
  135. data/lib/anthropic/models/beta/model_retrieve_params.rb +24 -0
  136. data/lib/anthropic/models/beta_api_error.rb +21 -0
  137. data/lib/anthropic/models/beta_authentication_error.rb +21 -0
  138. data/lib/anthropic/models/beta_billing_error.rb +21 -0
  139. data/lib/anthropic/models/beta_error.rb +32 -0
  140. data/lib/anthropic/models/beta_error_response.rb +21 -0
  141. data/lib/anthropic/models/beta_gateway_timeout_error.rb +21 -0
  142. data/lib/anthropic/models/beta_invalid_request_error.rb +21 -0
  143. data/lib/anthropic/models/beta_not_found_error.rb +21 -0
  144. data/lib/anthropic/models/beta_overloaded_error.rb +21 -0
  145. data/lib/anthropic/models/beta_permission_error.rb +21 -0
  146. data/lib/anthropic/models/beta_rate_limit_error.rb +21 -0
  147. data/lib/anthropic/models/billing_error.rb +21 -0
  148. data/lib/anthropic/models/cache_control_ephemeral.rb +15 -0
  149. data/lib/anthropic/models/citation_char_location.rb +45 -0
  150. data/lib/anthropic/models/citation_char_location_param.rb +45 -0
  151. data/lib/anthropic/models/citation_content_block_location.rb +45 -0
  152. data/lib/anthropic/models/citation_content_block_location_param.rb +45 -0
  153. data/lib/anthropic/models/citation_page_location.rb +45 -0
  154. data/lib/anthropic/models/citation_page_location_param.rb +45 -0
  155. data/lib/anthropic/models/citation_web_search_result_location_param.rb +39 -0
  156. data/lib/anthropic/models/citations_config_param.rb +15 -0
  157. data/lib/anthropic/models/citations_delta.rb +39 -0
  158. data/lib/anthropic/models/citations_web_search_result_location.rb +39 -0
  159. data/lib/anthropic/models/completion.rb +66 -0
  160. data/lib/anthropic/models/completion_create_params.rb +133 -0
  161. data/lib/anthropic/models/content_block.rb +26 -0
  162. data/lib/anthropic/models/content_block_param.rb +32 -0
  163. data/lib/anthropic/models/content_block_source.rb +37 -0
  164. data/lib/anthropic/models/content_block_source_content.rb +18 -0
  165. data/lib/anthropic/models/document_block_param.rb +69 -0
  166. data/lib/anthropic/models/error_object.rb +32 -0
  167. data/lib/anthropic/models/error_response.rb +21 -0
  168. data/lib/anthropic/models/gateway_timeout_error.rb +21 -0
  169. data/lib/anthropic/models/image_block_param.rb +44 -0
  170. data/lib/anthropic/models/input_json_delta.rb +21 -0
  171. data/lib/anthropic/models/invalid_request_error.rb +21 -0
  172. data/lib/anthropic/models/message.rb +144 -0
  173. data/lib/anthropic/models/message_count_tokens_params.rb +254 -0
  174. data/lib/anthropic/models/message_count_tokens_tool.rb +20 -0
  175. data/lib/anthropic/models/message_create_params.rb +339 -0
  176. data/lib/anthropic/models/message_delta_usage.rb +48 -0
  177. data/lib/anthropic/models/message_param.rb +49 -0
  178. data/lib/anthropic/models/message_tokens_count.rb +21 -0
  179. data/lib/anthropic/models/messages/batch_cancel_params.rb +16 -0
  180. data/lib/anthropic/models/messages/batch_create_params.rb +406 -0
  181. data/lib/anthropic/models/messages/batch_delete_params.rb +16 -0
  182. data/lib/anthropic/models/messages/batch_list_params.rb +47 -0
  183. data/lib/anthropic/models/messages/batch_results_params.rb +16 -0
  184. data/lib/anthropic/models/messages/batch_retrieve_params.rb +16 -0
  185. data/lib/anthropic/models/messages/deleted_message_batch.rb +32 -0
  186. data/lib/anthropic/models/messages/message_batch.rb +130 -0
  187. data/lib/anthropic/models/messages/message_batch_canceled_result.rb +19 -0
  188. data/lib/anthropic/models/messages/message_batch_errored_result.rb +25 -0
  189. data/lib/anthropic/models/messages/message_batch_expired_result.rb +19 -0
  190. data/lib/anthropic/models/messages/message_batch_individual_response.rb +42 -0
  191. data/lib/anthropic/models/messages/message_batch_request_counts.rb +63 -0
  192. data/lib/anthropic/models/messages/message_batch_result.rb +31 -0
  193. data/lib/anthropic/models/messages/message_batch_succeeded_result.rb +25 -0
  194. data/lib/anthropic/models/metadata.rb +23 -0
  195. data/lib/anthropic/models/model.rb +96 -0
  196. data/lib/anthropic/models/model_info.rb +47 -0
  197. data/lib/anthropic/models/model_list_params.rb +53 -0
  198. data/lib/anthropic/models/model_retrieve_params.rb +22 -0
  199. data/lib/anthropic/models/not_found_error.rb +21 -0
  200. data/lib/anthropic/models/overloaded_error.rb +21 -0
  201. data/lib/anthropic/models/permission_error.rb +21 -0
  202. data/lib/anthropic/models/plain_text_source.rb +27 -0
  203. data/lib/anthropic/models/rate_limit_error.rb +21 -0
  204. data/lib/anthropic/models/raw_content_block_delta.rb +24 -0
  205. data/lib/anthropic/models/raw_content_block_delta_event.rb +27 -0
  206. data/lib/anthropic/models/raw_content_block_start_event.rb +49 -0
  207. data/lib/anthropic/models/raw_content_block_stop_event.rb +21 -0
  208. data/lib/anthropic/models/raw_message_delta_event.rb +64 -0
  209. data/lib/anthropic/models/raw_message_start_event.rb +21 -0
  210. data/lib/anthropic/models/raw_message_stop_event.rb +15 -0
  211. data/lib/anthropic/models/raw_message_stream_event.rb +26 -0
  212. data/lib/anthropic/models/redacted_thinking_block.rb +21 -0
  213. data/lib/anthropic/models/redacted_thinking_block_param.rb +21 -0
  214. data/lib/anthropic/models/server_tool_usage.rb +16 -0
  215. data/lib/anthropic/models/server_tool_use_block.rb +33 -0
  216. data/lib/anthropic/models/server_tool_use_block_param.rb +44 -0
  217. data/lib/anthropic/models/signature_delta.rb +21 -0
  218. data/lib/anthropic/models/stop_reason.rb +19 -0
  219. data/lib/anthropic/models/text_block.rb +41 -0
  220. data/lib/anthropic/models/text_block_param.rb +39 -0
  221. data/lib/anthropic/models/text_citation.rb +22 -0
  222. data/lib/anthropic/models/text_citation_param.rb +22 -0
  223. data/lib/anthropic/models/text_delta.rb +21 -0
  224. data/lib/anthropic/models/thinking_block.rb +27 -0
  225. data/lib/anthropic/models/thinking_block_param.rb +27 -0
  226. data/lib/anthropic/models/thinking_config_disabled.rb +15 -0
  227. data/lib/anthropic/models/thinking_config_enabled.rb +34 -0
  228. data/lib/anthropic/models/thinking_config_param.rb +27 -0
  229. data/lib/anthropic/models/thinking_delta.rb +21 -0
  230. data/lib/anthropic/models/tool.rb +92 -0
  231. data/lib/anthropic/models/tool_bash_20250124.rb +36 -0
  232. data/lib/anthropic/models/tool_choice.rb +28 -0
  233. data/lib/anthropic/models/tool_choice_any.rb +31 -0
  234. data/lib/anthropic/models/tool_choice_auto.rb +31 -0
  235. data/lib/anthropic/models/tool_choice_none.rb +17 -0
  236. data/lib/anthropic/models/tool_choice_tool.rb +39 -0
  237. data/lib/anthropic/models/tool_result_block_param.rb +73 -0
  238. data/lib/anthropic/models/tool_text_editor_20250124.rb +36 -0
  239. data/lib/anthropic/models/tool_union.rb +20 -0
  240. data/lib/anthropic/models/tool_use_block.rb +33 -0
  241. data/lib/anthropic/models/tool_use_block_param.rb +44 -0
  242. data/lib/anthropic/models/url_image_source.rb +21 -0
  243. data/lib/anthropic/models/url_pdf_source.rb +21 -0
  244. data/lib/anthropic/models/usage.rb +48 -0
  245. data/lib/anthropic/models/web_search_result_block.rb +39 -0
  246. data/lib/anthropic/models/web_search_result_block_param.rb +39 -0
  247. data/lib/anthropic/models/web_search_tool_20250305.rb +122 -0
  248. data/lib/anthropic/models/web_search_tool_request_error.rb +35 -0
  249. data/lib/anthropic/models/web_search_tool_result_block.rb +27 -0
  250. data/lib/anthropic/models/web_search_tool_result_block_content.rb +19 -0
  251. data/lib/anthropic/models/web_search_tool_result_block_param.rb +37 -0
  252. data/lib/anthropic/models/web_search_tool_result_block_param_content.rb +20 -0
  253. data/lib/anthropic/models/web_search_tool_result_error.rb +35 -0
  254. data/lib/anthropic/models.rb +261 -0
  255. data/lib/anthropic/request_options.rb +77 -0
  256. data/lib/anthropic/resources/beta/messages/batches.rb +218 -0
  257. data/lib/anthropic/resources/beta/messages.rb +200 -0
  258. data/lib/anthropic/resources/beta/models.rb +80 -0
  259. data/lib/anthropic/resources/beta.rb +22 -0
  260. data/lib/anthropic/resources/completions.rb +132 -0
  261. data/lib/anthropic/resources/messages/batches.rb +193 -0
  262. data/lib/anthropic/resources/messages.rb +184 -0
  263. data/lib/anthropic/resources/models.rb +78 -0
  264. data/lib/anthropic/version.rb +3 -1
  265. data/lib/anthropic/vertex.rb +5 -0
  266. data/lib/anthropic.rb +286 -47
  267. data/manifest.yaml +15 -0
  268. data/rbi/anthropic/bedrock.rbi +5 -0
  269. data/rbi/anthropic/client.rbi +74 -0
  270. data/rbi/anthropic/errors.rbi +162 -0
  271. data/rbi/anthropic/file_part.rbi +37 -0
  272. data/rbi/anthropic/helpers/bedrock/client.rbi +82 -0
  273. data/rbi/anthropic/helpers/vertex/client.rbi +58 -0
  274. data/rbi/anthropic/internal/jsonl_stream.rbi +17 -0
  275. data/rbi/anthropic/internal/page.rbi +28 -0
  276. data/rbi/anthropic/internal/stream.rbi +20 -0
  277. data/rbi/anthropic/internal/transport/base_client.rbi +310 -0
  278. data/rbi/anthropic/internal/transport/pooled_net_requester.rbi +79 -0
  279. data/rbi/anthropic/internal/type/array_of.rbi +104 -0
  280. data/rbi/anthropic/internal/type/base_model.rbi +304 -0
  281. data/rbi/anthropic/internal/type/base_page.rbi +42 -0
  282. data/rbi/anthropic/internal/type/base_stream.rbi +68 -0
  283. data/rbi/anthropic/internal/type/boolean.rbi +56 -0
  284. data/rbi/anthropic/internal/type/converter.rbi +162 -0
  285. data/rbi/anthropic/internal/type/enum.rbi +82 -0
  286. data/rbi/anthropic/internal/type/file_input.rbi +59 -0
  287. data/rbi/anthropic/internal/type/hash_of.rbi +104 -0
  288. data/rbi/anthropic/internal/type/request_parameters.rbi +29 -0
  289. data/rbi/anthropic/internal/type/union.rbi +116 -0
  290. data/rbi/anthropic/internal/type/unknown.rbi +56 -0
  291. data/rbi/anthropic/internal/util.rbi +485 -0
  292. data/rbi/anthropic/internal.rbi +18 -0
  293. data/rbi/anthropic/models/anthropic_beta.rbi +54 -0
  294. data/rbi/anthropic/models/api_error_object.rbi +26 -0
  295. data/rbi/anthropic/models/authentication_error.rbi +26 -0
  296. data/rbi/anthropic/models/base64_image_source.rbi +82 -0
  297. data/rbi/anthropic/models/base64_pdf_source.rbi +35 -0
  298. data/rbi/anthropic/models/beta/beta_base64_image_source.rbi +95 -0
  299. data/rbi/anthropic/models/beta/beta_base64_pdf_block.rbi +134 -0
  300. data/rbi/anthropic/models/beta/beta_base64_pdf_source.rbi +42 -0
  301. data/rbi/anthropic/models/beta/beta_cache_control_ephemeral.rbi +30 -0
  302. data/rbi/anthropic/models/beta/beta_citation_char_location.rbi +72 -0
  303. data/rbi/anthropic/models/beta/beta_citation_char_location_param.rbi +72 -0
  304. data/rbi/anthropic/models/beta/beta_citation_content_block_location.rbi +72 -0
  305. data/rbi/anthropic/models/beta/beta_citation_content_block_location_param.rbi +73 -0
  306. data/rbi/anthropic/models/beta/beta_citation_page_location.rbi +72 -0
  307. data/rbi/anthropic/models/beta/beta_citation_page_location_param.rbi +72 -0
  308. data/rbi/anthropic/models/beta/beta_citation_web_search_result_location_param.rbi +67 -0
  309. data/rbi/anthropic/models/beta/beta_citations_config_param.rbi +33 -0
  310. data/rbi/anthropic/models/beta/beta_citations_delta.rbi +73 -0
  311. data/rbi/anthropic/models/beta/beta_citations_web_search_result_location.rbi +67 -0
  312. data/rbi/anthropic/models/beta/beta_content_block.rbi +33 -0
  313. data/rbi/anthropic/models/beta/beta_content_block_param.rbi +36 -0
  314. data/rbi/anthropic/models/beta/beta_content_block_source.rbi +80 -0
  315. data/rbi/anthropic/models/beta/beta_content_block_source_content.rbi +29 -0
  316. data/rbi/anthropic/models/beta/beta_image_block_param.rbi +101 -0
  317. data/rbi/anthropic/models/beta/beta_input_json_delta.rbi +35 -0
  318. data/rbi/anthropic/models/beta/beta_message.rbi +245 -0
  319. data/rbi/anthropic/models/beta/beta_message_delta_usage.rbi +85 -0
  320. data/rbi/anthropic/models/beta/beta_message_param.rbi +99 -0
  321. data/rbi/anthropic/models/beta/beta_message_tokens_count.rbi +36 -0
  322. data/rbi/anthropic/models/beta/beta_metadata.rbi +39 -0
  323. data/rbi/anthropic/models/beta/beta_model_info.rbi +66 -0
  324. data/rbi/anthropic/models/beta/beta_plain_text_source.rbi +42 -0
  325. data/rbi/anthropic/models/beta/beta_raw_content_block_delta.rbi +32 -0
  326. data/rbi/anthropic/models/beta/beta_raw_content_block_delta_event.rbi +57 -0
  327. data/rbi/anthropic/models/beta/beta_raw_content_block_start_event.rbi +89 -0
  328. data/rbi/anthropic/models/beta/beta_raw_content_block_stop_event.rbi +33 -0
  329. data/rbi/anthropic/models/beta/beta_raw_message_delta_event.rbi +135 -0
  330. data/rbi/anthropic/models/beta/beta_raw_message_start_event.rbi +45 -0
  331. data/rbi/anthropic/models/beta/beta_raw_message_stop_event.rbi +30 -0
  332. data/rbi/anthropic/models/beta/beta_raw_message_stream_event.rbi +33 -0
  333. data/rbi/anthropic/models/beta/beta_redacted_thinking_block.rbi +33 -0
  334. data/rbi/anthropic/models/beta/beta_redacted_thinking_block_param.rbi +33 -0
  335. data/rbi/anthropic/models/beta/beta_server_tool_usage.rbi +34 -0
  336. data/rbi/anthropic/models/beta/beta_server_tool_use_block.rbi +50 -0
  337. data/rbi/anthropic/models/beta/beta_server_tool_use_block_param.rbi +78 -0
  338. data/rbi/anthropic/models/beta/beta_signature_delta.rbi +35 -0
  339. data/rbi/anthropic/models/beta/beta_stop_reason.rbi +37 -0
  340. data/rbi/anthropic/models/beta/beta_text_block.rbi +78 -0
  341. data/rbi/anthropic/models/beta/beta_text_block_param.rbi +105 -0
  342. data/rbi/anthropic/models/beta/beta_text_citation.rbi +31 -0
  343. data/rbi/anthropic/models/beta/beta_text_citation_param.rbi +31 -0
  344. data/rbi/anthropic/models/beta/beta_text_delta.rbi +30 -0
  345. data/rbi/anthropic/models/beta/beta_thinking_block.rbi +44 -0
  346. data/rbi/anthropic/models/beta/beta_thinking_block_param.rbi +44 -0
  347. data/rbi/anthropic/models/beta/beta_thinking_config_disabled.rbi +30 -0
  348. data/rbi/anthropic/models/beta/beta_thinking_config_enabled.rbi +56 -0
  349. data/rbi/anthropic/models/beta/beta_thinking_config_param.rbi +38 -0
  350. data/rbi/anthropic/models/beta/beta_thinking_delta.rbi +33 -0
  351. data/rbi/anthropic/models/beta/beta_tool.rbi +165 -0
  352. data/rbi/anthropic/models/beta/beta_tool_bash_20241022.rbi +72 -0
  353. data/rbi/anthropic/models/beta/beta_tool_bash_20250124.rbi +72 -0
  354. data/rbi/anthropic/models/beta/beta_tool_choice.rbi +31 -0
  355. data/rbi/anthropic/models/beta/beta_tool_choice_any.rbi +56 -0
  356. data/rbi/anthropic/models/beta/beta_tool_choice_auto.rbi +56 -0
  357. data/rbi/anthropic/models/beta/beta_tool_choice_none.rbi +31 -0
  358. data/rbi/anthropic/models/beta/beta_tool_choice_tool.rbi +68 -0
  359. data/rbi/anthropic/models/beta/beta_tool_computer_use_20241022.rbi +96 -0
  360. data/rbi/anthropic/models/beta/beta_tool_computer_use_20250124.rbi +96 -0
  361. data/rbi/anthropic/models/beta/beta_tool_result_block_param.rbi +152 -0
  362. data/rbi/anthropic/models/beta/beta_tool_text_editor_20241022.rbi +72 -0
  363. data/rbi/anthropic/models/beta/beta_tool_text_editor_20250124.rbi +72 -0
  364. data/rbi/anthropic/models/beta/beta_tool_union.rbi +33 -0
  365. data/rbi/anthropic/models/beta/beta_tool_use_block.rbi +50 -0
  366. data/rbi/anthropic/models/beta/beta_tool_use_block_param.rbi +78 -0
  367. data/rbi/anthropic/models/beta/beta_url_image_source.rbi +33 -0
  368. data/rbi/anthropic/models/beta/beta_url_pdf_source.rbi +33 -0
  369. data/rbi/anthropic/models/beta/beta_usage.rbi +82 -0
  370. data/rbi/anthropic/models/beta/beta_web_search_result_block.rbi +66 -0
  371. data/rbi/anthropic/models/beta/beta_web_search_result_block_param.rbi +66 -0
  372. data/rbi/anthropic/models/beta/beta_web_search_tool_20250305.rbi +201 -0
  373. data/rbi/anthropic/models/beta/beta_web_search_tool_request_error.rbi +100 -0
  374. data/rbi/anthropic/models/beta/beta_web_search_tool_result_block.rbi +59 -0
  375. data/rbi/anthropic/models/beta/beta_web_search_tool_result_block_content.rbi +40 -0
  376. data/rbi/anthropic/models/beta/beta_web_search_tool_result_block_param.rbi +89 -0
  377. data/rbi/anthropic/models/beta/beta_web_search_tool_result_block_param_content.rbi +40 -0
  378. data/rbi/anthropic/models/beta/beta_web_search_tool_result_error.rbi +100 -0
  379. data/rbi/anthropic/models/beta/message_count_tokens_params.rbi +649 -0
  380. data/rbi/anthropic/models/beta/message_create_params.rbi +748 -0
  381. data/rbi/anthropic/models/beta/messages/batch_cancel_params.rbi +65 -0
  382. data/rbi/anthropic/models/beta/messages/batch_create_params.rbi +897 -0
  383. data/rbi/anthropic/models/beta/messages/batch_delete_params.rbi +65 -0
  384. data/rbi/anthropic/models/beta/messages/batch_list_params.rbi +106 -0
  385. data/rbi/anthropic/models/beta/messages/batch_results_params.rbi +65 -0
  386. data/rbi/anthropic/models/beta/messages/batch_retrieve_params.rbi +65 -0
  387. data/rbi/anthropic/models/beta/messages/beta_deleted_message_batch.rbi +44 -0
  388. data/rbi/anthropic/models/beta/messages/beta_message_batch.rbi +214 -0
  389. data/rbi/anthropic/models/beta/messages/beta_message_batch_canceled_result.rbi +30 -0
  390. data/rbi/anthropic/models/beta/messages/beta_message_batch_errored_result.rbi +45 -0
  391. data/rbi/anthropic/models/beta/messages/beta_message_batch_expired_result.rbi +30 -0
  392. data/rbi/anthropic/models/beta/messages/beta_message_batch_individual_response.rbi +77 -0
  393. data/rbi/anthropic/models/beta/messages/beta_message_batch_request_counts.rbi +92 -0
  394. data/rbi/anthropic/models/beta/messages/beta_message_batch_result.rbi +38 -0
  395. data/rbi/anthropic/models/beta/messages/beta_message_batch_succeeded_result.rbi +45 -0
  396. data/rbi/anthropic/models/beta/model_list_params.rbi +103 -0
  397. data/rbi/anthropic/models/beta/model_retrieve_params.rbi +62 -0
  398. data/rbi/anthropic/models/beta_api_error.rbi +26 -0
  399. data/rbi/anthropic/models/beta_authentication_error.rbi +29 -0
  400. data/rbi/anthropic/models/beta_billing_error.rbi +26 -0
  401. data/rbi/anthropic/models/beta_error.rbi +28 -0
  402. data/rbi/anthropic/models/beta_error_response.rbi +46 -0
  403. data/rbi/anthropic/models/beta_gateway_timeout_error.rbi +29 -0
  404. data/rbi/anthropic/models/beta_invalid_request_error.rbi +29 -0
  405. data/rbi/anthropic/models/beta_not_found_error.rbi +26 -0
  406. data/rbi/anthropic/models/beta_overloaded_error.rbi +26 -0
  407. data/rbi/anthropic/models/beta_permission_error.rbi +26 -0
  408. data/rbi/anthropic/models/beta_rate_limit_error.rbi +26 -0
  409. data/rbi/anthropic/models/billing_error.rbi +26 -0
  410. data/rbi/anthropic/models/cache_control_ephemeral.rbi +23 -0
  411. data/rbi/anthropic/models/citation_char_location.rbi +65 -0
  412. data/rbi/anthropic/models/citation_char_location_param.rbi +68 -0
  413. data/rbi/anthropic/models/citation_content_block_location.rbi +68 -0
  414. data/rbi/anthropic/models/citation_content_block_location_param.rbi +68 -0
  415. data/rbi/anthropic/models/citation_page_location.rbi +65 -0
  416. data/rbi/anthropic/models/citation_page_location_param.rbi +68 -0
  417. data/rbi/anthropic/models/citation_web_search_result_location_param.rbi +62 -0
  418. data/rbi/anthropic/models/citations_config_param.rbi +26 -0
  419. data/rbi/anthropic/models/citations_delta.rbi +66 -0
  420. data/rbi/anthropic/models/citations_web_search_result_location.rbi +62 -0
  421. data/rbi/anthropic/models/completion.rbi +93 -0
  422. data/rbi/anthropic/models/completion_create_params.rbi +217 -0
  423. data/rbi/anthropic/models/content_block.rbi +25 -0
  424. data/rbi/anthropic/models/content_block_param.rbi +28 -0
  425. data/rbi/anthropic/models/content_block_source.rbi +66 -0
  426. data/rbi/anthropic/models/content_block_source_content.rbi +22 -0
  427. data/rbi/anthropic/models/document_block_param.rbi +120 -0
  428. data/rbi/anthropic/models/error_object.rbi +28 -0
  429. data/rbi/anthropic/models/error_response.rbi +46 -0
  430. data/rbi/anthropic/models/gateway_timeout_error.rbi +26 -0
  431. data/rbi/anthropic/models/image_block_param.rbi +80 -0
  432. data/rbi/anthropic/models/input_json_delta.rbi +28 -0
  433. data/rbi/anthropic/models/invalid_request_error.rbi +26 -0
  434. data/rbi/anthropic/models/message.rbi +236 -0
  435. data/rbi/anthropic/models/message_count_tokens_params.rbi +571 -0
  436. data/rbi/anthropic/models/message_count_tokens_tool.rbi +25 -0
  437. data/rbi/anthropic/models/message_create_params.rbi +697 -0
  438. data/rbi/anthropic/models/message_delta_usage.rbi +76 -0
  439. data/rbi/anthropic/models/message_param.rbi +81 -0
  440. data/rbi/anthropic/models/message_tokens_count.rbi +29 -0
  441. data/rbi/anthropic/models/messages/batch_cancel_params.rbi +32 -0
  442. data/rbi/anthropic/models/messages/batch_create_params.rbi +843 -0
  443. data/rbi/anthropic/models/messages/batch_delete_params.rbi +32 -0
  444. data/rbi/anthropic/models/messages/batch_list_params.rbi +81 -0
  445. data/rbi/anthropic/models/messages/batch_results_params.rbi +32 -0
  446. data/rbi/anthropic/models/messages/batch_retrieve_params.rbi +32 -0
  447. data/rbi/anthropic/models/messages/deleted_message_batch.rbi +42 -0
  448. data/rbi/anthropic/models/messages/message_batch.rbi +208 -0
  449. data/rbi/anthropic/models/messages/message_batch_canceled_result.rbi +30 -0
  450. data/rbi/anthropic/models/messages/message_batch_errored_result.rbi +42 -0
  451. data/rbi/anthropic/models/messages/message_batch_expired_result.rbi +30 -0
  452. data/rbi/anthropic/models/messages/message_batch_individual_response.rbi +74 -0
  453. data/rbi/anthropic/models/messages/message_batch_request_counts.rbi +92 -0
  454. data/rbi/anthropic/models/messages/message_batch_result.rbi +36 -0
  455. data/rbi/anthropic/models/messages/message_batch_succeeded_result.rbi +40 -0
  456. data/rbi/anthropic/models/metadata.rbi +35 -0
  457. data/rbi/anthropic/models/model.rbi +68 -0
  458. data/rbi/anthropic/models/model_info.rbi +62 -0
  459. data/rbi/anthropic/models/model_list_params.rbi +95 -0
  460. data/rbi/anthropic/models/model_retrieve_params.rbi +54 -0
  461. data/rbi/anthropic/models/not_found_error.rbi +26 -0
  462. data/rbi/anthropic/models/overloaded_error.rbi +26 -0
  463. data/rbi/anthropic/models/permission_error.rbi +26 -0
  464. data/rbi/anthropic/models/plain_text_source.rbi +35 -0
  465. data/rbi/anthropic/models/rate_limit_error.rbi +26 -0
  466. data/rbi/anthropic/models/raw_content_block_delta.rbi +26 -0
  467. data/rbi/anthropic/models/raw_content_block_delta_event.rbi +53 -0
  468. data/rbi/anthropic/models/raw_content_block_start_event.rbi +83 -0
  469. data/rbi/anthropic/models/raw_content_block_stop_event.rbi +29 -0
  470. data/rbi/anthropic/models/raw_message_delta_event.rbi +119 -0
  471. data/rbi/anthropic/models/raw_message_start_event.rbi +33 -0
  472. data/rbi/anthropic/models/raw_message_stop_event.rbi +23 -0
  473. data/rbi/anthropic/models/raw_message_stream_event.rbi +27 -0
  474. data/rbi/anthropic/models/redacted_thinking_block.rbi +26 -0
  475. data/rbi/anthropic/models/redacted_thinking_block_param.rbi +29 -0
  476. data/rbi/anthropic/models/server_tool_usage.rbi +27 -0
  477. data/rbi/anthropic/models/server_tool_use_block.rbi +43 -0
  478. data/rbi/anthropic/models/server_tool_use_block_param.rbi +71 -0
  479. data/rbi/anthropic/models/signature_delta.rbi +26 -0
  480. data/rbi/anthropic/models/stop_reason.rbi +23 -0
  481. data/rbi/anthropic/models/text_block.rbi +67 -0
  482. data/rbi/anthropic/models/text_block_param.rbi +95 -0
  483. data/rbi/anthropic/models/text_citation.rbi +23 -0
  484. data/rbi/anthropic/models/text_citation_param.rbi +23 -0
  485. data/rbi/anthropic/models/text_delta.rbi +26 -0
  486. data/rbi/anthropic/models/thinking_block.rbi +35 -0
  487. data/rbi/anthropic/models/thinking_block_param.rbi +35 -0
  488. data/rbi/anthropic/models/thinking_config_disabled.rbi +23 -0
  489. data/rbi/anthropic/models/thinking_config_enabled.rbi +49 -0
  490. data/rbi/anthropic/models/thinking_config_param.rbi +32 -0
  491. data/rbi/anthropic/models/thinking_delta.rbi +26 -0
  492. data/rbi/anthropic/models/tool.rbi +142 -0
  493. data/rbi/anthropic/models/tool_bash_20250124.rbi +62 -0
  494. data/rbi/anthropic/models/tool_choice.rbi +25 -0
  495. data/rbi/anthropic/models/tool_choice_any.rbi +49 -0
  496. data/rbi/anthropic/models/tool_choice_auto.rbi +49 -0
  497. data/rbi/anthropic/models/tool_choice_none.rbi +24 -0
  498. data/rbi/anthropic/models/tool_choice_tool.rbi +57 -0
  499. data/rbi/anthropic/models/tool_result_block_param.rbi +127 -0
  500. data/rbi/anthropic/models/tool_text_editor_20250124.rbi +62 -0
  501. data/rbi/anthropic/models/tool_union.rbi +23 -0
  502. data/rbi/anthropic/models/tool_use_block.rbi +43 -0
  503. data/rbi/anthropic/models/tool_use_block_param.rbi +68 -0
  504. data/rbi/anthropic/models/url_image_source.rbi +26 -0
  505. data/rbi/anthropic/models/url_pdf_source.rbi +26 -0
  506. data/rbi/anthropic/models/usage.rbi +74 -0
  507. data/rbi/anthropic/models/web_search_result_block.rbi +59 -0
  508. data/rbi/anthropic/models/web_search_result_block_param.rbi +62 -0
  509. data/rbi/anthropic/models/web_search_tool_20250305.rbi +181 -0
  510. data/rbi/anthropic/models/web_search_tool_request_error.rbi +88 -0
  511. data/rbi/anthropic/models/web_search_tool_result_block.rbi +50 -0
  512. data/rbi/anthropic/models/web_search_tool_result_block_content.rbi +31 -0
  513. data/rbi/anthropic/models/web_search_tool_result_block_param.rbi +80 -0
  514. data/rbi/anthropic/models/web_search_tool_result_block_param_content.rbi +33 -0
  515. data/rbi/anthropic/models/web_search_tool_result_error.rbi +90 -0
  516. data/rbi/anthropic/models.rbi +229 -0
  517. data/rbi/anthropic/request_options.rbi +59 -0
  518. data/rbi/anthropic/resources/beta/messages/batches.rbi +186 -0
  519. data/rbi/anthropic/resources/beta/messages.rbi +830 -0
  520. data/rbi/anthropic/resources/beta/models.rbi +64 -0
  521. data/rbi/anthropic/resources/beta.rbi +18 -0
  522. data/rbi/anthropic/resources/completions.rbi +199 -0
  523. data/rbi/anthropic/resources/messages/batches.rbi +156 -0
  524. data/rbi/anthropic/resources/messages.rbi +806 -0
  525. data/rbi/anthropic/resources/models.rbi +62 -0
  526. data/rbi/anthropic/version.rbi +5 -0
  527. data/rbi/anthropic/vertex.rbi +5 -0
  528. data/sig/anthropic/bedrock.rbs +3 -0
  529. data/sig/anthropic/client.rbs +39 -0
  530. data/sig/anthropic/errors.rbs +101 -0
  531. data/sig/anthropic/file_part.rbs +21 -0
  532. data/sig/anthropic/helpers/bedrock/client.rbs +43 -0
  533. data/sig/anthropic/helpers/vertex/client.rbs +36 -0
  534. data/sig/anthropic/internal/jsonl_stream.rbs +9 -0
  535. data/sig/anthropic/internal/page.rbs +17 -0
  536. data/sig/anthropic/internal/stream.rbs +9 -0
  537. data/sig/anthropic/internal/transport/base_client.rbs +131 -0
  538. data/sig/anthropic/internal/transport/pooled_net_requester.rbs +45 -0
  539. data/sig/anthropic/internal/type/array_of.rbs +48 -0
  540. data/sig/anthropic/internal/type/base_model.rbs +102 -0
  541. data/sig/anthropic/internal/type/base_page.rbs +24 -0
  542. data/sig/anthropic/internal/type/base_stream.rbs +33 -0
  543. data/sig/anthropic/internal/type/boolean.rbs +26 -0
  544. data/sig/anthropic/internal/type/converter.rbs +56 -0
  545. data/sig/anthropic/internal/type/enum.rbs +32 -0
  546. data/sig/anthropic/internal/type/file_input.rbs +25 -0
  547. data/sig/anthropic/internal/type/hash_of.rbs +48 -0
  548. data/sig/anthropic/internal/type/request_parameters.rbs +19 -0
  549. data/sig/anthropic/internal/type/union.rbs +52 -0
  550. data/sig/anthropic/internal/type/unknown.rbs +26 -0
  551. data/sig/anthropic/internal/util.rbs +185 -0
  552. data/sig/anthropic/internal.rbs +9 -0
  553. data/sig/anthropic/models/anthropic_beta.rbs +29 -0
  554. data/sig/anthropic/models/api_error_object.rbs +13 -0
  555. data/sig/anthropic/models/authentication_error.rbs +13 -0
  556. data/sig/anthropic/models/base64_image_source.rbs +38 -0
  557. data/sig/anthropic/models/base64_pdf_source.rbs +20 -0
  558. data/sig/anthropic/models/beta/beta_base64_image_source.rbs +42 -0
  559. data/sig/anthropic/models/beta/beta_base64_pdf_block.rbs +56 -0
  560. data/sig/anthropic/models/beta/beta_base64_pdf_source.rbs +24 -0
  561. data/sig/anthropic/models/beta/beta_cache_control_ephemeral.rbs +15 -0
  562. data/sig/anthropic/models/beta/beta_citation_char_location.rbs +40 -0
  563. data/sig/anthropic/models/beta/beta_citation_char_location_param.rbs +40 -0
  564. data/sig/anthropic/models/beta/beta_citation_content_block_location.rbs +40 -0
  565. data/sig/anthropic/models/beta/beta_citation_content_block_location_param.rbs +40 -0
  566. data/sig/anthropic/models/beta/beta_citation_page_location.rbs +40 -0
  567. data/sig/anthropic/models/beta/beta_citation_page_location_param.rbs +40 -0
  568. data/sig/anthropic/models/beta/beta_citation_web_search_result_location_param.rbs +36 -0
  569. data/sig/anthropic/models/beta/beta_citations_config_param.rbs +17 -0
  570. data/sig/anthropic/models/beta/beta_citations_delta.rbs +36 -0
  571. data/sig/anthropic/models/beta/beta_citations_web_search_result_location.rbs +36 -0
  572. data/sig/anthropic/models/beta/beta_content_block.rbs +21 -0
  573. data/sig/anthropic/models/beta/beta_content_block_param.rbs +24 -0
  574. data/sig/anthropic/models/beta/beta_content_block_source.rbs +36 -0
  575. data/sig/anthropic/models/beta/beta_content_block_source_content.rbs +17 -0
  576. data/sig/anthropic/models/beta/beta_image_block_param.rbs +38 -0
  577. data/sig/anthropic/models/beta/beta_input_json_delta.rbs +18 -0
  578. data/sig/anthropic/models/beta/beta_message.rbs +48 -0
  579. data/sig/anthropic/models/beta/beta_message_delta_usage.rbs +36 -0
  580. data/sig/anthropic/models/beta/beta_message_param.rbs +46 -0
  581. data/sig/anthropic/models/beta/beta_message_tokens_count.rbs +15 -0
  582. data/sig/anthropic/models/beta/beta_metadata.rbs +15 -0
  583. data/sig/anthropic/models/beta/beta_model_info.rbs +27 -0
  584. data/sig/anthropic/models/beta/beta_plain_text_source.rbs +24 -0
  585. data/sig/anthropic/models/beta/beta_raw_content_block_delta.rbs +20 -0
  586. data/sig/anthropic/models/beta/beta_raw_content_block_delta_event.rbs +28 -0
  587. data/sig/anthropic/models/beta/beta_raw_content_block_start_event.rbs +42 -0
  588. data/sig/anthropic/models/beta/beta_raw_content_block_stop_event.rbs +18 -0
  589. data/sig/anthropic/models/beta/beta_raw_message_delta_event.rbs +45 -0
  590. data/sig/anthropic/models/beta/beta_raw_message_start_event.rbs +21 -0
  591. data/sig/anthropic/models/beta/beta_raw_message_stop_event.rbs +15 -0
  592. data/sig/anthropic/models/beta/beta_raw_message_stream_event.rbs +21 -0
  593. data/sig/anthropic/models/beta/beta_redacted_thinking_block.rbs +18 -0
  594. data/sig/anthropic/models/beta/beta_redacted_thinking_block_param.rbs +18 -0
  595. data/sig/anthropic/models/beta/beta_server_tool_usage.rbs +15 -0
  596. data/sig/anthropic/models/beta/beta_server_tool_use_block.rbs +27 -0
  597. data/sig/anthropic/models/beta/beta_server_tool_use_block_param.rbs +36 -0
  598. data/sig/anthropic/models/beta/beta_signature_delta.rbs +17 -0
  599. data/sig/anthropic/models/beta/beta_stop_reason.rbs +28 -0
  600. data/sig/anthropic/models/beta/beta_text_block.rbs +28 -0
  601. data/sig/anthropic/models/beta/beta_text_block_param.rbs +32 -0
  602. data/sig/anthropic/models/beta/beta_text_citation.rbs +19 -0
  603. data/sig/anthropic/models/beta/beta_text_citation_param.rbs +19 -0
  604. data/sig/anthropic/models/beta/beta_text_delta.rbs +17 -0
  605. data/sig/anthropic/models/beta/beta_thinking_block.rbs +24 -0
  606. data/sig/anthropic/models/beta/beta_thinking_block_param.rbs +24 -0
  607. data/sig/anthropic/models/beta/beta_thinking_config_disabled.rbs +15 -0
  608. data/sig/anthropic/models/beta/beta_thinking_config_enabled.rbs +18 -0
  609. data/sig/anthropic/models/beta/beta_thinking_config_param.rbs +17 -0
  610. data/sig/anthropic/models/beta/beta_thinking_delta.rbs +17 -0
  611. data/sig/anthropic/models/beta/beta_tool.rbs +58 -0
  612. data/sig/anthropic/models/beta/beta_tool_bash_20241022.rbs +28 -0
  613. data/sig/anthropic/models/beta/beta_tool_bash_20250124.rbs +28 -0
  614. data/sig/anthropic/models/beta/beta_tool_choice.rbs +19 -0
  615. data/sig/anthropic/models/beta/beta_tool_choice_any.rbs +20 -0
  616. data/sig/anthropic/models/beta/beta_tool_choice_auto.rbs +20 -0
  617. data/sig/anthropic/models/beta/beta_tool_choice_none.rbs +15 -0
  618. data/sig/anthropic/models/beta/beta_tool_choice_tool.rbs +26 -0
  619. data/sig/anthropic/models/beta/beta_tool_computer_use_20241022.rbs +40 -0
  620. data/sig/anthropic/models/beta/beta_tool_computer_use_20250124.rbs +40 -0
  621. data/sig/anthropic/models/beta/beta_tool_result_block_param.rbs +64 -0
  622. data/sig/anthropic/models/beta/beta_tool_text_editor_20241022.rbs +28 -0
  623. data/sig/anthropic/models/beta/beta_tool_text_editor_20250124.rbs +28 -0
  624. data/sig/anthropic/models/beta/beta_tool_union.rbs +23 -0
  625. data/sig/anthropic/models/beta/beta_tool_use_block.rbs +27 -0
  626. data/sig/anthropic/models/beta/beta_tool_use_block_param.rbs +36 -0
  627. data/sig/anthropic/models/beta/beta_url_image_source.rbs +17 -0
  628. data/sig/anthropic/models/beta/beta_url_pdf_source.rbs +17 -0
  629. data/sig/anthropic/models/beta/beta_usage.rbs +36 -0
  630. data/sig/anthropic/models/beta/beta_web_search_result_block.rbs +36 -0
  631. data/sig/anthropic/models/beta/beta_web_search_result_block_param.rbs +36 -0
  632. data/sig/anthropic/models/beta/beta_web_search_tool_20250305.rbs +73 -0
  633. data/sig/anthropic/models/beta/beta_web_search_tool_request_error.rbs +43 -0
  634. data/sig/anthropic/models/beta/beta_web_search_tool_result_block.rbs +28 -0
  635. data/sig/anthropic/models/beta/beta_web_search_tool_result_block_content.rbs +19 -0
  636. data/sig/anthropic/models/beta/beta_web_search_tool_result_block_param.rbs +32 -0
  637. data/sig/anthropic/models/beta/beta_web_search_tool_result_block_param_content.rbs +19 -0
  638. data/sig/anthropic/models/beta/beta_web_search_tool_result_error.rbs +43 -0
  639. data/sig/anthropic/models/beta/message_count_tokens_params.rbs +93 -0
  640. data/sig/anthropic/models/beta/message_create_params.rbs +113 -0
  641. data/sig/anthropic/models/beta/messages/batch_cancel_params.rbs +27 -0
  642. data/sig/anthropic/models/beta/messages/batch_create_params.rbs +152 -0
  643. data/sig/anthropic/models/beta/messages/batch_delete_params.rbs +27 -0
  644. data/sig/anthropic/models/beta/messages/batch_list_params.rbs +47 -0
  645. data/sig/anthropic/models/beta/messages/batch_results_params.rbs +27 -0
  646. data/sig/anthropic/models/beta/messages/batch_retrieve_params.rbs +27 -0
  647. data/sig/anthropic/models/beta/messages/beta_deleted_message_batch.rbs +18 -0
  648. data/sig/anthropic/models/beta/messages/beta_message_batch.rbs +68 -0
  649. data/sig/anthropic/models/beta/messages/beta_message_batch_canceled_result.rbs +15 -0
  650. data/sig/anthropic/models/beta/messages/beta_message_batch_errored_result.rbs +21 -0
  651. data/sig/anthropic/models/beta/messages/beta_message_batch_expired_result.rbs +15 -0
  652. data/sig/anthropic/models/beta/messages/beta_message_batch_individual_response.rbs +24 -0
  653. data/sig/anthropic/models/beta/messages/beta_message_batch_request_counts.rbs +36 -0
  654. data/sig/anthropic/models/beta/messages/beta_message_batch_result.rbs +19 -0
  655. data/sig/anthropic/models/beta/messages/beta_message_batch_succeeded_result.rbs +21 -0
  656. data/sig/anthropic/models/beta/model_list_params.rbs +45 -0
  657. data/sig/anthropic/models/beta/model_retrieve_params.rbs +25 -0
  658. data/sig/anthropic/models/beta_api_error.rbs +13 -0
  659. data/sig/anthropic/models/beta_authentication_error.rbs +14 -0
  660. data/sig/anthropic/models/beta_billing_error.rbs +13 -0
  661. data/sig/anthropic/models/beta_error.rbs +20 -0
  662. data/sig/anthropic/models/beta_error_response.rbs +17 -0
  663. data/sig/anthropic/models/beta_gateway_timeout_error.rbs +13 -0
  664. data/sig/anthropic/models/beta_invalid_request_error.rbs +14 -0
  665. data/sig/anthropic/models/beta_not_found_error.rbs +13 -0
  666. data/sig/anthropic/models/beta_overloaded_error.rbs +13 -0
  667. data/sig/anthropic/models/beta_permission_error.rbs +13 -0
  668. data/sig/anthropic/models/beta_rate_limit_error.rbs +13 -0
  669. data/sig/anthropic/models/billing_error.rbs +13 -0
  670. data/sig/anthropic/models/cache_control_ephemeral.rbs +11 -0
  671. data/sig/anthropic/models/citation_char_location.rbs +36 -0
  672. data/sig/anthropic/models/citation_char_location_param.rbs +36 -0
  673. data/sig/anthropic/models/citation_content_block_location.rbs +36 -0
  674. data/sig/anthropic/models/citation_content_block_location_param.rbs +36 -0
  675. data/sig/anthropic/models/citation_page_location.rbs +36 -0
  676. data/sig/anthropic/models/citation_page_location_param.rbs +36 -0
  677. data/sig/anthropic/models/citation_web_search_result_location_param.rbs +32 -0
  678. data/sig/anthropic/models/citations_config_param.rbs +13 -0
  679. data/sig/anthropic/models/citations_delta.rbs +29 -0
  680. data/sig/anthropic/models/citations_web_search_result_location.rbs +32 -0
  681. data/sig/anthropic/models/completion.rbs +32 -0
  682. data/sig/anthropic/models/completion_create_params.rbs +67 -0
  683. data/sig/anthropic/models/content_block.rbs +17 -0
  684. data/sig/anthropic/models/content_block_param.rbs +20 -0
  685. data/sig/anthropic/models/content_block_source.rbs +28 -0
  686. data/sig/anthropic/models/content_block_source_content.rbs +12 -0
  687. data/sig/anthropic/models/document_block_param.rbs +52 -0
  688. data/sig/anthropic/models/error_object.rbs +20 -0
  689. data/sig/anthropic/models/error_response.rbs +17 -0
  690. data/sig/anthropic/models/gateway_timeout_error.rbs +13 -0
  691. data/sig/anthropic/models/image_block_param.rbs +32 -0
  692. data/sig/anthropic/models/input_json_delta.rbs +13 -0
  693. data/sig/anthropic/models/invalid_request_error.rbs +14 -0
  694. data/sig/anthropic/models/message.rbs +44 -0
  695. data/sig/anthropic/models/message_count_tokens_params.rbs +67 -0
  696. data/sig/anthropic/models/message_count_tokens_tool.rbs +15 -0
  697. data/sig/anthropic/models/message_create_params.rbs +101 -0
  698. data/sig/anthropic/models/message_delta_usage.rbs +32 -0
  699. data/sig/anthropic/models/message_param.rbs +41 -0
  700. data/sig/anthropic/models/message_tokens_count.rbs +11 -0
  701. data/sig/anthropic/models/messages/batch_cancel_params.rbs +15 -0
  702. data/sig/anthropic/models/messages/batch_create_params.rbs +137 -0
  703. data/sig/anthropic/models/messages/batch_delete_params.rbs +15 -0
  704. data/sig/anthropic/models/messages/batch_list_params.rbs +33 -0
  705. data/sig/anthropic/models/messages/batch_results_params.rbs +15 -0
  706. data/sig/anthropic/models/messages/batch_retrieve_params.rbs +15 -0
  707. data/sig/anthropic/models/messages/deleted_message_batch.rbs +15 -0
  708. data/sig/anthropic/models/messages/message_batch.rbs +68 -0
  709. data/sig/anthropic/models/messages/message_batch_canceled_result.rbs +15 -0
  710. data/sig/anthropic/models/messages/message_batch_errored_result.rbs +21 -0
  711. data/sig/anthropic/models/messages/message_batch_expired_result.rbs +15 -0
  712. data/sig/anthropic/models/messages/message_batch_individual_response.rbs +24 -0
  713. data/sig/anthropic/models/messages/message_batch_request_counts.rbs +36 -0
  714. data/sig/anthropic/models/messages/message_batch_result.rbs +19 -0
  715. data/sig/anthropic/models/messages/message_batch_succeeded_result.rbs +18 -0
  716. data/sig/anthropic/models/metadata.rbs +11 -0
  717. data/sig/anthropic/models/model.rbs +61 -0
  718. data/sig/anthropic/models/model_info.rbs +23 -0
  719. data/sig/anthropic/models/model_list_params.rbs +43 -0
  720. data/sig/anthropic/models/model_retrieve_params.rbs +23 -0
  721. data/sig/anthropic/models/not_found_error.rbs +13 -0
  722. data/sig/anthropic/models/overloaded_error.rbs +13 -0
  723. data/sig/anthropic/models/permission_error.rbs +13 -0
  724. data/sig/anthropic/models/plain_text_source.rbs +20 -0
  725. data/sig/anthropic/models/rate_limit_error.rbs +13 -0
  726. data/sig/anthropic/models/raw_content_block_delta.rbs +16 -0
  727. data/sig/anthropic/models/raw_content_block_delta_event.rbs +24 -0
  728. data/sig/anthropic/models/raw_content_block_start_event.rbs +38 -0
  729. data/sig/anthropic/models/raw_content_block_stop_event.rbs +14 -0
  730. data/sig/anthropic/models/raw_message_delta_event.rbs +38 -0
  731. data/sig/anthropic/models/raw_message_start_event.rbs +17 -0
  732. data/sig/anthropic/models/raw_message_stop_event.rbs +11 -0
  733. data/sig/anthropic/models/raw_message_stream_event.rbs +17 -0
  734. data/sig/anthropic/models/redacted_thinking_block.rbs +13 -0
  735. data/sig/anthropic/models/redacted_thinking_block_param.rbs +14 -0
  736. data/sig/anthropic/models/server_tool_usage.rbs +11 -0
  737. data/sig/anthropic/models/server_tool_use_block.rbs +23 -0
  738. data/sig/anthropic/models/server_tool_use_block_param.rbs +32 -0
  739. data/sig/anthropic/models/signature_delta.rbs +13 -0
  740. data/sig/anthropic/models/stop_reason.rbs +24 -0
  741. data/sig/anthropic/models/text_block.rbs +24 -0
  742. data/sig/anthropic/models/text_block_param.rbs +28 -0
  743. data/sig/anthropic/models/text_citation.rbs +15 -0
  744. data/sig/anthropic/models/text_citation_param.rbs +15 -0
  745. data/sig/anthropic/models/text_delta.rbs +13 -0
  746. data/sig/anthropic/models/thinking_block.rbs +20 -0
  747. data/sig/anthropic/models/thinking_block_param.rbs +20 -0
  748. data/sig/anthropic/models/thinking_config_disabled.rbs +11 -0
  749. data/sig/anthropic/models/thinking_config_enabled.rbs +13 -0
  750. data/sig/anthropic/models/thinking_config_param.rbs +12 -0
  751. data/sig/anthropic/models/thinking_delta.rbs +13 -0
  752. data/sig/anthropic/models/tool.rbs +54 -0
  753. data/sig/anthropic/models/tool_bash_20250124.rbs +24 -0
  754. data/sig/anthropic/models/tool_choice.rbs +15 -0
  755. data/sig/anthropic/models/tool_choice_any.rbs +15 -0
  756. data/sig/anthropic/models/tool_choice_auto.rbs +15 -0
  757. data/sig/anthropic/models/tool_choice_none.rbs +11 -0
  758. data/sig/anthropic/models/tool_choice_tool.rbs +22 -0
  759. data/sig/anthropic/models/tool_result_block_param.rbs +57 -0
  760. data/sig/anthropic/models/tool_text_editor_20250124.rbs +24 -0
  761. data/sig/anthropic/models/tool_union.rbs +15 -0
  762. data/sig/anthropic/models/tool_use_block.rbs +23 -0
  763. data/sig/anthropic/models/tool_use_block_param.rbs +32 -0
  764. data/sig/anthropic/models/url_image_source.rbs +13 -0
  765. data/sig/anthropic/models/url_pdf_source.rbs +13 -0
  766. data/sig/anthropic/models/usage.rbs +32 -0
  767. data/sig/anthropic/models/web_search_result_block.rbs +32 -0
  768. data/sig/anthropic/models/web_search_result_block_param.rbs +32 -0
  769. data/sig/anthropic/models/web_search_tool_20250305.rbs +69 -0
  770. data/sig/anthropic/models/web_search_tool_request_error.rbs +39 -0
  771. data/sig/anthropic/models/web_search_tool_result_block.rbs +24 -0
  772. data/sig/anthropic/models/web_search_tool_result_block_content.rbs +15 -0
  773. data/sig/anthropic/models/web_search_tool_result_block_param.rbs +28 -0
  774. data/sig/anthropic/models/web_search_tool_result_block_param_content.rbs +15 -0
  775. data/sig/anthropic/models/web_search_tool_result_error.rbs +39 -0
  776. data/sig/anthropic/models.rbs +221 -0
  777. data/sig/anthropic/request_options.rbs +34 -0
  778. data/sig/anthropic/resources/beta/messages/batches.rbs +49 -0
  779. data/sig/anthropic/resources/beta/messages.rbs +56 -0
  780. data/sig/anthropic/resources/beta/models.rbs +23 -0
  781. data/sig/anthropic/resources/beta.rbs +11 -0
  782. data/sig/anthropic/resources/completions.rbs +33 -0
  783. data/sig/anthropic/resources/messages/batches.rbs +41 -0
  784. data/sig/anthropic/resources/messages.rbs +51 -0
  785. data/sig/anthropic/resources/models.rbs +21 -0
  786. data/sig/anthropic/version.rbs +3 -0
  787. data/sig/anthropic/vertex.rbs +3 -0
  788. metadata +801 -56
  789. data/.circleci/config.yml +0 -45
  790. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  791. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
  792. data/.github/dependabot.yml +0 -15
  793. data/.gitignore +0 -16
  794. data/.rspec +0 -3
  795. data/.rubocop.yml +0 -26
  796. data/CODE_OF_CONDUCT.md +0 -74
  797. data/CONTRIBUTING.md +0 -3
  798. data/Gemfile +0 -12
  799. data/Gemfile.lock +0 -84
  800. data/LICENSE.txt +0 -21
  801. data/Rakefile +0 -6
  802. data/anthropic.gemspec +0 -30
  803. data/bin/console +0 -14
  804. data/bin/setup +0 -8
  805. data/lib/anthropic/compatibility.rb +0 -9
  806. data/lib/anthropic/http.rb +0 -93
  807. data/lib/ruby/anthropic.rb +0 -2
  808. data/pull_request_template.md +0 -5
@@ -0,0 +1,830 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Messages
7
+ sig { returns(Anthropic::Resources::Beta::Messages::Batches) }
8
+ attr_reader :batches
9
+
10
+ # See {Anthropic::Resources::Beta::Messages#stream_raw} for streaming counterpart.
11
+ #
12
+ # Send a structured list of input messages with text and/or image content, and the
13
+ # model will generate the next message in the conversation.
14
+ #
15
+ # The Messages API can be used for either single queries or stateless multi-turn
16
+ # conversations.
17
+ #
18
+ # Learn more about the Messages API in our [user guide](/en/docs/initial-setup)
19
+ sig do
20
+ params(
21
+ max_tokens: Integer,
22
+ messages: T::Array[Anthropic::Beta::BetaMessageParam::OrHash],
23
+ model: T.any(Anthropic::Model::OrSymbol, String),
24
+ metadata: Anthropic::Beta::BetaMetadata::OrHash,
25
+ stop_sequences: T::Array[String],
26
+ system_: Anthropic::Beta::MessageCreateParams::System::Variants,
27
+ temperature: Float,
28
+ thinking:
29
+ T.any(
30
+ Anthropic::Beta::BetaThinkingConfigEnabled::OrHash,
31
+ Anthropic::Beta::BetaThinkingConfigDisabled::OrHash
32
+ ),
33
+ tool_choice:
34
+ T.any(
35
+ Anthropic::Beta::BetaToolChoiceAuto::OrHash,
36
+ Anthropic::Beta::BetaToolChoiceAny::OrHash,
37
+ Anthropic::Beta::BetaToolChoiceTool::OrHash,
38
+ Anthropic::Beta::BetaToolChoiceNone::OrHash
39
+ ),
40
+ tools:
41
+ T::Array[
42
+ T.any(
43
+ Anthropic::Beta::BetaTool::OrHash,
44
+ Anthropic::Beta::BetaToolComputerUse20241022::OrHash,
45
+ Anthropic::Beta::BetaToolBash20241022::OrHash,
46
+ Anthropic::Beta::BetaToolTextEditor20241022::OrHash,
47
+ Anthropic::Beta::BetaToolComputerUse20250124::OrHash,
48
+ Anthropic::Beta::BetaToolBash20250124::OrHash,
49
+ Anthropic::Beta::BetaToolTextEditor20250124::OrHash,
50
+ Anthropic::Beta::BetaWebSearchTool20250305::OrHash
51
+ )
52
+ ],
53
+ top_k: Integer,
54
+ top_p: Float,
55
+ betas: T::Array[T.any(String, Anthropic::AnthropicBeta::OrSymbol)],
56
+ stream: T.noreturn,
57
+ request_options: Anthropic::RequestOptions::OrHash
58
+ ).returns(Anthropic::Beta::BetaMessage)
59
+ end
60
+ def create(
61
+ # Body param: The maximum number of tokens to generate before stopping.
62
+ #
63
+ # Note that our models may stop _before_ reaching this maximum. This parameter
64
+ # only specifies the absolute maximum number of tokens to generate.
65
+ #
66
+ # Different models have different maximum values for this parameter. See
67
+ # [models](https://docs.anthropic.com/en/docs/models-overview) for details.
68
+ max_tokens:,
69
+ # Body param: Input messages.
70
+ #
71
+ # Our models are trained to operate on alternating `user` and `assistant`
72
+ # conversational turns. When creating a new `Message`, you specify the prior
73
+ # conversational turns with the `messages` parameter, and the model then generates
74
+ # the next `Message` in the conversation. Consecutive `user` or `assistant` turns
75
+ # in your request will be combined into a single turn.
76
+ #
77
+ # Each input message must be an object with a `role` and `content`. You can
78
+ # specify a single `user`-role message, or you can include multiple `user` and
79
+ # `assistant` messages.
80
+ #
81
+ # If the final message uses the `assistant` role, the response content will
82
+ # continue immediately from the content in that message. This can be used to
83
+ # constrain part of the model's response.
84
+ #
85
+ # Example with a single `user` message:
86
+ #
87
+ # ```json
88
+ # [{ "role": "user", "content": "Hello, Claude" }]
89
+ # ```
90
+ #
91
+ # Example with multiple conversational turns:
92
+ #
93
+ # ```json
94
+ # [
95
+ # { "role": "user", "content": "Hello there." },
96
+ # { "role": "assistant", "content": "Hi, I'm Claude. How can I help you?" },
97
+ # { "role": "user", "content": "Can you explain LLMs in plain English?" }
98
+ # ]
99
+ # ```
100
+ #
101
+ # Example with a partially-filled response from Claude:
102
+ #
103
+ # ```json
104
+ # [
105
+ # {
106
+ # "role": "user",
107
+ # "content": "What's the Greek name for Sun? (A) Sol (B) Helios (C) Sun"
108
+ # },
109
+ # { "role": "assistant", "content": "The best answer is (" }
110
+ # ]
111
+ # ```
112
+ #
113
+ # Each input message `content` may be either a single `string` or an array of
114
+ # content blocks, where each block has a specific `type`. Using a `string` for
115
+ # `content` is shorthand for an array of one content block of type `"text"`. The
116
+ # following input messages are equivalent:
117
+ #
118
+ # ```json
119
+ # { "role": "user", "content": "Hello, Claude" }
120
+ # ```
121
+ #
122
+ # ```json
123
+ # { "role": "user", "content": [{ "type": "text", "text": "Hello, Claude" }] }
124
+ # ```
125
+ #
126
+ # Starting with Claude 3 models, you can also send image content blocks:
127
+ #
128
+ # ```json
129
+ # {
130
+ # "role": "user",
131
+ # "content": [
132
+ # {
133
+ # "type": "image",
134
+ # "source": {
135
+ # "type": "base64",
136
+ # "media_type": "image/jpeg",
137
+ # "data": "/9j/4AAQSkZJRg..."
138
+ # }
139
+ # },
140
+ # { "type": "text", "text": "What is in this image?" }
141
+ # ]
142
+ # }
143
+ # ```
144
+ #
145
+ # We currently support the `base64` source type for images, and the `image/jpeg`,
146
+ # `image/png`, `image/gif`, and `image/webp` media types.
147
+ #
148
+ # See [examples](https://docs.anthropic.com/en/api/messages-examples#vision) for
149
+ # more input examples.
150
+ #
151
+ # Note that if you want to include a
152
+ # [system prompt](https://docs.anthropic.com/en/docs/system-prompts), you can use
153
+ # the top-level `system` parameter — there is no `"system"` role for input
154
+ # messages in the Messages API.
155
+ #
156
+ # There is a limit of 100000 messages in a single request.
157
+ messages:,
158
+ # Body param: The model that will complete your prompt.\n\nSee
159
+ # [models](https://docs.anthropic.com/en/docs/models-overview) for additional
160
+ # details and options.
161
+ model:,
162
+ # Body param: An object describing metadata about the request.
163
+ metadata: nil,
164
+ # Body param: Custom text sequences that will cause the model to stop generating.
165
+ #
166
+ # Our models will normally stop when they have naturally completed their turn,
167
+ # which will result in a response `stop_reason` of `"end_turn"`.
168
+ #
169
+ # If you want the model to stop generating when it encounters custom strings of
170
+ # text, you can use the `stop_sequences` parameter. If the model encounters one of
171
+ # the custom sequences, the response `stop_reason` value will be `"stop_sequence"`
172
+ # and the response `stop_sequence` value will contain the matched stop sequence.
173
+ stop_sequences: nil,
174
+ # Body param: System prompt.
175
+ #
176
+ # A system prompt is a way of providing context and instructions to Claude, such
177
+ # as specifying a particular goal or role. See our
178
+ # [guide to system prompts](https://docs.anthropic.com/en/docs/system-prompts).
179
+ system_: nil,
180
+ # Body param: Amount of randomness injected into the response.
181
+ #
182
+ # Defaults to `1.0`. Ranges from `0.0` to `1.0`. Use `temperature` closer to `0.0`
183
+ # for analytical / multiple choice, and closer to `1.0` for creative and
184
+ # generative tasks.
185
+ #
186
+ # Note that even with `temperature` of `0.0`, the results will not be fully
187
+ # deterministic.
188
+ temperature: nil,
189
+ # Body param: Configuration for enabling Claude's extended thinking.
190
+ #
191
+ # When enabled, responses include `thinking` content blocks showing Claude's
192
+ # thinking process before the final answer. Requires a minimum budget of 1,024
193
+ # tokens and counts towards your `max_tokens` limit.
194
+ #
195
+ # See
196
+ # [extended thinking](https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking)
197
+ # for details.
198
+ thinking: nil,
199
+ # Body param: How the model should use the provided tools. The model can use a
200
+ # specific tool, any available tool, decide by itself, or not use tools at all.
201
+ tool_choice: nil,
202
+ # Body param: Definitions of tools that the model may use.
203
+ #
204
+ # If you include `tools` in your API request, the model may return `tool_use`
205
+ # content blocks that represent the model's use of those tools. You can then run
206
+ # those tools using the tool input generated by the model and then optionally
207
+ # return results back to the model using `tool_result` content blocks.
208
+ #
209
+ # Each tool definition includes:
210
+ #
211
+ # - `name`: Name of the tool.
212
+ # - `description`: Optional, but strongly-recommended description of the tool.
213
+ # - `input_schema`: [JSON schema](https://json-schema.org/draft/2020-12) for the
214
+ # tool `input` shape that the model will produce in `tool_use` output content
215
+ # blocks.
216
+ #
217
+ # For example, if you defined `tools` as:
218
+ #
219
+ # ```json
220
+ # [
221
+ # {
222
+ # "name": "get_stock_price",
223
+ # "description": "Get the current stock price for a given ticker symbol.",
224
+ # "input_schema": {
225
+ # "type": "object",
226
+ # "properties": {
227
+ # "ticker": {
228
+ # "type": "string",
229
+ # "description": "The stock ticker symbol, e.g. AAPL for Apple Inc."
230
+ # }
231
+ # },
232
+ # "required": ["ticker"]
233
+ # }
234
+ # }
235
+ # ]
236
+ # ```
237
+ #
238
+ # And then asked the model "What's the S&P 500 at today?", the model might produce
239
+ # `tool_use` content blocks in the response like this:
240
+ #
241
+ # ```json
242
+ # [
243
+ # {
244
+ # "type": "tool_use",
245
+ # "id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
246
+ # "name": "get_stock_price",
247
+ # "input": { "ticker": "^GSPC" }
248
+ # }
249
+ # ]
250
+ # ```
251
+ #
252
+ # You might then run your `get_stock_price` tool with `{"ticker": "^GSPC"}` as an
253
+ # input, and return the following back to the model in a subsequent `user`
254
+ # message:
255
+ #
256
+ # ```json
257
+ # [
258
+ # {
259
+ # "type": "tool_result",
260
+ # "tool_use_id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
261
+ # "content": "259.75 USD"
262
+ # }
263
+ # ]
264
+ # ```
265
+ #
266
+ # Tools can be used for workflows that include running client-side tools and
267
+ # functions, or more generally whenever you want the model to produce a particular
268
+ # JSON structure of output.
269
+ #
270
+ # See our [guide](https://docs.anthropic.com/en/docs/tool-use) for more details.
271
+ tools: nil,
272
+ # Body param: Only sample from the top K options for each subsequent token.
273
+ #
274
+ # Used to remove "long tail" low probability responses.
275
+ # [Learn more technical details here](https://towardsdatascience.com/how-to-sample-from-language-models-682bceb97277).
276
+ #
277
+ # Recommended for advanced use cases only. You usually only need to use
278
+ # `temperature`.
279
+ top_k: nil,
280
+ # Body param: Use nucleus sampling.
281
+ #
282
+ # In nucleus sampling, we compute the cumulative distribution over all the options
283
+ # for each subsequent token in decreasing probability order and cut it off once it
284
+ # reaches a particular probability specified by `top_p`. You should either alter
285
+ # `temperature` or `top_p`, but not both.
286
+ #
287
+ # Recommended for advanced use cases only. You usually only need to use
288
+ # `temperature`.
289
+ top_p: nil,
290
+ # Header param: Optional header to specify the beta version(s) you want to use.
291
+ betas: nil,
292
+ # There is no need to provide `stream:`. Instead, use `#stream_raw` or `#create`
293
+ # for streaming and non-streaming use cases, respectively.
294
+ stream: false,
295
+ request_options: {}
296
+ )
297
+ end
298
+
299
+ # See {Anthropic::Resources::Beta::Messages#create} for non-streaming counterpart.
300
+ #
301
+ # Send a structured list of input messages with text and/or image content, and the
302
+ # model will generate the next message in the conversation.
303
+ #
304
+ # The Messages API can be used for either single queries or stateless multi-turn
305
+ # conversations.
306
+ #
307
+ # Learn more about the Messages API in our [user guide](/en/docs/initial-setup)
308
+ sig do
309
+ params(
310
+ max_tokens: Integer,
311
+ messages: T::Array[Anthropic::Beta::BetaMessageParam::OrHash],
312
+ model: T.any(Anthropic::Model::OrSymbol, String),
313
+ metadata: Anthropic::Beta::BetaMetadata::OrHash,
314
+ stop_sequences: T::Array[String],
315
+ system_: Anthropic::Beta::MessageCreateParams::System::Variants,
316
+ temperature: Float,
317
+ thinking:
318
+ T.any(
319
+ Anthropic::Beta::BetaThinkingConfigEnabled::OrHash,
320
+ Anthropic::Beta::BetaThinkingConfigDisabled::OrHash
321
+ ),
322
+ tool_choice:
323
+ T.any(
324
+ Anthropic::Beta::BetaToolChoiceAuto::OrHash,
325
+ Anthropic::Beta::BetaToolChoiceAny::OrHash,
326
+ Anthropic::Beta::BetaToolChoiceTool::OrHash,
327
+ Anthropic::Beta::BetaToolChoiceNone::OrHash
328
+ ),
329
+ tools:
330
+ T::Array[
331
+ T.any(
332
+ Anthropic::Beta::BetaTool::OrHash,
333
+ Anthropic::Beta::BetaToolComputerUse20241022::OrHash,
334
+ Anthropic::Beta::BetaToolBash20241022::OrHash,
335
+ Anthropic::Beta::BetaToolTextEditor20241022::OrHash,
336
+ Anthropic::Beta::BetaToolComputerUse20250124::OrHash,
337
+ Anthropic::Beta::BetaToolBash20250124::OrHash,
338
+ Anthropic::Beta::BetaToolTextEditor20250124::OrHash,
339
+ Anthropic::Beta::BetaWebSearchTool20250305::OrHash
340
+ )
341
+ ],
342
+ top_k: Integer,
343
+ top_p: Float,
344
+ betas: T::Array[T.any(String, Anthropic::AnthropicBeta::OrSymbol)],
345
+ stream: T.noreturn,
346
+ request_options: Anthropic::RequestOptions::OrHash
347
+ ).returns(
348
+ Anthropic::Internal::Stream[
349
+ Anthropic::Beta::BetaRawMessageStreamEvent::Variants
350
+ ]
351
+ )
352
+ end
353
+ def stream_raw(
354
+ # Body param: The maximum number of tokens to generate before stopping.
355
+ #
356
+ # Note that our models may stop _before_ reaching this maximum. This parameter
357
+ # only specifies the absolute maximum number of tokens to generate.
358
+ #
359
+ # Different models have different maximum values for this parameter. See
360
+ # [models](https://docs.anthropic.com/en/docs/models-overview) for details.
361
+ max_tokens:,
362
+ # Body param: Input messages.
363
+ #
364
+ # Our models are trained to operate on alternating `user` and `assistant`
365
+ # conversational turns. When creating a new `Message`, you specify the prior
366
+ # conversational turns with the `messages` parameter, and the model then generates
367
+ # the next `Message` in the conversation. Consecutive `user` or `assistant` turns
368
+ # in your request will be combined into a single turn.
369
+ #
370
+ # Each input message must be an object with a `role` and `content`. You can
371
+ # specify a single `user`-role message, or you can include multiple `user` and
372
+ # `assistant` messages.
373
+ #
374
+ # If the final message uses the `assistant` role, the response content will
375
+ # continue immediately from the content in that message. This can be used to
376
+ # constrain part of the model's response.
377
+ #
378
+ # Example with a single `user` message:
379
+ #
380
+ # ```json
381
+ # [{ "role": "user", "content": "Hello, Claude" }]
382
+ # ```
383
+ #
384
+ # Example with multiple conversational turns:
385
+ #
386
+ # ```json
387
+ # [
388
+ # { "role": "user", "content": "Hello there." },
389
+ # { "role": "assistant", "content": "Hi, I'm Claude. How can I help you?" },
390
+ # { "role": "user", "content": "Can you explain LLMs in plain English?" }
391
+ # ]
392
+ # ```
393
+ #
394
+ # Example with a partially-filled response from Claude:
395
+ #
396
+ # ```json
397
+ # [
398
+ # {
399
+ # "role": "user",
400
+ # "content": "What's the Greek name for Sun? (A) Sol (B) Helios (C) Sun"
401
+ # },
402
+ # { "role": "assistant", "content": "The best answer is (" }
403
+ # ]
404
+ # ```
405
+ #
406
+ # Each input message `content` may be either a single `string` or an array of
407
+ # content blocks, where each block has a specific `type`. Using a `string` for
408
+ # `content` is shorthand for an array of one content block of type `"text"`. The
409
+ # following input messages are equivalent:
410
+ #
411
+ # ```json
412
+ # { "role": "user", "content": "Hello, Claude" }
413
+ # ```
414
+ #
415
+ # ```json
416
+ # { "role": "user", "content": [{ "type": "text", "text": "Hello, Claude" }] }
417
+ # ```
418
+ #
419
+ # Starting with Claude 3 models, you can also send image content blocks:
420
+ #
421
+ # ```json
422
+ # {
423
+ # "role": "user",
424
+ # "content": [
425
+ # {
426
+ # "type": "image",
427
+ # "source": {
428
+ # "type": "base64",
429
+ # "media_type": "image/jpeg",
430
+ # "data": "/9j/4AAQSkZJRg..."
431
+ # }
432
+ # },
433
+ # { "type": "text", "text": "What is in this image?" }
434
+ # ]
435
+ # }
436
+ # ```
437
+ #
438
+ # We currently support the `base64` source type for images, and the `image/jpeg`,
439
+ # `image/png`, `image/gif`, and `image/webp` media types.
440
+ #
441
+ # See [examples](https://docs.anthropic.com/en/api/messages-examples#vision) for
442
+ # more input examples.
443
+ #
444
+ # Note that if you want to include a
445
+ # [system prompt](https://docs.anthropic.com/en/docs/system-prompts), you can use
446
+ # the top-level `system` parameter — there is no `"system"` role for input
447
+ # messages in the Messages API.
448
+ #
449
+ # There is a limit of 100000 messages in a single request.
450
+ messages:,
451
+ # Body param: The model that will complete your prompt.\n\nSee
452
+ # [models](https://docs.anthropic.com/en/docs/models-overview) for additional
453
+ # details and options.
454
+ model:,
455
+ # Body param: An object describing metadata about the request.
456
+ metadata: nil,
457
+ # Body param: Custom text sequences that will cause the model to stop generating.
458
+ #
459
+ # Our models will normally stop when they have naturally completed their turn,
460
+ # which will result in a response `stop_reason` of `"end_turn"`.
461
+ #
462
+ # If you want the model to stop generating when it encounters custom strings of
463
+ # text, you can use the `stop_sequences` parameter. If the model encounters one of
464
+ # the custom sequences, the response `stop_reason` value will be `"stop_sequence"`
465
+ # and the response `stop_sequence` value will contain the matched stop sequence.
466
+ stop_sequences: nil,
467
+ # Body param: System prompt.
468
+ #
469
+ # A system prompt is a way of providing context and instructions to Claude, such
470
+ # as specifying a particular goal or role. See our
471
+ # [guide to system prompts](https://docs.anthropic.com/en/docs/system-prompts).
472
+ system_: nil,
473
+ # Body param: Amount of randomness injected into the response.
474
+ #
475
+ # Defaults to `1.0`. Ranges from `0.0` to `1.0`. Use `temperature` closer to `0.0`
476
+ # for analytical / multiple choice, and closer to `1.0` for creative and
477
+ # generative tasks.
478
+ #
479
+ # Note that even with `temperature` of `0.0`, the results will not be fully
480
+ # deterministic.
481
+ temperature: nil,
482
+ # Body param: Configuration for enabling Claude's extended thinking.
483
+ #
484
+ # When enabled, responses include `thinking` content blocks showing Claude's
485
+ # thinking process before the final answer. Requires a minimum budget of 1,024
486
+ # tokens and counts towards your `max_tokens` limit.
487
+ #
488
+ # See
489
+ # [extended thinking](https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking)
490
+ # for details.
491
+ thinking: nil,
492
+ # Body param: How the model should use the provided tools. The model can use a
493
+ # specific tool, any available tool, decide by itself, or not use tools at all.
494
+ tool_choice: nil,
495
+ # Body param: Definitions of tools that the model may use.
496
+ #
497
+ # If you include `tools` in your API request, the model may return `tool_use`
498
+ # content blocks that represent the model's use of those tools. You can then run
499
+ # those tools using the tool input generated by the model and then optionally
500
+ # return results back to the model using `tool_result` content blocks.
501
+ #
502
+ # Each tool definition includes:
503
+ #
504
+ # - `name`: Name of the tool.
505
+ # - `description`: Optional, but strongly-recommended description of the tool.
506
+ # - `input_schema`: [JSON schema](https://json-schema.org/draft/2020-12) for the
507
+ # tool `input` shape that the model will produce in `tool_use` output content
508
+ # blocks.
509
+ #
510
+ # For example, if you defined `tools` as:
511
+ #
512
+ # ```json
513
+ # [
514
+ # {
515
+ # "name": "get_stock_price",
516
+ # "description": "Get the current stock price for a given ticker symbol.",
517
+ # "input_schema": {
518
+ # "type": "object",
519
+ # "properties": {
520
+ # "ticker": {
521
+ # "type": "string",
522
+ # "description": "The stock ticker symbol, e.g. AAPL for Apple Inc."
523
+ # }
524
+ # },
525
+ # "required": ["ticker"]
526
+ # }
527
+ # }
528
+ # ]
529
+ # ```
530
+ #
531
+ # And then asked the model "What's the S&P 500 at today?", the model might produce
532
+ # `tool_use` content blocks in the response like this:
533
+ #
534
+ # ```json
535
+ # [
536
+ # {
537
+ # "type": "tool_use",
538
+ # "id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
539
+ # "name": "get_stock_price",
540
+ # "input": { "ticker": "^GSPC" }
541
+ # }
542
+ # ]
543
+ # ```
544
+ #
545
+ # You might then run your `get_stock_price` tool with `{"ticker": "^GSPC"}` as an
546
+ # input, and return the following back to the model in a subsequent `user`
547
+ # message:
548
+ #
549
+ # ```json
550
+ # [
551
+ # {
552
+ # "type": "tool_result",
553
+ # "tool_use_id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
554
+ # "content": "259.75 USD"
555
+ # }
556
+ # ]
557
+ # ```
558
+ #
559
+ # Tools can be used for workflows that include running client-side tools and
560
+ # functions, or more generally whenever you want the model to produce a particular
561
+ # JSON structure of output.
562
+ #
563
+ # See our [guide](https://docs.anthropic.com/en/docs/tool-use) for more details.
564
+ tools: nil,
565
+ # Body param: Only sample from the top K options for each subsequent token.
566
+ #
567
+ # Used to remove "long tail" low probability responses.
568
+ # [Learn more technical details here](https://towardsdatascience.com/how-to-sample-from-language-models-682bceb97277).
569
+ #
570
+ # Recommended for advanced use cases only. You usually only need to use
571
+ # `temperature`.
572
+ top_k: nil,
573
+ # Body param: Use nucleus sampling.
574
+ #
575
+ # In nucleus sampling, we compute the cumulative distribution over all the options
576
+ # for each subsequent token in decreasing probability order and cut it off once it
577
+ # reaches a particular probability specified by `top_p`. You should either alter
578
+ # `temperature` or `top_p`, but not both.
579
+ #
580
+ # Recommended for advanced use cases only. You usually only need to use
581
+ # `temperature`.
582
+ top_p: nil,
583
+ # Header param: Optional header to specify the beta version(s) you want to use.
584
+ betas: nil,
585
+ # There is no need to provide `stream:`. Instead, use `#stream_raw` or `#create`
586
+ # for streaming and non-streaming use cases, respectively.
587
+ stream: true,
588
+ request_options: {}
589
+ )
590
+ end
591
+
592
+ # Count the number of tokens in a Message.
593
+ #
594
+ # The Token Count API can be used to count the number of tokens in a Message,
595
+ # including tools, images, and documents, without creating it.
596
+ #
597
+ # Learn more about token counting in our
598
+ # [user guide](/en/docs/build-with-claude/token-counting)
599
+ sig do
600
+ params(
601
+ messages: T::Array[Anthropic::Beta::BetaMessageParam::OrHash],
602
+ model: T.any(Anthropic::Model::OrSymbol, String),
603
+ system_:
604
+ Anthropic::Beta::MessageCountTokensParams::System::Variants,
605
+ thinking:
606
+ T.any(
607
+ Anthropic::Beta::BetaThinkingConfigEnabled::OrHash,
608
+ Anthropic::Beta::BetaThinkingConfigDisabled::OrHash
609
+ ),
610
+ tool_choice:
611
+ T.any(
612
+ Anthropic::Beta::BetaToolChoiceAuto::OrHash,
613
+ Anthropic::Beta::BetaToolChoiceAny::OrHash,
614
+ Anthropic::Beta::BetaToolChoiceTool::OrHash,
615
+ Anthropic::Beta::BetaToolChoiceNone::OrHash
616
+ ),
617
+ tools:
618
+ T::Array[
619
+ T.any(
620
+ Anthropic::Beta::BetaTool::OrHash,
621
+ Anthropic::Beta::BetaToolComputerUse20241022::OrHash,
622
+ Anthropic::Beta::BetaToolBash20241022::OrHash,
623
+ Anthropic::Beta::BetaToolTextEditor20241022::OrHash,
624
+ Anthropic::Beta::BetaToolComputerUse20250124::OrHash,
625
+ Anthropic::Beta::BetaToolBash20250124::OrHash,
626
+ Anthropic::Beta::BetaToolTextEditor20250124::OrHash,
627
+ Anthropic::Beta::BetaWebSearchTool20250305::OrHash
628
+ )
629
+ ],
630
+ betas: T::Array[T.any(String, Anthropic::AnthropicBeta::OrSymbol)],
631
+ request_options: Anthropic::RequestOptions::OrHash
632
+ ).returns(Anthropic::Beta::BetaMessageTokensCount)
633
+ end
634
+ def count_tokens(
635
+ # Body param: Input messages.
636
+ #
637
+ # Our models are trained to operate on alternating `user` and `assistant`
638
+ # conversational turns. When creating a new `Message`, you specify the prior
639
+ # conversational turns with the `messages` parameter, and the model then generates
640
+ # the next `Message` in the conversation. Consecutive `user` or `assistant` turns
641
+ # in your request will be combined into a single turn.
642
+ #
643
+ # Each input message must be an object with a `role` and `content`. You can
644
+ # specify a single `user`-role message, or you can include multiple `user` and
645
+ # `assistant` messages.
646
+ #
647
+ # If the final message uses the `assistant` role, the response content will
648
+ # continue immediately from the content in that message. This can be used to
649
+ # constrain part of the model's response.
650
+ #
651
+ # Example with a single `user` message:
652
+ #
653
+ # ```json
654
+ # [{ "role": "user", "content": "Hello, Claude" }]
655
+ # ```
656
+ #
657
+ # Example with multiple conversational turns:
658
+ #
659
+ # ```json
660
+ # [
661
+ # { "role": "user", "content": "Hello there." },
662
+ # { "role": "assistant", "content": "Hi, I'm Claude. How can I help you?" },
663
+ # { "role": "user", "content": "Can you explain LLMs in plain English?" }
664
+ # ]
665
+ # ```
666
+ #
667
+ # Example with a partially-filled response from Claude:
668
+ #
669
+ # ```json
670
+ # [
671
+ # {
672
+ # "role": "user",
673
+ # "content": "What's the Greek name for Sun? (A) Sol (B) Helios (C) Sun"
674
+ # },
675
+ # { "role": "assistant", "content": "The best answer is (" }
676
+ # ]
677
+ # ```
678
+ #
679
+ # Each input message `content` may be either a single `string` or an array of
680
+ # content blocks, where each block has a specific `type`. Using a `string` for
681
+ # `content` is shorthand for an array of one content block of type `"text"`. The
682
+ # following input messages are equivalent:
683
+ #
684
+ # ```json
685
+ # { "role": "user", "content": "Hello, Claude" }
686
+ # ```
687
+ #
688
+ # ```json
689
+ # { "role": "user", "content": [{ "type": "text", "text": "Hello, Claude" }] }
690
+ # ```
691
+ #
692
+ # Starting with Claude 3 models, you can also send image content blocks:
693
+ #
694
+ # ```json
695
+ # {
696
+ # "role": "user",
697
+ # "content": [
698
+ # {
699
+ # "type": "image",
700
+ # "source": {
701
+ # "type": "base64",
702
+ # "media_type": "image/jpeg",
703
+ # "data": "/9j/4AAQSkZJRg..."
704
+ # }
705
+ # },
706
+ # { "type": "text", "text": "What is in this image?" }
707
+ # ]
708
+ # }
709
+ # ```
710
+ #
711
+ # We currently support the `base64` source type for images, and the `image/jpeg`,
712
+ # `image/png`, `image/gif`, and `image/webp` media types.
713
+ #
714
+ # See [examples](https://docs.anthropic.com/en/api/messages-examples#vision) for
715
+ # more input examples.
716
+ #
717
+ # Note that if you want to include a
718
+ # [system prompt](https://docs.anthropic.com/en/docs/system-prompts), you can use
719
+ # the top-level `system` parameter — there is no `"system"` role for input
720
+ # messages in the Messages API.
721
+ #
722
+ # There is a limit of 100000 messages in a single request.
723
+ messages:,
724
+ # Body param: The model that will complete your prompt.\n\nSee
725
+ # [models](https://docs.anthropic.com/en/docs/models-overview) for additional
726
+ # details and options.
727
+ model:,
728
+ # Body param: System prompt.
729
+ #
730
+ # A system prompt is a way of providing context and instructions to Claude, such
731
+ # as specifying a particular goal or role. See our
732
+ # [guide to system prompts](https://docs.anthropic.com/en/docs/system-prompts).
733
+ system_: nil,
734
+ # Body param: Configuration for enabling Claude's extended thinking.
735
+ #
736
+ # When enabled, responses include `thinking` content blocks showing Claude's
737
+ # thinking process before the final answer. Requires a minimum budget of 1,024
738
+ # tokens and counts towards your `max_tokens` limit.
739
+ #
740
+ # See
741
+ # [extended thinking](https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking)
742
+ # for details.
743
+ thinking: nil,
744
+ # Body param: How the model should use the provided tools. The model can use a
745
+ # specific tool, any available tool, decide by itself, or not use tools at all.
746
+ tool_choice: nil,
747
+ # Body param: Definitions of tools that the model may use.
748
+ #
749
+ # If you include `tools` in your API request, the model may return `tool_use`
750
+ # content blocks that represent the model's use of those tools. You can then run
751
+ # those tools using the tool input generated by the model and then optionally
752
+ # return results back to the model using `tool_result` content blocks.
753
+ #
754
+ # Each tool definition includes:
755
+ #
756
+ # - `name`: Name of the tool.
757
+ # - `description`: Optional, but strongly-recommended description of the tool.
758
+ # - `input_schema`: [JSON schema](https://json-schema.org/draft/2020-12) for the
759
+ # tool `input` shape that the model will produce in `tool_use` output content
760
+ # blocks.
761
+ #
762
+ # For example, if you defined `tools` as:
763
+ #
764
+ # ```json
765
+ # [
766
+ # {
767
+ # "name": "get_stock_price",
768
+ # "description": "Get the current stock price for a given ticker symbol.",
769
+ # "input_schema": {
770
+ # "type": "object",
771
+ # "properties": {
772
+ # "ticker": {
773
+ # "type": "string",
774
+ # "description": "The stock ticker symbol, e.g. AAPL for Apple Inc."
775
+ # }
776
+ # },
777
+ # "required": ["ticker"]
778
+ # }
779
+ # }
780
+ # ]
781
+ # ```
782
+ #
783
+ # And then asked the model "What's the S&P 500 at today?", the model might produce
784
+ # `tool_use` content blocks in the response like this:
785
+ #
786
+ # ```json
787
+ # [
788
+ # {
789
+ # "type": "tool_use",
790
+ # "id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
791
+ # "name": "get_stock_price",
792
+ # "input": { "ticker": "^GSPC" }
793
+ # }
794
+ # ]
795
+ # ```
796
+ #
797
+ # You might then run your `get_stock_price` tool with `{"ticker": "^GSPC"}` as an
798
+ # input, and return the following back to the model in a subsequent `user`
799
+ # message:
800
+ #
801
+ # ```json
802
+ # [
803
+ # {
804
+ # "type": "tool_result",
805
+ # "tool_use_id": "toolu_01D7FLrfh4GYq7yT1ULFeyMV",
806
+ # "content": "259.75 USD"
807
+ # }
808
+ # ]
809
+ # ```
810
+ #
811
+ # Tools can be used for workflows that include running client-side tools and
812
+ # functions, or more generally whenever you want the model to produce a particular
813
+ # JSON structure of output.
814
+ #
815
+ # See our [guide](https://docs.anthropic.com/en/docs/tool-use) for more details.
816
+ tools: nil,
817
+ # Header param: Optional header to specify the beta version(s) you want to use.
818
+ betas: nil,
819
+ request_options: {}
820
+ )
821
+ end
822
+
823
+ # @api private
824
+ sig { params(client: Anthropic::Client).returns(T.attached_class) }
825
+ def self.new(client:)
826
+ end
827
+ end
828
+ end
829
+ end
830
+ end