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