antfly-sdk 0.0.2.dev2__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.
- antfly/.gitignore +23 -0
- antfly/README.md +124 -0
- antfly/__init__.py +20 -0
- antfly/client.py +260 -0
- antfly/client_generated/__init__.py +8 -0
- antfly/client_generated/api/__init__.py +1 -0
- antfly/client_generated/api/api_key/__init__.py +1 -0
- antfly/client_generated/api/api_key/create_api_key.py +209 -0
- antfly/client_generated/api/api_key/delete_api_key.py +182 -0
- antfly/client_generated/api/api_key/list_api_keys.py +182 -0
- antfly/client_generated/api/cluster_management/__init__.py +1 -0
- antfly/client_generated/api/cluster_management/backup.py +259 -0
- antfly/client_generated/api/cluster_management/delete_secret.py +177 -0
- antfly/client_generated/api/cluster_management/get_cluster.py +147 -0
- antfly/client_generated/api/cluster_management/get_status.py +145 -0
- antfly/client_generated/api/cluster_management/list_backups.py +187 -0
- antfly/client_generated/api/cluster_management/list_secrets.py +147 -0
- antfly/client_generated/api/cluster_management/put_secret.py +200 -0
- antfly/client_generated/api/cluster_management/restore.py +215 -0
- antfly/client_generated/api/data_operations/__init__.py +1 -0
- antfly/client_generated/api/data_operations/abort_transaction_session.py +176 -0
- antfly/client_generated/api/data_operations/backup_table.py +192 -0
- antfly/client_generated/api/data_operations/batch_write.py +318 -0
- antfly/client_generated/api/data_operations/begin_transaction.py +172 -0
- antfly/client_generated/api/data_operations/cleanup_transaction_sessions.py +171 -0
- antfly/client_generated/api/data_operations/commit_transaction.py +289 -0
- antfly/client_generated/api/data_operations/commit_transaction_session.py +234 -0
- antfly/client_generated/api/data_operations/create_transaction_savepoint.py +176 -0
- antfly/client_generated/api/data_operations/get_transaction_session.py +176 -0
- antfly/client_generated/api/data_operations/linear_merge.py +338 -0
- antfly/client_generated/api/data_operations/list_transaction_sessions.py +134 -0
- antfly/client_generated/api/data_operations/lookup_key.py +206 -0
- antfly/client_generated/api/data_operations/multi_batch_write.py +248 -0
- antfly/client_generated/api/data_operations/restore_table.py +187 -0
- antfly/client_generated/api/data_operations/rollback_transaction_savepoint.py +190 -0
- antfly/client_generated/api/data_operations/stage_transaction_delete.py +197 -0
- antfly/client_generated/api/data_operations/stage_transaction_read.py +198 -0
- antfly/client_generated/api/data_operations/stage_transaction_session.py +233 -0
- antfly/client_generated/api/data_operations/stage_transaction_write.py +197 -0
- antfly/client_generated/api/default/__init__.py +1 -0
- antfly/client_generated/api/default/chat_completions.py +193 -0
- antfly/client_generated/api/default/chunk_text.py +243 -0
- antfly/client_generated/api/default/create_embedding.py +204 -0
- antfly/client_generated/api/default/extract.py +201 -0
- antfly/client_generated/api/default/generate_content.py +257 -0
- antfly/client_generated/api/default/generate_embeddings.py +204 -0
- antfly/client_generated/api/default/list_models.py +327 -0
- antfly/client_generated/api/default/read_images.py +281 -0
- antfly/client_generated/api/default/rerank_multimodal_prompts.py +204 -0
- antfly/client_generated/api/default/rerank_prompts.py +289 -0
- antfly/client_generated/api/default/rewrite_text.py +241 -0
- antfly/client_generated/api/default/transcribe_audio.py +329 -0
- antfly/client_generated/api/index_management/__init__.py +1 -0
- antfly/client_generated/api/index_management/create_index.py +209 -0
- antfly/client_generated/api/index_management/drop_index.py +174 -0
- antfly/client_generated/api/index_management/get_index.py +176 -0
- antfly/client_generated/api/index_management/list_indexes.py +171 -0
- antfly/client_generated/api/permission/__init__.py +1 -0
- antfly/client_generated/api/permission/add_permission_to_user.py +198 -0
- antfly/client_generated/api/permission/get_user_permissions.py +184 -0
- antfly/client_generated/api/permission/remove_permission_from_user.py +215 -0
- antfly/client_generated/api/query_operations/__init__.py +1 -0
- antfly/client_generated/api/query_operations/evaluate.py +211 -0
- antfly/client_generated/api/query_operations/query_builder_agent.py +202 -0
- antfly/client_generated/api/role/__init__.py +1 -0
- antfly/client_generated/api/role/add_role_to_user.py +198 -0
- antfly/client_generated/api/role/list_auth_subjects.py +147 -0
- antfly/client_generated/api/role/list_user_roles.py +169 -0
- antfly/client_generated/api/role/remove_role_from_user.py +194 -0
- antfly/client_generated/api/row_filter/__init__.py +1 -0
- antfly/client_generated/api/row_filter/get_row_filter.py +186 -0
- antfly/client_generated/api/row_filter/get_subject_row_filter.py +186 -0
- antfly/client_generated/api/row_filter/list_row_filters.py +179 -0
- antfly/client_generated/api/row_filter/list_subject_row_filters.py +174 -0
- antfly/client_generated/api/row_filter/remove_row_filter.py +182 -0
- antfly/client_generated/api/row_filter/remove_subject_row_filter.py +182 -0
- antfly/client_generated/api/row_filter/set_row_filter.py +216 -0
- antfly/client_generated/api/row_filter/set_subject_row_filter.py +207 -0
- antfly/client_generated/api/table_management/__init__.py +1 -0
- antfly/client_generated/api/table_management/drop_table.py +160 -0
- antfly/client_generated/api/table_management/get_table.py +151 -0
- antfly/client_generated/api/table_management/list_tables.py +176 -0
- antfly/client_generated/api/table_management/update_schema.py +182 -0
- antfly/client_generated/api/user/__init__.py +1 -0
- antfly/client_generated/api/user/create_user.py +196 -0
- antfly/client_generated/api/user/delete_user.py +173 -0
- antfly/client_generated/api/user/get_current_user.py +147 -0
- antfly/client_generated/api/user/get_user_by_name.py +175 -0
- antfly/client_generated/api/user/list_users.py +157 -0
- antfly/client_generated/api/user/update_user_password.py +198 -0
- antfly/client_generated/client.py +268 -0
- antfly/client_generated/errors.py +16 -0
- antfly/client_generated/models/__init__.py +1087 -0
- antfly/client_generated/models/agent_decision.py +81 -0
- antfly/client_generated/models/agent_question.py +120 -0
- antfly/client_generated/models/agent_question_kind.py +12 -0
- antfly/client_generated/models/agent_status.py +12 -0
- antfly/client_generated/models/agent_step.py +155 -0
- antfly/client_generated/models/agent_step_details.py +47 -0
- antfly/client_generated/models/agent_step_kind.py +13 -0
- antfly/client_generated/models/agent_step_status.py +10 -0
- antfly/client_generated/models/aggregation_bucket.py +156 -0
- antfly/client_generated/models/aggregation_bucket_sub_aggregations.py +60 -0
- antfly/client_generated/models/aggregation_date_range.py +81 -0
- antfly/client_generated/models/aggregation_range.py +81 -0
- antfly/client_generated/models/aggregation_result.py +160 -0
- antfly/client_generated/models/aggregation_type.py +23 -0
- antfly/client_generated/models/algebraic_aggregation_join.py +96 -0
- antfly/client_generated/models/algebraic_aggregation_join_kind.py +11 -0
- antfly/client_generated/models/algebraic_index_config.py +64 -0
- antfly/client_generated/models/algebraic_index_stats.py +329 -0
- antfly/client_generated/models/algebraic_index_stats_index_type.py +8 -0
- antfly/client_generated/models/algebraic_index_stats_planner_last_decision.py +9 -0
- antfly/client_generated/models/analyses.py +70 -0
- antfly/client_generated/models/analyses_result.py +74 -0
- antfly/client_generated/models/answer_agent_result.py +159 -0
- antfly/client_generated/models/answer_agent_steps.py +136 -0
- antfly/client_generated/models/antfly_chunker_config.py +149 -0
- antfly/client_generated/models/antfly_embedder_config.py +90 -0
- antfly/client_generated/models/antfly_generator_config.py +119 -0
- antfly/client_generated/models/antfly_reranker_config.py +77 -0
- antfly/client_generated/models/antfly_type.py +19 -0
- antfly/client_generated/models/antfly_type_2.py +19 -0
- antfly/client_generated/models/anthropic_generator_config.py +119 -0
- antfly/client_generated/models/api_key.py +202 -0
- antfly/client_generated/models/api_key_row_filter_type_0.py +50 -0
- antfly/client_generated/models/api_key_with_secret.py +220 -0
- antfly/client_generated/models/audio_chunk_options.py +72 -0
- antfly/client_generated/models/auth_subject.py +72 -0
- antfly/client_generated/models/auth_subject_kind.py +11 -0
- antfly/client_generated/models/backup_info.py +115 -0
- antfly/client_generated/models/backup_info_format.py +9 -0
- antfly/client_generated/models/backup_list_response.py +75 -0
- antfly/client_generated/models/backup_request.py +101 -0
- antfly/client_generated/models/backup_request_format.py +9 -0
- antfly/client_generated/models/backup_table_response_201.py +61 -0
- antfly/client_generated/models/batch_request.py +195 -0
- antfly/client_generated/models/batch_request_inserts.py +71 -0
- antfly/client_generated/models/batch_request_inserts_additional_property.py +47 -0
- antfly/client_generated/models/batch_response.py +79 -0
- antfly/client_generated/models/bedrock_embedder_config.py +139 -0
- antfly/client_generated/models/bedrock_generator_config.py +109 -0
- antfly/client_generated/models/bing_search_config.py +159 -0
- antfly/client_generated/models/bing_search_config_freshness.py +10 -0
- antfly/client_generated/models/bool_field_query.py +93 -0
- antfly/client_generated/models/boolean_query.py +534 -0
- antfly/client_generated/models/brave_search_config.py +169 -0
- antfly/client_generated/models/brave_search_config_freshness.py +11 -0
- antfly/client_generated/models/calendar_interval.py +14 -0
- antfly/client_generated/models/chain_condition.py +11 -0
- antfly/client_generated/models/chain_link.py +110 -0
- antfly/client_generated/models/chat_message.py +208 -0
- antfly/client_generated/models/chat_message_role.py +11 -0
- antfly/client_generated/models/chat_tool_name.py +16 -0
- antfly/client_generated/models/chat_tools_config.py +157 -0
- antfly/client_generated/models/chunk_options.py +111 -0
- antfly/client_generated/models/chunker_config.py +103 -0
- antfly/client_generated/models/chunker_config_full_text_index.py +51 -0
- antfly/client_generated/models/chunker_provider.py +9 -0
- antfly/client_generated/models/classification_step_config.py +169 -0
- antfly/client_generated/models/classification_transformation_result.py +158 -0
- antfly/client_generated/models/cluster_backup_request.py +113 -0
- antfly/client_generated/models/cluster_backup_request_format.py +9 -0
- antfly/client_generated/models/cluster_backup_response.py +93 -0
- antfly/client_generated/models/cluster_backup_response_status.py +10 -0
- antfly/client_generated/models/cluster_data_group_status.py +209 -0
- antfly/client_generated/models/cluster_data_node_status.py +197 -0
- antfly/client_generated/models/cluster_data_range_status.py +200 -0
- antfly/client_generated/models/cluster_data_replica_status.py +98 -0
- antfly/client_generated/models/cluster_data_status.py +149 -0
- antfly/client_generated/models/cluster_health.py +12 -0
- antfly/client_generated/models/cluster_restore_request.py +107 -0
- antfly/client_generated/models/cluster_restore_request_restore_mode.py +10 -0
- antfly/client_generated/models/cluster_restore_response.py +85 -0
- antfly/client_generated/models/cluster_restore_response_status.py +10 -0
- antfly/client_generated/models/cluster_status.py +114 -0
- antfly/client_generated/models/cluster_topology.py +124 -0
- antfly/client_generated/models/cohere_embedder_config.py +119 -0
- antfly/client_generated/models/cohere_embedder_config_input_type.py +11 -0
- antfly/client_generated/models/cohere_embedder_config_truncate.py +10 -0
- antfly/client_generated/models/cohere_generator_config.py +127 -0
- antfly/client_generated/models/cohere_reranker_config.py +102 -0
- antfly/client_generated/models/confidence_step_config.py +119 -0
- antfly/client_generated/models/conjunction_query.py +492 -0
- antfly/client_generated/models/create_api_key_request.py +156 -0
- antfly/client_generated/models/create_api_key_request_row_filter_type_0.py +50 -0
- antfly/client_generated/models/create_user_request.py +153 -0
- antfly/client_generated/models/create_user_request_metadata_type_0.py +52 -0
- antfly/client_generated/models/credentials.py +102 -0
- antfly/client_generated/models/date_range_string_query.py +165 -0
- antfly/client_generated/models/disjunction_query.py +501 -0
- antfly/client_generated/models/distance_metric.py +10 -0
- antfly/client_generated/models/distance_range.py +81 -0
- antfly/client_generated/models/distance_unit.py +12 -0
- antfly/client_generated/models/doc_id_query.py +84 -0
- antfly/client_generated/models/document_schema.py +85 -0
- antfly/client_generated/models/document_schema_schema.py +50 -0
- antfly/client_generated/models/duck_duck_go_search_config.py +143 -0
- antfly/client_generated/models/dynamic_template.py +141 -0
- antfly/client_generated/models/dynamic_template_match_mapping_type.py +12 -0
- antfly/client_generated/models/edge.py +144 -0
- antfly/client_generated/models/edge_direction.py +10 -0
- antfly/client_generated/models/edge_metadata.py +47 -0
- antfly/client_generated/models/edge_type_config.py +133 -0
- antfly/client_generated/models/edge_type_config_topology.py +9 -0
- antfly/client_generated/models/edges_response.py +88 -0
- antfly/client_generated/models/embedder_config.py +267 -0
- antfly/client_generated/models/embedder_provider.py +16 -0
- antfly/client_generated/models/embedding_type_1.py +70 -0
- antfly/client_generated/models/embedding_type_3.py +71 -0
- antfly/client_generated/models/embeddings_index_config.py +393 -0
- antfly/client_generated/models/embeddings_index_stats.py +146 -0
- antfly/client_generated/models/embeddings_index_stats_index_type.py +8 -0
- antfly/client_generated/models/error.py +61 -0
- antfly/client_generated/models/eval_config.py +135 -0
- antfly/client_generated/models/eval_options.py +80 -0
- antfly/client_generated/models/eval_request.py +185 -0
- antfly/client_generated/models/eval_request_context_item.py +47 -0
- antfly/client_generated/models/eval_result.py +102 -0
- antfly/client_generated/models/eval_scores.py +93 -0
- antfly/client_generated/models/eval_scores_generation.py +60 -0
- antfly/client_generated/models/eval_scores_retrieval.py +60 -0
- antfly/client_generated/models/eval_summary.py +89 -0
- antfly/client_generated/models/evaluator_name.py +20 -0
- antfly/client_generated/models/evaluator_score.py +102 -0
- antfly/client_generated/models/evaluator_score_metadata.py +47 -0
- antfly/client_generated/models/extraction_classification.py +80 -0
- antfly/client_generated/models/extraction_classification_schema.py +80 -0
- antfly/client_generated/models/extraction_entity.py +98 -0
- antfly/client_generated/models/extraction_input.py +201 -0
- antfly/client_generated/models/extraction_input_metadata.py +47 -0
- antfly/client_generated/models/extraction_object.py +152 -0
- antfly/client_generated/models/extraction_object_structures.py +47 -0
- antfly/client_generated/models/extraction_options.py +110 -0
- antfly/client_generated/models/extraction_reader_options.py +88 -0
- antfly/client_generated/models/extraction_relation.py +110 -0
- antfly/client_generated/models/extraction_relation_endpoint.py +70 -0
- antfly/client_generated/models/extraction_relation_schema.py +81 -0
- antfly/client_generated/models/extraction_request.py +113 -0
- antfly/client_generated/models/extraction_response.py +112 -0
- antfly/client_generated/models/extraction_response_object.py +8 -0
- antfly/client_generated/models/extraction_response_usage.py +47 -0
- antfly/client_generated/models/extraction_schema.py +131 -0
- antfly/client_generated/models/extraction_schema_structures.py +60 -0
- antfly/client_generated/models/extraction_structure_field_type_1.py +47 -0
- antfly/client_generated/models/extraction_structure_schema.py +74 -0
- antfly/client_generated/models/extraction_structure_schema_fields.py +76 -0
- antfly/client_generated/models/extraction_token.py +74 -0
- antfly/client_generated/models/failed_operation.py +87 -0
- antfly/client_generated/models/failed_operation_operation.py +9 -0
- antfly/client_generated/models/fetch_config.py +140 -0
- antfly/client_generated/models/field_statistics.py +98 -0
- antfly/client_generated/models/filter_spec.py +88 -0
- antfly/client_generated/models/filter_spec_operator.py +17 -0
- antfly/client_generated/models/followup_step_config.py +128 -0
- antfly/client_generated/models/foreign_column.py +82 -0
- antfly/client_generated/models/foreign_source.py +114 -0
- antfly/client_generated/models/foreign_source_type.py +8 -0
- antfly/client_generated/models/full_text_index_config.py +61 -0
- antfly/client_generated/models/full_text_index_stats.py +118 -0
- antfly/client_generated/models/full_text_index_stats_index_type.py +8 -0
- antfly/client_generated/models/fuzziness_type_1.py +8 -0
- antfly/client_generated/models/fuzzy_query.py +131 -0
- antfly/client_generated/models/generation_step_config.py +128 -0
- antfly/client_generated/models/generator_config.py +67 -0
- antfly/client_generated/models/generator_provider.py +17 -0
- antfly/client_generated/models/geo_bounding_box_query.py +101 -0
- antfly/client_generated/models/geo_bounding_polygon_query.py +107 -0
- antfly/client_generated/models/geo_distance_query.py +101 -0
- antfly/client_generated/models/geo_point.py +70 -0
- antfly/client_generated/models/geo_shape_geometry_relation.py +10 -0
- antfly/client_generated/models/get_current_user_response_200.py +122 -0
- antfly/client_generated/models/get_current_user_response_200_metadata_type_0.py +47 -0
- antfly/client_generated/models/google_embedder_config.py +120 -0
- antfly/client_generated/models/google_generator_config.py +136 -0
- antfly/client_generated/models/google_search_config.py +173 -0
- antfly/client_generated/models/google_search_config_search_type.py +9 -0
- antfly/client_generated/models/graph_index_config.py +121 -0
- antfly/client_generated/models/graph_index_stats.py +151 -0
- antfly/client_generated/models/graph_index_stats_algebraic_graph.py +75 -0
- antfly/client_generated/models/graph_index_stats_algebraic_graph_traversal.py +97 -0
- antfly/client_generated/models/graph_index_stats_edge_types.py +47 -0
- antfly/client_generated/models/graph_index_stats_index_type.py +8 -0
- antfly/client_generated/models/graph_node_selector.py +106 -0
- antfly/client_generated/models/graph_query.py +192 -0
- antfly/client_generated/models/graph_query_params.py +216 -0
- antfly/client_generated/models/graph_query_params_algorithm_params.py +47 -0
- antfly/client_generated/models/graph_query_result.py +155 -0
- antfly/client_generated/models/graph_query_type.py +12 -0
- antfly/client_generated/models/graph_result_node.py +173 -0
- antfly/client_generated/models/graph_result_node_document.py +47 -0
- antfly/client_generated/models/ground_truth.py +74 -0
- antfly/client_generated/models/image_url.py +62 -0
- antfly/client_generated/models/image_url_content_part.py +78 -0
- antfly/client_generated/models/image_url_content_part_type.py +8 -0
- antfly/client_generated/models/incomplete_details.py +68 -0
- antfly/client_generated/models/incomplete_details_reason.py +11 -0
- antfly/client_generated/models/index_status.py +190 -0
- antfly/client_generated/models/index_status_shard_status.py +116 -0
- antfly/client_generated/models/index_type.py +11 -0
- antfly/client_generated/models/inference_audio_chunk_config.py +95 -0
- antfly/client_generated/models/inference_backend_runtimes.py +116 -0
- antfly/client_generated/models/inference_binary_content.py +98 -0
- antfly/client_generated/models/inference_chat_message.py +198 -0
- antfly/client_generated/models/inference_chunk.py +70 -0
- antfly/client_generated/models/inference_chunk_config.py +123 -0
- antfly/client_generated/models/inference_chunk_object.py +88 -0
- antfly/client_generated/models/inference_chunk_object_object.py +8 -0
- antfly/client_generated/models/inference_chunk_request.py +148 -0
- antfly/client_generated/models/inference_chunk_response.py +117 -0
- antfly/client_generated/models/inference_chunk_response_object.py +8 -0
- antfly/client_generated/models/inference_classify_object.py +93 -0
- antfly/client_generated/models/inference_classify_object_object.py +8 -0
- antfly/client_generated/models/inference_classify_request.py +105 -0
- antfly/client_generated/models/inference_classify_response.py +103 -0
- antfly/client_generated/models/inference_classify_response_object.py +8 -0
- antfly/client_generated/models/inference_classify_result.py +69 -0
- antfly/client_generated/models/inference_config.py +327 -0
- antfly/client_generated/models/inference_config_model_strategies.py +74 -0
- antfly/client_generated/models/inference_config_model_strategies_additional_property.py +10 -0
- antfly/client_generated/models/inference_content_security_config.py +128 -0
- antfly/client_generated/models/inference_credentials.py +102 -0
- antfly/client_generated/models/inference_document_classification_features.py +141 -0
- antfly/client_generated/models/inference_document_classification_object.py +162 -0
- antfly/client_generated/models/inference_document_classification_object_input.py +69 -0
- antfly/client_generated/models/inference_document_classification_object_object.py +8 -0
- antfly/client_generated/models/inference_document_classification_request.py +99 -0
- antfly/client_generated/models/inference_document_classification_response.py +103 -0
- antfly/client_generated/models/inference_document_classification_response_object.py +8 -0
- antfly/client_generated/models/inference_document_classification_result.py +69 -0
- antfly/client_generated/models/inference_document_token_box.py +70 -0
- antfly/client_generated/models/inference_document_token_classification_features.py +101 -0
- antfly/client_generated/models/inference_document_token_classification_object.py +124 -0
- antfly/client_generated/models/inference_document_token_classification_object_object.py +8 -0
- antfly/client_generated/models/inference_document_token_classification_prediction.py +145 -0
- antfly/client_generated/models/inference_document_token_classification_request.py +105 -0
- antfly/client_generated/models/inference_document_token_classification_response.py +105 -0
- antfly/client_generated/models/inference_document_token_classification_response_object.py +8 -0
- antfly/client_generated/models/inference_document_token_classification_result.py +69 -0
- antfly/client_generated/models/inference_embed_request.py +226 -0
- antfly/client_generated/models/inference_embed_request_encoding_format.py +8 -0
- antfly/client_generated/models/inference_embed_request_input_type.py +13 -0
- antfly/client_generated/models/inference_embed_request_task_type.py +15 -0
- antfly/client_generated/models/inference_embed_response.py +104 -0
- antfly/client_generated/models/inference_embed_response_object.py +8 -0
- antfly/client_generated/models/inference_embedding_object.py +113 -0
- antfly/client_generated/models/inference_embedding_object_object.py +8 -0
- antfly/client_generated/models/inference_embedding_usage.py +70 -0
- antfly/client_generated/models/inference_error.py +61 -0
- antfly/client_generated/models/inference_extract_field_value.py +90 -0
- antfly/client_generated/models/inference_extract_object.py +88 -0
- antfly/client_generated/models/inference_extract_object_object.py +8 -0
- antfly/client_generated/models/inference_extract_object_results.py +80 -0
- antfly/client_generated/models/inference_extract_object_results_additional_property_item.py +47 -0
- antfly/client_generated/models/inference_extract_request.py +179 -0
- antfly/client_generated/models/inference_extract_request_schema.py +62 -0
- antfly/client_generated/models/inference_extract_response.py +103 -0
- antfly/client_generated/models/inference_extract_response_object.py +8 -0
- antfly/client_generated/models/inference_finish_reason.py +12 -0
- antfly/client_generated/models/inference_function_definition.py +107 -0
- antfly/client_generated/models/inference_function_definition_parameters.py +53 -0
- antfly/client_generated/models/inference_generate_choice.py +121 -0
- antfly/client_generated/models/inference_generate_choice_logprobs_type_0.py +47 -0
- antfly/client_generated/models/inference_generate_chunk.py +110 -0
- antfly/client_generated/models/inference_generate_chunk_choice.py +94 -0
- antfly/client_generated/models/inference_generate_chunk_object.py +8 -0
- antfly/client_generated/models/inference_generate_delta.py +117 -0
- antfly/client_generated/models/inference_generate_json_schema_config.py +92 -0
- antfly/client_generated/models/inference_generate_json_schema_config_schema.py +47 -0
- antfly/client_generated/models/inference_generate_message.py +112 -0
- antfly/client_generated/models/inference_generate_request.py +380 -0
- antfly/client_generated/models/inference_generate_request_backend.py +14 -0
- antfly/client_generated/models/inference_generate_request_cache_dtype.py +12 -0
- antfly/client_generated/models/inference_generate_request_compiled_target.py +9 -0
- antfly/client_generated/models/inference_generate_request_mode.py +9 -0
- antfly/client_generated/models/inference_generate_response.py +120 -0
- antfly/client_generated/models/inference_generate_response_format.py +86 -0
- antfly/client_generated/models/inference_generate_response_format_type.py +10 -0
- antfly/client_generated/models/inference_generate_response_object.py +8 -0
- antfly/client_generated/models/inference_generate_usage.py +77 -0
- antfly/client_generated/models/inference_image_url.py +62 -0
- antfly/client_generated/models/inference_image_url_content_part.py +78 -0
- antfly/client_generated/models/inference_image_url_content_part_type.py +8 -0
- antfly/client_generated/models/inference_level.py +11 -0
- antfly/client_generated/models/inference_media_content_part.py +80 -0
- antfly/client_generated/models/inference_media_content_part_type.py +8 -0
- antfly/client_generated/models/inference_model_info.py +76 -0
- antfly/client_generated/models/inference_models_response.py +204 -0
- antfly/client_generated/models/inference_models_response_chunkers.py +60 -0
- antfly/client_generated/models/inference_models_response_classifiers.py +60 -0
- antfly/client_generated/models/inference_models_response_data_item.py +47 -0
- antfly/client_generated/models/inference_models_response_embedders.py +60 -0
- antfly/client_generated/models/inference_models_response_extractors.py +60 -0
- antfly/client_generated/models/inference_models_response_generators.py +60 -0
- antfly/client_generated/models/inference_models_response_object.py +8 -0
- antfly/client_generated/models/inference_models_response_readers.py +60 -0
- antfly/client_generated/models/inference_models_response_recognizers.py +60 -0
- antfly/client_generated/models/inference_models_response_rerankers.py +60 -0
- antfly/client_generated/models/inference_models_response_rewriters.py +60 -0
- antfly/client_generated/models/inference_models_response_transcribers.py +60 -0
- antfly/client_generated/models/inference_read_object.py +130 -0
- antfly/client_generated/models/inference_read_object_object.py +8 -0
- antfly/client_generated/models/inference_read_request.py +113 -0
- antfly/client_generated/models/inference_read_response.py +103 -0
- antfly/client_generated/models/inference_read_response_object.py +8 -0
- antfly/client_generated/models/inference_read_result.py +113 -0
- antfly/client_generated/models/inference_read_result_fields.py +54 -0
- antfly/client_generated/models/inference_recognize_entity.py +93 -0
- antfly/client_generated/models/inference_recognize_object.py +118 -0
- antfly/client_generated/models/inference_recognize_object_object.py +8 -0
- antfly/client_generated/models/inference_recognize_request.py +129 -0
- antfly/client_generated/models/inference_recognize_response.py +103 -0
- antfly/client_generated/models/inference_recognize_response_object.py +8 -0
- antfly/client_generated/models/inference_relation.py +91 -0
- antfly/client_generated/models/inference_rerank_multimodal_document.py +160 -0
- antfly/client_generated/models/inference_rerank_multimodal_request.py +91 -0
- antfly/client_generated/models/inference_rerank_object.py +79 -0
- antfly/client_generated/models/inference_rerank_object_object.py +8 -0
- antfly/client_generated/models/inference_rerank_request.py +79 -0
- antfly/client_generated/models/inference_rerank_response.py +103 -0
- antfly/client_generated/models/inference_rerank_response_object.py +8 -0
- antfly/client_generated/models/inference_resolver_config.py +110 -0
- antfly/client_generated/models/inference_rewrite_object.py +79 -0
- antfly/client_generated/models/inference_rewrite_object_object.py +8 -0
- antfly/client_generated/models/inference_rewrite_request.py +69 -0
- antfly/client_generated/models/inference_rewrite_response.py +103 -0
- antfly/client_generated/models/inference_rewrite_response_object.py +8 -0
- antfly/client_generated/models/inference_role.py +11 -0
- antfly/client_generated/models/inference_sparse_vector.py +70 -0
- antfly/client_generated/models/inference_style.py +11 -0
- antfly/client_generated/models/inference_text_chunk_options.py +82 -0
- antfly/client_generated/models/inference_text_content.py +78 -0
- antfly/client_generated/models/inference_text_content_part.py +72 -0
- antfly/client_generated/models/inference_text_content_part_type.py +8 -0
- antfly/client_generated/models/inference_text_region.py +89 -0
- antfly/client_generated/models/inference_tool.py +78 -0
- antfly/client_generated/models/inference_tool_call_delta.py +110 -0
- antfly/client_generated/models/inference_tool_call_delta_type.py +8 -0
- antfly/client_generated/models/inference_tool_call_function_delta.py +71 -0
- antfly/client_generated/models/inference_tool_choice_type_0.py +10 -0
- antfly/client_generated/models/inference_tool_choice_type_1_function.py +61 -0
- antfly/client_generated/models/inference_tool_choice_type_1_type.py +8 -0
- antfly/client_generated/models/inference_tool_type.py +8 -0
- antfly/client_generated/models/inference_transcribe_object.py +89 -0
- antfly/client_generated/models/inference_transcribe_object_object.py +8 -0
- antfly/client_generated/models/inference_transcribe_request.py +81 -0
- antfly/client_generated/models/inference_transcribe_response.py +103 -0
- antfly/client_generated/models/inference_transcribe_response_object.py +8 -0
- antfly/client_generated/models/inference_vad_options.py +92 -0
- antfly/client_generated/models/inferenceschemas_config.py +88 -0
- antfly/client_generated/models/ip_range_query.py +93 -0
- antfly/client_generated/models/join_condition.py +95 -0
- antfly/client_generated/models/join_operator.py +13 -0
- antfly/client_generated/models/join_profile.py +130 -0
- antfly/client_generated/models/join_strategy.py +10 -0
- antfly/client_generated/models/join_type.py +10 -0
- antfly/client_generated/models/key_range.py +71 -0
- antfly/client_generated/models/linear_merge_page_status.py +10 -0
- antfly/client_generated/models/linear_merge_request.py +150 -0
- antfly/client_generated/models/linear_merge_request_records.py +59 -0
- antfly/client_generated/models/linear_merge_result.py +183 -0
- antfly/client_generated/models/list_users_response_200_item.py +61 -0
- antfly/client_generated/models/lookup_key_response_200.py +47 -0
- antfly/client_generated/models/lsm_storage_status.py +116 -0
- antfly/client_generated/models/match_all_query.py +90 -0
- antfly/client_generated/models/match_all_query_match_all.py +47 -0
- antfly/client_generated/models/match_none_query.py +90 -0
- antfly/client_generated/models/match_none_query_match_none.py +47 -0
- antfly/client_generated/models/match_phrase_query.py +131 -0
- antfly/client_generated/models/match_query.py +157 -0
- antfly/client_generated/models/match_query_operator.py +9 -0
- antfly/client_generated/models/media_content_part.py +80 -0
- antfly/client_generated/models/media_content_part_type.py +8 -0
- antfly/client_generated/models/merge_config.py +118 -0
- antfly/client_generated/models/merge_config_weights.py +54 -0
- antfly/client_generated/models/merge_profile.py +101 -0
- antfly/client_generated/models/merge_strategy.py +10 -0
- antfly/client_generated/models/multi_batch_request.py +104 -0
- antfly/client_generated/models/multi_batch_request_tables.py +67 -0
- antfly/client_generated/models/multi_batch_response.py +75 -0
- antfly/client_generated/models/multi_batch_response_tables.py +60 -0
- antfly/client_generated/models/multi_match_body.py +101 -0
- antfly/client_generated/models/multi_match_body_type.py +8 -0
- antfly/client_generated/models/multi_match_query.py +67 -0
- antfly/client_generated/models/multi_phrase_query.py +131 -0
- antfly/client_generated/models/node_filter.py +84 -0
- antfly/client_generated/models/node_filter_filter_query.py +47 -0
- antfly/client_generated/models/numeric_range_query.py +163 -0
- antfly/client_generated/models/ollama_embedder_config.py +84 -0
- antfly/client_generated/models/ollama_generator_config.py +118 -0
- antfly/client_generated/models/ollama_reranker_config.py +73 -0
- antfly/client_generated/models/open_ai_embedder_config.py +104 -0
- antfly/client_generated/models/open_ai_generator_config.py +127 -0
- antfly/client_generated/models/open_router_embedder_config.py +94 -0
- antfly/client_generated/models/open_router_generator_config.py +128 -0
- antfly/client_generated/models/path.py +108 -0
- antfly/client_generated/models/path_edge.py +110 -0
- antfly/client_generated/models/path_edge_metadata.py +47 -0
- antfly/client_generated/models/path_find_request.py +158 -0
- antfly/client_generated/models/path_find_result.py +135 -0
- antfly/client_generated/models/path_find_weight_mode.py +10 -0
- antfly/client_generated/models/path_weight_mode.py +10 -0
- antfly/client_generated/models/pattern_edge_step.py +120 -0
- antfly/client_generated/models/pattern_match.py +98 -0
- antfly/client_generated/models/pattern_match_bindings.py +60 -0
- antfly/client_generated/models/pattern_step.py +102 -0
- antfly/client_generated/models/permission.py +80 -0
- antfly/client_generated/models/permission_type.py +10 -0
- antfly/client_generated/models/phrase_query.py +122 -0
- antfly/client_generated/models/prefix_query.py +93 -0
- antfly/client_generated/models/prune_stats.py +89 -0
- antfly/client_generated/models/pruner.py +115 -0
- antfly/client_generated/models/query_builder_request.py +250 -0
- antfly/client_generated/models/query_builder_request_constraints.py +53 -0
- antfly/client_generated/models/query_builder_request_example_documents_item.py +47 -0
- antfly/client_generated/models/query_hit.py +124 -0
- antfly/client_generated/models/query_hit_index_scores.py +47 -0
- antfly/client_generated/models/query_hit_source.py +47 -0
- antfly/client_generated/models/query_hits.py +98 -0
- antfly/client_generated/models/query_profile.py +130 -0
- antfly/client_generated/models/query_responses.py +80 -0
- antfly/client_generated/models/query_result.py +187 -0
- antfly/client_generated/models/query_result_aggregations.py +63 -0
- antfly/client_generated/models/query_result_analyses.py +60 -0
- antfly/client_generated/models/query_result_graph_results.py +60 -0
- antfly/client_generated/models/query_strategy.py +11 -0
- antfly/client_generated/models/query_string_query.py +84 -0
- antfly/client_generated/models/regexp_query.py +93 -0
- antfly/client_generated/models/replication_source_action_hint.py +81 -0
- antfly/client_generated/models/replication_source_status.py +225 -0
- antfly/client_generated/models/replication_transform_op.py +87 -0
- antfly/client_generated/models/reranker_config.py +86 -0
- antfly/client_generated/models/reranker_profile.py +80 -0
- antfly/client_generated/models/reranker_provider.py +11 -0
- antfly/client_generated/models/resource_type.py +10 -0
- antfly/client_generated/models/restore_table_response_202.py +61 -0
- antfly/client_generated/models/retrieval_agent_result.py +397 -0
- antfly/client_generated/models/retrieval_agent_steps.py +179 -0
- antfly/client_generated/models/retrieval_agent_usage.py +129 -0
- antfly/client_generated/models/retrieval_strategy.py +13 -0
- antfly/client_generated/models/retry_config.py +89 -0
- antfly/client_generated/models/role_assignment.py +61 -0
- antfly/client_generated/models/route_type.py +9 -0
- antfly/client_generated/models/row_filter_entry.py +77 -0
- antfly/client_generated/models/row_filter_entry_filter.py +52 -0
- antfly/client_generated/models/secret_entry.py +115 -0
- antfly/client_generated/models/secret_list.py +75 -0
- antfly/client_generated/models/secret_status.py +10 -0
- antfly/client_generated/models/secret_store_status.py +62 -0
- antfly/client_generated/models/secret_write_request.py +61 -0
- antfly/client_generated/models/semantic_query_mode.py +9 -0
- antfly/client_generated/models/serper_search_config.py +170 -0
- antfly/client_generated/models/serper_search_config_search_type.py +12 -0
- antfly/client_generated/models/serper_search_config_time_period.py +11 -0
- antfly/client_generated/models/set_row_filter_body.py +47 -0
- antfly/client_generated/models/set_subject_row_filter_body.py +47 -0
- antfly/client_generated/models/shard_config.py +61 -0
- antfly/client_generated/models/shards_profile.py +80 -0
- antfly/client_generated/models/significance_algorithm.py +11 -0
- antfly/client_generated/models/sort_field.py +73 -0
- antfly/client_generated/models/sse_error.py +62 -0
- antfly/client_generated/models/sse_event.py +19 -0
- antfly/client_generated/models/sse_step_completed.py +155 -0
- antfly/client_generated/models/sse_step_completed_details.py +47 -0
- antfly/client_generated/models/sse_step_progress.py +64 -0
- antfly/client_generated/models/sse_step_started.py +98 -0
- antfly/client_generated/models/sse_tool_mode.py +74 -0
- antfly/client_generated/models/sse_tool_mode_mode.py +9 -0
- antfly/client_generated/models/storage_status.py +93 -0
- antfly/client_generated/models/success_message.py +61 -0
- antfly/client_generated/models/sync_level.py +13 -0
- antfly/client_generated/models/table_backup_status.py +81 -0
- antfly/client_generated/models/table_backup_status_status.py +10 -0
- antfly/client_generated/models/table_migration.py +79 -0
- antfly/client_generated/models/table_migration_state.py +8 -0
- antfly/client_generated/models/table_restore_status.py +81 -0
- antfly/client_generated/models/table_restore_status_status.py +10 -0
- antfly/client_generated/models/table_schema.py +150 -0
- antfly/client_generated/models/table_schema_document_schemas.py +60 -0
- antfly/client_generated/models/table_statistics.py +111 -0
- antfly/client_generated/models/table_statistics_field_stats.py +60 -0
- antfly/client_generated/models/tavily_search_config.py +195 -0
- antfly/client_generated/models/tavily_search_config_search_depth.py +9 -0
- antfly/client_generated/models/template_field_mapping.py +116 -0
- antfly/client_generated/models/term_query.py +93 -0
- antfly/client_generated/models/term_range_query.py +163 -0
- antfly/client_generated/models/text_chunk_options.py +82 -0
- antfly/client_generated/models/text_content_part.py +72 -0
- antfly/client_generated/models/text_content_part_type.py +8 -0
- antfly/client_generated/models/tool_call.py +86 -0
- antfly/client_generated/models/tool_call_function.py +70 -0
- antfly/client_generated/models/tool_call_type.py +8 -0
- antfly/client_generated/models/transaction_begin_request.py +76 -0
- antfly/client_generated/models/transaction_begin_response.py +77 -0
- antfly/client_generated/models/transaction_commit_request.py +123 -0
- antfly/client_generated/models/transaction_commit_request_tables.py +60 -0
- antfly/client_generated/models/transaction_commit_response.py +107 -0
- antfly/client_generated/models/transaction_commit_response_conflict.py +80 -0
- antfly/client_generated/models/transaction_commit_response_status.py +9 -0
- antfly/client_generated/models/transaction_commit_response_tables.py +60 -0
- antfly/client_generated/models/transaction_read_item.py +80 -0
- antfly/client_generated/models/transaction_savepoint_response.py +77 -0
- antfly/client_generated/models/transaction_session_cleanup_response.py +70 -0
- antfly/client_generated/models/transaction_session_commit_response.py +114 -0
- antfly/client_generated/models/transaction_session_details_response.py +268 -0
- antfly/client_generated/models/transaction_session_list_response.py +106 -0
- antfly/client_generated/models/transaction_session_read_snapshot.py +88 -0
- antfly/client_generated/models/transaction_session_status.py +207 -0
- antfly/client_generated/models/transaction_session_table_detail.py +97 -0
- antfly/client_generated/models/transaction_stage_delete_request.py +69 -0
- antfly/client_generated/models/transaction_stage_read_request.py +77 -0
- antfly/client_generated/models/transaction_stage_read_response.py +83 -0
- antfly/client_generated/models/transaction_stage_read_snapshot.py +85 -0
- antfly/client_generated/models/transaction_stage_write_request.py +83 -0
- antfly/client_generated/models/transaction_stage_write_request_document.py +47 -0
- antfly/client_generated/models/transaction_status_response.py +69 -0
- antfly/client_generated/models/transform.py +104 -0
- antfly/client_generated/models/transform_op.py +82 -0
- antfly/client_generated/models/transform_op_type.py +19 -0
- antfly/client_generated/models/traversal_result.py +137 -0
- antfly/client_generated/models/traversal_result_document.py +47 -0
- antfly/client_generated/models/traversal_rules.py +138 -0
- antfly/client_generated/models/traverse_response.py +88 -0
- antfly/client_generated/models/tree_search_config.py +97 -0
- antfly/client_generated/models/update_password_request.py +61 -0
- antfly/client_generated/models/user.py +110 -0
- antfly/client_generated/models/user_metadata_type_0.py +52 -0
- antfly/client_generated/models/vertex_embedder_config.py +115 -0
- antfly/client_generated/models/vertex_generator_config.py +127 -0
- antfly/client_generated/models/vertex_reranker_config.py +108 -0
- antfly/client_generated/models/web_search_config.py +127 -0
- antfly/client_generated/models/web_search_provider.py +13 -0
- antfly/client_generated/models/wildcard_query.py +93 -0
- antfly/client_generated/py.typed +1 -0
- antfly/client_generated/types.py +54 -0
- antfly/exceptions.py +19 -0
- antfly/pyproject.toml +26 -0
- antfly_sdk-0.0.2.dev2.dist-info/METADATA +153 -0
- antfly_sdk-0.0.2.dev2.dist-info/RECORD +640 -0
- antfly_sdk-0.0.2.dev2.dist-info/WHEEL +4 -0
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from collections.abc import Mapping
|
|
4
|
+
from typing import TYPE_CHECKING, Any, TypeVar
|
|
5
|
+
|
|
6
|
+
from attrs import define as _attrs_define
|
|
7
|
+
from attrs import field as _attrs_field
|
|
8
|
+
|
|
9
|
+
from ..models.distance_metric import DistanceMetric
|
|
10
|
+
from ..types import UNSET, Unset
|
|
11
|
+
|
|
12
|
+
if TYPE_CHECKING:
|
|
13
|
+
from ..models.chunker_config import ChunkerConfig
|
|
14
|
+
from ..models.embedder_config import EmbedderConfig
|
|
15
|
+
from ..models.generator_config import GeneratorConfig
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
T = TypeVar("T", bound="EmbeddingsIndexConfig")
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
@_attrs_define
|
|
22
|
+
class EmbeddingsIndexConfig:
|
|
23
|
+
r"""Unified configuration for embeddings indexes. When sparse is true, creates a sparse vector index (SPLADE inverted
|
|
24
|
+
index). When sparse is false (default), creates a dense vector index (HNSW). For dense indexes, dimension can be
|
|
25
|
+
omitted if an embedder is configured — it will be auto-detected.
|
|
26
|
+
|
|
27
|
+
Attributes:
|
|
28
|
+
external (bool | Unset): When true, embeddings are supplied externally via _embeddings and the index does not
|
|
29
|
+
derive prompts from a field or template. Default: False.
|
|
30
|
+
sparse (bool | Unset): When true, creates a sparse (SPLADE) inverted index. When false (default), creates a
|
|
31
|
+
dense (HNSW) vector index. Default: False.
|
|
32
|
+
dimension (int | Unset): Vector dimension for dense indexes. Required for external dense indexes. Can be omitted
|
|
33
|
+
for managed dense indexes when an embedder is configured (auto-detected via probe). Ignored for sparse indexes.
|
|
34
|
+
field (str | Unset): Field to extract embeddings from (managed indexes only; not allowed when external=true)
|
|
35
|
+
template (str | Unset): Handlebars template for generating prompts (managed indexes only; not allowed when
|
|
36
|
+
external=true). See https://handlebarsjs.com/guide/ for more information. Example: Hello, {{#if (eq Name
|
|
37
|
+
"John")}}Johnathan{{else}}{{Name}}{{/if}}! You are {{Age}} years old..
|
|
38
|
+
distance_metric (DistanceMetric | Unset): Distance metric for the vector index (dense only). Use "cosine" for
|
|
39
|
+
models trained with cosine similarity (e.g. CLIP, OpenAI). Use "inner_product" for models trained with dot
|
|
40
|
+
product similarity. Use "l2_squared" (default) for models trained with Euclidean distance.
|
|
41
|
+
mem_only (bool | Unset): Whether to use in-memory only storage (dense only)
|
|
42
|
+
embedder (EmbedderConfig | Unset): A unified configuration for an embedding provider.
|
|
43
|
+
|
|
44
|
+
Embedders can be configured with templates to customize how documents are
|
|
45
|
+
converted to text before embedding. Templates use Handlebars syntax and
|
|
46
|
+
support various built-in helpers.
|
|
47
|
+
|
|
48
|
+
**Template System:**
|
|
49
|
+
- **Syntax**: Handlebars templating (https://handlebarsjs.com/guide/)
|
|
50
|
+
- **Caching**: Templates are automatically cached with configurable TTL (default: 5 minutes)
|
|
51
|
+
- **Context**: Templates receive the full document as context
|
|
52
|
+
|
|
53
|
+
**Built-in Helpers:**
|
|
54
|
+
|
|
55
|
+
1. **scrubHtml** - Remove script/style tags and extract clean text from HTML
|
|
56
|
+
```handlebars
|
|
57
|
+
{{scrubHtml html_content}}
|
|
58
|
+
```
|
|
59
|
+
- Removes `<script>` and `<style>` tags
|
|
60
|
+
- Adds newlines after block elements (p, div, h1-h6, li, etc.)
|
|
61
|
+
- Returns plain text with preserved readability
|
|
62
|
+
|
|
63
|
+
2. **eq** - Equality comparison for conditionals
|
|
64
|
+
```handlebars
|
|
65
|
+
{{#if (eq status "active")}}Active user{{/if}}
|
|
66
|
+
{{#if (eq @key "special")}}Special field{{/if}}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
3. **media** - GenKit dotprompt media directive for multimodal content
|
|
70
|
+
```handlebars
|
|
71
|
+
{{media url=imageDataURI}}
|
|
72
|
+
{{media url=this.image_url}}
|
|
73
|
+
{{media url="https://example.com/image.jpg"}}
|
|
74
|
+
{{media url="s3://endpoint/bucket/image.png"}}
|
|
75
|
+
{{media url="file:///path/to/image.jpg"}}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
**Supported URL Schemes:**
|
|
79
|
+
- `data:` - Base64 encoded data URIs (e.g., `data:image/jpeg;base64,...`)
|
|
80
|
+
- `http://` / `https://` - Web URLs with automatic content type detection
|
|
81
|
+
- `file://` - Local filesystem paths
|
|
82
|
+
- `s3://` - S3-compatible storage (format: `s3://endpoint/bucket/key`)
|
|
83
|
+
|
|
84
|
+
**Automatic Content Processing:**
|
|
85
|
+
- **Images**: Downloaded, resized (if needed), converted to data URIs
|
|
86
|
+
- **PDFs**: Text extracted or first page rendered as image
|
|
87
|
+
- **HTML**: Readable text extracted using Mozilla Readability
|
|
88
|
+
|
|
89
|
+
**Security Controls:**
|
|
90
|
+
Downloads are protected by content security settings (see Configuration Reference):
|
|
91
|
+
- Allowed host whitelist
|
|
92
|
+
- Private IP blocking (prevents SSRF attacks)
|
|
93
|
+
- Download size limits (default: 100MB)
|
|
94
|
+
- Download timeouts (default: 30s)
|
|
95
|
+
- Image dimension limits (default: 2048px, auto-resized)
|
|
96
|
+
|
|
97
|
+
See: https://antfly.io/docs/configuration#security--cors
|
|
98
|
+
|
|
99
|
+
4. **encodeToon** - Encode data in TOON format (Token-Oriented Object Notation)
|
|
100
|
+
```handlebars
|
|
101
|
+
{{encodeToon this.fields}}
|
|
102
|
+
{{encodeToon this.fields lengthMarker=false indent=4}}
|
|
103
|
+
{{encodeToon this.fields delimiter="\t"}}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**What is TOON?**
|
|
107
|
+
TOON is a compact, human-readable format designed for passing structured data to LLMs.
|
|
108
|
+
It provides **30-60% token reduction** compared to JSON while maintaining high LLM
|
|
109
|
+
comprehension accuracy.
|
|
110
|
+
|
|
111
|
+
**Key Features:**
|
|
112
|
+
- Compact syntax using `:` for key-value pairs
|
|
113
|
+
- Array length markers: `tags[#3]: ai,search,ml`
|
|
114
|
+
- Tabular format for uniform data structures
|
|
115
|
+
- Optimized for LLM parsing and understanding
|
|
116
|
+
- Maintains human readability
|
|
117
|
+
|
|
118
|
+
**Benefits:**
|
|
119
|
+
- **Lower API costs** - Reduced token usage means lower LLM API costs
|
|
120
|
+
- **Faster responses** - Less tokens to process
|
|
121
|
+
- **More context** - Fit more documents within token limits
|
|
122
|
+
|
|
123
|
+
**Options:**
|
|
124
|
+
- `lengthMarker` (bool): Add # prefix to array counts like `[#3]` (default: true)
|
|
125
|
+
- `indent` (int): Indentation spacing for nested objects (default: 2)
|
|
126
|
+
- `delimiter` (string): Field separator for tabular arrays (default: none, use `"\t"` for tabs)
|
|
127
|
+
|
|
128
|
+
**Example output:**
|
|
129
|
+
```
|
|
130
|
+
title: Introduction to Vector Search
|
|
131
|
+
author: Jane Doe
|
|
132
|
+
tags[#3]: ai,search,ml
|
|
133
|
+
metadata:
|
|
134
|
+
edition: 2
|
|
135
|
+
pages: 450
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
**Default in RAG:** TOON is the default format for document rendering in RAG queries.
|
|
139
|
+
|
|
140
|
+
**References:**
|
|
141
|
+
- TOON Specification: https://github.com/toon-format/toon
|
|
142
|
+
- Go Implementation: https://github.com/alpkeskin/gotoon
|
|
143
|
+
|
|
144
|
+
**Template Examples:**
|
|
145
|
+
|
|
146
|
+
Document with metadata:
|
|
147
|
+
```handlebars
|
|
148
|
+
Title: {{metadata.title}}
|
|
149
|
+
Date: {{metadata.date}}
|
|
150
|
+
Tags: {{#each metadata.tags}}{{this}}, {{/each}}
|
|
151
|
+
|
|
152
|
+
{{content}}
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
HTML content extraction:
|
|
156
|
+
```handlebars
|
|
157
|
+
Product: {{name}}
|
|
158
|
+
Description: {{scrubHtml description_html}}
|
|
159
|
+
Price: ${{price}}
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
Multimodal with image:
|
|
163
|
+
```handlebars
|
|
164
|
+
Product: {{title}}
|
|
165
|
+
{{media url=image}}
|
|
166
|
+
Description: {{description}}
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
Conditional formatting:
|
|
170
|
+
```handlebars
|
|
171
|
+
{{title}}
|
|
172
|
+
{{#if author}}By: {{author}}{{/if}}
|
|
173
|
+
{{#if (eq category "premium")}}⭐ Premium Content{{/if}}
|
|
174
|
+
{{body}}
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
**Environment Variables:**
|
|
178
|
+
- `GEMINI_API_KEY` - API key for Google AI
|
|
179
|
+
- `OPENAI_API_KEY` - API key for OpenAI
|
|
180
|
+
- `OPENAI_BASE_URL` - Base URL for OpenAI-compatible APIs
|
|
181
|
+
- `OLLAMA_HOST` - Ollama server URL (e.g., http://localhost:11434)
|
|
182
|
+
|
|
183
|
+
**Importing Pre-computed Embeddings:**
|
|
184
|
+
|
|
185
|
+
You can import existing embeddings (from OpenAI, Cohere, or any provider), but only
|
|
186
|
+
for indexes configured with `external: true`. External indexes accept vectors written
|
|
187
|
+
directly through the document `_embeddings` field and do not generate prompts from
|
|
188
|
+
`field` or `template`.
|
|
189
|
+
|
|
190
|
+
**Steps:**
|
|
191
|
+
1. Create an embeddings index with `external: true`
|
|
192
|
+
2. For dense indexes, set the index `dimension`
|
|
193
|
+
3. Write documents with `_embeddings: { "<indexName>": [...<embedding>...] }`
|
|
194
|
+
|
|
195
|
+
**Example:**
|
|
196
|
+
```json
|
|
197
|
+
{
|
|
198
|
+
"title": "My Document",
|
|
199
|
+
"content": "Document text...",
|
|
200
|
+
"_embeddings": {
|
|
201
|
+
"my_vector_index": [0.1, 0.2, 0.3, ...]
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
**Delete Behavior:**
|
|
207
|
+
- Use `"_embeddings": { "<indexName>": null }` to delete a stored external vector
|
|
208
|
+
- Omitting `_embeddings[<indexName>]` leaves the existing vector unchanged
|
|
209
|
+
|
|
210
|
+
**Use Cases:**
|
|
211
|
+
- Migrating from another vector database with existing embeddings
|
|
212
|
+
- Using embeddings generated by external systems
|
|
213
|
+
- Importing pre-computed OpenAI, Cohere, or other provider embeddings
|
|
214
|
+
- Batch processing embeddings offline before ingestion Example: {'provider': 'openai', 'model': 'text-
|
|
215
|
+
embedding-3-small'}.
|
|
216
|
+
summarizer (GeneratorConfig | Unset): A unified configuration for a generative AI provider.
|
|
217
|
+
Example: {'provider': 'openai', 'model': 'gpt-4.1', 'temperature': 0.7, 'max_tokens': 2048}.
|
|
218
|
+
chunker (ChunkerConfig | Unset): A unified configuration for a chunking provider. Example: {'provider':
|
|
219
|
+
'antfly', 'model': 'fixed', 'text': {'target_tokens': 500, 'overlap_tokens': 50}}.
|
|
220
|
+
top_k (int | Unset): Default number of results to return from search (sparse only) Default: 10.
|
|
221
|
+
min_weight (float | Unset): Minimum weight threshold for sparse vector entries (sparse only) Default: 0.0.
|
|
222
|
+
chunk_size (int | Unset): Number of documents per posting list chunk (sparse only) Default: 1024.
|
|
223
|
+
"""
|
|
224
|
+
|
|
225
|
+
external: bool | Unset = False
|
|
226
|
+
sparse: bool | Unset = False
|
|
227
|
+
dimension: int | Unset = UNSET
|
|
228
|
+
field: str | Unset = UNSET
|
|
229
|
+
template: str | Unset = UNSET
|
|
230
|
+
distance_metric: DistanceMetric | Unset = UNSET
|
|
231
|
+
mem_only: bool | Unset = UNSET
|
|
232
|
+
embedder: EmbedderConfig | Unset = UNSET
|
|
233
|
+
summarizer: GeneratorConfig | Unset = UNSET
|
|
234
|
+
chunker: ChunkerConfig | Unset = UNSET
|
|
235
|
+
top_k: int | Unset = 10
|
|
236
|
+
min_weight: float | Unset = 0.0
|
|
237
|
+
chunk_size: int | Unset = 1024
|
|
238
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
239
|
+
|
|
240
|
+
def to_dict(self) -> dict[str, Any]:
|
|
241
|
+
external = self.external
|
|
242
|
+
|
|
243
|
+
sparse = self.sparse
|
|
244
|
+
|
|
245
|
+
dimension = self.dimension
|
|
246
|
+
|
|
247
|
+
field = self.field
|
|
248
|
+
|
|
249
|
+
template = self.template
|
|
250
|
+
|
|
251
|
+
distance_metric: str | Unset = UNSET
|
|
252
|
+
if not isinstance(self.distance_metric, Unset):
|
|
253
|
+
distance_metric = self.distance_metric.value
|
|
254
|
+
|
|
255
|
+
mem_only = self.mem_only
|
|
256
|
+
|
|
257
|
+
embedder: dict[str, Any] | Unset = UNSET
|
|
258
|
+
if not isinstance(self.embedder, Unset):
|
|
259
|
+
embedder = self.embedder.to_dict()
|
|
260
|
+
|
|
261
|
+
summarizer: dict[str, Any] | Unset = UNSET
|
|
262
|
+
if not isinstance(self.summarizer, Unset):
|
|
263
|
+
summarizer = self.summarizer.to_dict()
|
|
264
|
+
|
|
265
|
+
chunker: dict[str, Any] | Unset = UNSET
|
|
266
|
+
if not isinstance(self.chunker, Unset):
|
|
267
|
+
chunker = self.chunker.to_dict()
|
|
268
|
+
|
|
269
|
+
top_k = self.top_k
|
|
270
|
+
|
|
271
|
+
min_weight = self.min_weight
|
|
272
|
+
|
|
273
|
+
chunk_size = self.chunk_size
|
|
274
|
+
|
|
275
|
+
field_dict: dict[str, Any] = {}
|
|
276
|
+
field_dict.update(self.additional_properties)
|
|
277
|
+
field_dict.update({})
|
|
278
|
+
if external is not UNSET:
|
|
279
|
+
field_dict["external"] = external
|
|
280
|
+
if sparse is not UNSET:
|
|
281
|
+
field_dict["sparse"] = sparse
|
|
282
|
+
if dimension is not UNSET:
|
|
283
|
+
field_dict["dimension"] = dimension
|
|
284
|
+
if field is not UNSET:
|
|
285
|
+
field_dict["field"] = field
|
|
286
|
+
if template is not UNSET:
|
|
287
|
+
field_dict["template"] = template
|
|
288
|
+
if distance_metric is not UNSET:
|
|
289
|
+
field_dict["distance_metric"] = distance_metric
|
|
290
|
+
if mem_only is not UNSET:
|
|
291
|
+
field_dict["mem_only"] = mem_only
|
|
292
|
+
if embedder is not UNSET:
|
|
293
|
+
field_dict["embedder"] = embedder
|
|
294
|
+
if summarizer is not UNSET:
|
|
295
|
+
field_dict["summarizer"] = summarizer
|
|
296
|
+
if chunker is not UNSET:
|
|
297
|
+
field_dict["chunker"] = chunker
|
|
298
|
+
if top_k is not UNSET:
|
|
299
|
+
field_dict["top_k"] = top_k
|
|
300
|
+
if min_weight is not UNSET:
|
|
301
|
+
field_dict["min_weight"] = min_weight
|
|
302
|
+
if chunk_size is not UNSET:
|
|
303
|
+
field_dict["chunk_size"] = chunk_size
|
|
304
|
+
|
|
305
|
+
return field_dict
|
|
306
|
+
|
|
307
|
+
@classmethod
|
|
308
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
309
|
+
from ..models.chunker_config import ChunkerConfig
|
|
310
|
+
from ..models.embedder_config import EmbedderConfig
|
|
311
|
+
from ..models.generator_config import GeneratorConfig
|
|
312
|
+
|
|
313
|
+
d = dict(src_dict)
|
|
314
|
+
external = d.pop("external", UNSET)
|
|
315
|
+
|
|
316
|
+
sparse = d.pop("sparse", UNSET)
|
|
317
|
+
|
|
318
|
+
dimension = d.pop("dimension", UNSET)
|
|
319
|
+
|
|
320
|
+
field = d.pop("field", UNSET)
|
|
321
|
+
|
|
322
|
+
template = d.pop("template", UNSET)
|
|
323
|
+
|
|
324
|
+
_distance_metric = d.pop("distance_metric", UNSET)
|
|
325
|
+
distance_metric: DistanceMetric | Unset
|
|
326
|
+
if isinstance(_distance_metric, Unset):
|
|
327
|
+
distance_metric = UNSET
|
|
328
|
+
else:
|
|
329
|
+
distance_metric = DistanceMetric(_distance_metric)
|
|
330
|
+
|
|
331
|
+
mem_only = d.pop("mem_only", UNSET)
|
|
332
|
+
|
|
333
|
+
_embedder = d.pop("embedder", UNSET)
|
|
334
|
+
embedder: EmbedderConfig | Unset
|
|
335
|
+
if isinstance(_embedder, Unset):
|
|
336
|
+
embedder = UNSET
|
|
337
|
+
else:
|
|
338
|
+
embedder = EmbedderConfig.from_dict(_embedder)
|
|
339
|
+
|
|
340
|
+
_summarizer = d.pop("summarizer", UNSET)
|
|
341
|
+
summarizer: GeneratorConfig | Unset
|
|
342
|
+
if isinstance(_summarizer, Unset):
|
|
343
|
+
summarizer = UNSET
|
|
344
|
+
else:
|
|
345
|
+
summarizer = GeneratorConfig.from_dict(_summarizer)
|
|
346
|
+
|
|
347
|
+
_chunker = d.pop("chunker", UNSET)
|
|
348
|
+
chunker: ChunkerConfig | Unset
|
|
349
|
+
if isinstance(_chunker, Unset):
|
|
350
|
+
chunker = UNSET
|
|
351
|
+
else:
|
|
352
|
+
chunker = ChunkerConfig.from_dict(_chunker)
|
|
353
|
+
|
|
354
|
+
top_k = d.pop("top_k", UNSET)
|
|
355
|
+
|
|
356
|
+
min_weight = d.pop("min_weight", UNSET)
|
|
357
|
+
|
|
358
|
+
chunk_size = d.pop("chunk_size", UNSET)
|
|
359
|
+
|
|
360
|
+
embeddings_index_config = cls(
|
|
361
|
+
external=external,
|
|
362
|
+
sparse=sparse,
|
|
363
|
+
dimension=dimension,
|
|
364
|
+
field=field,
|
|
365
|
+
template=template,
|
|
366
|
+
distance_metric=distance_metric,
|
|
367
|
+
mem_only=mem_only,
|
|
368
|
+
embedder=embedder,
|
|
369
|
+
summarizer=summarizer,
|
|
370
|
+
chunker=chunker,
|
|
371
|
+
top_k=top_k,
|
|
372
|
+
min_weight=min_weight,
|
|
373
|
+
chunk_size=chunk_size,
|
|
374
|
+
)
|
|
375
|
+
|
|
376
|
+
embeddings_index_config.additional_properties = d
|
|
377
|
+
return embeddings_index_config
|
|
378
|
+
|
|
379
|
+
@property
|
|
380
|
+
def additional_keys(self) -> list[str]:
|
|
381
|
+
return list(self.additional_properties.keys())
|
|
382
|
+
|
|
383
|
+
def __getitem__(self, key: str) -> Any:
|
|
384
|
+
return self.additional_properties[key]
|
|
385
|
+
|
|
386
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
387
|
+
self.additional_properties[key] = value
|
|
388
|
+
|
|
389
|
+
def __delitem__(self, key: str) -> None:
|
|
390
|
+
del self.additional_properties[key]
|
|
391
|
+
|
|
392
|
+
def __contains__(self, key: str) -> bool:
|
|
393
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from collections.abc import Mapping
|
|
4
|
+
from typing import Any, TypeVar
|
|
5
|
+
|
|
6
|
+
from attrs import define as _attrs_define
|
|
7
|
+
from attrs import field as _attrs_field
|
|
8
|
+
|
|
9
|
+
from ..models.embeddings_index_stats_index_type import EmbeddingsIndexStatsIndexType
|
|
10
|
+
from ..types import UNSET, Unset
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="EmbeddingsIndexStats")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class EmbeddingsIndexStats:
|
|
17
|
+
"""Statistics for an embeddings index (dense or sparse)
|
|
18
|
+
|
|
19
|
+
Attributes:
|
|
20
|
+
index_type (EmbeddingsIndexStatsIndexType): Discriminator for the index stats variant.
|
|
21
|
+
error (str | Unset): Error message if stats could not be retrieved
|
|
22
|
+
total_indexed (int | Unset): Number of vectors/documents in the index
|
|
23
|
+
disk_usage (int | Unset): Size of the index in bytes
|
|
24
|
+
total_nodes (int | Unset): Total number of nodes in the index (dense only)
|
|
25
|
+
total_terms (int | Unset): Number of unique terms in the inverted index (sparse only)
|
|
26
|
+
rebuilding (bool | Unset): Whether the index enricher is currently backfilling
|
|
27
|
+
wal_backlog (int | Unset): Number of documents pending enrichment in the WAL
|
|
28
|
+
backfill_progress (float | Unset): Backfill progress as a ratio from 0.0 to 1.0
|
|
29
|
+
backfill_items_processed (int | Unset): Total items processed during backfill
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
index_type: EmbeddingsIndexStatsIndexType
|
|
33
|
+
error: str | Unset = UNSET
|
|
34
|
+
total_indexed: int | Unset = UNSET
|
|
35
|
+
disk_usage: int | Unset = UNSET
|
|
36
|
+
total_nodes: int | Unset = UNSET
|
|
37
|
+
total_terms: int | Unset = UNSET
|
|
38
|
+
rebuilding: bool | Unset = UNSET
|
|
39
|
+
wal_backlog: int | Unset = UNSET
|
|
40
|
+
backfill_progress: float | Unset = UNSET
|
|
41
|
+
backfill_items_processed: int | Unset = UNSET
|
|
42
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
43
|
+
|
|
44
|
+
def to_dict(self) -> dict[str, Any]:
|
|
45
|
+
index_type = self.index_type.value
|
|
46
|
+
|
|
47
|
+
error = self.error
|
|
48
|
+
|
|
49
|
+
total_indexed = self.total_indexed
|
|
50
|
+
|
|
51
|
+
disk_usage = self.disk_usage
|
|
52
|
+
|
|
53
|
+
total_nodes = self.total_nodes
|
|
54
|
+
|
|
55
|
+
total_terms = self.total_terms
|
|
56
|
+
|
|
57
|
+
rebuilding = self.rebuilding
|
|
58
|
+
|
|
59
|
+
wal_backlog = self.wal_backlog
|
|
60
|
+
|
|
61
|
+
backfill_progress = self.backfill_progress
|
|
62
|
+
|
|
63
|
+
backfill_items_processed = self.backfill_items_processed
|
|
64
|
+
|
|
65
|
+
field_dict: dict[str, Any] = {}
|
|
66
|
+
field_dict.update(self.additional_properties)
|
|
67
|
+
field_dict.update(
|
|
68
|
+
{
|
|
69
|
+
"index_type": index_type,
|
|
70
|
+
}
|
|
71
|
+
)
|
|
72
|
+
if error is not UNSET:
|
|
73
|
+
field_dict["error"] = error
|
|
74
|
+
if total_indexed is not UNSET:
|
|
75
|
+
field_dict["total_indexed"] = total_indexed
|
|
76
|
+
if disk_usage is not UNSET:
|
|
77
|
+
field_dict["disk_usage"] = disk_usage
|
|
78
|
+
if total_nodes is not UNSET:
|
|
79
|
+
field_dict["total_nodes"] = total_nodes
|
|
80
|
+
if total_terms is not UNSET:
|
|
81
|
+
field_dict["total_terms"] = total_terms
|
|
82
|
+
if rebuilding is not UNSET:
|
|
83
|
+
field_dict["rebuilding"] = rebuilding
|
|
84
|
+
if wal_backlog is not UNSET:
|
|
85
|
+
field_dict["wal_backlog"] = wal_backlog
|
|
86
|
+
if backfill_progress is not UNSET:
|
|
87
|
+
field_dict["backfill_progress"] = backfill_progress
|
|
88
|
+
if backfill_items_processed is not UNSET:
|
|
89
|
+
field_dict["backfill_items_processed"] = backfill_items_processed
|
|
90
|
+
|
|
91
|
+
return field_dict
|
|
92
|
+
|
|
93
|
+
@classmethod
|
|
94
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
95
|
+
d = dict(src_dict)
|
|
96
|
+
index_type = EmbeddingsIndexStatsIndexType(d.pop("index_type"))
|
|
97
|
+
|
|
98
|
+
error = d.pop("error", UNSET)
|
|
99
|
+
|
|
100
|
+
total_indexed = d.pop("total_indexed", UNSET)
|
|
101
|
+
|
|
102
|
+
disk_usage = d.pop("disk_usage", UNSET)
|
|
103
|
+
|
|
104
|
+
total_nodes = d.pop("total_nodes", UNSET)
|
|
105
|
+
|
|
106
|
+
total_terms = d.pop("total_terms", UNSET)
|
|
107
|
+
|
|
108
|
+
rebuilding = d.pop("rebuilding", UNSET)
|
|
109
|
+
|
|
110
|
+
wal_backlog = d.pop("wal_backlog", UNSET)
|
|
111
|
+
|
|
112
|
+
backfill_progress = d.pop("backfill_progress", UNSET)
|
|
113
|
+
|
|
114
|
+
backfill_items_processed = d.pop("backfill_items_processed", UNSET)
|
|
115
|
+
|
|
116
|
+
embeddings_index_stats = cls(
|
|
117
|
+
index_type=index_type,
|
|
118
|
+
error=error,
|
|
119
|
+
total_indexed=total_indexed,
|
|
120
|
+
disk_usage=disk_usage,
|
|
121
|
+
total_nodes=total_nodes,
|
|
122
|
+
total_terms=total_terms,
|
|
123
|
+
rebuilding=rebuilding,
|
|
124
|
+
wal_backlog=wal_backlog,
|
|
125
|
+
backfill_progress=backfill_progress,
|
|
126
|
+
backfill_items_processed=backfill_items_processed,
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
embeddings_index_stats.additional_properties = d
|
|
130
|
+
return embeddings_index_stats
|
|
131
|
+
|
|
132
|
+
@property
|
|
133
|
+
def additional_keys(self) -> list[str]:
|
|
134
|
+
return list(self.additional_properties.keys())
|
|
135
|
+
|
|
136
|
+
def __getitem__(self, key: str) -> Any:
|
|
137
|
+
return self.additional_properties[key]
|
|
138
|
+
|
|
139
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
140
|
+
self.additional_properties[key] = value
|
|
141
|
+
|
|
142
|
+
def __delitem__(self, key: str) -> None:
|
|
143
|
+
del self.additional_properties[key]
|
|
144
|
+
|
|
145
|
+
def __contains__(self, key: str) -> bool:
|
|
146
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from collections.abc import Mapping
|
|
4
|
+
from typing import Any, TypeVar
|
|
5
|
+
|
|
6
|
+
from attrs import define as _attrs_define
|
|
7
|
+
from attrs import field as _attrs_field
|
|
8
|
+
|
|
9
|
+
T = TypeVar("T", bound="Error")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@_attrs_define
|
|
13
|
+
class Error:
|
|
14
|
+
"""
|
|
15
|
+
Attributes:
|
|
16
|
+
error (str): Example: An error message.
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
error: str
|
|
20
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
21
|
+
|
|
22
|
+
def to_dict(self) -> dict[str, Any]:
|
|
23
|
+
error = self.error
|
|
24
|
+
|
|
25
|
+
field_dict: dict[str, Any] = {}
|
|
26
|
+
field_dict.update(self.additional_properties)
|
|
27
|
+
field_dict.update(
|
|
28
|
+
{
|
|
29
|
+
"error": error,
|
|
30
|
+
}
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
return field_dict
|
|
34
|
+
|
|
35
|
+
@classmethod
|
|
36
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
37
|
+
d = dict(src_dict)
|
|
38
|
+
error = d.pop("error")
|
|
39
|
+
|
|
40
|
+
error = cls(
|
|
41
|
+
error=error,
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
error.additional_properties = d
|
|
45
|
+
return error
|
|
46
|
+
|
|
47
|
+
@property
|
|
48
|
+
def additional_keys(self) -> list[str]:
|
|
49
|
+
return list(self.additional_properties.keys())
|
|
50
|
+
|
|
51
|
+
def __getitem__(self, key: str) -> Any:
|
|
52
|
+
return self.additional_properties[key]
|
|
53
|
+
|
|
54
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
55
|
+
self.additional_properties[key] = value
|
|
56
|
+
|
|
57
|
+
def __delitem__(self, key: str) -> None:
|
|
58
|
+
del self.additional_properties[key]
|
|
59
|
+
|
|
60
|
+
def __contains__(self, key: str) -> bool:
|
|
61
|
+
return key in self.additional_properties
|