anthropic 0.4.1 → 1.1.0

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