mirascope 2.0.0__py3-none-any.whl → 2.0.0a1__py3-none-any.whl

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 (443) hide show
  1. mirascope/__init__.py +2 -11
  2. mirascope/graphs/__init__.py +22 -0
  3. mirascope/graphs/finite_state_machine.py +625 -0
  4. mirascope/llm/__init__.py +15 -96
  5. mirascope/llm/agents/__init__.py +15 -0
  6. mirascope/llm/agents/agent.py +97 -0
  7. mirascope/llm/agents/agent_template.py +45 -0
  8. mirascope/llm/agents/decorator.py +176 -0
  9. mirascope/llm/calls/__init__.py +1 -2
  10. mirascope/llm/calls/base_call.py +33 -0
  11. mirascope/llm/calls/calls.py +58 -84
  12. mirascope/llm/calls/decorator.py +120 -140
  13. mirascope/llm/clients/__init__.py +34 -0
  14. mirascope/llm/clients/_missing_import_stubs.py +47 -0
  15. mirascope/llm/clients/anthropic/__init__.py +25 -0
  16. mirascope/llm/{providers/openai/completions → clients/anthropic}/_utils/__init__.py +0 -2
  17. mirascope/llm/{providers → clients}/anthropic/_utils/decode.py +22 -66
  18. mirascope/llm/clients/anthropic/_utils/encode.py +243 -0
  19. mirascope/llm/clients/anthropic/clients.py +819 -0
  20. mirascope/llm/clients/anthropic/model_ids.py +8 -0
  21. mirascope/llm/{providers → clients}/base/__init__.py +5 -4
  22. mirascope/llm/{providers → clients}/base/_utils.py +17 -78
  23. mirascope/llm/{providers/base/base_provider.py → clients/base/client.py} +145 -468
  24. mirascope/llm/{models → clients/base}/params.py +37 -16
  25. mirascope/llm/clients/google/__init__.py +20 -0
  26. mirascope/llm/{providers/openai/responses → clients/google}/_utils/__init__.py +0 -2
  27. mirascope/llm/{providers → clients}/google/_utils/decode.py +22 -98
  28. mirascope/llm/{providers → clients}/google/_utils/encode.py +46 -168
  29. mirascope/llm/clients/google/clients.py +853 -0
  30. mirascope/llm/clients/google/model_ids.py +15 -0
  31. mirascope/llm/clients/openai/__init__.py +25 -0
  32. mirascope/llm/clients/openai/completions/__init__.py +28 -0
  33. mirascope/llm/{providers/google → clients/openai/completions}/_utils/__init__.py +0 -4
  34. mirascope/llm/{providers → clients}/openai/completions/_utils/decode.py +9 -74
  35. mirascope/llm/{providers → clients}/openai/completions/_utils/encode.py +52 -70
  36. mirascope/llm/clients/openai/completions/_utils/model_features.py +81 -0
  37. mirascope/llm/clients/openai/completions/clients.py +833 -0
  38. mirascope/llm/clients/openai/completions/model_ids.py +8 -0
  39. mirascope/llm/clients/openai/responses/__init__.py +26 -0
  40. mirascope/llm/clients/openai/responses/_utils/__init__.py +13 -0
  41. mirascope/llm/{providers → clients}/openai/responses/_utils/decode.py +14 -80
  42. mirascope/llm/{providers → clients}/openai/responses/_utils/encode.py +41 -92
  43. mirascope/llm/clients/openai/responses/_utils/model_features.py +87 -0
  44. mirascope/llm/clients/openai/responses/clients.py +832 -0
  45. mirascope/llm/clients/openai/responses/model_ids.py +8 -0
  46. mirascope/llm/clients/openai/shared/__init__.py +7 -0
  47. mirascope/llm/clients/openai/shared/_utils.py +55 -0
  48. mirascope/llm/clients/providers.py +175 -0
  49. mirascope/llm/content/__init__.py +2 -3
  50. mirascope/llm/content/tool_call.py +0 -6
  51. mirascope/llm/content/tool_output.py +5 -22
  52. mirascope/llm/context/_utils.py +6 -19
  53. mirascope/llm/exceptions.py +43 -298
  54. mirascope/llm/formatting/__init__.py +2 -19
  55. mirascope/llm/formatting/_utils.py +74 -0
  56. mirascope/llm/formatting/format.py +30 -219
  57. mirascope/llm/formatting/from_call_args.py +2 -2
  58. mirascope/llm/formatting/partial.py +7 -80
  59. mirascope/llm/formatting/types.py +64 -21
  60. mirascope/llm/mcp/__init__.py +2 -2
  61. mirascope/llm/mcp/client.py +118 -0
  62. mirascope/llm/messages/__init__.py +0 -3
  63. mirascope/llm/messages/message.py +5 -13
  64. mirascope/llm/models/__init__.py +2 -7
  65. mirascope/llm/models/models.py +139 -315
  66. mirascope/llm/prompts/__init__.py +12 -13
  67. mirascope/llm/prompts/_utils.py +43 -14
  68. mirascope/llm/prompts/decorator.py +204 -144
  69. mirascope/llm/prompts/protocols.py +59 -25
  70. mirascope/llm/responses/__init__.py +1 -9
  71. mirascope/llm/responses/_utils.py +12 -102
  72. mirascope/llm/responses/base_response.py +6 -18
  73. mirascope/llm/responses/base_stream_response.py +50 -173
  74. mirascope/llm/responses/finish_reason.py +0 -1
  75. mirascope/llm/responses/response.py +13 -34
  76. mirascope/llm/responses/root_response.py +29 -100
  77. mirascope/llm/responses/stream_response.py +31 -40
  78. mirascope/llm/tools/__init__.py +2 -9
  79. mirascope/llm/tools/_utils.py +3 -12
  80. mirascope/llm/tools/decorator.py +16 -25
  81. mirascope/llm/tools/protocols.py +4 -4
  82. mirascope/llm/tools/tool_schema.py +19 -87
  83. mirascope/llm/tools/toolkit.py +27 -35
  84. mirascope/llm/tools/tools.py +41 -135
  85. {mirascope-2.0.0.dist-info → mirascope-2.0.0a1.dist-info}/METADATA +13 -90
  86. mirascope-2.0.0a1.dist-info/RECORD +102 -0
  87. {mirascope-2.0.0.dist-info → mirascope-2.0.0a1.dist-info}/WHEEL +1 -1
  88. {mirascope-2.0.0.dist-info → mirascope-2.0.0a1.dist-info}/licenses/LICENSE +1 -1
  89. mirascope/_stubs.py +0 -363
  90. mirascope/api/__init__.py +0 -14
  91. mirascope/api/_generated/README.md +0 -207
  92. mirascope/api/_generated/__init__.py +0 -440
  93. mirascope/api/_generated/annotations/__init__.py +0 -33
  94. mirascope/api/_generated/annotations/client.py +0 -506
  95. mirascope/api/_generated/annotations/raw_client.py +0 -1414
  96. mirascope/api/_generated/annotations/types/__init__.py +0 -31
  97. mirascope/api/_generated/annotations/types/annotations_create_request_label.py +0 -5
  98. mirascope/api/_generated/annotations/types/annotations_create_response.py +0 -48
  99. mirascope/api/_generated/annotations/types/annotations_create_response_label.py +0 -5
  100. mirascope/api/_generated/annotations/types/annotations_get_response.py +0 -48
  101. mirascope/api/_generated/annotations/types/annotations_get_response_label.py +0 -5
  102. mirascope/api/_generated/annotations/types/annotations_list_request_label.py +0 -5
  103. mirascope/api/_generated/annotations/types/annotations_list_response.py +0 -21
  104. mirascope/api/_generated/annotations/types/annotations_list_response_annotations_item.py +0 -50
  105. mirascope/api/_generated/annotations/types/annotations_list_response_annotations_item_label.py +0 -5
  106. mirascope/api/_generated/annotations/types/annotations_update_request_label.py +0 -5
  107. mirascope/api/_generated/annotations/types/annotations_update_response.py +0 -48
  108. mirascope/api/_generated/annotations/types/annotations_update_response_label.py +0 -5
  109. mirascope/api/_generated/api_keys/__init__.py +0 -17
  110. mirascope/api/_generated/api_keys/client.py +0 -530
  111. mirascope/api/_generated/api_keys/raw_client.py +0 -1236
  112. mirascope/api/_generated/api_keys/types/__init__.py +0 -15
  113. mirascope/api/_generated/api_keys/types/api_keys_create_response.py +0 -28
  114. mirascope/api/_generated/api_keys/types/api_keys_get_response.py +0 -27
  115. mirascope/api/_generated/api_keys/types/api_keys_list_all_for_org_response_item.py +0 -40
  116. mirascope/api/_generated/api_keys/types/api_keys_list_response_item.py +0 -27
  117. mirascope/api/_generated/client.py +0 -211
  118. mirascope/api/_generated/core/__init__.py +0 -52
  119. mirascope/api/_generated/core/api_error.py +0 -23
  120. mirascope/api/_generated/core/client_wrapper.py +0 -46
  121. mirascope/api/_generated/core/datetime_utils.py +0 -28
  122. mirascope/api/_generated/core/file.py +0 -67
  123. mirascope/api/_generated/core/force_multipart.py +0 -16
  124. mirascope/api/_generated/core/http_client.py +0 -543
  125. mirascope/api/_generated/core/http_response.py +0 -55
  126. mirascope/api/_generated/core/jsonable_encoder.py +0 -100
  127. mirascope/api/_generated/core/pydantic_utilities.py +0 -255
  128. mirascope/api/_generated/core/query_encoder.py +0 -58
  129. mirascope/api/_generated/core/remove_none_from_dict.py +0 -11
  130. mirascope/api/_generated/core/request_options.py +0 -35
  131. mirascope/api/_generated/core/serialization.py +0 -276
  132. mirascope/api/_generated/docs/__init__.py +0 -4
  133. mirascope/api/_generated/docs/client.py +0 -91
  134. mirascope/api/_generated/docs/raw_client.py +0 -178
  135. mirascope/api/_generated/environment.py +0 -9
  136. mirascope/api/_generated/environments/__init__.py +0 -23
  137. mirascope/api/_generated/environments/client.py +0 -649
  138. mirascope/api/_generated/environments/raw_client.py +0 -1567
  139. mirascope/api/_generated/environments/types/__init__.py +0 -25
  140. mirascope/api/_generated/environments/types/environments_create_response.py +0 -24
  141. mirascope/api/_generated/environments/types/environments_get_analytics_response.py +0 -60
  142. mirascope/api/_generated/environments/types/environments_get_analytics_response_top_functions_item.py +0 -24
  143. mirascope/api/_generated/environments/types/environments_get_analytics_response_top_models_item.py +0 -22
  144. mirascope/api/_generated/environments/types/environments_get_response.py +0 -24
  145. mirascope/api/_generated/environments/types/environments_list_response_item.py +0 -24
  146. mirascope/api/_generated/environments/types/environments_update_response.py +0 -24
  147. mirascope/api/_generated/errors/__init__.py +0 -25
  148. mirascope/api/_generated/errors/bad_request_error.py +0 -14
  149. mirascope/api/_generated/errors/conflict_error.py +0 -14
  150. mirascope/api/_generated/errors/forbidden_error.py +0 -11
  151. mirascope/api/_generated/errors/internal_server_error.py +0 -10
  152. mirascope/api/_generated/errors/not_found_error.py +0 -11
  153. mirascope/api/_generated/errors/payment_required_error.py +0 -15
  154. mirascope/api/_generated/errors/service_unavailable_error.py +0 -14
  155. mirascope/api/_generated/errors/too_many_requests_error.py +0 -15
  156. mirascope/api/_generated/errors/unauthorized_error.py +0 -11
  157. mirascope/api/_generated/functions/__init__.py +0 -39
  158. mirascope/api/_generated/functions/client.py +0 -647
  159. mirascope/api/_generated/functions/raw_client.py +0 -1890
  160. mirascope/api/_generated/functions/types/__init__.py +0 -53
  161. mirascope/api/_generated/functions/types/functions_create_request_dependencies_value.py +0 -20
  162. mirascope/api/_generated/functions/types/functions_create_response.py +0 -37
  163. mirascope/api/_generated/functions/types/functions_create_response_dependencies_value.py +0 -20
  164. mirascope/api/_generated/functions/types/functions_find_by_hash_response.py +0 -39
  165. mirascope/api/_generated/functions/types/functions_find_by_hash_response_dependencies_value.py +0 -20
  166. mirascope/api/_generated/functions/types/functions_get_by_env_response.py +0 -53
  167. mirascope/api/_generated/functions/types/functions_get_by_env_response_dependencies_value.py +0 -22
  168. mirascope/api/_generated/functions/types/functions_get_response.py +0 -37
  169. mirascope/api/_generated/functions/types/functions_get_response_dependencies_value.py +0 -20
  170. mirascope/api/_generated/functions/types/functions_list_by_env_response.py +0 -25
  171. mirascope/api/_generated/functions/types/functions_list_by_env_response_functions_item.py +0 -56
  172. mirascope/api/_generated/functions/types/functions_list_by_env_response_functions_item_dependencies_value.py +0 -22
  173. mirascope/api/_generated/functions/types/functions_list_response.py +0 -21
  174. mirascope/api/_generated/functions/types/functions_list_response_functions_item.py +0 -41
  175. mirascope/api/_generated/functions/types/functions_list_response_functions_item_dependencies_value.py +0 -20
  176. mirascope/api/_generated/health/__init__.py +0 -7
  177. mirascope/api/_generated/health/client.py +0 -92
  178. mirascope/api/_generated/health/raw_client.py +0 -175
  179. mirascope/api/_generated/health/types/__init__.py +0 -8
  180. mirascope/api/_generated/health/types/health_check_response.py +0 -22
  181. mirascope/api/_generated/health/types/health_check_response_status.py +0 -5
  182. mirascope/api/_generated/organization_invitations/__init__.py +0 -33
  183. mirascope/api/_generated/organization_invitations/client.py +0 -546
  184. mirascope/api/_generated/organization_invitations/raw_client.py +0 -1519
  185. mirascope/api/_generated/organization_invitations/types/__init__.py +0 -53
  186. mirascope/api/_generated/organization_invitations/types/organization_invitations_accept_response.py +0 -34
  187. mirascope/api/_generated/organization_invitations/types/organization_invitations_accept_response_role.py +0 -7
  188. mirascope/api/_generated/organization_invitations/types/organization_invitations_create_request_role.py +0 -7
  189. mirascope/api/_generated/organization_invitations/types/organization_invitations_create_response.py +0 -48
  190. mirascope/api/_generated/organization_invitations/types/organization_invitations_create_response_role.py +0 -7
  191. mirascope/api/_generated/organization_invitations/types/organization_invitations_create_response_status.py +0 -7
  192. mirascope/api/_generated/organization_invitations/types/organization_invitations_get_response.py +0 -48
  193. mirascope/api/_generated/organization_invitations/types/organization_invitations_get_response_role.py +0 -7
  194. mirascope/api/_generated/organization_invitations/types/organization_invitations_get_response_status.py +0 -7
  195. mirascope/api/_generated/organization_invitations/types/organization_invitations_list_response_item.py +0 -48
  196. mirascope/api/_generated/organization_invitations/types/organization_invitations_list_response_item_role.py +0 -7
  197. mirascope/api/_generated/organization_invitations/types/organization_invitations_list_response_item_status.py +0 -7
  198. mirascope/api/_generated/organization_memberships/__init__.py +0 -19
  199. mirascope/api/_generated/organization_memberships/client.py +0 -302
  200. mirascope/api/_generated/organization_memberships/raw_client.py +0 -736
  201. mirascope/api/_generated/organization_memberships/types/__init__.py +0 -27
  202. mirascope/api/_generated/organization_memberships/types/organization_memberships_list_response_item.py +0 -33
  203. mirascope/api/_generated/organization_memberships/types/organization_memberships_list_response_item_role.py +0 -7
  204. mirascope/api/_generated/organization_memberships/types/organization_memberships_update_request_role.py +0 -7
  205. mirascope/api/_generated/organization_memberships/types/organization_memberships_update_response.py +0 -31
  206. mirascope/api/_generated/organization_memberships/types/organization_memberships_update_response_role.py +0 -7
  207. mirascope/api/_generated/organizations/__init__.py +0 -51
  208. mirascope/api/_generated/organizations/client.py +0 -869
  209. mirascope/api/_generated/organizations/raw_client.py +0 -2593
  210. mirascope/api/_generated/organizations/types/__init__.py +0 -71
  211. mirascope/api/_generated/organizations/types/organizations_create_payment_intent_response.py +0 -24
  212. mirascope/api/_generated/organizations/types/organizations_create_response.py +0 -26
  213. mirascope/api/_generated/organizations/types/organizations_create_response_role.py +0 -5
  214. mirascope/api/_generated/organizations/types/organizations_get_response.py +0 -26
  215. mirascope/api/_generated/organizations/types/organizations_get_response_role.py +0 -5
  216. mirascope/api/_generated/organizations/types/organizations_list_response_item.py +0 -26
  217. mirascope/api/_generated/organizations/types/organizations_list_response_item_role.py +0 -5
  218. mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_request_target_plan.py +0 -7
  219. mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_response.py +0 -47
  220. mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_response_validation_errors_item.py +0 -33
  221. mirascope/api/_generated/organizations/types/organizations_preview_subscription_change_response_validation_errors_item_resource.py +0 -7
  222. mirascope/api/_generated/organizations/types/organizations_router_balance_response.py +0 -24
  223. mirascope/api/_generated/organizations/types/organizations_subscription_response.py +0 -53
  224. mirascope/api/_generated/organizations/types/organizations_subscription_response_current_plan.py +0 -7
  225. mirascope/api/_generated/organizations/types/organizations_subscription_response_payment_method.py +0 -26
  226. mirascope/api/_generated/organizations/types/organizations_subscription_response_scheduled_change.py +0 -34
  227. mirascope/api/_generated/organizations/types/organizations_subscription_response_scheduled_change_target_plan.py +0 -7
  228. mirascope/api/_generated/organizations/types/organizations_update_response.py +0 -26
  229. mirascope/api/_generated/organizations/types/organizations_update_response_role.py +0 -5
  230. mirascope/api/_generated/organizations/types/organizations_update_subscription_request_target_plan.py +0 -7
  231. mirascope/api/_generated/organizations/types/organizations_update_subscription_response.py +0 -35
  232. mirascope/api/_generated/project_memberships/__init__.py +0 -25
  233. mirascope/api/_generated/project_memberships/client.py +0 -437
  234. mirascope/api/_generated/project_memberships/raw_client.py +0 -1039
  235. mirascope/api/_generated/project_memberships/types/__init__.py +0 -29
  236. mirascope/api/_generated/project_memberships/types/project_memberships_create_request_role.py +0 -7
  237. mirascope/api/_generated/project_memberships/types/project_memberships_create_response.py +0 -35
  238. mirascope/api/_generated/project_memberships/types/project_memberships_create_response_role.py +0 -7
  239. mirascope/api/_generated/project_memberships/types/project_memberships_list_response_item.py +0 -33
  240. mirascope/api/_generated/project_memberships/types/project_memberships_list_response_item_role.py +0 -7
  241. mirascope/api/_generated/project_memberships/types/project_memberships_update_request_role.py +0 -7
  242. mirascope/api/_generated/project_memberships/types/project_memberships_update_response.py +0 -35
  243. mirascope/api/_generated/project_memberships/types/project_memberships_update_response_role.py +0 -7
  244. mirascope/api/_generated/projects/__init__.py +0 -7
  245. mirascope/api/_generated/projects/client.py +0 -428
  246. mirascope/api/_generated/projects/raw_client.py +0 -1302
  247. mirascope/api/_generated/projects/types/__init__.py +0 -10
  248. mirascope/api/_generated/projects/types/projects_create_response.py +0 -25
  249. mirascope/api/_generated/projects/types/projects_get_response.py +0 -25
  250. mirascope/api/_generated/projects/types/projects_list_response_item.py +0 -25
  251. mirascope/api/_generated/projects/types/projects_update_response.py +0 -25
  252. mirascope/api/_generated/reference.md +0 -4915
  253. mirascope/api/_generated/tags/__init__.py +0 -19
  254. mirascope/api/_generated/tags/client.py +0 -504
  255. mirascope/api/_generated/tags/raw_client.py +0 -1288
  256. mirascope/api/_generated/tags/types/__init__.py +0 -17
  257. mirascope/api/_generated/tags/types/tags_create_response.py +0 -41
  258. mirascope/api/_generated/tags/types/tags_get_response.py +0 -41
  259. mirascope/api/_generated/tags/types/tags_list_response.py +0 -23
  260. mirascope/api/_generated/tags/types/tags_list_response_tags_item.py +0 -41
  261. mirascope/api/_generated/tags/types/tags_update_response.py +0 -41
  262. mirascope/api/_generated/token_cost/__init__.py +0 -7
  263. mirascope/api/_generated/token_cost/client.py +0 -160
  264. mirascope/api/_generated/token_cost/raw_client.py +0 -264
  265. mirascope/api/_generated/token_cost/types/__init__.py +0 -8
  266. mirascope/api/_generated/token_cost/types/token_cost_calculate_request_usage.py +0 -54
  267. mirascope/api/_generated/token_cost/types/token_cost_calculate_response.py +0 -52
  268. mirascope/api/_generated/traces/__init__.py +0 -97
  269. mirascope/api/_generated/traces/client.py +0 -1103
  270. mirascope/api/_generated/traces/raw_client.py +0 -2322
  271. mirascope/api/_generated/traces/types/__init__.py +0 -155
  272. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item.py +0 -29
  273. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource.py +0 -27
  274. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item.py +0 -23
  275. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value.py +0 -38
  276. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value_array_value.py +0 -19
  277. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value_kvlist_value.py +0 -22
  278. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_resource_attributes_item_value_kvlist_value_values_item.py +0 -20
  279. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item.py +0 -29
  280. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope.py +0 -31
  281. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item.py +0 -23
  282. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value.py +0 -38
  283. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value_array_value.py +0 -19
  284. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value_kvlist_value.py +0 -22
  285. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_scope_attributes_item_value_kvlist_value_values_item.py +0 -22
  286. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item.py +0 -48
  287. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item.py +0 -23
  288. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value.py +0 -38
  289. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value_array_value.py +0 -19
  290. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value_kvlist_value.py +0 -24
  291. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_attributes_item_value_kvlist_value_values_item.py +0 -22
  292. mirascope/api/_generated/traces/types/traces_create_request_resource_spans_item_scope_spans_item_spans_item_status.py +0 -20
  293. mirascope/api/_generated/traces/types/traces_create_response.py +0 -24
  294. mirascope/api/_generated/traces/types/traces_create_response_partial_success.py +0 -22
  295. mirascope/api/_generated/traces/types/traces_get_analytics_summary_response.py +0 -60
  296. mirascope/api/_generated/traces/types/traces_get_analytics_summary_response_top_functions_item.py +0 -24
  297. mirascope/api/_generated/traces/types/traces_get_analytics_summary_response_top_models_item.py +0 -22
  298. mirascope/api/_generated/traces/types/traces_get_trace_detail_by_env_response.py +0 -33
  299. mirascope/api/_generated/traces/types/traces_get_trace_detail_by_env_response_spans_item.py +0 -88
  300. mirascope/api/_generated/traces/types/traces_get_trace_detail_response.py +0 -33
  301. mirascope/api/_generated/traces/types/traces_get_trace_detail_response_spans_item.py +0 -88
  302. mirascope/api/_generated/traces/types/traces_list_by_function_hash_response.py +0 -25
  303. mirascope/api/_generated/traces/types/traces_list_by_function_hash_response_traces_item.py +0 -44
  304. mirascope/api/_generated/traces/types/traces_search_by_env_request_attribute_filters_item.py +0 -26
  305. mirascope/api/_generated/traces/types/traces_search_by_env_request_attribute_filters_item_operator.py +0 -7
  306. mirascope/api/_generated/traces/types/traces_search_by_env_request_sort_by.py +0 -7
  307. mirascope/api/_generated/traces/types/traces_search_by_env_request_sort_order.py +0 -7
  308. mirascope/api/_generated/traces/types/traces_search_by_env_response.py +0 -26
  309. mirascope/api/_generated/traces/types/traces_search_by_env_response_spans_item.py +0 -50
  310. mirascope/api/_generated/traces/types/traces_search_request_attribute_filters_item.py +0 -26
  311. mirascope/api/_generated/traces/types/traces_search_request_attribute_filters_item_operator.py +0 -7
  312. mirascope/api/_generated/traces/types/traces_search_request_sort_by.py +0 -7
  313. mirascope/api/_generated/traces/types/traces_search_request_sort_order.py +0 -5
  314. mirascope/api/_generated/traces/types/traces_search_response.py +0 -26
  315. mirascope/api/_generated/traces/types/traces_search_response_spans_item.py +0 -50
  316. mirascope/api/_generated/types/__init__.py +0 -85
  317. mirascope/api/_generated/types/already_exists_error.py +0 -22
  318. mirascope/api/_generated/types/already_exists_error_tag.py +0 -5
  319. mirascope/api/_generated/types/bad_request_error_body.py +0 -50
  320. mirascope/api/_generated/types/click_house_error.py +0 -22
  321. mirascope/api/_generated/types/database_error.py +0 -22
  322. mirascope/api/_generated/types/database_error_tag.py +0 -5
  323. mirascope/api/_generated/types/date.py +0 -3
  324. mirascope/api/_generated/types/http_api_decode_error.py +0 -27
  325. mirascope/api/_generated/types/http_api_decode_error_tag.py +0 -5
  326. mirascope/api/_generated/types/immutable_resource_error.py +0 -22
  327. mirascope/api/_generated/types/internal_server_error_body.py +0 -49
  328. mirascope/api/_generated/types/issue.py +0 -38
  329. mirascope/api/_generated/types/issue_tag.py +0 -10
  330. mirascope/api/_generated/types/not_found_error_body.py +0 -22
  331. mirascope/api/_generated/types/not_found_error_tag.py +0 -5
  332. mirascope/api/_generated/types/number_from_string.py +0 -3
  333. mirascope/api/_generated/types/permission_denied_error.py +0 -22
  334. mirascope/api/_generated/types/permission_denied_error_tag.py +0 -5
  335. mirascope/api/_generated/types/plan_limit_exceeded_error.py +0 -32
  336. mirascope/api/_generated/types/plan_limit_exceeded_error_tag.py +0 -7
  337. mirascope/api/_generated/types/pricing_unavailable_error.py +0 -23
  338. mirascope/api/_generated/types/property_key.py +0 -7
  339. mirascope/api/_generated/types/property_key_key.py +0 -25
  340. mirascope/api/_generated/types/property_key_key_tag.py +0 -5
  341. mirascope/api/_generated/types/rate_limit_error.py +0 -31
  342. mirascope/api/_generated/types/rate_limit_error_tag.py +0 -5
  343. mirascope/api/_generated/types/service_unavailable_error_body.py +0 -24
  344. mirascope/api/_generated/types/service_unavailable_error_tag.py +0 -7
  345. mirascope/api/_generated/types/stripe_error.py +0 -20
  346. mirascope/api/_generated/types/subscription_past_due_error.py +0 -31
  347. mirascope/api/_generated/types/subscription_past_due_error_tag.py +0 -7
  348. mirascope/api/_generated/types/unauthorized_error_body.py +0 -21
  349. mirascope/api/_generated/types/unauthorized_error_tag.py +0 -5
  350. mirascope/api/client.py +0 -255
  351. mirascope/api/settings.py +0 -99
  352. mirascope/llm/formatting/output_parser.py +0 -178
  353. mirascope/llm/formatting/primitives.py +0 -192
  354. mirascope/llm/mcp/mcp_client.py +0 -130
  355. mirascope/llm/messages/_utils.py +0 -34
  356. mirascope/llm/models/thinking_config.py +0 -61
  357. mirascope/llm/prompts/prompts.py +0 -487
  358. mirascope/llm/providers/__init__.py +0 -62
  359. mirascope/llm/providers/anthropic/__init__.py +0 -11
  360. mirascope/llm/providers/anthropic/_utils/__init__.py +0 -27
  361. mirascope/llm/providers/anthropic/_utils/beta_decode.py +0 -282
  362. mirascope/llm/providers/anthropic/_utils/beta_encode.py +0 -266
  363. mirascope/llm/providers/anthropic/_utils/encode.py +0 -418
  364. mirascope/llm/providers/anthropic/_utils/errors.py +0 -46
  365. mirascope/llm/providers/anthropic/beta_provider.py +0 -374
  366. mirascope/llm/providers/anthropic/model_id.py +0 -23
  367. mirascope/llm/providers/anthropic/model_info.py +0 -87
  368. mirascope/llm/providers/anthropic/provider.py +0 -479
  369. mirascope/llm/providers/google/__init__.py +0 -6
  370. mirascope/llm/providers/google/_utils/errors.py +0 -50
  371. mirascope/llm/providers/google/model_id.py +0 -22
  372. mirascope/llm/providers/google/model_info.py +0 -63
  373. mirascope/llm/providers/google/provider.py +0 -492
  374. mirascope/llm/providers/mirascope/__init__.py +0 -5
  375. mirascope/llm/providers/mirascope/_utils.py +0 -73
  376. mirascope/llm/providers/mirascope/provider.py +0 -349
  377. mirascope/llm/providers/mlx/__init__.py +0 -9
  378. mirascope/llm/providers/mlx/_utils.py +0 -141
  379. mirascope/llm/providers/mlx/encoding/__init__.py +0 -8
  380. mirascope/llm/providers/mlx/encoding/base.py +0 -72
  381. mirascope/llm/providers/mlx/encoding/transformers.py +0 -150
  382. mirascope/llm/providers/mlx/mlx.py +0 -254
  383. mirascope/llm/providers/mlx/model_id.py +0 -17
  384. mirascope/llm/providers/mlx/provider.py +0 -452
  385. mirascope/llm/providers/model_id.py +0 -16
  386. mirascope/llm/providers/ollama/__init__.py +0 -7
  387. mirascope/llm/providers/ollama/provider.py +0 -71
  388. mirascope/llm/providers/openai/__init__.py +0 -15
  389. mirascope/llm/providers/openai/_utils/__init__.py +0 -5
  390. mirascope/llm/providers/openai/_utils/errors.py +0 -46
  391. mirascope/llm/providers/openai/completions/__init__.py +0 -7
  392. mirascope/llm/providers/openai/completions/base_provider.py +0 -542
  393. mirascope/llm/providers/openai/completions/provider.py +0 -22
  394. mirascope/llm/providers/openai/model_id.py +0 -31
  395. mirascope/llm/providers/openai/model_info.py +0 -303
  396. mirascope/llm/providers/openai/provider.py +0 -441
  397. mirascope/llm/providers/openai/responses/__init__.py +0 -5
  398. mirascope/llm/providers/openai/responses/provider.py +0 -513
  399. mirascope/llm/providers/provider_id.py +0 -24
  400. mirascope/llm/providers/provider_registry.py +0 -299
  401. mirascope/llm/providers/together/__init__.py +0 -7
  402. mirascope/llm/providers/together/provider.py +0 -40
  403. mirascope/llm/responses/usage.py +0 -95
  404. mirascope/ops/__init__.py +0 -111
  405. mirascope/ops/_internal/__init__.py +0 -5
  406. mirascope/ops/_internal/closure.py +0 -1169
  407. mirascope/ops/_internal/configuration.py +0 -177
  408. mirascope/ops/_internal/context.py +0 -76
  409. mirascope/ops/_internal/exporters/__init__.py +0 -26
  410. mirascope/ops/_internal/exporters/exporters.py +0 -395
  411. mirascope/ops/_internal/exporters/processors.py +0 -104
  412. mirascope/ops/_internal/exporters/types.py +0 -165
  413. mirascope/ops/_internal/exporters/utils.py +0 -29
  414. mirascope/ops/_internal/instrumentation/__init__.py +0 -8
  415. mirascope/ops/_internal/instrumentation/llm/__init__.py +0 -8
  416. mirascope/ops/_internal/instrumentation/llm/common.py +0 -530
  417. mirascope/ops/_internal/instrumentation/llm/cost.py +0 -190
  418. mirascope/ops/_internal/instrumentation/llm/encode.py +0 -238
  419. mirascope/ops/_internal/instrumentation/llm/gen_ai_types/__init__.py +0 -38
  420. mirascope/ops/_internal/instrumentation/llm/gen_ai_types/gen_ai_input_messages.py +0 -31
  421. mirascope/ops/_internal/instrumentation/llm/gen_ai_types/gen_ai_output_messages.py +0 -38
  422. mirascope/ops/_internal/instrumentation/llm/gen_ai_types/gen_ai_system_instructions.py +0 -18
  423. mirascope/ops/_internal/instrumentation/llm/gen_ai_types/shared.py +0 -100
  424. mirascope/ops/_internal/instrumentation/llm/llm.py +0 -161
  425. mirascope/ops/_internal/instrumentation/llm/model.py +0 -1798
  426. mirascope/ops/_internal/instrumentation/llm/response.py +0 -521
  427. mirascope/ops/_internal/instrumentation/llm/serialize.py +0 -300
  428. mirascope/ops/_internal/propagation.py +0 -198
  429. mirascope/ops/_internal/protocols.py +0 -133
  430. mirascope/ops/_internal/session.py +0 -139
  431. mirascope/ops/_internal/spans.py +0 -232
  432. mirascope/ops/_internal/traced_calls.py +0 -375
  433. mirascope/ops/_internal/traced_functions.py +0 -523
  434. mirascope/ops/_internal/tracing.py +0 -353
  435. mirascope/ops/_internal/types.py +0 -13
  436. mirascope/ops/_internal/utils.py +0 -123
  437. mirascope/ops/_internal/versioned_calls.py +0 -512
  438. mirascope/ops/_internal/versioned_functions.py +0 -357
  439. mirascope/ops/_internal/versioning.py +0 -303
  440. mirascope/ops/exceptions.py +0 -21
  441. mirascope-2.0.0.dist-info/RECORD +0 -423
  442. /mirascope/llm/{providers → clients}/base/kwargs.py +0 -0
  443. /mirascope/llm/{providers → clients}/google/message.py +0 -0
@@ -1,374 +0,0 @@
1
- """Beta Anthropic provider implementation."""
2
-
3
- from __future__ import annotations
4
-
5
- from collections.abc import Sequence
6
- from typing import TYPE_CHECKING
7
- from typing_extensions import Unpack
8
-
9
- from anthropic import Anthropic, AsyncAnthropic
10
-
11
- from ...context import Context, DepsT
12
- from ...formatting import Format, FormattableT, OutputParser
13
- from ...messages import Message
14
- from ...responses import (
15
- AsyncContextResponse,
16
- AsyncContextStreamResponse,
17
- AsyncResponse,
18
- AsyncStreamResponse,
19
- ContextResponse,
20
- ContextStreamResponse,
21
- Response,
22
- StreamResponse,
23
- )
24
- from ...tools import (
25
- AsyncContextTool,
26
- AsyncContextToolkit,
27
- AsyncTool,
28
- AsyncToolkit,
29
- ContextTool,
30
- ContextToolkit,
31
- Tool,
32
- Toolkit,
33
- )
34
- from ..base import BaseProvider
35
- from . import _utils
36
- from ._utils import beta_decode, beta_encode
37
- from .model_id import model_name
38
-
39
- if TYPE_CHECKING:
40
- from ...models import Params
41
-
42
-
43
- class AnthropicBetaProvider(BaseProvider[Anthropic]):
44
- """Provider using beta Anthropic API."""
45
-
46
- id = "anthropic-beta"
47
- default_scope = "anthropic-beta/"
48
- error_map = _utils.ANTHROPIC_ERROR_MAP
49
-
50
- def __init__(
51
- self, *, api_key: str | None = None, base_url: str | None = None
52
- ) -> None:
53
- """Initialize the beta Anthropic client."""
54
- self.client = Anthropic(api_key=api_key, base_url=base_url)
55
- self.async_client = AsyncAnthropic(api_key=api_key, base_url=base_url)
56
-
57
- def get_error_status(self, e: Exception) -> int | None:
58
- """Extract HTTP status code from Anthropic exception."""
59
- return getattr(e, "status_code", None)
60
-
61
- def _call(
62
- self,
63
- *,
64
- model_id: str,
65
- messages: Sequence[Message],
66
- tools: Sequence[Tool] | Toolkit | None = None,
67
- format: type[FormattableT]
68
- | Format[FormattableT]
69
- | OutputParser[FormattableT]
70
- | None = None,
71
- **params: Unpack[Params],
72
- ) -> Response | Response[FormattableT]:
73
- """Generate an `llm.Response` using the beta Anthropic API."""
74
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
75
- model_id=model_id,
76
- messages=messages,
77
- tools=tools,
78
- format=format,
79
- params=params,
80
- )
81
- beta_response = self.client.beta.messages.parse(**kwargs)
82
- include_thoughts = _utils.get_include_thoughts(params)
83
- assistant_message, finish_reason, usage = beta_decode.beta_decode_response(
84
- beta_response, model_id, include_thoughts=include_thoughts
85
- )
86
- return Response(
87
- raw=beta_response,
88
- provider_id="anthropic",
89
- model_id=model_id,
90
- provider_model_name=model_name(model_id),
91
- params=params,
92
- tools=tools,
93
- input_messages=input_messages,
94
- assistant_message=assistant_message,
95
- finish_reason=finish_reason,
96
- usage=usage,
97
- format=resolved_format,
98
- )
99
-
100
- def _context_call(
101
- self,
102
- *,
103
- ctx: Context[DepsT],
104
- model_id: str,
105
- messages: Sequence[Message],
106
- tools: Sequence[Tool | ContextTool[DepsT]]
107
- | ContextToolkit[DepsT]
108
- | None = None,
109
- format: type[FormattableT]
110
- | Format[FormattableT]
111
- | OutputParser[FormattableT]
112
- | None = None,
113
- **params: Unpack[Params],
114
- ) -> ContextResponse[DepsT, None] | ContextResponse[DepsT, FormattableT]:
115
- """Generate an `llm.ContextResponse` using the beta Anthropic API."""
116
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
117
- model_id=model_id,
118
- messages=messages,
119
- tools=tools,
120
- format=format,
121
- params=params,
122
- )
123
- beta_response = self.client.beta.messages.parse(**kwargs)
124
- include_thoughts = _utils.get_include_thoughts(params)
125
- assistant_message, finish_reason, usage = beta_decode.beta_decode_response(
126
- beta_response, model_id, include_thoughts=include_thoughts
127
- )
128
- return ContextResponse(
129
- raw=beta_response,
130
- provider_id="anthropic",
131
- model_id=model_id,
132
- provider_model_name=model_name(model_id),
133
- params=params,
134
- tools=tools,
135
- input_messages=input_messages,
136
- assistant_message=assistant_message,
137
- finish_reason=finish_reason,
138
- usage=usage,
139
- format=resolved_format,
140
- )
141
-
142
- async def _call_async(
143
- self,
144
- *,
145
- model_id: str,
146
- messages: Sequence[Message],
147
- tools: Sequence[AsyncTool] | AsyncToolkit | None = None,
148
- format: type[FormattableT]
149
- | Format[FormattableT]
150
- | OutputParser[FormattableT]
151
- | None = None,
152
- **params: Unpack[Params],
153
- ) -> AsyncResponse | AsyncResponse[FormattableT]:
154
- """Generate an `llm.AsyncResponse` using the beta Anthropic API."""
155
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
156
- model_id=model_id,
157
- messages=messages,
158
- tools=tools,
159
- format=format,
160
- params=params,
161
- )
162
- beta_response = await self.async_client.beta.messages.parse(**kwargs)
163
- include_thoughts = _utils.get_include_thoughts(params)
164
- assistant_message, finish_reason, usage = beta_decode.beta_decode_response(
165
- beta_response, model_id, include_thoughts=include_thoughts
166
- )
167
- return AsyncResponse(
168
- raw=beta_response,
169
- provider_id="anthropic",
170
- model_id=model_id,
171
- provider_model_name=model_name(model_id),
172
- params=params,
173
- tools=tools,
174
- input_messages=input_messages,
175
- assistant_message=assistant_message,
176
- finish_reason=finish_reason,
177
- usage=usage,
178
- format=resolved_format,
179
- )
180
-
181
- async def _context_call_async(
182
- self,
183
- *,
184
- ctx: Context[DepsT],
185
- model_id: str,
186
- messages: Sequence[Message],
187
- tools: Sequence[AsyncTool | AsyncContextTool[DepsT]]
188
- | AsyncContextToolkit[DepsT]
189
- | None = None,
190
- format: type[FormattableT]
191
- | Format[FormattableT]
192
- | OutputParser[FormattableT]
193
- | None = None,
194
- **params: Unpack[Params],
195
- ) -> AsyncContextResponse[DepsT, None] | AsyncContextResponse[DepsT, FormattableT]:
196
- """Generate an `llm.AsyncContextResponse` using the beta Anthropic API."""
197
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
198
- model_id=model_id,
199
- messages=messages,
200
- tools=tools,
201
- format=format,
202
- params=params,
203
- )
204
- beta_response = await self.async_client.beta.messages.parse(**kwargs)
205
- include_thoughts = _utils.get_include_thoughts(params)
206
- assistant_message, finish_reason, usage = beta_decode.beta_decode_response(
207
- beta_response, model_id, include_thoughts=include_thoughts
208
- )
209
- return AsyncContextResponse(
210
- raw=beta_response,
211
- provider_id="anthropic",
212
- model_id=model_id,
213
- provider_model_name=model_name(model_id),
214
- params=params,
215
- tools=tools,
216
- input_messages=input_messages,
217
- assistant_message=assistant_message,
218
- finish_reason=finish_reason,
219
- usage=usage,
220
- format=resolved_format,
221
- )
222
-
223
- def _stream(
224
- self,
225
- *,
226
- model_id: str,
227
- messages: Sequence[Message],
228
- tools: Sequence[Tool] | Toolkit | None = None,
229
- format: type[FormattableT]
230
- | Format[FormattableT]
231
- | OutputParser[FormattableT]
232
- | None = None,
233
- **params: Unpack[Params],
234
- ) -> StreamResponse | StreamResponse[FormattableT]:
235
- """Generate an `llm.StreamResponse` using the beta Anthropic API."""
236
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
237
- model_id=model_id,
238
- messages=messages,
239
- tools=tools,
240
- format=format,
241
- params=params,
242
- )
243
- beta_stream = self.client.beta.messages.stream(**kwargs)
244
- include_thoughts = _utils.get_include_thoughts(params)
245
- chunk_iterator = beta_decode.beta_decode_stream(
246
- beta_stream, include_thoughts=include_thoughts
247
- )
248
- return StreamResponse(
249
- provider_id="anthropic",
250
- model_id=model_id,
251
- provider_model_name=model_name(model_id),
252
- params=params,
253
- tools=tools,
254
- input_messages=input_messages,
255
- chunk_iterator=chunk_iterator,
256
- format=resolved_format,
257
- )
258
-
259
- def _context_stream(
260
- self,
261
- *,
262
- ctx: Context[DepsT],
263
- model_id: str,
264
- messages: Sequence[Message],
265
- tools: Sequence[Tool | ContextTool[DepsT]]
266
- | ContextToolkit[DepsT]
267
- | None = None,
268
- format: type[FormattableT]
269
- | Format[FormattableT]
270
- | OutputParser[FormattableT]
271
- | None = None,
272
- **params: Unpack[Params],
273
- ) -> ContextStreamResponse[DepsT] | ContextStreamResponse[DepsT, FormattableT]:
274
- """Generate an `llm.ContextStreamResponse` using the beta Anthropic API."""
275
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
276
- model_id=model_id,
277
- messages=messages,
278
- tools=tools,
279
- format=format,
280
- params=params,
281
- )
282
- beta_stream = self.client.beta.messages.stream(**kwargs)
283
- include_thoughts = _utils.get_include_thoughts(params)
284
- chunk_iterator = beta_decode.beta_decode_stream(
285
- beta_stream, include_thoughts=include_thoughts
286
- )
287
- return ContextStreamResponse(
288
- provider_id="anthropic",
289
- model_id=model_id,
290
- provider_model_name=model_name(model_id),
291
- params=params,
292
- tools=tools,
293
- input_messages=input_messages,
294
- chunk_iterator=chunk_iterator,
295
- format=resolved_format,
296
- )
297
-
298
- async def _stream_async(
299
- self,
300
- *,
301
- model_id: str,
302
- messages: Sequence[Message],
303
- tools: Sequence[AsyncTool] | AsyncToolkit | None = None,
304
- format: type[FormattableT]
305
- | Format[FormattableT]
306
- | OutputParser[FormattableT]
307
- | None = None,
308
- **params: Unpack[Params],
309
- ) -> AsyncStreamResponse | AsyncStreamResponse[FormattableT]:
310
- """Generate an `llm.AsyncStreamResponse` using the beta Anthropic API."""
311
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
312
- model_id=model_id,
313
- messages=messages,
314
- tools=tools,
315
- format=format,
316
- params=params,
317
- )
318
- beta_stream = self.async_client.beta.messages.stream(**kwargs)
319
- include_thoughts = _utils.get_include_thoughts(params)
320
- chunk_iterator = beta_decode.beta_decode_async_stream(
321
- beta_stream, include_thoughts=include_thoughts
322
- )
323
- return AsyncStreamResponse(
324
- provider_id="anthropic",
325
- model_id=model_id,
326
- provider_model_name=model_name(model_id),
327
- params=params,
328
- tools=tools,
329
- input_messages=input_messages,
330
- chunk_iterator=chunk_iterator,
331
- format=resolved_format,
332
- )
333
-
334
- async def _context_stream_async(
335
- self,
336
- *,
337
- ctx: Context[DepsT],
338
- model_id: str,
339
- messages: Sequence[Message],
340
- tools: Sequence[AsyncTool | AsyncContextTool[DepsT]]
341
- | AsyncContextToolkit[DepsT]
342
- | None = None,
343
- format: type[FormattableT]
344
- | Format[FormattableT]
345
- | OutputParser[FormattableT]
346
- | None = None,
347
- **params: Unpack[Params],
348
- ) -> (
349
- AsyncContextStreamResponse[DepsT]
350
- | AsyncContextStreamResponse[DepsT, FormattableT]
351
- ):
352
- """Generate an `llm.AsyncContextStreamResponse` using the beta Anthropic API."""
353
- input_messages, resolved_format, kwargs = beta_encode.beta_encode_request(
354
- model_id=model_id,
355
- messages=messages,
356
- tools=tools,
357
- format=format,
358
- params=params,
359
- )
360
- beta_stream = self.async_client.beta.messages.stream(**kwargs)
361
- include_thoughts = _utils.get_include_thoughts(params)
362
- chunk_iterator = beta_decode.beta_decode_async_stream(
363
- beta_stream, include_thoughts=include_thoughts
364
- )
365
- return AsyncContextStreamResponse(
366
- provider_id="anthropic",
367
- model_id=model_id,
368
- provider_model_name=model_name(model_id),
369
- params=params,
370
- tools=tools,
371
- input_messages=input_messages,
372
- chunk_iterator=chunk_iterator,
373
- format=resolved_format,
374
- )
@@ -1,23 +0,0 @@
1
- """Anthropic registered LLM models."""
2
-
3
- from typing import TypeAlias, get_args
4
-
5
- from .model_info import AnthropicKnownModels
6
-
7
- AnthropicModelId: TypeAlias = AnthropicKnownModels | str
8
- """The Anthropic model ids registered with Mirascope."""
9
-
10
- ANTHROPIC_KNOWN_MODELS: set[str] = set(get_args(AnthropicKnownModels))
11
-
12
-
13
- def model_name(model_id: AnthropicModelId) -> str:
14
- """Extract the anthropic model name from the ModelId
15
-
16
- Args:
17
- model_id: Full model ID (e.g. "anthropic/claude-sonnet-4-5" or
18
- "anthropic-beta/claude-sonnet-4-5")
19
-
20
- Returns:
21
- Provider-specific model ID (e.g. "claude-sonnet-4-5")
22
- """
23
- return model_id.removeprefix("anthropic-beta/").removeprefix("anthropic/")
@@ -1,87 +0,0 @@
1
- """Anthropic model information.
2
-
3
- This file is auto-generated by scripts/model_features/codegen_anthropic.py
4
- Do not edit manually - run the codegen script to update."""
5
-
6
- from typing import Literal
7
-
8
- AnthropicKnownModels = Literal[
9
- "anthropic/claude-3-5-haiku",
10
- "anthropic/claude-3-5-haiku-20241022",
11
- "anthropic/claude-3-5-haiku-latest",
12
- "anthropic/claude-3-7-sonnet",
13
- "anthropic/claude-3-7-sonnet-20250219",
14
- "anthropic/claude-3-7-sonnet-latest",
15
- "anthropic/claude-3-haiku",
16
- "anthropic/claude-3-haiku-20240307",
17
- "anthropic/claude-3-haiku-latest",
18
- "anthropic/claude-3-opus",
19
- "anthropic/claude-3-opus-20240229",
20
- "anthropic/claude-3-opus-latest",
21
- "anthropic/claude-haiku-4-5",
22
- "anthropic/claude-haiku-4-5-0",
23
- "anthropic/claude-haiku-4-5-0-20251001",
24
- "anthropic/claude-haiku-4-5-0-latest",
25
- "anthropic/claude-haiku-4-5-20251001",
26
- "anthropic/claude-haiku-4-5-latest",
27
- "anthropic/claude-opus-4",
28
- "anthropic/claude-opus-4-0",
29
- "anthropic/claude-opus-4-0-20250514",
30
- "anthropic/claude-opus-4-0-latest",
31
- "anthropic/claude-opus-4-1",
32
- "anthropic/claude-opus-4-1-0",
33
- "anthropic/claude-opus-4-1-0-20250805",
34
- "anthropic/claude-opus-4-1-0-latest",
35
- "anthropic/claude-opus-4-1-20250805",
36
- "anthropic/claude-opus-4-1-latest",
37
- "anthropic/claude-opus-4-20250514",
38
- "anthropic/claude-opus-4-5",
39
- "anthropic/claude-opus-4-5-0",
40
- "anthropic/claude-opus-4-5-0-20251101",
41
- "anthropic/claude-opus-4-5-0-latest",
42
- "anthropic/claude-opus-4-5-20251101",
43
- "anthropic/claude-opus-4-5-latest",
44
- "anthropic/claude-opus-4-latest",
45
- "anthropic/claude-sonnet-4",
46
- "anthropic/claude-sonnet-4-0",
47
- "anthropic/claude-sonnet-4-0-20250514",
48
- "anthropic/claude-sonnet-4-0-latest",
49
- "anthropic/claude-sonnet-4-20250514",
50
- "anthropic/claude-sonnet-4-5",
51
- "anthropic/claude-sonnet-4-5-0",
52
- "anthropic/claude-sonnet-4-5-0-20250929",
53
- "anthropic/claude-sonnet-4-5-0-latest",
54
- "anthropic/claude-sonnet-4-5-20250929",
55
- "anthropic/claude-sonnet-4-5-latest",
56
- "anthropic/claude-sonnet-4-latest",
57
- ]
58
- """Valid Anthropic model IDs."""
59
-
60
-
61
- MODELS_WITHOUT_STRICT_STRUCTURED_OUTPUTS: set[str] = {
62
- "claude-3-5-haiku",
63
- "claude-3-5-haiku-20241022",
64
- "claude-3-5-haiku-latest",
65
- "claude-3-7-sonnet",
66
- "claude-3-7-sonnet-20250219",
67
- "claude-3-7-sonnet-latest",
68
- "claude-3-haiku",
69
- "claude-3-haiku-20240307",
70
- "claude-3-haiku-latest",
71
- "claude-3-opus",
72
- "claude-3-opus-20240229",
73
- "claude-3-opus-latest",
74
- "claude-opus-4",
75
- "claude-opus-4-0",
76
- "claude-opus-4-0-20250514",
77
- "claude-opus-4-0-latest",
78
- "claude-opus-4-20250514",
79
- "claude-opus-4-latest",
80
- "claude-sonnet-4",
81
- "claude-sonnet-4-0",
82
- "claude-sonnet-4-0-20250514",
83
- "claude-sonnet-4-0-latest",
84
- "claude-sonnet-4-20250514",
85
- "claude-sonnet-4-latest",
86
- }
87
- """Models that do not support strict structured outputs (strict mode tools)."""