llama-cloud 0.1.41__py3-none-any.whl → 1.0.0b4__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 (714) hide show
  1. llama_cloud/__init__.py +101 -816
  2. llama_cloud/_base_client.py +2124 -0
  3. llama_cloud/_client.py +795 -0
  4. llama_cloud/_compat.py +219 -0
  5. llama_cloud/_constants.py +14 -0
  6. llama_cloud/_exceptions.py +108 -0
  7. llama_cloud/_files.py +127 -0
  8. llama_cloud/_models.py +872 -0
  9. llama_cloud/_polling.py +182 -0
  10. llama_cloud/_qs.py +150 -0
  11. llama_cloud/_resource.py +43 -0
  12. llama_cloud/_response.py +832 -0
  13. llama_cloud/_streaming.py +333 -0
  14. llama_cloud/_types.py +270 -0
  15. llama_cloud/_utils/__init__.py +64 -0
  16. llama_cloud/_utils/_compat.py +45 -0
  17. llama_cloud/_utils/_datetime_parse.py +136 -0
  18. llama_cloud/_utils/_logs.py +25 -0
  19. llama_cloud/_utils/_proxy.py +65 -0
  20. llama_cloud/_utils/_reflection.py +42 -0
  21. llama_cloud/_utils/_resources_proxy.py +24 -0
  22. llama_cloud/_utils/_streams.py +12 -0
  23. llama_cloud/_utils/_sync.py +58 -0
  24. llama_cloud/_utils/_transform.py +457 -0
  25. llama_cloud/_utils/_typing.py +156 -0
  26. llama_cloud/_utils/_utils.py +421 -0
  27. llama_cloud/_version.py +4 -0
  28. llama_cloud/lib/__init__.py +0 -0
  29. llama_cloud/lib/index/__init__.py +13 -0
  30. llama_cloud/lib/index/api_utils.py +300 -0
  31. llama_cloud/lib/index/base.py +1041 -0
  32. llama_cloud/lib/index/composite_retriever.py +272 -0
  33. llama_cloud/lib/index/retriever.py +233 -0
  34. llama_cloud/pagination.py +465 -0
  35. llama_cloud/py.typed +0 -0
  36. llama_cloud/resources/__init__.py +136 -107
  37. llama_cloud/resources/beta/__init__.py +102 -1
  38. llama_cloud/resources/beta/agent_data.py +1041 -0
  39. llama_cloud/resources/beta/batch/__init__.py +33 -0
  40. llama_cloud/resources/beta/batch/batch.py +664 -0
  41. llama_cloud/resources/beta/batch/job_items.py +348 -0
  42. llama_cloud/resources/beta/beta.py +262 -0
  43. llama_cloud/resources/beta/directories/__init__.py +33 -0
  44. llama_cloud/resources/beta/directories/directories.py +719 -0
  45. llama_cloud/resources/beta/directories/files.py +913 -0
  46. llama_cloud/resources/beta/parse_configurations.py +743 -0
  47. llama_cloud/resources/beta/sheets.py +1130 -0
  48. llama_cloud/resources/beta/split.py +917 -0
  49. llama_cloud/resources/classifier/__init__.py +32 -1
  50. llama_cloud/resources/classifier/classifier.py +588 -0
  51. llama_cloud/resources/classifier/jobs.py +563 -0
  52. llama_cloud/resources/data_sinks.py +579 -0
  53. llama_cloud/resources/data_sources.py +651 -0
  54. llama_cloud/resources/extraction/__init__.py +61 -0
  55. llama_cloud/resources/extraction/extraction.py +609 -0
  56. llama_cloud/resources/extraction/extraction_agents/__init__.py +33 -0
  57. llama_cloud/resources/extraction/extraction_agents/extraction_agents.py +633 -0
  58. llama_cloud/resources/extraction/extraction_agents/schema.py +308 -0
  59. llama_cloud/resources/extraction/jobs.py +1106 -0
  60. llama_cloud/resources/extraction/runs.py +498 -0
  61. llama_cloud/resources/files.py +784 -0
  62. llama_cloud/resources/parsing.py +1296 -0
  63. llama_cloud/resources/pipelines/__init__.py +98 -24
  64. llama_cloud/resources/pipelines/data_sources.py +529 -0
  65. llama_cloud/resources/pipelines/documents.py +810 -0
  66. llama_cloud/resources/pipelines/files.py +682 -0
  67. llama_cloud/resources/pipelines/images.py +513 -0
  68. llama_cloud/resources/pipelines/metadata.py +265 -0
  69. llama_cloud/resources/pipelines/pipelines.py +1525 -0
  70. llama_cloud/resources/pipelines/sync.py +243 -0
  71. llama_cloud/resources/projects.py +276 -0
  72. llama_cloud/resources/retrievers/__init__.py +32 -1
  73. llama_cloud/resources/retrievers/retriever.py +238 -0
  74. llama_cloud/resources/retrievers/retrievers.py +920 -0
  75. llama_cloud/types/__init__.py +171 -721
  76. llama_cloud/types/advanced_mode_transform_config.py +102 -38
  77. llama_cloud/types/advanced_mode_transform_config_param.py +102 -0
  78. llama_cloud/types/auto_transform_config.py +11 -25
  79. llama_cloud/types/auto_transform_config_param.py +17 -0
  80. llama_cloud/types/azure_openai_embedding.py +62 -0
  81. llama_cloud/types/azure_openai_embedding_config.py +17 -0
  82. llama_cloud/types/azure_openai_embedding_config_param.py +17 -0
  83. llama_cloud/types/azure_openai_embedding_param.py +61 -0
  84. llama_cloud/types/b_box.py +37 -0
  85. llama_cloud/types/bedrock_embedding.py +49 -46
  86. llama_cloud/types/bedrock_embedding_config.py +10 -27
  87. llama_cloud/types/bedrock_embedding_config_param.py +17 -0
  88. llama_cloud/types/bedrock_embedding_param.py +48 -0
  89. llama_cloud/types/beta/__init__.py +59 -0
  90. llama_cloud/types/beta/agent_data.py +26 -0
  91. llama_cloud/types/beta/agent_data_agent_data_params.py +20 -0
  92. llama_cloud/types/beta/agent_data_aggregate_params.py +79 -0
  93. llama_cloud/types/beta/agent_data_aggregate_response.py +17 -0
  94. llama_cloud/types/beta/agent_data_delete_by_query_params.py +43 -0
  95. llama_cloud/types/beta/agent_data_delete_by_query_response.py +11 -0
  96. llama_cloud/types/beta/agent_data_delete_params.py +14 -0
  97. llama_cloud/types/beta/agent_data_delete_response.py +8 -0
  98. llama_cloud/types/beta/agent_data_get_params.py +14 -0
  99. llama_cloud/types/beta/agent_data_search_params.py +69 -0
  100. llama_cloud/types/beta/agent_data_update_params.py +16 -0
  101. llama_cloud/types/beta/batch/__init__.py +12 -0
  102. llama_cloud/types/beta/batch/job_item_get_processing_results_params.py +17 -0
  103. llama_cloud/types/beta/batch/job_item_get_processing_results_response.py +409 -0
  104. llama_cloud/types/beta/batch/job_item_list_params.py +23 -0
  105. llama_cloud/types/beta/batch/job_item_list_response.py +42 -0
  106. llama_cloud/types/beta/batch_cancel_params.py +21 -0
  107. llama_cloud/types/beta/batch_cancel_response.py +23 -0
  108. llama_cloud/types/beta/batch_create_params.py +399 -0
  109. llama_cloud/types/beta/batch_create_response.py +63 -0
  110. llama_cloud/types/beta/batch_get_status_params.py +14 -0
  111. llama_cloud/types/beta/batch_get_status_response.py +73 -0
  112. llama_cloud/types/beta/batch_list_params.py +29 -0
  113. llama_cloud/types/beta/batch_list_response.py +63 -0
  114. llama_cloud/types/beta/directories/__init__.py +15 -0
  115. llama_cloud/types/beta/directories/file_add_params.py +26 -0
  116. llama_cloud/types/beta/directories/file_add_response.py +42 -0
  117. llama_cloud/types/beta/directories/file_delete_params.py +16 -0
  118. llama_cloud/types/beta/directories/file_get_params.py +16 -0
  119. llama_cloud/types/beta/directories/file_get_response.py +42 -0
  120. llama_cloud/types/beta/directories/file_list_params.py +28 -0
  121. llama_cloud/types/beta/directories/file_list_response.py +42 -0
  122. llama_cloud/types/beta/directories/file_update_params.py +27 -0
  123. llama_cloud/types/beta/directories/file_update_response.py +42 -0
  124. llama_cloud/types/beta/directories/file_upload_params.py +24 -0
  125. llama_cloud/types/beta/directories/file_upload_response.py +42 -0
  126. llama_cloud/types/beta/directory_create_params.py +23 -0
  127. llama_cloud/types/beta/directory_create_response.py +36 -0
  128. llama_cloud/types/beta/directory_delete_params.py +14 -0
  129. llama_cloud/types/beta/directory_get_params.py +14 -0
  130. llama_cloud/types/beta/directory_get_response.py +36 -0
  131. llama_cloud/types/beta/directory_list_params.py +24 -0
  132. llama_cloud/types/beta/directory_list_response.py +36 -0
  133. llama_cloud/types/beta/directory_update_params.py +20 -0
  134. llama_cloud/types/beta/directory_update_response.py +36 -0
  135. llama_cloud/types/beta/parse_configuration.py +40 -0
  136. llama_cloud/types/beta/parse_configuration_create_params.py +34 -0
  137. llama_cloud/types/beta/parse_configuration_delete_params.py +14 -0
  138. llama_cloud/types/beta/parse_configuration_get_params.py +14 -0
  139. llama_cloud/types/beta/parse_configuration_list_params.py +24 -0
  140. llama_cloud/types/beta/parse_configuration_query_response.py +28 -0
  141. llama_cloud/types/beta/parse_configuration_update_params.py +22 -0
  142. llama_cloud/types/beta/sheet_create_params.py +22 -0
  143. llama_cloud/types/beta/sheet_delete_job_params.py +14 -0
  144. llama_cloud/types/beta/sheet_get_params.py +16 -0
  145. llama_cloud/types/beta/sheet_get_result_table_params.py +20 -0
  146. llama_cloud/types/beta/sheet_list_params.py +20 -0
  147. llama_cloud/types/beta/sheets_job.py +88 -0
  148. llama_cloud/types/beta/sheets_parsing_config.py +49 -0
  149. llama_cloud/types/beta/sheets_parsing_config_param.py +51 -0
  150. llama_cloud/types/beta/split_category.py +17 -0
  151. llama_cloud/types/beta/split_category_param.py +18 -0
  152. llama_cloud/types/beta/split_create_params.py +36 -0
  153. llama_cloud/types/beta/split_create_response.py +48 -0
  154. llama_cloud/types/beta/split_document_input.py +15 -0
  155. llama_cloud/types/beta/split_document_input_param.py +17 -0
  156. llama_cloud/types/beta/split_get_params.py +14 -0
  157. llama_cloud/types/beta/split_get_response.py +48 -0
  158. llama_cloud/types/beta/split_list_params.py +18 -0
  159. llama_cloud/types/beta/split_list_response.py +48 -0
  160. llama_cloud/types/beta/split_result_response.py +15 -0
  161. llama_cloud/types/beta/split_segment_response.py +20 -0
  162. llama_cloud/types/classifier/__init__.py +15 -0
  163. llama_cloud/types/classifier/classifier_rule.py +25 -0
  164. llama_cloud/types/classifier/classifier_rule_param.py +27 -0
  165. llama_cloud/types/classifier/classify_job.py +51 -0
  166. llama_cloud/types/classifier/classify_job_param.py +53 -0
  167. llama_cloud/types/classifier/classify_parsing_configuration.py +21 -0
  168. llama_cloud/types/classifier/classify_parsing_configuration_param.py +23 -0
  169. llama_cloud/types/classifier/job_create_params.py +30 -0
  170. llama_cloud/types/classifier/job_get_params.py +14 -0
  171. llama_cloud/types/classifier/job_get_results_params.py +14 -0
  172. llama_cloud/types/classifier/job_get_results_response.py +66 -0
  173. llama_cloud/types/classifier/job_list_params.py +18 -0
  174. llama_cloud/types/cohere_embedding.py +37 -40
  175. llama_cloud/types/cohere_embedding_config.py +10 -27
  176. llama_cloud/types/cohere_embedding_config_param.py +17 -0
  177. llama_cloud/types/cohere_embedding_param.py +36 -0
  178. llama_cloud/types/composite_retrieval_mode.py +4 -18
  179. llama_cloud/types/composite_retrieval_result.py +52 -37
  180. llama_cloud/types/data_sink.py +46 -39
  181. llama_cloud/types/data_sink_create_param.py +41 -0
  182. llama_cloud/types/data_sink_create_params.py +44 -0
  183. llama_cloud/types/data_sink_list_params.py +14 -0
  184. llama_cloud/types/data_sink_list_response.py +10 -0
  185. llama_cloud/types/data_sink_update_params.py +40 -0
  186. llama_cloud/types/data_source.py +67 -39
  187. llama_cloud/types/data_source_create_params.py +65 -0
  188. llama_cloud/types/data_source_list_params.py +14 -0
  189. llama_cloud/types/data_source_list_response.py +10 -0
  190. llama_cloud/types/data_source_reader_version_metadata.py +8 -27
  191. llama_cloud/types/data_source_update_params.py +61 -0
  192. llama_cloud/types/extraction/__init__.py +25 -0
  193. llama_cloud/types/extraction/extract_agent.py +41 -0
  194. llama_cloud/types/extraction/extract_config.py +118 -0
  195. llama_cloud/types/extraction/extract_config_param.py +118 -0
  196. llama_cloud/types/extraction/extract_job.py +32 -0
  197. llama_cloud/types/extraction/extract_run.py +64 -0
  198. llama_cloud/types/extraction/extraction_agent_create_params.py +25 -0
  199. llama_cloud/types/extraction/extraction_agent_list_params.py +17 -0
  200. llama_cloud/types/extraction/extraction_agent_list_response.py +10 -0
  201. llama_cloud/types/extraction/extraction_agent_update_params.py +18 -0
  202. llama_cloud/types/extraction/extraction_agents/__init__.py +8 -0
  203. llama_cloud/types/extraction/extraction_agents/schema_generate_schema_params.py +23 -0
  204. llama_cloud/types/extraction/extraction_agents/schema_generate_schema_response.py +14 -0
  205. llama_cloud/types/extraction/extraction_agents/schema_validate_schema_params.py +12 -0
  206. llama_cloud/types/extraction/extraction_agents/schema_validate_schema_response.py +13 -0
  207. llama_cloud/types/extraction/job_create_params.py +38 -0
  208. llama_cloud/types/extraction/job_file_params.py +29 -0
  209. llama_cloud/types/extraction/job_get_result_params.py +14 -0
  210. llama_cloud/types/extraction/job_get_result_response.py +27 -0
  211. llama_cloud/types/extraction/job_list_params.py +11 -0
  212. llama_cloud/types/extraction/job_list_response.py +10 -0
  213. llama_cloud/types/extraction/run_delete_params.py +14 -0
  214. llama_cloud/types/extraction/run_get_by_job_params.py +14 -0
  215. llama_cloud/types/extraction/run_get_params.py +14 -0
  216. llama_cloud/types/extraction/run_list_params.py +15 -0
  217. llama_cloud/types/extraction/webhook_configuration.py +43 -0
  218. llama_cloud/types/extraction/webhook_configuration_param.py +43 -0
  219. llama_cloud/types/extraction_run_params.py +45 -0
  220. llama_cloud/types/fail_page_mode.py +4 -26
  221. llama_cloud/types/file.py +48 -40
  222. llama_cloud/types/file_create_params.py +28 -0
  223. llama_cloud/types/file_create_response.py +38 -0
  224. llama_cloud/types/file_delete_params.py +14 -0
  225. llama_cloud/types/file_get_params.py +16 -0
  226. llama_cloud/types/file_list_params.py +40 -0
  227. llama_cloud/types/file_list_response.py +38 -0
  228. llama_cloud/types/file_query_params.py +61 -0
  229. llama_cloud/types/file_query_response.py +47 -27
  230. llama_cloud/types/gemini_embedding.py +40 -39
  231. llama_cloud/types/gemini_embedding_config.py +10 -27
  232. llama_cloud/types/gemini_embedding_config_param.py +17 -0
  233. llama_cloud/types/gemini_embedding_param.py +39 -0
  234. llama_cloud/types/hugging_face_inference_api_embedding.py +62 -46
  235. llama_cloud/types/hugging_face_inference_api_embedding_config.py +11 -28
  236. llama_cloud/types/hugging_face_inference_api_embedding_config_param.py +17 -0
  237. llama_cloud/types/hugging_face_inference_api_embedding_param.py +60 -0
  238. llama_cloud/types/list_item.py +48 -0
  239. llama_cloud/types/llama_parse_parameters.py +251 -130
  240. llama_cloud/types/llama_parse_parameters_param.py +261 -0
  241. llama_cloud/types/llama_parse_supported_file_extensions.py +84 -310
  242. llama_cloud/types/managed_ingestion_status_response.py +39 -37
  243. llama_cloud/types/message_role.py +4 -46
  244. llama_cloud/types/metadata_filters.py +45 -29
  245. llama_cloud/types/metadata_filters_param.py +58 -0
  246. llama_cloud/types/openai_embedding.py +56 -0
  247. llama_cloud/types/openai_embedding_config.py +17 -0
  248. llama_cloud/types/openai_embedding_config_param.py +17 -0
  249. llama_cloud/types/openai_embedding_param.py +55 -0
  250. llama_cloud/types/page_figure_node_with_score.py +32 -29
  251. llama_cloud/types/page_screenshot_node_with_score.py +23 -29
  252. llama_cloud/types/parsing_create_params.py +586 -0
  253. llama_cloud/types/parsing_create_response.py +33 -0
  254. llama_cloud/types/parsing_get_params.py +27 -0
  255. llama_cloud/types/parsing_get_response.py +364 -0
  256. llama_cloud/types/parsing_languages.py +94 -0
  257. llama_cloud/types/parsing_list_params.py +23 -0
  258. llama_cloud/types/parsing_list_response.py +33 -0
  259. llama_cloud/types/parsing_mode.py +13 -46
  260. llama_cloud/types/parsing_upload_file_params.py +14 -0
  261. llama_cloud/types/parsing_upload_file_response.py +33 -0
  262. llama_cloud/types/pipeline.py +180 -62
  263. llama_cloud/types/pipeline_create_params.py +95 -0
  264. llama_cloud/types/pipeline_get_status_params.py +12 -0
  265. llama_cloud/types/pipeline_list_params.py +23 -0
  266. llama_cloud/types/pipeline_list_response.py +12 -0
  267. llama_cloud/types/pipeline_metadata_config.py +9 -30
  268. llama_cloud/types/pipeline_metadata_config_param.py +17 -0
  269. llama_cloud/types/pipeline_retrieve_params.py +74 -0
  270. llama_cloud/types/pipeline_retrieve_response.py +63 -0
  271. llama_cloud/types/pipeline_type.py +4 -18
  272. llama_cloud/types/pipeline_update_params.py +90 -0
  273. llama_cloud/types/pipeline_upsert_params.py +95 -0
  274. llama_cloud/types/pipelines/__init__.py +38 -0
  275. llama_cloud/types/pipelines/cloud_document.py +29 -0
  276. llama_cloud/types/pipelines/cloud_document_create_param.py +30 -0
  277. llama_cloud/types/pipelines/data_source_get_data_sources_response.py +10 -0
  278. llama_cloud/types/pipelines/data_source_sync_params.py +16 -0
  279. llama_cloud/types/pipelines/data_source_update_data_sources_params.py +25 -0
  280. llama_cloud/types/pipelines/data_source_update_data_sources_response.py +10 -0
  281. llama_cloud/types/pipelines/data_source_update_params.py +15 -0
  282. llama_cloud/types/pipelines/document_create_params.py +14 -0
  283. llama_cloud/types/pipelines/document_create_response.py +10 -0
  284. llama_cloud/types/pipelines/document_get_chunks_response.py +10 -0
  285. llama_cloud/types/pipelines/document_list_params.py +22 -0
  286. llama_cloud/types/pipelines/document_upsert_params.py +14 -0
  287. llama_cloud/types/pipelines/document_upsert_response.py +10 -0
  288. llama_cloud/types/pipelines/file_create_params.py +22 -0
  289. llama_cloud/types/pipelines/file_create_response.py +10 -0
  290. llama_cloud/types/pipelines/file_get_status_counts_params.py +14 -0
  291. llama_cloud/types/pipelines/file_get_status_counts_response.py +24 -0
  292. llama_cloud/types/pipelines/file_list_params.py +22 -0
  293. llama_cloud/types/pipelines/file_update_params.py +15 -0
  294. llama_cloud/types/pipelines/image_get_page_figure_params.py +18 -0
  295. llama_cloud/types/pipelines/image_get_page_screenshot_params.py +16 -0
  296. llama_cloud/types/pipelines/image_list_page_figures_params.py +14 -0
  297. llama_cloud/types/pipelines/image_list_page_figures_response.py +34 -0
  298. llama_cloud/types/pipelines/image_list_page_screenshots_params.py +14 -0
  299. llama_cloud/types/pipelines/image_list_page_screenshots_response.py +25 -0
  300. llama_cloud/types/pipelines/metadata_create_params.py +13 -0
  301. llama_cloud/types/pipelines/metadata_create_response.py +8 -0
  302. llama_cloud/types/pipelines/pipeline_data_source.py +96 -0
  303. llama_cloud/types/pipelines/pipeline_file.py +70 -0
  304. llama_cloud/types/pipelines/text_node.py +89 -0
  305. llama_cloud/types/preset_retrieval_params.py +61 -49
  306. llama_cloud/types/preset_retrieval_params_param.py +71 -0
  307. llama_cloud/types/presigned_url.py +13 -29
  308. llama_cloud/types/project.py +24 -36
  309. llama_cloud/types/project_get_params.py +12 -0
  310. llama_cloud/types/project_list_params.py +14 -0
  311. llama_cloud/types/project_list_response.py +10 -0
  312. llama_cloud/types/re_rank_config_param.py +18 -0
  313. llama_cloud/types/retrieval_mode.py +4 -26
  314. llama_cloud/types/retriever.py +31 -38
  315. llama_cloud/types/retriever_create_params.py +26 -0
  316. llama_cloud/types/retriever_get_params.py +14 -0
  317. llama_cloud/types/retriever_list_params.py +16 -0
  318. llama_cloud/types/retriever_list_response.py +12 -0
  319. llama_cloud/types/retriever_pipeline.py +26 -34
  320. llama_cloud/types/retriever_pipeline_param.py +28 -0
  321. llama_cloud/types/retriever_search_params.py +38 -0
  322. llama_cloud/types/retriever_update_params.py +19 -0
  323. llama_cloud/types/retriever_upsert_params.py +26 -0
  324. llama_cloud/types/retrievers/__init__.py +5 -0
  325. llama_cloud/types/retrievers/retriever_search_params.py +32 -0
  326. llama_cloud/types/shared/__init__.py +21 -0
  327. llama_cloud/types/shared/cloud_astra_db_vector_store.py +39 -0
  328. llama_cloud/types/shared/cloud_az_storage_blob_data_source.py +34 -0
  329. llama_cloud/types/shared/cloud_azure_ai_search_vector_store.py +30 -0
  330. llama_cloud/types/shared/cloud_box_data_source.py +31 -0
  331. llama_cloud/types/shared/cloud_confluence_data_source.py +53 -0
  332. llama_cloud/types/shared/cloud_jira_data_source.py +30 -0
  333. llama_cloud/types/shared/cloud_jira_data_source_v2.py +49 -0
  334. llama_cloud/types/shared/cloud_milvus_vector_store.py +21 -0
  335. llama_cloud/types/shared/cloud_mongodb_atlas_vector_search.py +36 -0
  336. llama_cloud/types/shared/cloud_notion_page_data_source.py +19 -0
  337. llama_cloud/types/shared/cloud_one_drive_data_source.py +32 -0
  338. llama_cloud/types/shared/cloud_pinecone_vector_store.py +32 -0
  339. llama_cloud/types/shared/cloud_postgres_vector_store.py +35 -0
  340. llama_cloud/types/shared/cloud_qdrant_vector_store.py +35 -0
  341. llama_cloud/types/shared/cloud_s3_data_source.py +28 -0
  342. llama_cloud/types/shared/cloud_sharepoint_data_source.py +55 -0
  343. llama_cloud/types/shared/cloud_slack_data_source.py +31 -0
  344. llama_cloud/types/shared/failure_handling_config.py +16 -0
  345. llama_cloud/types/shared/pg_vector_hnsw_settings.py +27 -0
  346. llama_cloud/types/shared_params/__init__.py +21 -0
  347. llama_cloud/types/shared_params/cloud_astra_db_vector_store.py +42 -0
  348. llama_cloud/types/shared_params/cloud_az_storage_blob_data_source.py +41 -0
  349. llama_cloud/types/shared_params/cloud_azure_ai_search_vector_store.py +34 -0
  350. llama_cloud/types/shared_params/cloud_box_data_source.py +40 -0
  351. llama_cloud/types/shared_params/cloud_confluence_data_source.py +58 -0
  352. llama_cloud/types/shared_params/cloud_jira_data_source.py +34 -0
  353. llama_cloud/types/shared_params/cloud_jira_data_source_v2.py +54 -0
  354. llama_cloud/types/shared_params/cloud_milvus_vector_store.py +24 -0
  355. llama_cloud/types/shared_params/cloud_mongodb_atlas_vector_search.py +39 -0
  356. llama_cloud/types/shared_params/cloud_notion_page_data_source.py +23 -0
  357. llama_cloud/types/shared_params/cloud_one_drive_data_source.py +37 -0
  358. llama_cloud/types/shared_params/cloud_pinecone_vector_store.py +35 -0
  359. llama_cloud/types/shared_params/cloud_postgres_vector_store.py +39 -0
  360. llama_cloud/types/shared_params/cloud_qdrant_vector_store.py +37 -0
  361. llama_cloud/types/shared_params/cloud_s3_data_source.py +32 -0
  362. llama_cloud/types/shared_params/cloud_sharepoint_data_source.py +60 -0
  363. llama_cloud/types/shared_params/cloud_slack_data_source.py +35 -0
  364. llama_cloud/types/shared_params/failure_handling_config.py +16 -0
  365. llama_cloud/types/shared_params/pg_vector_hnsw_settings.py +26 -0
  366. llama_cloud/types/sparse_model_config.py +16 -30
  367. llama_cloud/types/sparse_model_config_param.py +25 -0
  368. llama_cloud/types/status_enum.py +4 -34
  369. llama_cloud/types/vertex_ai_embedding_config.py +10 -27
  370. llama_cloud/types/vertex_ai_embedding_config_param.py +17 -0
  371. llama_cloud/types/vertex_text_embedding.py +47 -45
  372. llama_cloud/types/vertex_text_embedding_param.py +45 -0
  373. llama_cloud-1.0.0b4.dist-info/METADATA +546 -0
  374. llama_cloud-1.0.0b4.dist-info/RECORD +376 -0
  375. {llama_cloud-0.1.41.dist-info → llama_cloud-1.0.0b4.dist-info}/WHEEL +1 -1
  376. llama_cloud-1.0.0b4.dist-info/licenses/LICENSE +7 -0
  377. llama_cloud/client.py +0 -108
  378. llama_cloud/core/__init__.py +0 -17
  379. llama_cloud/core/api_error.py +0 -15
  380. llama_cloud/core/client_wrapper.py +0 -51
  381. llama_cloud/core/datetime_utils.py +0 -28
  382. llama_cloud/core/jsonable_encoder.py +0 -106
  383. llama_cloud/core/remove_none_from_dict.py +0 -11
  384. llama_cloud/environment.py +0 -7
  385. llama_cloud/errors/__init__.py +0 -5
  386. llama_cloud/errors/unprocessable_entity_error.py +0 -9
  387. llama_cloud/resources/admin/__init__.py +0 -2
  388. llama_cloud/resources/admin/client.py +0 -196
  389. llama_cloud/resources/agent_deployments/__init__.py +0 -2
  390. llama_cloud/resources/agent_deployments/client.py +0 -160
  391. llama_cloud/resources/alpha/__init__.py +0 -2
  392. llama_cloud/resources/alpha/client.py +0 -112
  393. llama_cloud/resources/beta/client.py +0 -2664
  394. llama_cloud/resources/chat_apps/__init__.py +0 -2
  395. llama_cloud/resources/chat_apps/client.py +0 -616
  396. llama_cloud/resources/classifier/client.py +0 -444
  397. llama_cloud/resources/data_sinks/__init__.py +0 -5
  398. llama_cloud/resources/data_sinks/client.py +0 -535
  399. llama_cloud/resources/data_sinks/types/__init__.py +0 -5
  400. llama_cloud/resources/data_sinks/types/data_sink_update_component.py +0 -22
  401. llama_cloud/resources/data_sources/__init__.py +0 -5
  402. llama_cloud/resources/data_sources/client.py +0 -548
  403. llama_cloud/resources/data_sources/types/__init__.py +0 -6
  404. llama_cloud/resources/data_sources/types/data_source_update_component.py +0 -28
  405. llama_cloud/resources/data_sources/types/data_source_update_custom_metadata_value.py +0 -7
  406. llama_cloud/resources/embedding_model_configs/__init__.py +0 -23
  407. llama_cloud/resources/embedding_model_configs/client.py +0 -420
  408. llama_cloud/resources/embedding_model_configs/types/__init__.py +0 -23
  409. llama_cloud/resources/embedding_model_configs/types/embedding_model_config_create_embedding_config.py +0 -89
  410. llama_cloud/resources/evals/__init__.py +0 -2
  411. llama_cloud/resources/evals/client.py +0 -85
  412. llama_cloud/resources/files/__init__.py +0 -5
  413. llama_cloud/resources/files/client.py +0 -1454
  414. llama_cloud/resources/files/types/__init__.py +0 -5
  415. llama_cloud/resources/files/types/file_create_from_url_resource_info_value.py +0 -7
  416. llama_cloud/resources/jobs/__init__.py +0 -2
  417. llama_cloud/resources/jobs/client.py +0 -164
  418. llama_cloud/resources/llama_extract/__init__.py +0 -27
  419. llama_cloud/resources/llama_extract/client.py +0 -2082
  420. llama_cloud/resources/llama_extract/types/__init__.py +0 -25
  421. llama_cloud/resources/llama_extract/types/extract_agent_create_data_schema.py +0 -9
  422. llama_cloud/resources/llama_extract/types/extract_agent_create_data_schema_zero_value.py +0 -7
  423. llama_cloud/resources/llama_extract/types/extract_agent_update_data_schema.py +0 -9
  424. llama_cloud/resources/llama_extract/types/extract_agent_update_data_schema_zero_value.py +0 -7
  425. llama_cloud/resources/llama_extract/types/extract_job_create_batch_data_schema_override.py +0 -9
  426. llama_cloud/resources/llama_extract/types/extract_job_create_batch_data_schema_override_zero_value.py +0 -7
  427. llama_cloud/resources/llama_extract/types/extract_schema_validate_request_data_schema.py +0 -9
  428. llama_cloud/resources/llama_extract/types/extract_schema_validate_request_data_schema_zero_value.py +0 -7
  429. llama_cloud/resources/llama_extract/types/extract_stateless_request_data_schema.py +0 -9
  430. llama_cloud/resources/llama_extract/types/extract_stateless_request_data_schema_zero_value.py +0 -7
  431. llama_cloud/resources/organizations/__init__.py +0 -2
  432. llama_cloud/resources/organizations/client.py +0 -1448
  433. llama_cloud/resources/parsing/__init__.py +0 -2
  434. llama_cloud/resources/parsing/client.py +0 -2392
  435. llama_cloud/resources/pipelines/client.py +0 -3436
  436. llama_cloud/resources/pipelines/types/__init__.py +0 -29
  437. llama_cloud/resources/pipelines/types/pipeline_file_update_custom_metadata_value.py +0 -7
  438. llama_cloud/resources/pipelines/types/pipeline_update_embedding_config.py +0 -89
  439. llama_cloud/resources/pipelines/types/pipeline_update_transform_config.py +0 -8
  440. llama_cloud/resources/pipelines/types/retrieval_params_search_filters_inference_schema_value.py +0 -7
  441. llama_cloud/resources/projects/__init__.py +0 -2
  442. llama_cloud/resources/projects/client.py +0 -636
  443. llama_cloud/resources/retrievers/client.py +0 -837
  444. llama_cloud/resources/users/__init__.py +0 -2
  445. llama_cloud/resources/users/client.py +0 -155
  446. llama_cloud/types/advanced_mode_transform_config_chunking_config.py +0 -67
  447. llama_cloud/types/advanced_mode_transform_config_segmentation_config.py +0 -45
  448. llama_cloud/types/agent_data.py +0 -40
  449. llama_cloud/types/agent_deployment_list.py +0 -32
  450. llama_cloud/types/agent_deployment_summary.py +0 -39
  451. llama_cloud/types/aggregate_group.py +0 -37
  452. llama_cloud/types/azure_open_ai_embedding.py +0 -49
  453. llama_cloud/types/azure_open_ai_embedding_config.py +0 -34
  454. llama_cloud/types/base_plan.py +0 -53
  455. llama_cloud/types/base_plan_metronome_plan_type.py +0 -17
  456. llama_cloud/types/base_plan_name.py +0 -57
  457. llama_cloud/types/base_plan_plan_frequency.py +0 -25
  458. llama_cloud/types/batch.py +0 -47
  459. llama_cloud/types/batch_item.py +0 -40
  460. llama_cloud/types/batch_paginated_list.py +0 -35
  461. llama_cloud/types/batch_public_output.py +0 -36
  462. llama_cloud/types/billing_period.py +0 -32
  463. llama_cloud/types/box_auth_mechanism.py +0 -17
  464. llama_cloud/types/character_chunking_config.py +0 -32
  465. llama_cloud/types/chat_app.py +0 -46
  466. llama_cloud/types/chat_app_response.py +0 -43
  467. llama_cloud/types/chat_data.py +0 -35
  468. llama_cloud/types/chat_message.py +0 -43
  469. llama_cloud/types/chunk_mode.py +0 -29
  470. llama_cloud/types/classification_result.py +0 -39
  471. llama_cloud/types/classifier_rule.py +0 -43
  472. llama_cloud/types/classify_job.py +0 -47
  473. llama_cloud/types/classify_job_results.py +0 -38
  474. llama_cloud/types/classify_parsing_configuration.py +0 -38
  475. llama_cloud/types/cloud_astra_db_vector_store.py +0 -51
  476. llama_cloud/types/cloud_az_storage_blob_data_source.py +0 -41
  477. llama_cloud/types/cloud_azure_ai_search_vector_store.py +0 -45
  478. llama_cloud/types/cloud_box_data_source.py +0 -42
  479. llama_cloud/types/cloud_confluence_data_source.py +0 -59
  480. llama_cloud/types/cloud_document.py +0 -40
  481. llama_cloud/types/cloud_document_create.py +0 -40
  482. llama_cloud/types/cloud_jira_data_source.py +0 -42
  483. llama_cloud/types/cloud_jira_data_source_v_2.py +0 -52
  484. llama_cloud/types/cloud_jira_data_source_v_2_api_version.py +0 -21
  485. llama_cloud/types/cloud_milvus_vector_store.py +0 -40
  486. llama_cloud/types/cloud_mongo_db_atlas_vector_search.py +0 -52
  487. llama_cloud/types/cloud_notion_page_data_source.py +0 -35
  488. llama_cloud/types/cloud_one_drive_data_source.py +0 -39
  489. llama_cloud/types/cloud_pinecone_vector_store.py +0 -49
  490. llama_cloud/types/cloud_postgres_vector_store.py +0 -44
  491. llama_cloud/types/cloud_qdrant_vector_store.py +0 -51
  492. llama_cloud/types/cloud_s_3_data_source.py +0 -39
  493. llama_cloud/types/cloud_sharepoint_data_source.py +0 -42
  494. llama_cloud/types/cloud_slack_data_source.py +0 -39
  495. llama_cloud/types/composite_retrieved_text_node.py +0 -42
  496. llama_cloud/types/composite_retrieved_text_node_with_score.py +0 -34
  497. llama_cloud/types/configurable_data_sink_names.py +0 -41
  498. llama_cloud/types/configurable_data_source_names.py +0 -57
  499. llama_cloud/types/credit_type.py +0 -32
  500. llama_cloud/types/data_sink_component.py +0 -22
  501. llama_cloud/types/data_sink_create.py +0 -39
  502. llama_cloud/types/data_sink_create_component.py +0 -22
  503. llama_cloud/types/data_source_component.py +0 -28
  504. llama_cloud/types/data_source_create.py +0 -41
  505. llama_cloud/types/data_source_create_component.py +0 -28
  506. llama_cloud/types/data_source_create_custom_metadata_value.py +0 -7
  507. llama_cloud/types/data_source_custom_metadata_value.py +0 -7
  508. llama_cloud/types/data_source_reader_version_metadata_reader_version.py +0 -25
  509. llama_cloud/types/data_source_update_dispatcher_config.py +0 -38
  510. llama_cloud/types/delete_params.py +0 -39
  511. llama_cloud/types/document_chunk_mode.py +0 -17
  512. llama_cloud/types/document_ingestion_job_params.py +0 -43
  513. llama_cloud/types/element_segmentation_config.py +0 -29
  514. llama_cloud/types/embedding_model_config.py +0 -43
  515. llama_cloud/types/embedding_model_config_embedding_config.py +0 -89
  516. llama_cloud/types/embedding_model_config_update.py +0 -33
  517. llama_cloud/types/embedding_model_config_update_embedding_config.py +0 -89
  518. llama_cloud/types/eval_execution_params.py +0 -41
  519. llama_cloud/types/extract_agent.py +0 -48
  520. llama_cloud/types/extract_agent_data_schema_value.py +0 -5
  521. llama_cloud/types/extract_config.py +0 -66
  522. llama_cloud/types/extract_config_priority.py +0 -29
  523. llama_cloud/types/extract_job.py +0 -38
  524. llama_cloud/types/extract_job_create.py +0 -46
  525. llama_cloud/types/extract_job_create_data_schema_override.py +0 -9
  526. llama_cloud/types/extract_job_create_data_schema_override_zero_value.py +0 -7
  527. llama_cloud/types/extract_job_create_priority.py +0 -29
  528. llama_cloud/types/extract_mode.py +0 -29
  529. llama_cloud/types/extract_models.py +0 -53
  530. llama_cloud/types/extract_resultset.py +0 -42
  531. llama_cloud/types/extract_resultset_data.py +0 -11
  532. llama_cloud/types/extract_resultset_data_item_value.py +0 -7
  533. llama_cloud/types/extract_resultset_data_zero_value.py +0 -7
  534. llama_cloud/types/extract_resultset_extraction_metadata_value.py +0 -7
  535. llama_cloud/types/extract_run.py +0 -55
  536. llama_cloud/types/extract_run_data.py +0 -11
  537. llama_cloud/types/extract_run_data_item_value.py +0 -5
  538. llama_cloud/types/extract_run_data_schema_value.py +0 -5
  539. llama_cloud/types/extract_run_data_zero_value.py +0 -5
  540. llama_cloud/types/extract_run_extraction_metadata_value.py +0 -7
  541. llama_cloud/types/extract_schema_generate_response.py +0 -38
  542. llama_cloud/types/extract_schema_generate_response_data_schema_value.py +0 -7
  543. llama_cloud/types/extract_schema_validate_response.py +0 -32
  544. llama_cloud/types/extract_schema_validate_response_data_schema_value.py +0 -7
  545. llama_cloud/types/extract_state.py +0 -29
  546. llama_cloud/types/extract_target.py +0 -17
  547. llama_cloud/types/failure_handling_config.py +0 -37
  548. llama_cloud/types/file_classification.py +0 -41
  549. llama_cloud/types/file_count_by_status_response.py +0 -37
  550. llama_cloud/types/file_create.py +0 -41
  551. llama_cloud/types/file_create_permission_info_value.py +0 -7
  552. llama_cloud/types/file_create_resource_info_value.py +0 -5
  553. llama_cloud/types/file_data.py +0 -36
  554. llama_cloud/types/file_filter.py +0 -40
  555. llama_cloud/types/file_id_presigned_url.py +0 -38
  556. llama_cloud/types/file_parse_public.py +0 -36
  557. llama_cloud/types/file_permission_info_value.py +0 -5
  558. llama_cloud/types/file_resource_info_value.py +0 -5
  559. llama_cloud/types/file_store_info_response.py +0 -34
  560. llama_cloud/types/file_store_info_response_status.py +0 -25
  561. llama_cloud/types/filter_condition.py +0 -29
  562. llama_cloud/types/filter_operation.py +0 -46
  563. llama_cloud/types/filter_operation_eq.py +0 -6
  564. llama_cloud/types/filter_operation_gt.py +0 -6
  565. llama_cloud/types/filter_operation_gte.py +0 -6
  566. llama_cloud/types/filter_operation_includes_item.py +0 -6
  567. llama_cloud/types/filter_operation_lt.py +0 -6
  568. llama_cloud/types/filter_operation_lte.py +0 -6
  569. llama_cloud/types/filter_operator.py +0 -73
  570. llama_cloud/types/free_credits_usage.py +0 -34
  571. llama_cloud/types/http_validation_error.py +0 -32
  572. llama_cloud/types/hugging_face_inference_api_embedding_token.py +0 -5
  573. llama_cloud/types/ingestion_error_response.py +0 -34
  574. llama_cloud/types/input_message.py +0 -40
  575. llama_cloud/types/job_name_mapping.py +0 -49
  576. llama_cloud/types/job_names.py +0 -81
  577. llama_cloud/types/job_record.py +0 -58
  578. llama_cloud/types/job_record_parameters.py +0 -111
  579. llama_cloud/types/job_record_with_usage_metrics.py +0 -36
  580. llama_cloud/types/l_lama_parse_transform_config.py +0 -37
  581. llama_cloud/types/legacy_parse_job_config.py +0 -207
  582. llama_cloud/types/license_info_response.py +0 -34
  583. llama_cloud/types/llama_extract_feature_availability.py +0 -34
  584. llama_cloud/types/llama_extract_mode_availability.py +0 -38
  585. llama_cloud/types/llama_extract_mode_availability_status.py +0 -17
  586. llama_cloud/types/llama_extract_settings.py +0 -67
  587. llama_cloud/types/llama_parse_parameters_priority.py +0 -29
  588. llama_cloud/types/llm_model_data.py +0 -38
  589. llama_cloud/types/llm_parameters.py +0 -39
  590. llama_cloud/types/load_files_job_config.py +0 -35
  591. llama_cloud/types/managed_ingestion_status.py +0 -41
  592. llama_cloud/types/managed_open_ai_embedding.py +0 -36
  593. llama_cloud/types/managed_open_ai_embedding_config.py +0 -34
  594. llama_cloud/types/message_annotation.py +0 -33
  595. llama_cloud/types/metadata_filter.py +0 -44
  596. llama_cloud/types/metadata_filter_value.py +0 -5
  597. llama_cloud/types/metadata_filters_filters_item.py +0 -8
  598. llama_cloud/types/multimodal_parse_resolution.py +0 -17
  599. llama_cloud/types/node_relationship.py +0 -44
  600. llama_cloud/types/none_chunking_config.py +0 -29
  601. llama_cloud/types/none_segmentation_config.py +0 -29
  602. llama_cloud/types/object_type.py +0 -33
  603. llama_cloud/types/open_ai_embedding.py +0 -47
  604. llama_cloud/types/open_ai_embedding_config.py +0 -34
  605. llama_cloud/types/organization.py +0 -43
  606. llama_cloud/types/organization_create.py +0 -35
  607. llama_cloud/types/page_figure_metadata.py +0 -37
  608. llama_cloud/types/page_screenshot_metadata.py +0 -34
  609. llama_cloud/types/page_segmentation_config.py +0 -31
  610. llama_cloud/types/paginated_extract_runs_response.py +0 -39
  611. llama_cloud/types/paginated_jobs_history_with_metrics.py +0 -35
  612. llama_cloud/types/paginated_list_cloud_documents_response.py +0 -35
  613. llama_cloud/types/paginated_list_pipeline_files_response.py +0 -35
  614. llama_cloud/types/paginated_response_agent_data.py +0 -34
  615. llama_cloud/types/paginated_response_aggregate_group.py +0 -34
  616. llama_cloud/types/paginated_response_classify_job.py +0 -34
  617. llama_cloud/types/paginated_response_quota_configuration.py +0 -36
  618. llama_cloud/types/parse_configuration.py +0 -44
  619. llama_cloud/types/parse_configuration_create.py +0 -41
  620. llama_cloud/types/parse_configuration_filter.py +0 -40
  621. llama_cloud/types/parse_configuration_query_response.py +0 -38
  622. llama_cloud/types/parse_job_config.py +0 -149
  623. llama_cloud/types/parse_job_config_priority.py +0 -29
  624. llama_cloud/types/parse_plan_level.py +0 -21
  625. llama_cloud/types/parser_languages.py +0 -361
  626. llama_cloud/types/parsing_history_item.py +0 -39
  627. llama_cloud/types/parsing_job.py +0 -35
  628. llama_cloud/types/parsing_job_json_result.py +0 -32
  629. llama_cloud/types/parsing_job_markdown_result.py +0 -32
  630. llama_cloud/types/parsing_job_structured_result.py +0 -32
  631. llama_cloud/types/parsing_job_text_result.py +0 -32
  632. llama_cloud/types/partition_names.py +0 -45
  633. llama_cloud/types/permission.py +0 -40
  634. llama_cloud/types/pg_vector_distance_method.py +0 -43
  635. llama_cloud/types/pg_vector_hnsw_settings.py +0 -45
  636. llama_cloud/types/pg_vector_vector_type.py +0 -35
  637. llama_cloud/types/pipeline_configuration_hashes.py +0 -37
  638. llama_cloud/types/pipeline_create.py +0 -65
  639. llama_cloud/types/pipeline_create_embedding_config.py +0 -89
  640. llama_cloud/types/pipeline_create_transform_config.py +0 -8
  641. llama_cloud/types/pipeline_data_source.py +0 -55
  642. llama_cloud/types/pipeline_data_source_component.py +0 -28
  643. llama_cloud/types/pipeline_data_source_create.py +0 -36
  644. llama_cloud/types/pipeline_data_source_custom_metadata_value.py +0 -7
  645. llama_cloud/types/pipeline_data_source_status.py +0 -33
  646. llama_cloud/types/pipeline_deployment.py +0 -37
  647. llama_cloud/types/pipeline_embedding_config.py +0 -100
  648. llama_cloud/types/pipeline_file.py +0 -58
  649. llama_cloud/types/pipeline_file_config_hash_value.py +0 -5
  650. llama_cloud/types/pipeline_file_create.py +0 -37
  651. llama_cloud/types/pipeline_file_create_custom_metadata_value.py +0 -7
  652. llama_cloud/types/pipeline_file_custom_metadata_value.py +0 -7
  653. llama_cloud/types/pipeline_file_permission_info_value.py +0 -7
  654. llama_cloud/types/pipeline_file_resource_info_value.py +0 -7
  655. llama_cloud/types/pipeline_file_status.py +0 -33
  656. llama_cloud/types/pipeline_file_update_dispatcher_config.py +0 -38
  657. llama_cloud/types/pipeline_file_updater_config.py +0 -44
  658. llama_cloud/types/pipeline_managed_ingestion_job_params.py +0 -37
  659. llama_cloud/types/pipeline_status.py +0 -17
  660. llama_cloud/types/pipeline_transform_config.py +0 -31
  661. llama_cloud/types/plan_limits.py +0 -53
  662. llama_cloud/types/playground_session.py +0 -51
  663. llama_cloud/types/pooling.py +0 -29
  664. llama_cloud/types/preset_composite_retrieval_params.py +0 -37
  665. llama_cloud/types/preset_retrieval_params_search_filters_inference_schema_value.py +0 -7
  666. llama_cloud/types/project_create.py +0 -35
  667. llama_cloud/types/prompt_conf.py +0 -38
  668. llama_cloud/types/public_model_name.py +0 -97
  669. llama_cloud/types/quota_configuration.py +0 -53
  670. llama_cloud/types/quota_configuration_configuration_type.py +0 -33
  671. llama_cloud/types/quota_configuration_status.py +0 -21
  672. llama_cloud/types/quota_rate_limit_configuration_value.py +0 -38
  673. llama_cloud/types/quota_rate_limit_configuration_value_denominator_units.py +0 -29
  674. llama_cloud/types/re_rank_config.py +0 -35
  675. llama_cloud/types/re_ranker_type.py +0 -41
  676. llama_cloud/types/recurring_credit_grant.py +0 -44
  677. llama_cloud/types/related_node_info.py +0 -36
  678. llama_cloud/types/related_node_info_node_type.py +0 -7
  679. llama_cloud/types/retrieve_results.py +0 -56
  680. llama_cloud/types/retriever_create.py +0 -37
  681. llama_cloud/types/role.py +0 -40
  682. llama_cloud/types/schema_generation_availability.py +0 -33
  683. llama_cloud/types/schema_generation_availability_status.py +0 -17
  684. llama_cloud/types/schema_relax_mode.py +0 -25
  685. llama_cloud/types/semantic_chunking_config.py +0 -32
  686. llama_cloud/types/sentence_chunking_config.py +0 -34
  687. llama_cloud/types/sparse_model_type.py +0 -33
  688. llama_cloud/types/struct_mode.py +0 -33
  689. llama_cloud/types/struct_parse_conf.py +0 -63
  690. llama_cloud/types/supported_llm_model.py +0 -40
  691. llama_cloud/types/supported_llm_model_names.py +0 -69
  692. llama_cloud/types/text_node.py +0 -67
  693. llama_cloud/types/text_node_relationships_value.py +0 -7
  694. llama_cloud/types/text_node_with_score.py +0 -39
  695. llama_cloud/types/token_chunking_config.py +0 -33
  696. llama_cloud/types/update_user_response.py +0 -33
  697. llama_cloud/types/usage_and_plan.py +0 -34
  698. llama_cloud/types/usage_metric_response.py +0 -34
  699. llama_cloud/types/usage_response.py +0 -43
  700. llama_cloud/types/usage_response_active_alerts_item.py +0 -37
  701. llama_cloud/types/user_job_record.py +0 -32
  702. llama_cloud/types/user_organization.py +0 -47
  703. llama_cloud/types/user_organization_create.py +0 -38
  704. llama_cloud/types/user_organization_delete.py +0 -37
  705. llama_cloud/types/user_organization_role.py +0 -42
  706. llama_cloud/types/user_summary.py +0 -38
  707. llama_cloud/types/validation_error.py +0 -34
  708. llama_cloud/types/validation_error_loc_item.py +0 -5
  709. llama_cloud/types/vertex_embedding_mode.py +0 -38
  710. llama_cloud/types/webhook_configuration.py +0 -39
  711. llama_cloud/types/webhook_configuration_webhook_events_item.py +0 -57
  712. llama_cloud-0.1.41.dist-info/LICENSE +0 -21
  713. llama_cloud-0.1.41.dist-info/METADATA +0 -106
  714. llama_cloud-0.1.41.dist-info/RECORD +0 -385
@@ -1,2082 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
- import urllib.parse
5
- from json.decoder import JSONDecodeError
6
-
7
- from ...core.api_error import ApiError
8
- from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
9
- from ...core.jsonable_encoder import jsonable_encoder
10
- from ...core.remove_none_from_dict import remove_none_from_dict
11
- from ...errors.unprocessable_entity_error import UnprocessableEntityError
12
- from ...types.extract_agent import ExtractAgent
13
- from ...types.extract_config import ExtractConfig
14
- from ...types.extract_job import ExtractJob
15
- from ...types.extract_job_create import ExtractJobCreate
16
- from ...types.extract_resultset import ExtractResultset
17
- from ...types.extract_run import ExtractRun
18
- from ...types.extract_schema_generate_response import ExtractSchemaGenerateResponse
19
- from ...types.extract_schema_validate_response import ExtractSchemaValidateResponse
20
- from ...types.file_data import FileData
21
- from ...types.http_validation_error import HttpValidationError
22
- from ...types.llama_extract_settings import LlamaExtractSettings
23
- from ...types.paginated_extract_runs_response import PaginatedExtractRunsResponse
24
- from ...types.webhook_configuration import WebhookConfiguration
25
- from .types.extract_agent_create_data_schema import ExtractAgentCreateDataSchema
26
- from .types.extract_agent_update_data_schema import ExtractAgentUpdateDataSchema
27
- from .types.extract_job_create_batch_data_schema_override import ExtractJobCreateBatchDataSchemaOverride
28
- from .types.extract_schema_validate_request_data_schema import ExtractSchemaValidateRequestDataSchema
29
- from .types.extract_stateless_request_data_schema import ExtractStatelessRequestDataSchema
30
-
31
- try:
32
- import pydantic
33
- if pydantic.__version__.startswith("1."):
34
- raise ImportError
35
- import pydantic.v1 as pydantic # type: ignore
36
- except ImportError:
37
- import pydantic # type: ignore
38
-
39
- # this is used as the default value for optional parameters
40
- OMIT = typing.cast(typing.Any, ...)
41
-
42
-
43
- class LlamaExtractClient:
44
- def __init__(self, *, client_wrapper: SyncClientWrapper):
45
- self._client_wrapper = client_wrapper
46
-
47
- def list_extraction_agents(
48
- self,
49
- *,
50
- include_default: typing.Optional[bool] = None,
51
- project_id: typing.Optional[str] = None,
52
- organization_id: typing.Optional[str] = None,
53
- ) -> typing.List[ExtractAgent]:
54
- """
55
- Parameters:
56
- - include_default: typing.Optional[bool]. Whether to include default agents in the results
57
-
58
- - project_id: typing.Optional[str].
59
-
60
- - organization_id: typing.Optional[str].
61
- ---
62
- from llama_cloud.client import LlamaCloud
63
-
64
- client = LlamaCloud(
65
- token="YOUR_TOKEN",
66
- )
67
- client.llama_extract.list_extraction_agents()
68
- """
69
- _response = self._client_wrapper.httpx_client.request(
70
- "GET",
71
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents"),
72
- params=remove_none_from_dict(
73
- {"include_default": include_default, "project_id": project_id, "organization_id": organization_id}
74
- ),
75
- headers=self._client_wrapper.get_headers(),
76
- timeout=60,
77
- )
78
- if 200 <= _response.status_code < 300:
79
- return pydantic.parse_obj_as(typing.List[ExtractAgent], _response.json()) # type: ignore
80
- if _response.status_code == 422:
81
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
82
- try:
83
- _response_json = _response.json()
84
- except JSONDecodeError:
85
- raise ApiError(status_code=_response.status_code, body=_response.text)
86
- raise ApiError(status_code=_response.status_code, body=_response_json)
87
-
88
- def create_extraction_agent(
89
- self,
90
- *,
91
- project_id: typing.Optional[str] = None,
92
- organization_id: typing.Optional[str] = None,
93
- name: str,
94
- data_schema: ExtractAgentCreateDataSchema,
95
- config: ExtractConfig,
96
- ) -> ExtractAgent:
97
- """
98
- Parameters:
99
- - project_id: typing.Optional[str].
100
-
101
- - organization_id: typing.Optional[str].
102
-
103
- - name: str. The name of the extraction schema
104
-
105
- - data_schema: ExtractAgentCreateDataSchema. The schema of the data.
106
-
107
- - config: ExtractConfig. The configuration parameters for the extraction agent.
108
- ---
109
- from llama_cloud import (
110
- DocumentChunkMode,
111
- ExtractConfig,
112
- ExtractConfigPriority,
113
- ExtractMode,
114
- ExtractModels,
115
- ExtractTarget,
116
- PublicModelName,
117
- )
118
- from llama_cloud.client import LlamaCloud
119
-
120
- client = LlamaCloud(
121
- token="YOUR_TOKEN",
122
- )
123
- client.llama_extract.create_extraction_agent(
124
- name="string",
125
- config=ExtractConfig(
126
- priority=ExtractConfigPriority.LOW,
127
- extraction_target=ExtractTarget.PER_DOC,
128
- extraction_mode=ExtractMode.FAST,
129
- parse_model=PublicModelName.OPENAI_GPT_4_O,
130
- extract_model=ExtractModels.OPENAI_GPT_4_1,
131
- chunk_mode=DocumentChunkMode.PAGE,
132
- ),
133
- )
134
- """
135
- _response = self._client_wrapper.httpx_client.request(
136
- "POST",
137
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents"),
138
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
139
- json=jsonable_encoder({"name": name, "data_schema": data_schema, "config": config}),
140
- headers=self._client_wrapper.get_headers(),
141
- timeout=60,
142
- )
143
- if 200 <= _response.status_code < 300:
144
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
145
- if _response.status_code == 422:
146
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
147
- try:
148
- _response_json = _response.json()
149
- except JSONDecodeError:
150
- raise ApiError(status_code=_response.status_code, body=_response.text)
151
- raise ApiError(status_code=_response.status_code, body=_response_json)
152
-
153
- def validate_extraction_schema(
154
- self, *, data_schema: ExtractSchemaValidateRequestDataSchema
155
- ) -> ExtractSchemaValidateResponse:
156
- """
157
- Validates an extraction agent's schema definition.
158
- Returns the normalized and validated schema if valid, otherwise raises an HTTP 400.
159
-
160
- Parameters:
161
- - data_schema: ExtractSchemaValidateRequestDataSchema.
162
- ---
163
- from llama_cloud.client import LlamaCloud
164
-
165
- client = LlamaCloud(
166
- token="YOUR_TOKEN",
167
- )
168
- client.llama_extract.validate_extraction_schema()
169
- """
170
- _response = self._client_wrapper.httpx_client.request(
171
- "POST",
172
- urllib.parse.urljoin(
173
- f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents/schema/validation"
174
- ),
175
- json=jsonable_encoder({"data_schema": data_schema}),
176
- headers=self._client_wrapper.get_headers(),
177
- timeout=60,
178
- )
179
- if 200 <= _response.status_code < 300:
180
- return pydantic.parse_obj_as(ExtractSchemaValidateResponse, _response.json()) # type: ignore
181
- if _response.status_code == 422:
182
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
183
- try:
184
- _response_json = _response.json()
185
- except JSONDecodeError:
186
- raise ApiError(status_code=_response.status_code, body=_response.text)
187
- raise ApiError(status_code=_response.status_code, body=_response_json)
188
-
189
- def generate_extraction_schema(
190
- self,
191
- *,
192
- project_id: typing.Optional[str] = None,
193
- organization_id: typing.Optional[str] = None,
194
- prompt: typing.Optional[str] = OMIT,
195
- file_id: typing.Optional[str] = OMIT,
196
- ) -> ExtractSchemaGenerateResponse:
197
- """
198
- Generates an extraction agent's schema definition from a file and/or natural language prompt.
199
-
200
- Parameters:
201
- - project_id: typing.Optional[str].
202
-
203
- - organization_id: typing.Optional[str].
204
-
205
- - prompt: typing.Optional[str].
206
-
207
- - file_id: typing.Optional[str].
208
- ---
209
- from llama_cloud.client import LlamaCloud
210
-
211
- client = LlamaCloud(
212
- token="YOUR_TOKEN",
213
- )
214
- client.llama_extract.generate_extraction_schema()
215
- """
216
- _request: typing.Dict[str, typing.Any] = {}
217
- if prompt is not OMIT:
218
- _request["prompt"] = prompt
219
- if file_id is not OMIT:
220
- _request["file_id"] = file_id
221
- _response = self._client_wrapper.httpx_client.request(
222
- "POST",
223
- urllib.parse.urljoin(
224
- f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents/schema/generate"
225
- ),
226
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
227
- json=jsonable_encoder(_request),
228
- headers=self._client_wrapper.get_headers(),
229
- timeout=60,
230
- )
231
- if 200 <= _response.status_code < 300:
232
- return pydantic.parse_obj_as(ExtractSchemaGenerateResponse, _response.json()) # type: ignore
233
- if _response.status_code == 422:
234
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
235
- try:
236
- _response_json = _response.json()
237
- except JSONDecodeError:
238
- raise ApiError(status_code=_response.status_code, body=_response.text)
239
- raise ApiError(status_code=_response.status_code, body=_response_json)
240
-
241
- def get_extraction_agent_by_name(
242
- self, name: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
243
- ) -> ExtractAgent:
244
- """
245
- Parameters:
246
- - name: str.
247
-
248
- - project_id: typing.Optional[str].
249
-
250
- - organization_id: typing.Optional[str].
251
- ---
252
- from llama_cloud.client import LlamaCloud
253
-
254
- client = LlamaCloud(
255
- token="YOUR_TOKEN",
256
- )
257
- client.llama_extract.get_extraction_agent_by_name(
258
- name="string",
259
- )
260
- """
261
- _response = self._client_wrapper.httpx_client.request(
262
- "GET",
263
- urllib.parse.urljoin(
264
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/by-name/{name}"
265
- ),
266
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
267
- headers=self._client_wrapper.get_headers(),
268
- timeout=60,
269
- )
270
- if 200 <= _response.status_code < 300:
271
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
272
- if _response.status_code == 422:
273
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
274
- try:
275
- _response_json = _response.json()
276
- except JSONDecodeError:
277
- raise ApiError(status_code=_response.status_code, body=_response.text)
278
- raise ApiError(status_code=_response.status_code, body=_response_json)
279
-
280
- def get_or_create_default_extraction_agent(
281
- self, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
282
- ) -> ExtractAgent:
283
- """
284
- Get or create a default extraction agent for the current project.
285
- The default agent has an empty schema and default configuration.
286
-
287
- Parameters:
288
- - project_id: typing.Optional[str].
289
-
290
- - organization_id: typing.Optional[str].
291
- ---
292
- from llama_cloud.client import LlamaCloud
293
-
294
- client = LlamaCloud(
295
- token="YOUR_TOKEN",
296
- )
297
- client.llama_extract.get_or_create_default_extraction_agent()
298
- """
299
- _response = self._client_wrapper.httpx_client.request(
300
- "GET",
301
- urllib.parse.urljoin(
302
- f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents/default"
303
- ),
304
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
305
- headers=self._client_wrapper.get_headers(),
306
- timeout=60,
307
- )
308
- if 200 <= _response.status_code < 300:
309
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
310
- if _response.status_code == 422:
311
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
312
- try:
313
- _response_json = _response.json()
314
- except JSONDecodeError:
315
- raise ApiError(status_code=_response.status_code, body=_response.text)
316
- raise ApiError(status_code=_response.status_code, body=_response_json)
317
-
318
- def get_extraction_agent(self, extraction_agent_id: str) -> ExtractAgent:
319
- """
320
- Parameters:
321
- - extraction_agent_id: str.
322
- ---
323
- from llama_cloud.client import LlamaCloud
324
-
325
- client = LlamaCloud(
326
- token="YOUR_TOKEN",
327
- )
328
- client.llama_extract.get_extraction_agent(
329
- extraction_agent_id="string",
330
- )
331
- """
332
- _response = self._client_wrapper.httpx_client.request(
333
- "GET",
334
- urllib.parse.urljoin(
335
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/{extraction_agent_id}"
336
- ),
337
- headers=self._client_wrapper.get_headers(),
338
- timeout=60,
339
- )
340
- if 200 <= _response.status_code < 300:
341
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
342
- if _response.status_code == 422:
343
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
344
- try:
345
- _response_json = _response.json()
346
- except JSONDecodeError:
347
- raise ApiError(status_code=_response.status_code, body=_response.text)
348
- raise ApiError(status_code=_response.status_code, body=_response_json)
349
-
350
- def update_extraction_agent(
351
- self, extraction_agent_id: str, *, data_schema: ExtractAgentUpdateDataSchema, config: ExtractConfig
352
- ) -> ExtractAgent:
353
- """
354
- Parameters:
355
- - extraction_agent_id: str.
356
-
357
- - data_schema: ExtractAgentUpdateDataSchema. The schema of the data
358
-
359
- - config: ExtractConfig. The configuration parameters for the extraction agent.
360
- ---
361
- from llama_cloud import (
362
- DocumentChunkMode,
363
- ExtractConfig,
364
- ExtractConfigPriority,
365
- ExtractMode,
366
- ExtractModels,
367
- ExtractTarget,
368
- PublicModelName,
369
- )
370
- from llama_cloud.client import LlamaCloud
371
-
372
- client = LlamaCloud(
373
- token="YOUR_TOKEN",
374
- )
375
- client.llama_extract.update_extraction_agent(
376
- extraction_agent_id="string",
377
- config=ExtractConfig(
378
- priority=ExtractConfigPriority.LOW,
379
- extraction_target=ExtractTarget.PER_DOC,
380
- extraction_mode=ExtractMode.FAST,
381
- parse_model=PublicModelName.OPENAI_GPT_4_O,
382
- extract_model=ExtractModels.OPENAI_GPT_4_1,
383
- chunk_mode=DocumentChunkMode.PAGE,
384
- ),
385
- )
386
- """
387
- _response = self._client_wrapper.httpx_client.request(
388
- "PUT",
389
- urllib.parse.urljoin(
390
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/{extraction_agent_id}"
391
- ),
392
- json=jsonable_encoder({"data_schema": data_schema, "config": config}),
393
- headers=self._client_wrapper.get_headers(),
394
- timeout=60,
395
- )
396
- if 200 <= _response.status_code < 300:
397
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
398
- if _response.status_code == 422:
399
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
400
- try:
401
- _response_json = _response.json()
402
- except JSONDecodeError:
403
- raise ApiError(status_code=_response.status_code, body=_response.text)
404
- raise ApiError(status_code=_response.status_code, body=_response_json)
405
-
406
- def delete_extraction_agent(self, extraction_agent_id: str) -> typing.Any:
407
- """
408
- Parameters:
409
- - extraction_agent_id: str.
410
- ---
411
- from llama_cloud.client import LlamaCloud
412
-
413
- client = LlamaCloud(
414
- token="YOUR_TOKEN",
415
- )
416
- client.llama_extract.delete_extraction_agent(
417
- extraction_agent_id="string",
418
- )
419
- """
420
- _response = self._client_wrapper.httpx_client.request(
421
- "DELETE",
422
- urllib.parse.urljoin(
423
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/{extraction_agent_id}"
424
- ),
425
- headers=self._client_wrapper.get_headers(),
426
- timeout=60,
427
- )
428
- if 200 <= _response.status_code < 300:
429
- return pydantic.parse_obj_as(typing.Any, _response.json()) # type: ignore
430
- if _response.status_code == 422:
431
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
432
- try:
433
- _response_json = _response.json()
434
- except JSONDecodeError:
435
- raise ApiError(status_code=_response.status_code, body=_response.text)
436
- raise ApiError(status_code=_response.status_code, body=_response_json)
437
-
438
- def list_jobs(self, *, extraction_agent_id: str) -> typing.List[ExtractJob]:
439
- """
440
- Parameters:
441
- - extraction_agent_id: str.
442
- ---
443
- from llama_cloud.client import LlamaCloud
444
-
445
- client = LlamaCloud(
446
- token="YOUR_TOKEN",
447
- )
448
- client.llama_extract.list_jobs(
449
- extraction_agent_id="string",
450
- )
451
- """
452
- _response = self._client_wrapper.httpx_client.request(
453
- "GET",
454
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs"),
455
- params=remove_none_from_dict({"extraction_agent_id": extraction_agent_id}),
456
- headers=self._client_wrapper.get_headers(),
457
- timeout=60,
458
- )
459
- if 200 <= _response.status_code < 300:
460
- return pydantic.parse_obj_as(typing.List[ExtractJob], _response.json()) # type: ignore
461
- if _response.status_code == 422:
462
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
463
- try:
464
- _response_json = _response.json()
465
- except JSONDecodeError:
466
- raise ApiError(status_code=_response.status_code, body=_response.text)
467
- raise ApiError(status_code=_response.status_code, body=_response_json)
468
-
469
- def run_job(self, *, from_ui: typing.Optional[bool] = None, request: ExtractJobCreate) -> ExtractJob:
470
- """
471
- Parameters:
472
- - from_ui: typing.Optional[bool].
473
-
474
- - request: ExtractJobCreate.
475
- ---
476
- from llama_cloud import (
477
- DocumentChunkMode,
478
- ExtractConfig,
479
- ExtractConfigPriority,
480
- ExtractJobCreate,
481
- ExtractJobCreatePriority,
482
- ExtractMode,
483
- ExtractModels,
484
- ExtractTarget,
485
- PublicModelName,
486
- )
487
- from llama_cloud.client import LlamaCloud
488
-
489
- client = LlamaCloud(
490
- token="YOUR_TOKEN",
491
- )
492
- client.llama_extract.run_job(
493
- request=ExtractJobCreate(
494
- priority=ExtractJobCreatePriority.LOW,
495
- extraction_agent_id="string",
496
- file_id="string",
497
- config_override=ExtractConfig(
498
- priority=ExtractConfigPriority.LOW,
499
- extraction_target=ExtractTarget.PER_DOC,
500
- extraction_mode=ExtractMode.FAST,
501
- parse_model=PublicModelName.OPENAI_GPT_4_O,
502
- extract_model=ExtractModels.OPENAI_GPT_4_1,
503
- chunk_mode=DocumentChunkMode.PAGE,
504
- ),
505
- ),
506
- )
507
- """
508
- _response = self._client_wrapper.httpx_client.request(
509
- "POST",
510
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs"),
511
- params=remove_none_from_dict({"from_ui": from_ui}),
512
- json=jsonable_encoder(request),
513
- headers=self._client_wrapper.get_headers(),
514
- timeout=60,
515
- )
516
- if 200 <= _response.status_code < 300:
517
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
518
- if _response.status_code == 422:
519
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
520
- try:
521
- _response_json = _response.json()
522
- except JSONDecodeError:
523
- raise ApiError(status_code=_response.status_code, body=_response.text)
524
- raise ApiError(status_code=_response.status_code, body=_response_json)
525
-
526
- def get_job(self, job_id: str) -> ExtractJob:
527
- """
528
- Parameters:
529
- - job_id: str.
530
- ---
531
- from llama_cloud.client import LlamaCloud
532
-
533
- client = LlamaCloud(
534
- token="YOUR_TOKEN",
535
- )
536
- client.llama_extract.get_job(
537
- job_id="string",
538
- )
539
- """
540
- _response = self._client_wrapper.httpx_client.request(
541
- "GET",
542
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/jobs/{job_id}"),
543
- headers=self._client_wrapper.get_headers(),
544
- timeout=60,
545
- )
546
- if 200 <= _response.status_code < 300:
547
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
548
- if _response.status_code == 422:
549
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
550
- try:
551
- _response_json = _response.json()
552
- except JSONDecodeError:
553
- raise ApiError(status_code=_response.status_code, body=_response.text)
554
- raise ApiError(status_code=_response.status_code, body=_response_json)
555
-
556
- def run_job_test_user(
557
- self,
558
- *,
559
- from_ui: typing.Optional[bool] = None,
560
- job_create: ExtractJobCreate,
561
- extract_settings: typing.Optional[LlamaExtractSettings] = OMIT,
562
- ) -> ExtractJob:
563
- """
564
- Parameters:
565
- - from_ui: typing.Optional[bool].
566
-
567
- - job_create: ExtractJobCreate.
568
-
569
- - extract_settings: typing.Optional[LlamaExtractSettings].
570
- ---
571
- from llama_cloud import (
572
- ChunkMode,
573
- DocumentChunkMode,
574
- ExtractConfig,
575
- ExtractConfigPriority,
576
- ExtractJobCreate,
577
- ExtractJobCreatePriority,
578
- ExtractMode,
579
- ExtractModels,
580
- ExtractTarget,
581
- FailPageMode,
582
- LlamaExtractSettings,
583
- LlamaParseParameters,
584
- LlamaParseParametersPriority,
585
- MultimodalParseResolution,
586
- ParsingMode,
587
- PublicModelName,
588
- )
589
- from llama_cloud.client import LlamaCloud
590
-
591
- client = LlamaCloud(
592
- token="YOUR_TOKEN",
593
- )
594
- client.llama_extract.run_job_test_user(
595
- job_create=ExtractJobCreate(
596
- priority=ExtractJobCreatePriority.LOW,
597
- extraction_agent_id="string",
598
- file_id="string",
599
- config_override=ExtractConfig(
600
- priority=ExtractConfigPriority.LOW,
601
- extraction_target=ExtractTarget.PER_DOC,
602
- extraction_mode=ExtractMode.FAST,
603
- parse_model=PublicModelName.OPENAI_GPT_4_O,
604
- extract_model=ExtractModels.OPENAI_GPT_4_1,
605
- chunk_mode=DocumentChunkMode.PAGE,
606
- ),
607
- ),
608
- extract_settings=LlamaExtractSettings(
609
- chunk_mode=ChunkMode.PAGE,
610
- llama_parse_params=LlamaParseParameters(
611
- priority=LlamaParseParametersPriority.LOW,
612
- parse_mode=ParsingMode.PARSE_PAGE_WITHOUT_LLM,
613
- replace_failed_page_mode=FailPageMode.RAW_TEXT,
614
- ),
615
- multimodal_parse_resolution=MultimodalParseResolution.MEDIUM,
616
- ),
617
- )
618
- """
619
- _request: typing.Dict[str, typing.Any] = {"job_create": job_create}
620
- if extract_settings is not OMIT:
621
- _request["extract_settings"] = extract_settings
622
- _response = self._client_wrapper.httpx_client.request(
623
- "POST",
624
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs/test"),
625
- params=remove_none_from_dict({"from_ui": from_ui}),
626
- json=jsonable_encoder(_request),
627
- headers=self._client_wrapper.get_headers(),
628
- timeout=60,
629
- )
630
- if 200 <= _response.status_code < 300:
631
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
632
- if _response.status_code == 422:
633
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
634
- try:
635
- _response_json = _response.json()
636
- except JSONDecodeError:
637
- raise ApiError(status_code=_response.status_code, body=_response.text)
638
- raise ApiError(status_code=_response.status_code, body=_response_json)
639
-
640
- def run_job_on_file(
641
- self,
642
- *,
643
- from_ui: typing.Optional[bool] = None,
644
- extraction_agent_id: str,
645
- file: typing.IO,
646
- data_schema_override: typing.Optional[str] = None,
647
- config_override: typing.Optional[str] = None,
648
- ) -> ExtractJob:
649
- """
650
- Parameters:
651
- - from_ui: typing.Optional[bool].
652
-
653
- - extraction_agent_id: str.
654
-
655
- - file: typing.IO.
656
-
657
- - data_schema_override: typing.Optional[str].
658
-
659
- - config_override: typing.Optional[str].
660
- """
661
- _response = self._client_wrapper.httpx_client.request(
662
- "POST",
663
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs/file"),
664
- params=remove_none_from_dict({"from_ui": from_ui}),
665
- data=jsonable_encoder(
666
- {
667
- "extraction_agent_id": extraction_agent_id,
668
- "data_schema_override": data_schema_override,
669
- "config_override": config_override,
670
- }
671
- ),
672
- files={"file": file},
673
- headers=self._client_wrapper.get_headers(),
674
- timeout=60,
675
- )
676
- if 200 <= _response.status_code < 300:
677
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
678
- if _response.status_code == 422:
679
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
680
- try:
681
- _response_json = _response.json()
682
- except JSONDecodeError:
683
- raise ApiError(status_code=_response.status_code, body=_response.text)
684
- raise ApiError(status_code=_response.status_code, body=_response_json)
685
-
686
- def run_batch_jobs(
687
- self,
688
- *,
689
- from_ui: typing.Optional[bool] = None,
690
- extraction_agent_id: str,
691
- file_ids: typing.List[str],
692
- data_schema_override: typing.Optional[ExtractJobCreateBatchDataSchemaOverride] = OMIT,
693
- config_override: typing.Optional[ExtractConfig] = OMIT,
694
- ) -> typing.List[ExtractJob]:
695
- """
696
- Parameters:
697
- - from_ui: typing.Optional[bool].
698
-
699
- - extraction_agent_id: str. The id of the extraction agent
700
-
701
- - file_ids: typing.List[str]. The ids of the files
702
-
703
- - data_schema_override: typing.Optional[ExtractJobCreateBatchDataSchemaOverride]. The data schema to override the extraction agent's data schema with
704
-
705
- - config_override: typing.Optional[ExtractConfig].
706
- ---
707
- from llama_cloud import (
708
- DocumentChunkMode,
709
- ExtractConfig,
710
- ExtractConfigPriority,
711
- ExtractMode,
712
- ExtractModels,
713
- ExtractTarget,
714
- PublicModelName,
715
- )
716
- from llama_cloud.client import LlamaCloud
717
-
718
- client = LlamaCloud(
719
- token="YOUR_TOKEN",
720
- )
721
- client.llama_extract.run_batch_jobs(
722
- extraction_agent_id="string",
723
- file_ids=[],
724
- config_override=ExtractConfig(
725
- priority=ExtractConfigPriority.LOW,
726
- extraction_target=ExtractTarget.PER_DOC,
727
- extraction_mode=ExtractMode.FAST,
728
- parse_model=PublicModelName.OPENAI_GPT_4_O,
729
- extract_model=ExtractModels.OPENAI_GPT_4_1,
730
- chunk_mode=DocumentChunkMode.PAGE,
731
- ),
732
- )
733
- """
734
- _request: typing.Dict[str, typing.Any] = {"extraction_agent_id": extraction_agent_id, "file_ids": file_ids}
735
- if data_schema_override is not OMIT:
736
- _request["data_schema_override"] = data_schema_override
737
- if config_override is not OMIT:
738
- _request["config_override"] = config_override
739
- _response = self._client_wrapper.httpx_client.request(
740
- "POST",
741
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs/batch"),
742
- params=remove_none_from_dict({"from_ui": from_ui}),
743
- json=jsonable_encoder(_request),
744
- headers=self._client_wrapper.get_headers(),
745
- timeout=60,
746
- )
747
- if 200 <= _response.status_code < 300:
748
- return pydantic.parse_obj_as(typing.List[ExtractJob], _response.json()) # type: ignore
749
- if _response.status_code == 422:
750
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
751
- try:
752
- _response_json = _response.json()
753
- except JSONDecodeError:
754
- raise ApiError(status_code=_response.status_code, body=_response.text)
755
- raise ApiError(status_code=_response.status_code, body=_response_json)
756
-
757
- def get_job_result(
758
- self, job_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
759
- ) -> ExtractResultset:
760
- """
761
- Parameters:
762
- - job_id: str.
763
-
764
- - project_id: typing.Optional[str].
765
-
766
- - organization_id: typing.Optional[str].
767
- ---
768
- from llama_cloud.client import LlamaCloud
769
-
770
- client = LlamaCloud(
771
- token="YOUR_TOKEN",
772
- )
773
- client.llama_extract.get_job_result(
774
- job_id="string",
775
- )
776
- """
777
- _response = self._client_wrapper.httpx_client.request(
778
- "GET",
779
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/jobs/{job_id}/result"),
780
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
781
- headers=self._client_wrapper.get_headers(),
782
- timeout=60,
783
- )
784
- if 200 <= _response.status_code < 300:
785
- return pydantic.parse_obj_as(ExtractResultset, _response.json()) # type: ignore
786
- if _response.status_code == 422:
787
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
788
- try:
789
- _response_json = _response.json()
790
- except JSONDecodeError:
791
- raise ApiError(status_code=_response.status_code, body=_response.text)
792
- raise ApiError(status_code=_response.status_code, body=_response_json)
793
-
794
- def list_extract_runs(
795
- self, *, extraction_agent_id: str, skip: typing.Optional[int] = None, limit: typing.Optional[int] = None
796
- ) -> PaginatedExtractRunsResponse:
797
- """
798
- Parameters:
799
- - extraction_agent_id: str.
800
-
801
- - skip: typing.Optional[int].
802
-
803
- - limit: typing.Optional[int].
804
- ---
805
- from llama_cloud.client import LlamaCloud
806
-
807
- client = LlamaCloud(
808
- token="YOUR_TOKEN",
809
- )
810
- client.llama_extract.list_extract_runs(
811
- extraction_agent_id="string",
812
- )
813
- """
814
- _response = self._client_wrapper.httpx_client.request(
815
- "GET",
816
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/runs"),
817
- params=remove_none_from_dict({"extraction_agent_id": extraction_agent_id, "skip": skip, "limit": limit}),
818
- headers=self._client_wrapper.get_headers(),
819
- timeout=60,
820
- )
821
- if 200 <= _response.status_code < 300:
822
- return pydantic.parse_obj_as(PaginatedExtractRunsResponse, _response.json()) # type: ignore
823
- if _response.status_code == 422:
824
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
825
- try:
826
- _response_json = _response.json()
827
- except JSONDecodeError:
828
- raise ApiError(status_code=_response.status_code, body=_response.text)
829
- raise ApiError(status_code=_response.status_code, body=_response_json)
830
-
831
- def get_latest_run_from_ui(self, *, extraction_agent_id: str) -> typing.Optional[ExtractRun]:
832
- """
833
- Parameters:
834
- - extraction_agent_id: str.
835
- ---
836
- from llama_cloud.client import LlamaCloud
837
-
838
- client = LlamaCloud(
839
- token="YOUR_TOKEN",
840
- )
841
- client.llama_extract.get_latest_run_from_ui(
842
- extraction_agent_id="string",
843
- )
844
- """
845
- _response = self._client_wrapper.httpx_client.request(
846
- "GET",
847
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/runs/latest-from-ui"),
848
- params=remove_none_from_dict({"extraction_agent_id": extraction_agent_id}),
849
- headers=self._client_wrapper.get_headers(),
850
- timeout=60,
851
- )
852
- if 200 <= _response.status_code < 300:
853
- return pydantic.parse_obj_as(typing.Optional[ExtractRun], _response.json()) # type: ignore
854
- if _response.status_code == 422:
855
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
856
- try:
857
- _response_json = _response.json()
858
- except JSONDecodeError:
859
- raise ApiError(status_code=_response.status_code, body=_response.text)
860
- raise ApiError(status_code=_response.status_code, body=_response_json)
861
-
862
- def get_run_by_job_id(
863
- self, job_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
864
- ) -> ExtractRun:
865
- """
866
- Parameters:
867
- - job_id: str.
868
-
869
- - project_id: typing.Optional[str].
870
-
871
- - organization_id: typing.Optional[str].
872
- ---
873
- from llama_cloud.client import LlamaCloud
874
-
875
- client = LlamaCloud(
876
- token="YOUR_TOKEN",
877
- )
878
- client.llama_extract.get_run_by_job_id(
879
- job_id="string",
880
- )
881
- """
882
- _response = self._client_wrapper.httpx_client.request(
883
- "GET",
884
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/runs/by-job/{job_id}"),
885
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
886
- headers=self._client_wrapper.get_headers(),
887
- timeout=60,
888
- )
889
- if 200 <= _response.status_code < 300:
890
- return pydantic.parse_obj_as(ExtractRun, _response.json()) # type: ignore
891
- if _response.status_code == 422:
892
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
893
- try:
894
- _response_json = _response.json()
895
- except JSONDecodeError:
896
- raise ApiError(status_code=_response.status_code, body=_response.text)
897
- raise ApiError(status_code=_response.status_code, body=_response_json)
898
-
899
- def get_run(
900
- self, run_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
901
- ) -> ExtractRun:
902
- """
903
- Parameters:
904
- - run_id: str.
905
-
906
- - project_id: typing.Optional[str].
907
-
908
- - organization_id: typing.Optional[str].
909
- ---
910
- from llama_cloud.client import LlamaCloud
911
-
912
- client = LlamaCloud(
913
- token="YOUR_TOKEN",
914
- )
915
- client.llama_extract.get_run(
916
- run_id="string",
917
- )
918
- """
919
- _response = self._client_wrapper.httpx_client.request(
920
- "GET",
921
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/runs/{run_id}"),
922
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
923
- headers=self._client_wrapper.get_headers(),
924
- timeout=60,
925
- )
926
- if 200 <= _response.status_code < 300:
927
- return pydantic.parse_obj_as(ExtractRun, _response.json()) # type: ignore
928
- if _response.status_code == 422:
929
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
930
- try:
931
- _response_json = _response.json()
932
- except JSONDecodeError:
933
- raise ApiError(status_code=_response.status_code, body=_response.text)
934
- raise ApiError(status_code=_response.status_code, body=_response_json)
935
-
936
- def delete_extraction_run(
937
- self, run_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
938
- ) -> typing.Any:
939
- """
940
- Parameters:
941
- - run_id: str.
942
-
943
- - project_id: typing.Optional[str].
944
-
945
- - organization_id: typing.Optional[str].
946
- ---
947
- from llama_cloud.client import LlamaCloud
948
-
949
- client = LlamaCloud(
950
- token="YOUR_TOKEN",
951
- )
952
- client.llama_extract.delete_extraction_run(
953
- run_id="string",
954
- )
955
- """
956
- _response = self._client_wrapper.httpx_client.request(
957
- "DELETE",
958
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/runs/{run_id}"),
959
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
960
- headers=self._client_wrapper.get_headers(),
961
- timeout=60,
962
- )
963
- if 200 <= _response.status_code < 300:
964
- return pydantic.parse_obj_as(typing.Any, _response.json()) # type: ignore
965
- if _response.status_code == 422:
966
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
967
- try:
968
- _response_json = _response.json()
969
- except JSONDecodeError:
970
- raise ApiError(status_code=_response.status_code, body=_response.text)
971
- raise ApiError(status_code=_response.status_code, body=_response_json)
972
-
973
- def extract_stateless(
974
- self,
975
- *,
976
- project_id: typing.Optional[str] = None,
977
- organization_id: typing.Optional[str] = None,
978
- webhook_configurations: typing.Optional[typing.List[WebhookConfiguration]] = OMIT,
979
- data_schema: ExtractStatelessRequestDataSchema,
980
- config: ExtractConfig,
981
- file_id: typing.Optional[str] = OMIT,
982
- text: typing.Optional[str] = OMIT,
983
- file: typing.Optional[FileData] = OMIT,
984
- ) -> ExtractJob:
985
- """
986
- Stateless extraction endpoint that uses a default extraction agent in the user's default project.
987
- Requires data_schema, config, and either file_id, text, or base64 encoded file data.
988
-
989
- Parameters:
990
- - project_id: typing.Optional[str].
991
-
992
- - organization_id: typing.Optional[str].
993
-
994
- - webhook_configurations: typing.Optional[typing.List[WebhookConfiguration]].
995
-
996
- - data_schema: ExtractStatelessRequestDataSchema. The schema of the data to extract
997
-
998
- - config: ExtractConfig. The configuration parameters for the extraction
999
-
1000
- - file_id: typing.Optional[str].
1001
-
1002
- - text: typing.Optional[str].
1003
-
1004
- - file: typing.Optional[FileData].
1005
- ---
1006
- from llama_cloud import (
1007
- DocumentChunkMode,
1008
- ExtractConfig,
1009
- ExtractConfigPriority,
1010
- ExtractMode,
1011
- ExtractModels,
1012
- ExtractTarget,
1013
- FileData,
1014
- PublicModelName,
1015
- )
1016
- from llama_cloud.client import LlamaCloud
1017
-
1018
- client = LlamaCloud(
1019
- token="YOUR_TOKEN",
1020
- )
1021
- client.llama_extract.extract_stateless(
1022
- config=ExtractConfig(
1023
- priority=ExtractConfigPriority.LOW,
1024
- extraction_target=ExtractTarget.PER_DOC,
1025
- extraction_mode=ExtractMode.FAST,
1026
- parse_model=PublicModelName.OPENAI_GPT_4_O,
1027
- extract_model=ExtractModels.OPENAI_GPT_4_1,
1028
- chunk_mode=DocumentChunkMode.PAGE,
1029
- ),
1030
- file=FileData(
1031
- data="string",
1032
- mime_type="string",
1033
- ),
1034
- )
1035
- """
1036
- _request: typing.Dict[str, typing.Any] = {"data_schema": data_schema, "config": config}
1037
- if webhook_configurations is not OMIT:
1038
- _request["webhook_configurations"] = webhook_configurations
1039
- if file_id is not OMIT:
1040
- _request["file_id"] = file_id
1041
- if text is not OMIT:
1042
- _request["text"] = text
1043
- if file is not OMIT:
1044
- _request["file"] = file
1045
- _response = self._client_wrapper.httpx_client.request(
1046
- "POST",
1047
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/run"),
1048
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1049
- json=jsonable_encoder(_request),
1050
- headers=self._client_wrapper.get_headers(),
1051
- timeout=60,
1052
- )
1053
- if 200 <= _response.status_code < 300:
1054
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
1055
- if _response.status_code == 422:
1056
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1057
- try:
1058
- _response_json = _response.json()
1059
- except JSONDecodeError:
1060
- raise ApiError(status_code=_response.status_code, body=_response.text)
1061
- raise ApiError(status_code=_response.status_code, body=_response_json)
1062
-
1063
-
1064
- class AsyncLlamaExtractClient:
1065
- def __init__(self, *, client_wrapper: AsyncClientWrapper):
1066
- self._client_wrapper = client_wrapper
1067
-
1068
- async def list_extraction_agents(
1069
- self,
1070
- *,
1071
- include_default: typing.Optional[bool] = None,
1072
- project_id: typing.Optional[str] = None,
1073
- organization_id: typing.Optional[str] = None,
1074
- ) -> typing.List[ExtractAgent]:
1075
- """
1076
- Parameters:
1077
- - include_default: typing.Optional[bool]. Whether to include default agents in the results
1078
-
1079
- - project_id: typing.Optional[str].
1080
-
1081
- - organization_id: typing.Optional[str].
1082
- ---
1083
- from llama_cloud.client import AsyncLlamaCloud
1084
-
1085
- client = AsyncLlamaCloud(
1086
- token="YOUR_TOKEN",
1087
- )
1088
- await client.llama_extract.list_extraction_agents()
1089
- """
1090
- _response = await self._client_wrapper.httpx_client.request(
1091
- "GET",
1092
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents"),
1093
- params=remove_none_from_dict(
1094
- {"include_default": include_default, "project_id": project_id, "organization_id": organization_id}
1095
- ),
1096
- headers=self._client_wrapper.get_headers(),
1097
- timeout=60,
1098
- )
1099
- if 200 <= _response.status_code < 300:
1100
- return pydantic.parse_obj_as(typing.List[ExtractAgent], _response.json()) # type: ignore
1101
- if _response.status_code == 422:
1102
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1103
- try:
1104
- _response_json = _response.json()
1105
- except JSONDecodeError:
1106
- raise ApiError(status_code=_response.status_code, body=_response.text)
1107
- raise ApiError(status_code=_response.status_code, body=_response_json)
1108
-
1109
- async def create_extraction_agent(
1110
- self,
1111
- *,
1112
- project_id: typing.Optional[str] = None,
1113
- organization_id: typing.Optional[str] = None,
1114
- name: str,
1115
- data_schema: ExtractAgentCreateDataSchema,
1116
- config: ExtractConfig,
1117
- ) -> ExtractAgent:
1118
- """
1119
- Parameters:
1120
- - project_id: typing.Optional[str].
1121
-
1122
- - organization_id: typing.Optional[str].
1123
-
1124
- - name: str. The name of the extraction schema
1125
-
1126
- - data_schema: ExtractAgentCreateDataSchema. The schema of the data.
1127
-
1128
- - config: ExtractConfig. The configuration parameters for the extraction agent.
1129
- ---
1130
- from llama_cloud import (
1131
- DocumentChunkMode,
1132
- ExtractConfig,
1133
- ExtractConfigPriority,
1134
- ExtractMode,
1135
- ExtractModels,
1136
- ExtractTarget,
1137
- PublicModelName,
1138
- )
1139
- from llama_cloud.client import AsyncLlamaCloud
1140
-
1141
- client = AsyncLlamaCloud(
1142
- token="YOUR_TOKEN",
1143
- )
1144
- await client.llama_extract.create_extraction_agent(
1145
- name="string",
1146
- config=ExtractConfig(
1147
- priority=ExtractConfigPriority.LOW,
1148
- extraction_target=ExtractTarget.PER_DOC,
1149
- extraction_mode=ExtractMode.FAST,
1150
- parse_model=PublicModelName.OPENAI_GPT_4_O,
1151
- extract_model=ExtractModels.OPENAI_GPT_4_1,
1152
- chunk_mode=DocumentChunkMode.PAGE,
1153
- ),
1154
- )
1155
- """
1156
- _response = await self._client_wrapper.httpx_client.request(
1157
- "POST",
1158
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents"),
1159
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1160
- json=jsonable_encoder({"name": name, "data_schema": data_schema, "config": config}),
1161
- headers=self._client_wrapper.get_headers(),
1162
- timeout=60,
1163
- )
1164
- if 200 <= _response.status_code < 300:
1165
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
1166
- if _response.status_code == 422:
1167
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1168
- try:
1169
- _response_json = _response.json()
1170
- except JSONDecodeError:
1171
- raise ApiError(status_code=_response.status_code, body=_response.text)
1172
- raise ApiError(status_code=_response.status_code, body=_response_json)
1173
-
1174
- async def validate_extraction_schema(
1175
- self, *, data_schema: ExtractSchemaValidateRequestDataSchema
1176
- ) -> ExtractSchemaValidateResponse:
1177
- """
1178
- Validates an extraction agent's schema definition.
1179
- Returns the normalized and validated schema if valid, otherwise raises an HTTP 400.
1180
-
1181
- Parameters:
1182
- - data_schema: ExtractSchemaValidateRequestDataSchema.
1183
- ---
1184
- from llama_cloud.client import AsyncLlamaCloud
1185
-
1186
- client = AsyncLlamaCloud(
1187
- token="YOUR_TOKEN",
1188
- )
1189
- await client.llama_extract.validate_extraction_schema()
1190
- """
1191
- _response = await self._client_wrapper.httpx_client.request(
1192
- "POST",
1193
- urllib.parse.urljoin(
1194
- f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents/schema/validation"
1195
- ),
1196
- json=jsonable_encoder({"data_schema": data_schema}),
1197
- headers=self._client_wrapper.get_headers(),
1198
- timeout=60,
1199
- )
1200
- if 200 <= _response.status_code < 300:
1201
- return pydantic.parse_obj_as(ExtractSchemaValidateResponse, _response.json()) # type: ignore
1202
- if _response.status_code == 422:
1203
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1204
- try:
1205
- _response_json = _response.json()
1206
- except JSONDecodeError:
1207
- raise ApiError(status_code=_response.status_code, body=_response.text)
1208
- raise ApiError(status_code=_response.status_code, body=_response_json)
1209
-
1210
- async def generate_extraction_schema(
1211
- self,
1212
- *,
1213
- project_id: typing.Optional[str] = None,
1214
- organization_id: typing.Optional[str] = None,
1215
- prompt: typing.Optional[str] = OMIT,
1216
- file_id: typing.Optional[str] = OMIT,
1217
- ) -> ExtractSchemaGenerateResponse:
1218
- """
1219
- Generates an extraction agent's schema definition from a file and/or natural language prompt.
1220
-
1221
- Parameters:
1222
- - project_id: typing.Optional[str].
1223
-
1224
- - organization_id: typing.Optional[str].
1225
-
1226
- - prompt: typing.Optional[str].
1227
-
1228
- - file_id: typing.Optional[str].
1229
- ---
1230
- from llama_cloud.client import AsyncLlamaCloud
1231
-
1232
- client = AsyncLlamaCloud(
1233
- token="YOUR_TOKEN",
1234
- )
1235
- await client.llama_extract.generate_extraction_schema()
1236
- """
1237
- _request: typing.Dict[str, typing.Any] = {}
1238
- if prompt is not OMIT:
1239
- _request["prompt"] = prompt
1240
- if file_id is not OMIT:
1241
- _request["file_id"] = file_id
1242
- _response = await self._client_wrapper.httpx_client.request(
1243
- "POST",
1244
- urllib.parse.urljoin(
1245
- f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents/schema/generate"
1246
- ),
1247
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1248
- json=jsonable_encoder(_request),
1249
- headers=self._client_wrapper.get_headers(),
1250
- timeout=60,
1251
- )
1252
- if 200 <= _response.status_code < 300:
1253
- return pydantic.parse_obj_as(ExtractSchemaGenerateResponse, _response.json()) # type: ignore
1254
- if _response.status_code == 422:
1255
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1256
- try:
1257
- _response_json = _response.json()
1258
- except JSONDecodeError:
1259
- raise ApiError(status_code=_response.status_code, body=_response.text)
1260
- raise ApiError(status_code=_response.status_code, body=_response_json)
1261
-
1262
- async def get_extraction_agent_by_name(
1263
- self, name: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
1264
- ) -> ExtractAgent:
1265
- """
1266
- Parameters:
1267
- - name: str.
1268
-
1269
- - project_id: typing.Optional[str].
1270
-
1271
- - organization_id: typing.Optional[str].
1272
- ---
1273
- from llama_cloud.client import AsyncLlamaCloud
1274
-
1275
- client = AsyncLlamaCloud(
1276
- token="YOUR_TOKEN",
1277
- )
1278
- await client.llama_extract.get_extraction_agent_by_name(
1279
- name="string",
1280
- )
1281
- """
1282
- _response = await self._client_wrapper.httpx_client.request(
1283
- "GET",
1284
- urllib.parse.urljoin(
1285
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/by-name/{name}"
1286
- ),
1287
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1288
- headers=self._client_wrapper.get_headers(),
1289
- timeout=60,
1290
- )
1291
- if 200 <= _response.status_code < 300:
1292
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
1293
- if _response.status_code == 422:
1294
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1295
- try:
1296
- _response_json = _response.json()
1297
- except JSONDecodeError:
1298
- raise ApiError(status_code=_response.status_code, body=_response.text)
1299
- raise ApiError(status_code=_response.status_code, body=_response_json)
1300
-
1301
- async def get_or_create_default_extraction_agent(
1302
- self, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
1303
- ) -> ExtractAgent:
1304
- """
1305
- Get or create a default extraction agent for the current project.
1306
- The default agent has an empty schema and default configuration.
1307
-
1308
- Parameters:
1309
- - project_id: typing.Optional[str].
1310
-
1311
- - organization_id: typing.Optional[str].
1312
- ---
1313
- from llama_cloud.client import AsyncLlamaCloud
1314
-
1315
- client = AsyncLlamaCloud(
1316
- token="YOUR_TOKEN",
1317
- )
1318
- await client.llama_extract.get_or_create_default_extraction_agent()
1319
- """
1320
- _response = await self._client_wrapper.httpx_client.request(
1321
- "GET",
1322
- urllib.parse.urljoin(
1323
- f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/extraction-agents/default"
1324
- ),
1325
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1326
- headers=self._client_wrapper.get_headers(),
1327
- timeout=60,
1328
- )
1329
- if 200 <= _response.status_code < 300:
1330
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
1331
- if _response.status_code == 422:
1332
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1333
- try:
1334
- _response_json = _response.json()
1335
- except JSONDecodeError:
1336
- raise ApiError(status_code=_response.status_code, body=_response.text)
1337
- raise ApiError(status_code=_response.status_code, body=_response_json)
1338
-
1339
- async def get_extraction_agent(self, extraction_agent_id: str) -> ExtractAgent:
1340
- """
1341
- Parameters:
1342
- - extraction_agent_id: str.
1343
- ---
1344
- from llama_cloud.client import AsyncLlamaCloud
1345
-
1346
- client = AsyncLlamaCloud(
1347
- token="YOUR_TOKEN",
1348
- )
1349
- await client.llama_extract.get_extraction_agent(
1350
- extraction_agent_id="string",
1351
- )
1352
- """
1353
- _response = await self._client_wrapper.httpx_client.request(
1354
- "GET",
1355
- urllib.parse.urljoin(
1356
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/{extraction_agent_id}"
1357
- ),
1358
- headers=self._client_wrapper.get_headers(),
1359
- timeout=60,
1360
- )
1361
- if 200 <= _response.status_code < 300:
1362
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
1363
- if _response.status_code == 422:
1364
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1365
- try:
1366
- _response_json = _response.json()
1367
- except JSONDecodeError:
1368
- raise ApiError(status_code=_response.status_code, body=_response.text)
1369
- raise ApiError(status_code=_response.status_code, body=_response_json)
1370
-
1371
- async def update_extraction_agent(
1372
- self, extraction_agent_id: str, *, data_schema: ExtractAgentUpdateDataSchema, config: ExtractConfig
1373
- ) -> ExtractAgent:
1374
- """
1375
- Parameters:
1376
- - extraction_agent_id: str.
1377
-
1378
- - data_schema: ExtractAgentUpdateDataSchema. The schema of the data
1379
-
1380
- - config: ExtractConfig. The configuration parameters for the extraction agent.
1381
- ---
1382
- from llama_cloud import (
1383
- DocumentChunkMode,
1384
- ExtractConfig,
1385
- ExtractConfigPriority,
1386
- ExtractMode,
1387
- ExtractModels,
1388
- ExtractTarget,
1389
- PublicModelName,
1390
- )
1391
- from llama_cloud.client import AsyncLlamaCloud
1392
-
1393
- client = AsyncLlamaCloud(
1394
- token="YOUR_TOKEN",
1395
- )
1396
- await client.llama_extract.update_extraction_agent(
1397
- extraction_agent_id="string",
1398
- config=ExtractConfig(
1399
- priority=ExtractConfigPriority.LOW,
1400
- extraction_target=ExtractTarget.PER_DOC,
1401
- extraction_mode=ExtractMode.FAST,
1402
- parse_model=PublicModelName.OPENAI_GPT_4_O,
1403
- extract_model=ExtractModels.OPENAI_GPT_4_1,
1404
- chunk_mode=DocumentChunkMode.PAGE,
1405
- ),
1406
- )
1407
- """
1408
- _response = await self._client_wrapper.httpx_client.request(
1409
- "PUT",
1410
- urllib.parse.urljoin(
1411
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/{extraction_agent_id}"
1412
- ),
1413
- json=jsonable_encoder({"data_schema": data_schema, "config": config}),
1414
- headers=self._client_wrapper.get_headers(),
1415
- timeout=60,
1416
- )
1417
- if 200 <= _response.status_code < 300:
1418
- return pydantic.parse_obj_as(ExtractAgent, _response.json()) # type: ignore
1419
- if _response.status_code == 422:
1420
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1421
- try:
1422
- _response_json = _response.json()
1423
- except JSONDecodeError:
1424
- raise ApiError(status_code=_response.status_code, body=_response.text)
1425
- raise ApiError(status_code=_response.status_code, body=_response_json)
1426
-
1427
- async def delete_extraction_agent(self, extraction_agent_id: str) -> typing.Any:
1428
- """
1429
- Parameters:
1430
- - extraction_agent_id: str.
1431
- ---
1432
- from llama_cloud.client import AsyncLlamaCloud
1433
-
1434
- client = AsyncLlamaCloud(
1435
- token="YOUR_TOKEN",
1436
- )
1437
- await client.llama_extract.delete_extraction_agent(
1438
- extraction_agent_id="string",
1439
- )
1440
- """
1441
- _response = await self._client_wrapper.httpx_client.request(
1442
- "DELETE",
1443
- urllib.parse.urljoin(
1444
- f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/extraction-agents/{extraction_agent_id}"
1445
- ),
1446
- headers=self._client_wrapper.get_headers(),
1447
- timeout=60,
1448
- )
1449
- if 200 <= _response.status_code < 300:
1450
- return pydantic.parse_obj_as(typing.Any, _response.json()) # type: ignore
1451
- if _response.status_code == 422:
1452
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1453
- try:
1454
- _response_json = _response.json()
1455
- except JSONDecodeError:
1456
- raise ApiError(status_code=_response.status_code, body=_response.text)
1457
- raise ApiError(status_code=_response.status_code, body=_response_json)
1458
-
1459
- async def list_jobs(self, *, extraction_agent_id: str) -> typing.List[ExtractJob]:
1460
- """
1461
- Parameters:
1462
- - extraction_agent_id: str.
1463
- ---
1464
- from llama_cloud.client import AsyncLlamaCloud
1465
-
1466
- client = AsyncLlamaCloud(
1467
- token="YOUR_TOKEN",
1468
- )
1469
- await client.llama_extract.list_jobs(
1470
- extraction_agent_id="string",
1471
- )
1472
- """
1473
- _response = await self._client_wrapper.httpx_client.request(
1474
- "GET",
1475
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs"),
1476
- params=remove_none_from_dict({"extraction_agent_id": extraction_agent_id}),
1477
- headers=self._client_wrapper.get_headers(),
1478
- timeout=60,
1479
- )
1480
- if 200 <= _response.status_code < 300:
1481
- return pydantic.parse_obj_as(typing.List[ExtractJob], _response.json()) # type: ignore
1482
- if _response.status_code == 422:
1483
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1484
- try:
1485
- _response_json = _response.json()
1486
- except JSONDecodeError:
1487
- raise ApiError(status_code=_response.status_code, body=_response.text)
1488
- raise ApiError(status_code=_response.status_code, body=_response_json)
1489
-
1490
- async def run_job(self, *, from_ui: typing.Optional[bool] = None, request: ExtractJobCreate) -> ExtractJob:
1491
- """
1492
- Parameters:
1493
- - from_ui: typing.Optional[bool].
1494
-
1495
- - request: ExtractJobCreate.
1496
- ---
1497
- from llama_cloud import (
1498
- DocumentChunkMode,
1499
- ExtractConfig,
1500
- ExtractConfigPriority,
1501
- ExtractJobCreate,
1502
- ExtractJobCreatePriority,
1503
- ExtractMode,
1504
- ExtractModels,
1505
- ExtractTarget,
1506
- PublicModelName,
1507
- )
1508
- from llama_cloud.client import AsyncLlamaCloud
1509
-
1510
- client = AsyncLlamaCloud(
1511
- token="YOUR_TOKEN",
1512
- )
1513
- await client.llama_extract.run_job(
1514
- request=ExtractJobCreate(
1515
- priority=ExtractJobCreatePriority.LOW,
1516
- extraction_agent_id="string",
1517
- file_id="string",
1518
- config_override=ExtractConfig(
1519
- priority=ExtractConfigPriority.LOW,
1520
- extraction_target=ExtractTarget.PER_DOC,
1521
- extraction_mode=ExtractMode.FAST,
1522
- parse_model=PublicModelName.OPENAI_GPT_4_O,
1523
- extract_model=ExtractModels.OPENAI_GPT_4_1,
1524
- chunk_mode=DocumentChunkMode.PAGE,
1525
- ),
1526
- ),
1527
- )
1528
- """
1529
- _response = await self._client_wrapper.httpx_client.request(
1530
- "POST",
1531
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs"),
1532
- params=remove_none_from_dict({"from_ui": from_ui}),
1533
- json=jsonable_encoder(request),
1534
- headers=self._client_wrapper.get_headers(),
1535
- timeout=60,
1536
- )
1537
- if 200 <= _response.status_code < 300:
1538
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
1539
- if _response.status_code == 422:
1540
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1541
- try:
1542
- _response_json = _response.json()
1543
- except JSONDecodeError:
1544
- raise ApiError(status_code=_response.status_code, body=_response.text)
1545
- raise ApiError(status_code=_response.status_code, body=_response_json)
1546
-
1547
- async def get_job(self, job_id: str) -> ExtractJob:
1548
- """
1549
- Parameters:
1550
- - job_id: str.
1551
- ---
1552
- from llama_cloud.client import AsyncLlamaCloud
1553
-
1554
- client = AsyncLlamaCloud(
1555
- token="YOUR_TOKEN",
1556
- )
1557
- await client.llama_extract.get_job(
1558
- job_id="string",
1559
- )
1560
- """
1561
- _response = await self._client_wrapper.httpx_client.request(
1562
- "GET",
1563
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/jobs/{job_id}"),
1564
- headers=self._client_wrapper.get_headers(),
1565
- timeout=60,
1566
- )
1567
- if 200 <= _response.status_code < 300:
1568
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
1569
- if _response.status_code == 422:
1570
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1571
- try:
1572
- _response_json = _response.json()
1573
- except JSONDecodeError:
1574
- raise ApiError(status_code=_response.status_code, body=_response.text)
1575
- raise ApiError(status_code=_response.status_code, body=_response_json)
1576
-
1577
- async def run_job_test_user(
1578
- self,
1579
- *,
1580
- from_ui: typing.Optional[bool] = None,
1581
- job_create: ExtractJobCreate,
1582
- extract_settings: typing.Optional[LlamaExtractSettings] = OMIT,
1583
- ) -> ExtractJob:
1584
- """
1585
- Parameters:
1586
- - from_ui: typing.Optional[bool].
1587
-
1588
- - job_create: ExtractJobCreate.
1589
-
1590
- - extract_settings: typing.Optional[LlamaExtractSettings].
1591
- ---
1592
- from llama_cloud import (
1593
- ChunkMode,
1594
- DocumentChunkMode,
1595
- ExtractConfig,
1596
- ExtractConfigPriority,
1597
- ExtractJobCreate,
1598
- ExtractJobCreatePriority,
1599
- ExtractMode,
1600
- ExtractModels,
1601
- ExtractTarget,
1602
- FailPageMode,
1603
- LlamaExtractSettings,
1604
- LlamaParseParameters,
1605
- LlamaParseParametersPriority,
1606
- MultimodalParseResolution,
1607
- ParsingMode,
1608
- PublicModelName,
1609
- )
1610
- from llama_cloud.client import AsyncLlamaCloud
1611
-
1612
- client = AsyncLlamaCloud(
1613
- token="YOUR_TOKEN",
1614
- )
1615
- await client.llama_extract.run_job_test_user(
1616
- job_create=ExtractJobCreate(
1617
- priority=ExtractJobCreatePriority.LOW,
1618
- extraction_agent_id="string",
1619
- file_id="string",
1620
- config_override=ExtractConfig(
1621
- priority=ExtractConfigPriority.LOW,
1622
- extraction_target=ExtractTarget.PER_DOC,
1623
- extraction_mode=ExtractMode.FAST,
1624
- parse_model=PublicModelName.OPENAI_GPT_4_O,
1625
- extract_model=ExtractModels.OPENAI_GPT_4_1,
1626
- chunk_mode=DocumentChunkMode.PAGE,
1627
- ),
1628
- ),
1629
- extract_settings=LlamaExtractSettings(
1630
- chunk_mode=ChunkMode.PAGE,
1631
- llama_parse_params=LlamaParseParameters(
1632
- priority=LlamaParseParametersPriority.LOW,
1633
- parse_mode=ParsingMode.PARSE_PAGE_WITHOUT_LLM,
1634
- replace_failed_page_mode=FailPageMode.RAW_TEXT,
1635
- ),
1636
- multimodal_parse_resolution=MultimodalParseResolution.MEDIUM,
1637
- ),
1638
- )
1639
- """
1640
- _request: typing.Dict[str, typing.Any] = {"job_create": job_create}
1641
- if extract_settings is not OMIT:
1642
- _request["extract_settings"] = extract_settings
1643
- _response = await self._client_wrapper.httpx_client.request(
1644
- "POST",
1645
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs/test"),
1646
- params=remove_none_from_dict({"from_ui": from_ui}),
1647
- json=jsonable_encoder(_request),
1648
- headers=self._client_wrapper.get_headers(),
1649
- timeout=60,
1650
- )
1651
- if 200 <= _response.status_code < 300:
1652
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
1653
- if _response.status_code == 422:
1654
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1655
- try:
1656
- _response_json = _response.json()
1657
- except JSONDecodeError:
1658
- raise ApiError(status_code=_response.status_code, body=_response.text)
1659
- raise ApiError(status_code=_response.status_code, body=_response_json)
1660
-
1661
- async def run_job_on_file(
1662
- self,
1663
- *,
1664
- from_ui: typing.Optional[bool] = None,
1665
- extraction_agent_id: str,
1666
- file: typing.IO,
1667
- data_schema_override: typing.Optional[str] = None,
1668
- config_override: typing.Optional[str] = None,
1669
- ) -> ExtractJob:
1670
- """
1671
- Parameters:
1672
- - from_ui: typing.Optional[bool].
1673
-
1674
- - extraction_agent_id: str.
1675
-
1676
- - file: typing.IO.
1677
-
1678
- - data_schema_override: typing.Optional[str].
1679
-
1680
- - config_override: typing.Optional[str].
1681
- """
1682
- _response = await self._client_wrapper.httpx_client.request(
1683
- "POST",
1684
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs/file"),
1685
- params=remove_none_from_dict({"from_ui": from_ui}),
1686
- data=jsonable_encoder(
1687
- {
1688
- "extraction_agent_id": extraction_agent_id,
1689
- "data_schema_override": data_schema_override,
1690
- "config_override": config_override,
1691
- }
1692
- ),
1693
- files={"file": file},
1694
- headers=self._client_wrapper.get_headers(),
1695
- timeout=60,
1696
- )
1697
- if 200 <= _response.status_code < 300:
1698
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
1699
- if _response.status_code == 422:
1700
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1701
- try:
1702
- _response_json = _response.json()
1703
- except JSONDecodeError:
1704
- raise ApiError(status_code=_response.status_code, body=_response.text)
1705
- raise ApiError(status_code=_response.status_code, body=_response_json)
1706
-
1707
- async def run_batch_jobs(
1708
- self,
1709
- *,
1710
- from_ui: typing.Optional[bool] = None,
1711
- extraction_agent_id: str,
1712
- file_ids: typing.List[str],
1713
- data_schema_override: typing.Optional[ExtractJobCreateBatchDataSchemaOverride] = OMIT,
1714
- config_override: typing.Optional[ExtractConfig] = OMIT,
1715
- ) -> typing.List[ExtractJob]:
1716
- """
1717
- Parameters:
1718
- - from_ui: typing.Optional[bool].
1719
-
1720
- - extraction_agent_id: str. The id of the extraction agent
1721
-
1722
- - file_ids: typing.List[str]. The ids of the files
1723
-
1724
- - data_schema_override: typing.Optional[ExtractJobCreateBatchDataSchemaOverride]. The data schema to override the extraction agent's data schema with
1725
-
1726
- - config_override: typing.Optional[ExtractConfig].
1727
- ---
1728
- from llama_cloud import (
1729
- DocumentChunkMode,
1730
- ExtractConfig,
1731
- ExtractConfigPriority,
1732
- ExtractMode,
1733
- ExtractModels,
1734
- ExtractTarget,
1735
- PublicModelName,
1736
- )
1737
- from llama_cloud.client import AsyncLlamaCloud
1738
-
1739
- client = AsyncLlamaCloud(
1740
- token="YOUR_TOKEN",
1741
- )
1742
- await client.llama_extract.run_batch_jobs(
1743
- extraction_agent_id="string",
1744
- file_ids=[],
1745
- config_override=ExtractConfig(
1746
- priority=ExtractConfigPriority.LOW,
1747
- extraction_target=ExtractTarget.PER_DOC,
1748
- extraction_mode=ExtractMode.FAST,
1749
- parse_model=PublicModelName.OPENAI_GPT_4_O,
1750
- extract_model=ExtractModels.OPENAI_GPT_4_1,
1751
- chunk_mode=DocumentChunkMode.PAGE,
1752
- ),
1753
- )
1754
- """
1755
- _request: typing.Dict[str, typing.Any] = {"extraction_agent_id": extraction_agent_id, "file_ids": file_ids}
1756
- if data_schema_override is not OMIT:
1757
- _request["data_schema_override"] = data_schema_override
1758
- if config_override is not OMIT:
1759
- _request["config_override"] = config_override
1760
- _response = await self._client_wrapper.httpx_client.request(
1761
- "POST",
1762
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/jobs/batch"),
1763
- params=remove_none_from_dict({"from_ui": from_ui}),
1764
- json=jsonable_encoder(_request),
1765
- headers=self._client_wrapper.get_headers(),
1766
- timeout=60,
1767
- )
1768
- if 200 <= _response.status_code < 300:
1769
- return pydantic.parse_obj_as(typing.List[ExtractJob], _response.json()) # type: ignore
1770
- if _response.status_code == 422:
1771
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1772
- try:
1773
- _response_json = _response.json()
1774
- except JSONDecodeError:
1775
- raise ApiError(status_code=_response.status_code, body=_response.text)
1776
- raise ApiError(status_code=_response.status_code, body=_response_json)
1777
-
1778
- async def get_job_result(
1779
- self, job_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
1780
- ) -> ExtractResultset:
1781
- """
1782
- Parameters:
1783
- - job_id: str.
1784
-
1785
- - project_id: typing.Optional[str].
1786
-
1787
- - organization_id: typing.Optional[str].
1788
- ---
1789
- from llama_cloud.client import AsyncLlamaCloud
1790
-
1791
- client = AsyncLlamaCloud(
1792
- token="YOUR_TOKEN",
1793
- )
1794
- await client.llama_extract.get_job_result(
1795
- job_id="string",
1796
- )
1797
- """
1798
- _response = await self._client_wrapper.httpx_client.request(
1799
- "GET",
1800
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/jobs/{job_id}/result"),
1801
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1802
- headers=self._client_wrapper.get_headers(),
1803
- timeout=60,
1804
- )
1805
- if 200 <= _response.status_code < 300:
1806
- return pydantic.parse_obj_as(ExtractResultset, _response.json()) # type: ignore
1807
- if _response.status_code == 422:
1808
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1809
- try:
1810
- _response_json = _response.json()
1811
- except JSONDecodeError:
1812
- raise ApiError(status_code=_response.status_code, body=_response.text)
1813
- raise ApiError(status_code=_response.status_code, body=_response_json)
1814
-
1815
- async def list_extract_runs(
1816
- self, *, extraction_agent_id: str, skip: typing.Optional[int] = None, limit: typing.Optional[int] = None
1817
- ) -> PaginatedExtractRunsResponse:
1818
- """
1819
- Parameters:
1820
- - extraction_agent_id: str.
1821
-
1822
- - skip: typing.Optional[int].
1823
-
1824
- - limit: typing.Optional[int].
1825
- ---
1826
- from llama_cloud.client import AsyncLlamaCloud
1827
-
1828
- client = AsyncLlamaCloud(
1829
- token="YOUR_TOKEN",
1830
- )
1831
- await client.llama_extract.list_extract_runs(
1832
- extraction_agent_id="string",
1833
- )
1834
- """
1835
- _response = await self._client_wrapper.httpx_client.request(
1836
- "GET",
1837
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/runs"),
1838
- params=remove_none_from_dict({"extraction_agent_id": extraction_agent_id, "skip": skip, "limit": limit}),
1839
- headers=self._client_wrapper.get_headers(),
1840
- timeout=60,
1841
- )
1842
- if 200 <= _response.status_code < 300:
1843
- return pydantic.parse_obj_as(PaginatedExtractRunsResponse, _response.json()) # type: ignore
1844
- if _response.status_code == 422:
1845
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1846
- try:
1847
- _response_json = _response.json()
1848
- except JSONDecodeError:
1849
- raise ApiError(status_code=_response.status_code, body=_response.text)
1850
- raise ApiError(status_code=_response.status_code, body=_response_json)
1851
-
1852
- async def get_latest_run_from_ui(self, *, extraction_agent_id: str) -> typing.Optional[ExtractRun]:
1853
- """
1854
- Parameters:
1855
- - extraction_agent_id: str.
1856
- ---
1857
- from llama_cloud.client import AsyncLlamaCloud
1858
-
1859
- client = AsyncLlamaCloud(
1860
- token="YOUR_TOKEN",
1861
- )
1862
- await client.llama_extract.get_latest_run_from_ui(
1863
- extraction_agent_id="string",
1864
- )
1865
- """
1866
- _response = await self._client_wrapper.httpx_client.request(
1867
- "GET",
1868
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/runs/latest-from-ui"),
1869
- params=remove_none_from_dict({"extraction_agent_id": extraction_agent_id}),
1870
- headers=self._client_wrapper.get_headers(),
1871
- timeout=60,
1872
- )
1873
- if 200 <= _response.status_code < 300:
1874
- return pydantic.parse_obj_as(typing.Optional[ExtractRun], _response.json()) # type: ignore
1875
- if _response.status_code == 422:
1876
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1877
- try:
1878
- _response_json = _response.json()
1879
- except JSONDecodeError:
1880
- raise ApiError(status_code=_response.status_code, body=_response.text)
1881
- raise ApiError(status_code=_response.status_code, body=_response_json)
1882
-
1883
- async def get_run_by_job_id(
1884
- self, job_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
1885
- ) -> ExtractRun:
1886
- """
1887
- Parameters:
1888
- - job_id: str.
1889
-
1890
- - project_id: typing.Optional[str].
1891
-
1892
- - organization_id: typing.Optional[str].
1893
- ---
1894
- from llama_cloud.client import AsyncLlamaCloud
1895
-
1896
- client = AsyncLlamaCloud(
1897
- token="YOUR_TOKEN",
1898
- )
1899
- await client.llama_extract.get_run_by_job_id(
1900
- job_id="string",
1901
- )
1902
- """
1903
- _response = await self._client_wrapper.httpx_client.request(
1904
- "GET",
1905
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/runs/by-job/{job_id}"),
1906
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1907
- headers=self._client_wrapper.get_headers(),
1908
- timeout=60,
1909
- )
1910
- if 200 <= _response.status_code < 300:
1911
- return pydantic.parse_obj_as(ExtractRun, _response.json()) # type: ignore
1912
- if _response.status_code == 422:
1913
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1914
- try:
1915
- _response_json = _response.json()
1916
- except JSONDecodeError:
1917
- raise ApiError(status_code=_response.status_code, body=_response.text)
1918
- raise ApiError(status_code=_response.status_code, body=_response_json)
1919
-
1920
- async def get_run(
1921
- self, run_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
1922
- ) -> ExtractRun:
1923
- """
1924
- Parameters:
1925
- - run_id: str.
1926
-
1927
- - project_id: typing.Optional[str].
1928
-
1929
- - organization_id: typing.Optional[str].
1930
- ---
1931
- from llama_cloud.client import AsyncLlamaCloud
1932
-
1933
- client = AsyncLlamaCloud(
1934
- token="YOUR_TOKEN",
1935
- )
1936
- await client.llama_extract.get_run(
1937
- run_id="string",
1938
- )
1939
- """
1940
- _response = await self._client_wrapper.httpx_client.request(
1941
- "GET",
1942
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/runs/{run_id}"),
1943
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1944
- headers=self._client_wrapper.get_headers(),
1945
- timeout=60,
1946
- )
1947
- if 200 <= _response.status_code < 300:
1948
- return pydantic.parse_obj_as(ExtractRun, _response.json()) # type: ignore
1949
- if _response.status_code == 422:
1950
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1951
- try:
1952
- _response_json = _response.json()
1953
- except JSONDecodeError:
1954
- raise ApiError(status_code=_response.status_code, body=_response.text)
1955
- raise ApiError(status_code=_response.status_code, body=_response_json)
1956
-
1957
- async def delete_extraction_run(
1958
- self, run_id: str, *, project_id: typing.Optional[str] = None, organization_id: typing.Optional[str] = None
1959
- ) -> typing.Any:
1960
- """
1961
- Parameters:
1962
- - run_id: str.
1963
-
1964
- - project_id: typing.Optional[str].
1965
-
1966
- - organization_id: typing.Optional[str].
1967
- ---
1968
- from llama_cloud.client import AsyncLlamaCloud
1969
-
1970
- client = AsyncLlamaCloud(
1971
- token="YOUR_TOKEN",
1972
- )
1973
- await client.llama_extract.delete_extraction_run(
1974
- run_id="string",
1975
- )
1976
- """
1977
- _response = await self._client_wrapper.httpx_client.request(
1978
- "DELETE",
1979
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", f"api/v1/extraction/runs/{run_id}"),
1980
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
1981
- headers=self._client_wrapper.get_headers(),
1982
- timeout=60,
1983
- )
1984
- if 200 <= _response.status_code < 300:
1985
- return pydantic.parse_obj_as(typing.Any, _response.json()) # type: ignore
1986
- if _response.status_code == 422:
1987
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
1988
- try:
1989
- _response_json = _response.json()
1990
- except JSONDecodeError:
1991
- raise ApiError(status_code=_response.status_code, body=_response.text)
1992
- raise ApiError(status_code=_response.status_code, body=_response_json)
1993
-
1994
- async def extract_stateless(
1995
- self,
1996
- *,
1997
- project_id: typing.Optional[str] = None,
1998
- organization_id: typing.Optional[str] = None,
1999
- webhook_configurations: typing.Optional[typing.List[WebhookConfiguration]] = OMIT,
2000
- data_schema: ExtractStatelessRequestDataSchema,
2001
- config: ExtractConfig,
2002
- file_id: typing.Optional[str] = OMIT,
2003
- text: typing.Optional[str] = OMIT,
2004
- file: typing.Optional[FileData] = OMIT,
2005
- ) -> ExtractJob:
2006
- """
2007
- Stateless extraction endpoint that uses a default extraction agent in the user's default project.
2008
- Requires data_schema, config, and either file_id, text, or base64 encoded file data.
2009
-
2010
- Parameters:
2011
- - project_id: typing.Optional[str].
2012
-
2013
- - organization_id: typing.Optional[str].
2014
-
2015
- - webhook_configurations: typing.Optional[typing.List[WebhookConfiguration]].
2016
-
2017
- - data_schema: ExtractStatelessRequestDataSchema. The schema of the data to extract
2018
-
2019
- - config: ExtractConfig. The configuration parameters for the extraction
2020
-
2021
- - file_id: typing.Optional[str].
2022
-
2023
- - text: typing.Optional[str].
2024
-
2025
- - file: typing.Optional[FileData].
2026
- ---
2027
- from llama_cloud import (
2028
- DocumentChunkMode,
2029
- ExtractConfig,
2030
- ExtractConfigPriority,
2031
- ExtractMode,
2032
- ExtractModels,
2033
- ExtractTarget,
2034
- FileData,
2035
- PublicModelName,
2036
- )
2037
- from llama_cloud.client import AsyncLlamaCloud
2038
-
2039
- client = AsyncLlamaCloud(
2040
- token="YOUR_TOKEN",
2041
- )
2042
- await client.llama_extract.extract_stateless(
2043
- config=ExtractConfig(
2044
- priority=ExtractConfigPriority.LOW,
2045
- extraction_target=ExtractTarget.PER_DOC,
2046
- extraction_mode=ExtractMode.FAST,
2047
- parse_model=PublicModelName.OPENAI_GPT_4_O,
2048
- extract_model=ExtractModels.OPENAI_GPT_4_1,
2049
- chunk_mode=DocumentChunkMode.PAGE,
2050
- ),
2051
- file=FileData(
2052
- data="string",
2053
- mime_type="string",
2054
- ),
2055
- )
2056
- """
2057
- _request: typing.Dict[str, typing.Any] = {"data_schema": data_schema, "config": config}
2058
- if webhook_configurations is not OMIT:
2059
- _request["webhook_configurations"] = webhook_configurations
2060
- if file_id is not OMIT:
2061
- _request["file_id"] = file_id
2062
- if text is not OMIT:
2063
- _request["text"] = text
2064
- if file is not OMIT:
2065
- _request["file"] = file
2066
- _response = await self._client_wrapper.httpx_client.request(
2067
- "POST",
2068
- urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v1/extraction/run"),
2069
- params=remove_none_from_dict({"project_id": project_id, "organization_id": organization_id}),
2070
- json=jsonable_encoder(_request),
2071
- headers=self._client_wrapper.get_headers(),
2072
- timeout=60,
2073
- )
2074
- if 200 <= _response.status_code < 300:
2075
- return pydantic.parse_obj_as(ExtractJob, _response.json()) # type: ignore
2076
- if _response.status_code == 422:
2077
- raise UnprocessableEntityError(pydantic.parse_obj_as(HttpValidationError, _response.json())) # type: ignore
2078
- try:
2079
- _response_json = _response.json()
2080
- except JSONDecodeError:
2081
- raise ApiError(status_code=_response.status_code, body=_response.text)
2082
- raise ApiError(status_code=_response.status_code, body=_response_json)