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,157 @@
|
|
|
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.chat_tool_name import ChatToolName
|
|
10
|
+
from ..types import UNSET, Unset
|
|
11
|
+
|
|
12
|
+
if TYPE_CHECKING:
|
|
13
|
+
from ..models.fetch_config import FetchConfig
|
|
14
|
+
from ..models.web_search_config import WebSearchConfig
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
T = TypeVar("T", bound="ChatToolsConfig")
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
@_attrs_define
|
|
21
|
+
class ChatToolsConfig:
|
|
22
|
+
"""Configuration for chat agent tools.
|
|
23
|
+
|
|
24
|
+
If `enabled_tools` is empty/omitted, defaults to: add_filter, ask_clarification, search.
|
|
25
|
+
|
|
26
|
+
For models that don't support native tool calling (e.g., Ollama),
|
|
27
|
+
a prompt-based fallback is used with structured output parsing.
|
|
28
|
+
|
|
29
|
+
Attributes:
|
|
30
|
+
enabled_tools (list[ChatToolName] | Unset): List of tools to enable. If empty, defaults to filter,
|
|
31
|
+
clarification, and search.
|
|
32
|
+
Example: ['add_filter', 'search', 'websearch'].
|
|
33
|
+
websearch_config (WebSearchConfig | Unset): A unified configuration for web search providers.
|
|
34
|
+
|
|
35
|
+
Each provider has specific configuration requirements. Use the appropriate
|
|
36
|
+
provider-specific config or set common options at the top level.
|
|
37
|
+
|
|
38
|
+
**Environment Variables (fallbacks):**
|
|
39
|
+
- GOOGLE_CSE_API_KEY, GOOGLE_CSE_ID
|
|
40
|
+
- BING_SEARCH_API_KEY
|
|
41
|
+
- SERPER_API_KEY
|
|
42
|
+
- TAVILY_API_KEY
|
|
43
|
+
- BRAVE_API_KEY
|
|
44
|
+
fetch_config (FetchConfig | Unset): Configuration for URL content fetching.
|
|
45
|
+
|
|
46
|
+
Uses go/pkg/antfly/lib/scraping for downloading and processing. Supports:
|
|
47
|
+
- HTTP/HTTPS URLs with security validation
|
|
48
|
+
- HTML pages (extracts readable text via go-readability)
|
|
49
|
+
- PDF files (extracts text)
|
|
50
|
+
- Images (returns as data URIs)
|
|
51
|
+
- Plain text files
|
|
52
|
+
- S3 URLs (requires s3_credentials)
|
|
53
|
+
|
|
54
|
+
Security features (from go/pkg/antfly/lib/scraping.ContentSecurityConfig):
|
|
55
|
+
- Allowed host whitelist
|
|
56
|
+
- Private IP blocking (SSRF prevention)
|
|
57
|
+
- Download size limits
|
|
58
|
+
- Timeout controls
|
|
59
|
+
max_tool_iterations (int | Unset): Maximum number of tool call iterations per turn.
|
|
60
|
+
Prevents infinite loops in tool execution.
|
|
61
|
+
Default: 5.
|
|
62
|
+
"""
|
|
63
|
+
|
|
64
|
+
enabled_tools: list[ChatToolName] | Unset = UNSET
|
|
65
|
+
websearch_config: WebSearchConfig | Unset = UNSET
|
|
66
|
+
fetch_config: FetchConfig | Unset = UNSET
|
|
67
|
+
max_tool_iterations: int | Unset = 5
|
|
68
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
69
|
+
|
|
70
|
+
def to_dict(self) -> dict[str, Any]:
|
|
71
|
+
enabled_tools: list[str] | Unset = UNSET
|
|
72
|
+
if not isinstance(self.enabled_tools, Unset):
|
|
73
|
+
enabled_tools = []
|
|
74
|
+
for enabled_tools_item_data in self.enabled_tools:
|
|
75
|
+
enabled_tools_item = enabled_tools_item_data.value
|
|
76
|
+
enabled_tools.append(enabled_tools_item)
|
|
77
|
+
|
|
78
|
+
websearch_config: dict[str, Any] | Unset = UNSET
|
|
79
|
+
if not isinstance(self.websearch_config, Unset):
|
|
80
|
+
websearch_config = self.websearch_config.to_dict()
|
|
81
|
+
|
|
82
|
+
fetch_config: dict[str, Any] | Unset = UNSET
|
|
83
|
+
if not isinstance(self.fetch_config, Unset):
|
|
84
|
+
fetch_config = self.fetch_config.to_dict()
|
|
85
|
+
|
|
86
|
+
max_tool_iterations = self.max_tool_iterations
|
|
87
|
+
|
|
88
|
+
field_dict: dict[str, Any] = {}
|
|
89
|
+
field_dict.update(self.additional_properties)
|
|
90
|
+
field_dict.update({})
|
|
91
|
+
if enabled_tools is not UNSET:
|
|
92
|
+
field_dict["enabled_tools"] = enabled_tools
|
|
93
|
+
if websearch_config is not UNSET:
|
|
94
|
+
field_dict["websearch_config"] = websearch_config
|
|
95
|
+
if fetch_config is not UNSET:
|
|
96
|
+
field_dict["fetch_config"] = fetch_config
|
|
97
|
+
if max_tool_iterations is not UNSET:
|
|
98
|
+
field_dict["max_tool_iterations"] = max_tool_iterations
|
|
99
|
+
|
|
100
|
+
return field_dict
|
|
101
|
+
|
|
102
|
+
@classmethod
|
|
103
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
104
|
+
from ..models.fetch_config import FetchConfig
|
|
105
|
+
from ..models.web_search_config import WebSearchConfig
|
|
106
|
+
|
|
107
|
+
d = dict(src_dict)
|
|
108
|
+
_enabled_tools = d.pop("enabled_tools", UNSET)
|
|
109
|
+
enabled_tools: list[ChatToolName] | Unset = UNSET
|
|
110
|
+
if _enabled_tools is not UNSET:
|
|
111
|
+
enabled_tools = []
|
|
112
|
+
for enabled_tools_item_data in _enabled_tools:
|
|
113
|
+
enabled_tools_item = ChatToolName(enabled_tools_item_data)
|
|
114
|
+
|
|
115
|
+
enabled_tools.append(enabled_tools_item)
|
|
116
|
+
|
|
117
|
+
_websearch_config = d.pop("websearch_config", UNSET)
|
|
118
|
+
websearch_config: WebSearchConfig | Unset
|
|
119
|
+
if isinstance(_websearch_config, Unset):
|
|
120
|
+
websearch_config = UNSET
|
|
121
|
+
else:
|
|
122
|
+
websearch_config = WebSearchConfig.from_dict(_websearch_config)
|
|
123
|
+
|
|
124
|
+
_fetch_config = d.pop("fetch_config", UNSET)
|
|
125
|
+
fetch_config: FetchConfig | Unset
|
|
126
|
+
if isinstance(_fetch_config, Unset):
|
|
127
|
+
fetch_config = UNSET
|
|
128
|
+
else:
|
|
129
|
+
fetch_config = FetchConfig.from_dict(_fetch_config)
|
|
130
|
+
|
|
131
|
+
max_tool_iterations = d.pop("max_tool_iterations", UNSET)
|
|
132
|
+
|
|
133
|
+
chat_tools_config = cls(
|
|
134
|
+
enabled_tools=enabled_tools,
|
|
135
|
+
websearch_config=websearch_config,
|
|
136
|
+
fetch_config=fetch_config,
|
|
137
|
+
max_tool_iterations=max_tool_iterations,
|
|
138
|
+
)
|
|
139
|
+
|
|
140
|
+
chat_tools_config.additional_properties = d
|
|
141
|
+
return chat_tools_config
|
|
142
|
+
|
|
143
|
+
@property
|
|
144
|
+
def additional_keys(self) -> list[str]:
|
|
145
|
+
return list(self.additional_properties.keys())
|
|
146
|
+
|
|
147
|
+
def __getitem__(self, key: str) -> Any:
|
|
148
|
+
return self.additional_properties[key]
|
|
149
|
+
|
|
150
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
151
|
+
self.additional_properties[key] = value
|
|
152
|
+
|
|
153
|
+
def __delitem__(self, key: str) -> None:
|
|
154
|
+
del self.additional_properties[key]
|
|
155
|
+
|
|
156
|
+
def __contains__(self, key: str) -> bool:
|
|
157
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,111 @@
|
|
|
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 ..types import UNSET, Unset
|
|
10
|
+
|
|
11
|
+
if TYPE_CHECKING:
|
|
12
|
+
from ..models.audio_chunk_options import AudioChunkOptions
|
|
13
|
+
from ..models.text_chunk_options import TextChunkOptions
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
T = TypeVar("T", bound="ChunkOptions")
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
@_attrs_define
|
|
20
|
+
class ChunkOptions:
|
|
21
|
+
"""Per-request configuration for chunking. All fields are optional - zero/omitted values use chunker defaults.
|
|
22
|
+
|
|
23
|
+
Attributes:
|
|
24
|
+
max_chunks (int | Unset): Maximum number of chunks to generate per document.
|
|
25
|
+
threshold (float | Unset): Confidence threshold for model-based chunking (0.0-1.0).
|
|
26
|
+
text (TextChunkOptions | Unset): Options specific to text chunking.
|
|
27
|
+
audio (AudioChunkOptions | Unset): Options specific to audio chunking.
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
max_chunks: int | Unset = UNSET
|
|
31
|
+
threshold: float | Unset = UNSET
|
|
32
|
+
text: TextChunkOptions | Unset = UNSET
|
|
33
|
+
audio: AudioChunkOptions | Unset = UNSET
|
|
34
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
35
|
+
|
|
36
|
+
def to_dict(self) -> dict[str, Any]:
|
|
37
|
+
max_chunks = self.max_chunks
|
|
38
|
+
|
|
39
|
+
threshold = self.threshold
|
|
40
|
+
|
|
41
|
+
text: dict[str, Any] | Unset = UNSET
|
|
42
|
+
if not isinstance(self.text, Unset):
|
|
43
|
+
text = self.text.to_dict()
|
|
44
|
+
|
|
45
|
+
audio: dict[str, Any] | Unset = UNSET
|
|
46
|
+
if not isinstance(self.audio, Unset):
|
|
47
|
+
audio = self.audio.to_dict()
|
|
48
|
+
|
|
49
|
+
field_dict: dict[str, Any] = {}
|
|
50
|
+
field_dict.update(self.additional_properties)
|
|
51
|
+
field_dict.update({})
|
|
52
|
+
if max_chunks is not UNSET:
|
|
53
|
+
field_dict["max_chunks"] = max_chunks
|
|
54
|
+
if threshold is not UNSET:
|
|
55
|
+
field_dict["threshold"] = threshold
|
|
56
|
+
if text is not UNSET:
|
|
57
|
+
field_dict["text"] = text
|
|
58
|
+
if audio is not UNSET:
|
|
59
|
+
field_dict["audio"] = audio
|
|
60
|
+
|
|
61
|
+
return field_dict
|
|
62
|
+
|
|
63
|
+
@classmethod
|
|
64
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
65
|
+
from ..models.audio_chunk_options import AudioChunkOptions
|
|
66
|
+
from ..models.text_chunk_options import TextChunkOptions
|
|
67
|
+
|
|
68
|
+
d = dict(src_dict)
|
|
69
|
+
max_chunks = d.pop("max_chunks", UNSET)
|
|
70
|
+
|
|
71
|
+
threshold = d.pop("threshold", UNSET)
|
|
72
|
+
|
|
73
|
+
_text = d.pop("text", UNSET)
|
|
74
|
+
text: TextChunkOptions | Unset
|
|
75
|
+
if isinstance(_text, Unset):
|
|
76
|
+
text = UNSET
|
|
77
|
+
else:
|
|
78
|
+
text = TextChunkOptions.from_dict(_text)
|
|
79
|
+
|
|
80
|
+
_audio = d.pop("audio", UNSET)
|
|
81
|
+
audio: AudioChunkOptions | Unset
|
|
82
|
+
if isinstance(_audio, Unset):
|
|
83
|
+
audio = UNSET
|
|
84
|
+
else:
|
|
85
|
+
audio = AudioChunkOptions.from_dict(_audio)
|
|
86
|
+
|
|
87
|
+
chunk_options = cls(
|
|
88
|
+
max_chunks=max_chunks,
|
|
89
|
+
threshold=threshold,
|
|
90
|
+
text=text,
|
|
91
|
+
audio=audio,
|
|
92
|
+
)
|
|
93
|
+
|
|
94
|
+
chunk_options.additional_properties = d
|
|
95
|
+
return chunk_options
|
|
96
|
+
|
|
97
|
+
@property
|
|
98
|
+
def additional_keys(self) -> list[str]:
|
|
99
|
+
return list(self.additional_properties.keys())
|
|
100
|
+
|
|
101
|
+
def __getitem__(self, key: str) -> Any:
|
|
102
|
+
return self.additional_properties[key]
|
|
103
|
+
|
|
104
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
105
|
+
self.additional_properties[key] = value
|
|
106
|
+
|
|
107
|
+
def __delitem__(self, key: str) -> None:
|
|
108
|
+
del self.additional_properties[key]
|
|
109
|
+
|
|
110
|
+
def __contains__(self, key: str) -> bool:
|
|
111
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,103 @@
|
|
|
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.chunker_provider import ChunkerProvider
|
|
10
|
+
from ..types import UNSET, Unset
|
|
11
|
+
|
|
12
|
+
if TYPE_CHECKING:
|
|
13
|
+
from ..models.chunker_config_full_text_index import ChunkerConfigFullTextIndex
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
T = TypeVar("T", bound="ChunkerConfig")
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
@_attrs_define
|
|
20
|
+
class ChunkerConfig:
|
|
21
|
+
"""A unified configuration for a chunking provider.
|
|
22
|
+
|
|
23
|
+
Example:
|
|
24
|
+
{'provider': 'antfly', 'model': 'fixed', 'text': {'target_tokens': 500, 'overlap_tokens': 50}}
|
|
25
|
+
|
|
26
|
+
Attributes:
|
|
27
|
+
provider (ChunkerProvider): The chunking provider to use.
|
|
28
|
+
store_chunks (bool | Unset): Controls whether chunk data is persisted to storage. When false (default), chunks
|
|
29
|
+
are generated in memory and only embeddings are stored. When true, both chunks and embeddings are stored.
|
|
30
|
+
Default: False.
|
|
31
|
+
full_text_index (ChunkerConfigFullTextIndex | Unset): Configuration for full-text indexing of chunks in Bleve.
|
|
32
|
+
When present (even if empty), chunks will be stored with :cft: suffix and indexed in Bleve's _chunks field.
|
|
33
|
+
When absent, chunks use :c: suffix and are only used for vector embeddings.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
provider: ChunkerProvider
|
|
37
|
+
store_chunks: bool | Unset = False
|
|
38
|
+
full_text_index: ChunkerConfigFullTextIndex | Unset = UNSET
|
|
39
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
40
|
+
|
|
41
|
+
def to_dict(self) -> dict[str, Any]:
|
|
42
|
+
provider = self.provider.value
|
|
43
|
+
|
|
44
|
+
store_chunks = self.store_chunks
|
|
45
|
+
|
|
46
|
+
full_text_index: dict[str, Any] | Unset = UNSET
|
|
47
|
+
if not isinstance(self.full_text_index, Unset):
|
|
48
|
+
full_text_index = self.full_text_index.to_dict()
|
|
49
|
+
|
|
50
|
+
field_dict: dict[str, Any] = {}
|
|
51
|
+
field_dict.update(self.additional_properties)
|
|
52
|
+
field_dict.update(
|
|
53
|
+
{
|
|
54
|
+
"provider": provider,
|
|
55
|
+
}
|
|
56
|
+
)
|
|
57
|
+
if store_chunks is not UNSET:
|
|
58
|
+
field_dict["store_chunks"] = store_chunks
|
|
59
|
+
if full_text_index is not UNSET:
|
|
60
|
+
field_dict["full_text_index"] = full_text_index
|
|
61
|
+
|
|
62
|
+
return field_dict
|
|
63
|
+
|
|
64
|
+
@classmethod
|
|
65
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
66
|
+
from ..models.chunker_config_full_text_index import ChunkerConfigFullTextIndex
|
|
67
|
+
|
|
68
|
+
d = dict(src_dict)
|
|
69
|
+
provider = ChunkerProvider(d.pop("provider"))
|
|
70
|
+
|
|
71
|
+
store_chunks = d.pop("store_chunks", UNSET)
|
|
72
|
+
|
|
73
|
+
_full_text_index = d.pop("full_text_index", UNSET)
|
|
74
|
+
full_text_index: ChunkerConfigFullTextIndex | Unset
|
|
75
|
+
if isinstance(_full_text_index, Unset):
|
|
76
|
+
full_text_index = UNSET
|
|
77
|
+
else:
|
|
78
|
+
full_text_index = ChunkerConfigFullTextIndex.from_dict(_full_text_index)
|
|
79
|
+
|
|
80
|
+
chunker_config = cls(
|
|
81
|
+
provider=provider,
|
|
82
|
+
store_chunks=store_chunks,
|
|
83
|
+
full_text_index=full_text_index,
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
chunker_config.additional_properties = d
|
|
87
|
+
return chunker_config
|
|
88
|
+
|
|
89
|
+
@property
|
|
90
|
+
def additional_keys(self) -> list[str]:
|
|
91
|
+
return list(self.additional_properties.keys())
|
|
92
|
+
|
|
93
|
+
def __getitem__(self, key: str) -> Any:
|
|
94
|
+
return self.additional_properties[key]
|
|
95
|
+
|
|
96
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
97
|
+
self.additional_properties[key] = value
|
|
98
|
+
|
|
99
|
+
def __delitem__(self, key: str) -> None:
|
|
100
|
+
del self.additional_properties[key]
|
|
101
|
+
|
|
102
|
+
def __contains__(self, key: str) -> bool:
|
|
103
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,51 @@
|
|
|
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="ChunkerConfigFullTextIndex")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@_attrs_define
|
|
13
|
+
class ChunkerConfigFullTextIndex:
|
|
14
|
+
"""Configuration for full-text indexing of chunks in Bleve.
|
|
15
|
+
When present (even if empty), chunks will be stored with :cft: suffix and indexed in Bleve's _chunks field.
|
|
16
|
+
When absent, chunks use :c: suffix and are only used for vector embeddings.
|
|
17
|
+
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
21
|
+
|
|
22
|
+
def to_dict(self) -> dict[str, Any]:
|
|
23
|
+
|
|
24
|
+
field_dict: dict[str, Any] = {}
|
|
25
|
+
field_dict.update(self.additional_properties)
|
|
26
|
+
|
|
27
|
+
return field_dict
|
|
28
|
+
|
|
29
|
+
@classmethod
|
|
30
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
31
|
+
d = dict(src_dict)
|
|
32
|
+
chunker_config_full_text_index = cls()
|
|
33
|
+
|
|
34
|
+
chunker_config_full_text_index.additional_properties = d
|
|
35
|
+
return chunker_config_full_text_index
|
|
36
|
+
|
|
37
|
+
@property
|
|
38
|
+
def additional_keys(self) -> list[str]:
|
|
39
|
+
return list(self.additional_properties.keys())
|
|
40
|
+
|
|
41
|
+
def __getitem__(self, key: str) -> Any:
|
|
42
|
+
return self.additional_properties[key]
|
|
43
|
+
|
|
44
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
45
|
+
self.additional_properties[key] = value
|
|
46
|
+
|
|
47
|
+
def __delitem__(self, key: str) -> None:
|
|
48
|
+
del self.additional_properties[key]
|
|
49
|
+
|
|
50
|
+
def __contains__(self, key: str) -> bool:
|
|
51
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,169 @@
|
|
|
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.query_strategy import QueryStrategy
|
|
10
|
+
from ..models.semantic_query_mode import SemanticQueryMode
|
|
11
|
+
from ..types import UNSET, Unset
|
|
12
|
+
|
|
13
|
+
if TYPE_CHECKING:
|
|
14
|
+
from ..models.chain_link import ChainLink
|
|
15
|
+
from ..models.generator_config import GeneratorConfig
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
T = TypeVar("T", bound="ClassificationStepConfig")
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
@_attrs_define
|
|
22
|
+
class ClassificationStepConfig:
|
|
23
|
+
"""Configuration for the classification step. This step analyzes the query,
|
|
24
|
+
selects the optimal retrieval strategy, and generates semantic transformations.
|
|
25
|
+
|
|
26
|
+
Attributes:
|
|
27
|
+
enabled (bool | Unset): Enable query classification and strategy selection Default: False.
|
|
28
|
+
generator (GeneratorConfig | Unset): A unified configuration for a generative AI provider.
|
|
29
|
+
Example: {'provider': 'openai', 'model': 'gpt-4.1', 'temperature': 0.7, 'max_tokens': 2048}.
|
|
30
|
+
chain (list[ChainLink] | Unset): Chain of generators to try in order. Mutually exclusive with 'generator'.
|
|
31
|
+
with_reasoning (bool | Unset): Include pre-retrieval reasoning explaining query analysis and strategy selection
|
|
32
|
+
Default: False.
|
|
33
|
+
force_strategy (QueryStrategy | Unset): Strategy for query transformation and retrieval:
|
|
34
|
+
- simple: Direct query with multi-phrase expansion. Best for straightforward factual queries.
|
|
35
|
+
- decompose: Break complex queries into sub-questions, retrieve for each. Best for multi-part questions.
|
|
36
|
+
- step_back: Generate broader background query first, then specific query. Best for questions needing context.
|
|
37
|
+
- hyde: Generate hypothetical answer document, embed that for retrieval. Best for abstract/conceptual questions.
|
|
38
|
+
force_semantic_mode (SemanticQueryMode | Unset): Mode for semantic query generation:
|
|
39
|
+
- rewrite: Transform query into expanded keywords/concepts optimized for vector search (Level 2 optimization)
|
|
40
|
+
- hypothetical: Generate a hypothetical answer that would appear in relevant documents (HyDE - Level 3
|
|
41
|
+
optimization)
|
|
42
|
+
multi_phrase_count (int | Unset): Number of alternative query phrasings to generate Default: 3.
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
enabled: bool | Unset = False
|
|
46
|
+
generator: GeneratorConfig | Unset = UNSET
|
|
47
|
+
chain: list[ChainLink] | Unset = UNSET
|
|
48
|
+
with_reasoning: bool | Unset = False
|
|
49
|
+
force_strategy: QueryStrategy | Unset = UNSET
|
|
50
|
+
force_semantic_mode: SemanticQueryMode | Unset = UNSET
|
|
51
|
+
multi_phrase_count: int | Unset = 3
|
|
52
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
53
|
+
|
|
54
|
+
def to_dict(self) -> dict[str, Any]:
|
|
55
|
+
enabled = self.enabled
|
|
56
|
+
|
|
57
|
+
generator: dict[str, Any] | Unset = UNSET
|
|
58
|
+
if not isinstance(self.generator, Unset):
|
|
59
|
+
generator = self.generator.to_dict()
|
|
60
|
+
|
|
61
|
+
chain: list[dict[str, Any]] | Unset = UNSET
|
|
62
|
+
if not isinstance(self.chain, Unset):
|
|
63
|
+
chain = []
|
|
64
|
+
for chain_item_data in self.chain:
|
|
65
|
+
chain_item = chain_item_data.to_dict()
|
|
66
|
+
chain.append(chain_item)
|
|
67
|
+
|
|
68
|
+
with_reasoning = self.with_reasoning
|
|
69
|
+
|
|
70
|
+
force_strategy: str | Unset = UNSET
|
|
71
|
+
if not isinstance(self.force_strategy, Unset):
|
|
72
|
+
force_strategy = self.force_strategy.value
|
|
73
|
+
|
|
74
|
+
force_semantic_mode: str | Unset = UNSET
|
|
75
|
+
if not isinstance(self.force_semantic_mode, Unset):
|
|
76
|
+
force_semantic_mode = self.force_semantic_mode.value
|
|
77
|
+
|
|
78
|
+
multi_phrase_count = self.multi_phrase_count
|
|
79
|
+
|
|
80
|
+
field_dict: dict[str, Any] = {}
|
|
81
|
+
field_dict.update(self.additional_properties)
|
|
82
|
+
field_dict.update({})
|
|
83
|
+
if enabled is not UNSET:
|
|
84
|
+
field_dict["enabled"] = enabled
|
|
85
|
+
if generator is not UNSET:
|
|
86
|
+
field_dict["generator"] = generator
|
|
87
|
+
if chain is not UNSET:
|
|
88
|
+
field_dict["chain"] = chain
|
|
89
|
+
if with_reasoning is not UNSET:
|
|
90
|
+
field_dict["with_reasoning"] = with_reasoning
|
|
91
|
+
if force_strategy is not UNSET:
|
|
92
|
+
field_dict["force_strategy"] = force_strategy
|
|
93
|
+
if force_semantic_mode is not UNSET:
|
|
94
|
+
field_dict["force_semantic_mode"] = force_semantic_mode
|
|
95
|
+
if multi_phrase_count is not UNSET:
|
|
96
|
+
field_dict["multi_phrase_count"] = multi_phrase_count
|
|
97
|
+
|
|
98
|
+
return field_dict
|
|
99
|
+
|
|
100
|
+
@classmethod
|
|
101
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
102
|
+
from ..models.chain_link import ChainLink
|
|
103
|
+
from ..models.generator_config import GeneratorConfig
|
|
104
|
+
|
|
105
|
+
d = dict(src_dict)
|
|
106
|
+
enabled = d.pop("enabled", UNSET)
|
|
107
|
+
|
|
108
|
+
_generator = d.pop("generator", UNSET)
|
|
109
|
+
generator: GeneratorConfig | Unset
|
|
110
|
+
if isinstance(_generator, Unset):
|
|
111
|
+
generator = UNSET
|
|
112
|
+
else:
|
|
113
|
+
generator = GeneratorConfig.from_dict(_generator)
|
|
114
|
+
|
|
115
|
+
_chain = d.pop("chain", UNSET)
|
|
116
|
+
chain: list[ChainLink] | Unset = UNSET
|
|
117
|
+
if _chain is not UNSET:
|
|
118
|
+
chain = []
|
|
119
|
+
for chain_item_data in _chain:
|
|
120
|
+
chain_item = ChainLink.from_dict(chain_item_data)
|
|
121
|
+
|
|
122
|
+
chain.append(chain_item)
|
|
123
|
+
|
|
124
|
+
with_reasoning = d.pop("with_reasoning", UNSET)
|
|
125
|
+
|
|
126
|
+
_force_strategy = d.pop("force_strategy", UNSET)
|
|
127
|
+
force_strategy: QueryStrategy | Unset
|
|
128
|
+
if isinstance(_force_strategy, Unset):
|
|
129
|
+
force_strategy = UNSET
|
|
130
|
+
else:
|
|
131
|
+
force_strategy = QueryStrategy(_force_strategy)
|
|
132
|
+
|
|
133
|
+
_force_semantic_mode = d.pop("force_semantic_mode", UNSET)
|
|
134
|
+
force_semantic_mode: SemanticQueryMode | Unset
|
|
135
|
+
if isinstance(_force_semantic_mode, Unset):
|
|
136
|
+
force_semantic_mode = UNSET
|
|
137
|
+
else:
|
|
138
|
+
force_semantic_mode = SemanticQueryMode(_force_semantic_mode)
|
|
139
|
+
|
|
140
|
+
multi_phrase_count = d.pop("multi_phrase_count", UNSET)
|
|
141
|
+
|
|
142
|
+
classification_step_config = cls(
|
|
143
|
+
enabled=enabled,
|
|
144
|
+
generator=generator,
|
|
145
|
+
chain=chain,
|
|
146
|
+
with_reasoning=with_reasoning,
|
|
147
|
+
force_strategy=force_strategy,
|
|
148
|
+
force_semantic_mode=force_semantic_mode,
|
|
149
|
+
multi_phrase_count=multi_phrase_count,
|
|
150
|
+
)
|
|
151
|
+
|
|
152
|
+
classification_step_config.additional_properties = d
|
|
153
|
+
return classification_step_config
|
|
154
|
+
|
|
155
|
+
@property
|
|
156
|
+
def additional_keys(self) -> list[str]:
|
|
157
|
+
return list(self.additional_properties.keys())
|
|
158
|
+
|
|
159
|
+
def __getitem__(self, key: str) -> Any:
|
|
160
|
+
return self.additional_properties[key]
|
|
161
|
+
|
|
162
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
163
|
+
self.additional_properties[key] = value
|
|
164
|
+
|
|
165
|
+
def __delitem__(self, key: str) -> None:
|
|
166
|
+
del self.additional_properties[key]
|
|
167
|
+
|
|
168
|
+
def __contains__(self, key: str) -> bool:
|
|
169
|
+
return key in self.additional_properties
|