semantic-kernel 1.43.1__tar.gz → 1.44.0__tar.gz
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.
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/PKG-INFO +4 -4
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/pyproject.toml +4 -4
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/__init__.py +1 -1
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/_open_ai_realtime.py +23 -3
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/mcp.py +55 -15
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/__init__.py +7 -1
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_operation.py +72 -7
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/openapi_function_execution_parameters.py +24 -1
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/openapi_manager.py +7 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/openapi_parser.py +12 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/openapi_runner.py +7 -0
- semantic_kernel-1.44.0/semantic_kernel/connectors/openapi_plugin/server_url_validator.py +241 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/http_plugin.py +37 -5
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_function_extension.py +15 -4
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/LICENSE +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/__init__.pyi +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/autogen/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/autogen/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/autogen/autogen_conversable_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/azure_ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/azure_ai/agent_content_generation.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/azure_ai/agent_thread_actions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/azure_ai/azure_ai_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/azure_ai/azure_ai_agent_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/azure_ai/azure_ai_agent_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/azure_ai/azure_ai_channel.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/action_group_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/bedrock_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/bedrock_agent_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/bedrock_agent_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/models/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/models/bedrock_action_group_model.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/models/bedrock_agent_event_type.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/models/bedrock_agent_model.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/bedrock/models/bedrock_agent_status.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/channels/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/channels/agent_channel.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/channels/bedrock_agent_channel.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/channels/chat_history_channel.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/channels/open_ai_assistant_channel.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/chat_completion/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/chat_completion/chat_completion_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/copilot_studio/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/copilot_studio/copilot_studio_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/copilot_studio/copilot_studio_agent_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/group_chat/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/group_chat/agent_chat.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/group_chat/agent_chat_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/group_chat/agent_group_chat.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/group_chat/broadcast_queue.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/assistant_content_generation.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/assistant_thread_actions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/azure_assistant_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/azure_responses_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/function_action_result.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/openai_assistant_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/openai_responses_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/responses_agent_thread_actions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/open_ai/run_polling_options.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/agent_actor_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/concurrent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/group_chat.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/handoffs.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/magentic.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/orchestration_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/prompts/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/prompts/_magentic_prompts.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/sequential.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/orchestration/tools.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/agent_id.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/agent_metadata.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/agent_type.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/base_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/cancellation_token.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/core_runtime.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/intervention.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/logging.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/message_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/routed_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/serialization.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/subscription.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/telemetry/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/telemetry/constants.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/telemetry/propagation.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/telemetry/tracing.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/telemetry/tracing_config.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/topic.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/type_helpers.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/core/validation_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/agent_instantiation_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/default_subscription.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/default_topic.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/in_process_runtime.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/message_handler_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/queue.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/runtime_impl_helpers.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/subscription_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/type_prefix_subscription.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/runtime/in_process/type_subscription.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/selection/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/selection/kernel_function_selection_strategy.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/selection/selection_strategy.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/selection/sequential_selection_strategy.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/termination/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/termination/aggregator_termination_strategy.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/termination/default_termination_strategy.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/termination/kernel_function_termination_strategy.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/agents/strategies/termination/termination_strategy.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/_search_shared.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/prompt_execution_settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/prompt_execution_settings/anthropic_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/services/anthropic_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/services/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/anthropic/settings/anthropic_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/audio_to_text_client_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/azure_ai_inference_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/azure_ai_inference_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/services/azure_ai_inference_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/services/azure_ai_inference_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/services/azure_ai_inference_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/services/azure_ai_inference_tracing.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/azure_ai_inference/services/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/bedrock_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/bedrock_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/bedrock_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/bedrock_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/bedrock_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/bedrock_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/bedrock_ai21_labs.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/bedrock_amazon_titan.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/bedrock_anthropic_claude.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/bedrock_cohere.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/bedrock_meta_llama.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/bedrock_mistralai.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/bedrock_model_provider.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/bedrock/services/model_provider/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/chat_completion_client_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/completion_usage.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/embedding_generator_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/embeddings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/embeddings/embedding_generator_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/function_call_choice_configuration.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/function_calling_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/function_choice_behavior.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/function_choice_type.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/google_ai_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/google_ai_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/services/google_ai_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/services/google_ai_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/services/google_ai_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/services/google_ai_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/google_ai/services/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/shared_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/services/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/services/vertex_ai_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/services/vertex_ai_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/services/vertex_ai_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/services/vertex_ai_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/vertex_ai_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/google/vertex_ai/vertex_ai_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/hugging_face/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/hugging_face/hf_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/hugging_face/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/hugging_face/services/hf_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/hugging_face/services/hf_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/prompt_execution_settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/prompt_execution_settings/mistral_ai_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/services/mistral_ai_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/services/mistral_ai_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/services/mistral_ai_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/mistral_ai/settings/mistral_ai_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/prompt_execution_settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/prompt_execution_settings/nvidia_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/services/nvidia_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/services/nvidia_handler.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/services/nvidia_model_types.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/services/nvidia_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/nvidia/settings/nvidia_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/ollama_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/ollama_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/services/ollama_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/services/ollama_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/services/ollama_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/services/ollama_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/ollama/services/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/onnx_gen_ai_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/onnx_gen_ai_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/services/onnx_gen_ai_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/services/onnx_gen_ai_completion_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/services/onnx_gen_ai_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/onnx/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/const.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/exceptions/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/exceptions/content_filter_ai_exception.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/prompt_execution_settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/prompt_execution_settings/azure_chat_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/prompt_execution_settings/open_ai_audio_to_text_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/prompt_execution_settings/open_ai_prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/prompt_execution_settings/open_ai_realtime_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/prompt_execution_settings/open_ai_text_to_audio_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/prompt_execution_settings/open_ai_text_to_image_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_audio_to_text.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_config_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_realtime.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_text_to_audio.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/azure_text_to_image.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_audio_to_text.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_audio_to_text_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_chat_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_chat_completion_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_config_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_handler.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_model_types.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_realtime.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_completion.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_completion_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_embedding.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_embedding_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_to_audio.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_to_audio_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_to_image.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/services/open_ai_text_to_image_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/settings/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/settings/azure_open_ai_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/open_ai/settings/open_ai_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/prompt_execution_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/realtime_client_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/text_completion_client_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/text_to_audio_client_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/ai/text_to_image_client_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/azure_ai_search.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/azure_cosmos_db.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/brave.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/chroma.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/faiss.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/google_search.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/in_memory.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory.pyi +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/astradb/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/astradb/astra_client.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/astradb/astradb_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/astradb/astradb_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/astradb/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cognitive_search/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cognitive_search/azure_cognitive_search_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cognitive_search/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cosmosdb/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cosmosdb/azure_cosmos_db_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cosmosdb/azure_cosmos_db_store_api.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cosmosdb/mongo_vcore_store_api.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cosmosdb/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cosmosdb_no_sql/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/azure_cosmosdb_no_sql/azure_cosmosdb_no_sql_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/chroma/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/chroma/chroma_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/chroma/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/milvus/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/milvus/milvus_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/mongodb_atlas/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/mongodb_atlas/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/mongodb_atlas/mongodb_atlas_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/mongodb_atlas/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/pinecone/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/pinecone/pinecone_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/pinecone/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/postgres/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/postgres/postgres_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/qdrant/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/qdrant/qdrant_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/redis/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/redis/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/redis/redis_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/redis/utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/usearch/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/usearch/usearch_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/weaviate/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/weaviate/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/memory_stores/weaviate/weaviate_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/mongodb.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/const.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_expected_response.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_oauth_flow.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_oauth_flows.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_parameter.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_parameter_location.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_parameter_style.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_payload.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_payload_property.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_run_options.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_security_requirement.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_security_scheme.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/models/rest_api_uri.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/openapi_plugin/operation_selection_predicate_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/oracle.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/pinecone.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/postgres.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/qdrant.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/redis.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/search.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/search.pyi +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/sql_server.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/utils/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/utils/document_loader.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/utils/structured_output_schema.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/connectors/weaviate.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/const.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/annotation_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/audio_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/binary_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/chat_history.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/chat_message_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/const.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/file_reference_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/function_call_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/function_result_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/history_reducer/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/history_reducer/chat_history_reducer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/history_reducer/chat_history_reducer_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/history_reducer/chat_history_summarization_reducer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/history_reducer/chat_history_truncation_reducer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/image_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/kernel_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/realtime_events.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/reasoning_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/streaming_annotation_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/streaming_chat_message_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/streaming_content_mixin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/streaming_file_reference_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/streaming_reasoning_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/streaming_text_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/text_content.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/utils/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/utils/author_role.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/utils/data_uri.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/utils/finish_reason.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/utils/hashing.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/contents/utils/status.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/conversation_summary_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/crew_ai/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/crew_ai/crew_ai_enterprise.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/crew_ai/crew_ai_enterprise_client.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/crew_ai/crew_ai_models.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/crew_ai/crew_ai_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/math_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/sessions_python_tool/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/sessions_python_tool/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/sessions_python_tool/sessions_python_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/sessions_python_tool/sessions_python_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/sessions_python_tool/sessions_remote_file_metadata.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/text_memory_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/text_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/time_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/wait_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/core_plugins/web_search_engine_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/data/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/data/_shared.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/data/text_search.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/data/vector.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/agent_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/content_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/filter_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/function_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/kernel_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/memory_connector_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/process_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/search_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/service_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/template_engine_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/exceptions/vector_store_exceptions.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/auto_function_invocation/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/auto_function_invocation/auto_function_invocation_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/filter_context_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/filter_types.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/functions/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/functions/function_invocation_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/kernel_filters_extension.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/prompts/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/filters/prompts/prompt_render_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/function_result.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_arguments.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_function.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_function_decorator.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_function_from_method.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_function_from_prompt.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_function_log_messages.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_function_metadata.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_parameter_metadata.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/kernel_plugin.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/prompt_rendering_result.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/functions/types.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/kernel.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/kernel_pydantic.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/kernel_types.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/memory_query_result.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/memory_record.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/memory_store_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/null_memory.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/semantic_text_memory.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/semantic_text_memory_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/memory/volatile_memory_store.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/const.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/actors/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/actors/actor_state_key.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/actors/event_buffer_actor.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/actors/external_event_buffer_actor.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/actors/message_buffer_actor.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/actors/process_actor.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/actors/step_actor.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/dapr_actor_registration.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/dapr_kernel_process.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/dapr_kernel_process_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/dapr_process_info.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/dapr_step_info.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/interfaces/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/interfaces/event_buffer_interface.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/interfaces/external_event_buffer_interface.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/interfaces/message_buffer_interface.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/interfaces/process_interface.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/dapr_runtime/interfaces/step_interface.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_edge.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_event.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_function_target.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_message_channel.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_state.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_step.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_step_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_step_info.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_step_metadata.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_step_state.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/kernel_process/kernel_process_step_state_metadata.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/local_event.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/local_kernel_process.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/local_kernel_process_context.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/local_message.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/local_message_factory.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/local_process.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/local_runtime/local_step.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_builder.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_edge_builder.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_end_step.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_event.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_function_target_builder.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_message.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_message_factory.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_state_metadata_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_step_builder.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_step_edge_builder.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/process_types.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/processes/step_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/const.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/handlebars_prompt_template.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/input_variable.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/jinja2_prompt_template.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/kernel_prompt_template.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/prompt_template_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/prompt_template_config.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/utils/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/utils/handlebars_system_helpers.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/utils/jinja2_system_helpers.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/prompt_template/utils/template_function_helpers.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/py.typed +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/reliability/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/reliability/kernel_reliability_extension.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/reliability/pass_through_without_retry.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/reliability/retry_mechanism_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/schema/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/schema/kernel_json_schema_builder.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/services/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/services/ai_service_client_base.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/services/ai_service_selector.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/services/kernel_services_extension.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/README.md +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/block.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/block_types.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/code_block.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/function_id_block.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/named_arg_block.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/symbols.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/text_block.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/val_block.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/blocks/var_block.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/code_tokenizer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/protocols/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/protocols/code_renderer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/protocols/text_renderer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/template_engine/template_tokenizer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/text/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/text/function_extension.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/text/text_chunker.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/async_utils.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/authentication/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/authentication/entra_id_authentication.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/chat.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/feature_stage_decorator.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/list_handler.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/logging.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/naming.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/agent_diagnostics/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/agent_diagnostics/decorators.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/agent_diagnostics/gen_ai_attributes.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/model_diagnostics/__init__.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/model_diagnostics/decorators.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/model_diagnostics/function_tracer.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/model_diagnostics/gen_ai_attributes.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/model_diagnostics/model_diagnostics_settings.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/telemetry/user_agent.py +0 -0
- {semantic_kernel-1.43.1 → semantic_kernel-1.44.0}/semantic_kernel/utils/validation.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: semantic-kernel
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.44.0
|
|
4
4
|
Summary: Semantic Kernel Python SDK
|
|
5
5
|
Author-email: Microsoft <SK-Support@microsoft.com>
|
|
6
6
|
Requires-Python: >=3.10
|
|
@@ -55,12 +55,12 @@ Requires-Dist: google-cloud-aiplatform>=1.114,<1.134 ; extra == "google"
|
|
|
55
55
|
Requires-Dist: google-genai >= 1.51,< 1.75 ; extra == "google"
|
|
56
56
|
Requires-Dist: transformers[torch] ~= 4.28 ; extra == "hugging-face"
|
|
57
57
|
Requires-Dist: sentence-transformers >= 2.2,< 6.0 ; extra == "hugging-face"
|
|
58
|
-
Requires-Dist: torch
|
|
58
|
+
Requires-Dist: torch==2.12.0 ; extra == "hugging-face"
|
|
59
59
|
Requires-Dist: mcp>=1.8 ; extra == "mcp"
|
|
60
60
|
Requires-Dist: pymilvus >= 2.3,< 2.7 ; extra == "milvus"
|
|
61
61
|
Requires-Dist: milvus >= 2.3,<2.3.8 ; extra == "milvus" and ( platform_system != 'Windows')
|
|
62
62
|
Requires-Dist: mistralai >= 1.2,< 2.4.6 ; extra == "mistralai"
|
|
63
|
-
Requires-Dist: pymongo >= 4.8.0, < 4.
|
|
63
|
+
Requires-Dist: pymongo >= 4.8.0, < 4.17 ; extra == "mongo"
|
|
64
64
|
Requires-Dist: motor >= 3.3.2,< 3.8.0 ; extra == "mongo"
|
|
65
65
|
Requires-Dist: ipykernel >= 6.29,< 8.0 ; extra == "notebooks"
|
|
66
66
|
Requires-Dist: ollama ~= 0.4 ; extra == "ollama"
|
|
@@ -79,7 +79,7 @@ Requires-Dist: types-redis ~= 4.6.0.20240425 ; extra == "redis"
|
|
|
79
79
|
Requires-Dist: redisvl ~= 0.4 ; extra == "redis"
|
|
80
80
|
Requires-Dist: pyodbc >= 5.2 ; extra == "sql"
|
|
81
81
|
Requires-Dist: usearch ~= 2.16 ; extra == "usearch"
|
|
82
|
-
Requires-Dist: pyarrow
|
|
82
|
+
Requires-Dist: pyarrow>=12.0,<24.0 ; extra == "usearch"
|
|
83
83
|
Requires-Dist: weaviate-client>=4.17.0,<5.0 ; extra == "weaviate"
|
|
84
84
|
Project-URL: homepage, https://learn.microsoft.com/en-us/semantic-kernel/overview/
|
|
85
85
|
Project-URL: issues, https://github.com/microsoft/semantic-kernel/issues
|
|
@@ -93,7 +93,7 @@ google = [
|
|
|
93
93
|
hugging_face = [
|
|
94
94
|
"transformers[torch] ~= 4.28",
|
|
95
95
|
"sentence-transformers >= 2.2,< 6.0",
|
|
96
|
-
"torch
|
|
96
|
+
"torch==2.12.0"
|
|
97
97
|
]
|
|
98
98
|
mcp = [
|
|
99
99
|
"mcp>=1.8",
|
|
@@ -106,7 +106,7 @@ mistralai = [
|
|
|
106
106
|
"mistralai >= 1.2,< 2.4.6"
|
|
107
107
|
]
|
|
108
108
|
mongo = [
|
|
109
|
-
"pymongo >= 4.8.0, < 4.
|
|
109
|
+
"pymongo >= 4.8.0, < 4.17",
|
|
110
110
|
"motor >= 3.3.2,< 3.8.0"
|
|
111
111
|
]
|
|
112
112
|
notebooks = [
|
|
@@ -150,7 +150,7 @@ sql = [
|
|
|
150
150
|
]
|
|
151
151
|
usearch = [
|
|
152
152
|
"usearch ~= 2.16",
|
|
153
|
-
"pyarrow
|
|
153
|
+
"pyarrow>=12.0,<24.0"
|
|
154
154
|
]
|
|
155
155
|
weaviate = [
|
|
156
156
|
"weaviate-client>=4.17.0,<5.0",
|
|
@@ -164,7 +164,7 @@ dev = [
|
|
|
164
164
|
"pytest ~= 8.2",
|
|
165
165
|
"pytest-xdist[psutil] ~= 3.6",
|
|
166
166
|
"pytest-cov >= 5.0",
|
|
167
|
-
"pytest-asyncio ~= 0
|
|
167
|
+
"pytest-asyncio ~= 1.0",
|
|
168
168
|
"pytest-timeout>=2.3.1",
|
|
169
169
|
"snoop ~= 0.4",
|
|
170
170
|
"mypy >= 1.10",
|
|
@@ -480,8 +480,29 @@ class OpenAIRealtimeBase(OpenAIHandler, RealtimeClientBase):
|
|
|
480
480
|
)
|
|
481
481
|
|
|
482
482
|
# Step 4: Invoke the function call
|
|
483
|
-
|
|
483
|
+
# Fail closed: only invoke when a function choice behavior is available so the allowlist can be enforced.
|
|
484
|
+
# Without it, kernel.invoke_function_call would skip allowlist validation and execute any named function.
|
|
484
485
|
function_behavior = self._current_settings.function_choice_behavior if self._current_settings else None
|
|
486
|
+
if function_behavior is None:
|
|
487
|
+
logger.warning(
|
|
488
|
+
"Skipping function call '%s-%s' because no function choice behavior is configured; "
|
|
489
|
+
"allowlist validation cannot be enforced.",
|
|
490
|
+
plugin_name,
|
|
491
|
+
function_name,
|
|
492
|
+
)
|
|
493
|
+
created_output = FunctionResultContent.from_function_call_content_and_result(
|
|
494
|
+
function_call_content=item,
|
|
495
|
+
result="Function call was not invoked because function choice behavior is not configured.",
|
|
496
|
+
)
|
|
497
|
+
result = RealtimeFunctionResultEvent(
|
|
498
|
+
service_type=SendEvents.CONVERSATION_ITEM_CREATE,
|
|
499
|
+
function_result=created_output,
|
|
500
|
+
)
|
|
501
|
+
await self.send(result)
|
|
502
|
+
await self.send(RealtimeEvent(service_type=SendEvents.RESPONSE_CREATE))
|
|
503
|
+
yield result
|
|
504
|
+
return
|
|
505
|
+
chat_history = ChatHistory()
|
|
485
506
|
await self._kernel.invoke_function_call(item, chat_history, function_behavior=function_behavior)
|
|
486
507
|
created_output: FunctionResultContent = chat_history.messages[-1].items[0] # type: ignore
|
|
487
508
|
# Step 5: Create the function result event
|
|
@@ -710,8 +731,7 @@ class OpenAIRealtimeWebRTCBase(OpenAIRealtimeBase):
|
|
|
710
731
|
if audio_output_callback:
|
|
711
732
|
self.audio_output_callback = audio_output_callback
|
|
712
733
|
while True:
|
|
713
|
-
|
|
714
|
-
yield event
|
|
734
|
+
yield await self._receive_buffer.get()
|
|
715
735
|
|
|
716
736
|
async def _send(self, event: RealtimeClientEvent) -> None:
|
|
717
737
|
if not self.data_channel:
|
|
@@ -246,6 +246,7 @@ class MCPPluginBase:
|
|
|
246
246
|
kernel: Kernel | None = None,
|
|
247
247
|
request_timeout: int | None = None,
|
|
248
248
|
sampling_consent_callback: SamplingConsentCallback | None = None,
|
|
249
|
+
sampling_auto_approve: bool = False,
|
|
249
250
|
) -> None:
|
|
250
251
|
"""Initialize the MCP Plugin Base.
|
|
251
252
|
|
|
@@ -259,8 +260,11 @@ class MCPPluginBase:
|
|
|
259
260
|
request_timeout: The default timeout used for all requests.
|
|
260
261
|
sampling_consent_callback: Optional callback for approving MCP sampling requests.
|
|
261
262
|
Receives the plugin name and MCP sampling request params. Return
|
|
262
|
-
False to deny the request.
|
|
263
|
-
|
|
263
|
+
False to deny the request. Takes precedence over sampling_auto_approve.
|
|
264
|
+
sampling_auto_approve: Whether to auto-approve MCP sampling requests when no
|
|
265
|
+
sampling_consent_callback is configured. Defaults to False, meaning sampling
|
|
266
|
+
requests are denied unless a consent callback is provided or this flag is set
|
|
267
|
+
to True. Set to True only when connecting to a trusted MCP server.
|
|
264
268
|
"""
|
|
265
269
|
self.name = name
|
|
266
270
|
self.description = description
|
|
@@ -271,6 +275,7 @@ class MCPPluginBase:
|
|
|
271
275
|
self.kernel = kernel or None
|
|
272
276
|
self.request_timeout = request_timeout
|
|
273
277
|
self.sampling_consent_callback = sampling_consent_callback
|
|
278
|
+
self.sampling_auto_approve = sampling_auto_approve
|
|
274
279
|
self._sampling_auto_approved_warning_logged = False
|
|
275
280
|
self._mcp_reserved_attribute_names: set[str] | None = None
|
|
276
281
|
self._current_task: asyncio.Task | None = None
|
|
@@ -383,13 +388,25 @@ class MCPPluginBase:
|
|
|
383
388
|
|
|
384
389
|
If a sampling consent callback is configured, it is called before forwarding the request to the configured
|
|
385
390
|
chat completion service. Returning False denies the request. If no callback is configured, requests are
|
|
386
|
-
auto-approved and a warning is
|
|
391
|
+
denied unless sampling_auto_approve is set to True, in which case they are auto-approved and a warning is
|
|
392
|
+
logged.
|
|
387
393
|
"""
|
|
388
394
|
if self.sampling_consent_callback is None:
|
|
395
|
+
if not self.sampling_auto_approve:
|
|
396
|
+
logger.warning(
|
|
397
|
+
"MCP sampling request for plugin '%s' was denied because no sampling consent callback was "
|
|
398
|
+
"configured. Provide a sampling_consent_callback or set sampling_auto_approve=True to allow "
|
|
399
|
+
"sampling requests.",
|
|
400
|
+
self.name,
|
|
401
|
+
)
|
|
402
|
+
return types.ErrorData(
|
|
403
|
+
code=types.INTERNAL_ERROR,
|
|
404
|
+
message="Sampling denied: no consent callback configured.",
|
|
405
|
+
)
|
|
389
406
|
if not self._sampling_auto_approved_warning_logged:
|
|
390
407
|
logger.warning(
|
|
391
|
-
"MCP sampling request for plugin '%s' was auto-approved because
|
|
392
|
-
"was configured.",
|
|
408
|
+
"MCP sampling request for plugin '%s' was auto-approved because sampling_auto_approve is "
|
|
409
|
+
"enabled and no sampling consent callback was configured.",
|
|
393
410
|
self.name,
|
|
394
411
|
)
|
|
395
412
|
self._sampling_auto_approved_warning_logged = True
|
|
@@ -620,6 +637,7 @@ class MCPStdioPlugin(MCPPluginBase):
|
|
|
620
637
|
encoding: str | None = None,
|
|
621
638
|
kernel: Kernel | None = None,
|
|
622
639
|
sampling_consent_callback: SamplingConsentCallback | None = None,
|
|
640
|
+
sampling_auto_approve: bool = False,
|
|
623
641
|
**kwargs: Any,
|
|
624
642
|
) -> None:
|
|
625
643
|
"""Initialize the MCP stdio plugin.
|
|
@@ -643,8 +661,10 @@ class MCPStdioPlugin(MCPPluginBase):
|
|
|
643
661
|
kernel: The kernel instance with one or more Chat Completion clients.
|
|
644
662
|
sampling_consent_callback: Optional callback for approving MCP sampling requests.
|
|
645
663
|
Receives the plugin name and MCP sampling request params. Return
|
|
646
|
-
False to deny the request.
|
|
647
|
-
|
|
664
|
+
False to deny the request. Takes precedence over sampling_auto_approve.
|
|
665
|
+
sampling_auto_approve: Whether to auto-approve MCP sampling requests when no
|
|
666
|
+
sampling_consent_callback is configured. Defaults to False (requests are denied).
|
|
667
|
+
Set to True only when connecting to a trusted MCP server.
|
|
648
668
|
kwargs: Any extra arguments to pass to the stdio client.
|
|
649
669
|
|
|
650
670
|
"""
|
|
@@ -657,6 +677,7 @@ class MCPStdioPlugin(MCPPluginBase):
|
|
|
657
677
|
load_prompts=load_prompts,
|
|
658
678
|
request_timeout=request_timeout,
|
|
659
679
|
sampling_consent_callback=sampling_consent_callback,
|
|
680
|
+
sampling_auto_approve=sampling_auto_approve,
|
|
660
681
|
)
|
|
661
682
|
self.command = command
|
|
662
683
|
self.args = args or []
|
|
@@ -696,6 +717,7 @@ class MCPSsePlugin(MCPPluginBase):
|
|
|
696
717
|
sse_read_timeout: float | None = None,
|
|
697
718
|
kernel: Kernel | None = None,
|
|
698
719
|
sampling_consent_callback: SamplingConsentCallback | None = None,
|
|
720
|
+
sampling_auto_approve: bool = False,
|
|
699
721
|
**kwargs: Any,
|
|
700
722
|
) -> None:
|
|
701
723
|
"""Initialize the MCP sse plugin.
|
|
@@ -720,8 +742,10 @@ class MCPSsePlugin(MCPPluginBase):
|
|
|
720
742
|
kernel: The kernel instance with one or more Chat Completion clients.
|
|
721
743
|
sampling_consent_callback: Optional callback for approving MCP sampling requests.
|
|
722
744
|
Receives the plugin name and MCP sampling request params. Return
|
|
723
|
-
False to deny the request.
|
|
724
|
-
|
|
745
|
+
False to deny the request. Takes precedence over sampling_auto_approve.
|
|
746
|
+
sampling_auto_approve: Whether to auto-approve MCP sampling requests when no
|
|
747
|
+
sampling_consent_callback is configured. Defaults to False (requests are denied).
|
|
748
|
+
Set to True only when connecting to a trusted MCP server.
|
|
725
749
|
kwargs: Any extra arguments to pass to the sse client.
|
|
726
750
|
|
|
727
751
|
"""
|
|
@@ -734,6 +758,7 @@ class MCPSsePlugin(MCPPluginBase):
|
|
|
734
758
|
load_prompts=load_prompts,
|
|
735
759
|
request_timeout=request_timeout,
|
|
736
760
|
sampling_consent_callback=sampling_consent_callback,
|
|
761
|
+
sampling_auto_approve=sampling_auto_approve,
|
|
737
762
|
)
|
|
738
763
|
self.url = url
|
|
739
764
|
self.headers = headers or {}
|
|
@@ -776,6 +801,7 @@ class MCPStreamableHttpPlugin(MCPPluginBase):
|
|
|
776
801
|
terminate_on_close: bool | None = None,
|
|
777
802
|
kernel: Kernel | None = None,
|
|
778
803
|
sampling_consent_callback: SamplingConsentCallback | None = None,
|
|
804
|
+
sampling_auto_approve: bool = False,
|
|
779
805
|
**kwargs: Any,
|
|
780
806
|
) -> None:
|
|
781
807
|
"""Initialize the MCP streamable http plugin.
|
|
@@ -801,8 +827,10 @@ class MCPStreamableHttpPlugin(MCPPluginBase):
|
|
|
801
827
|
kernel: The kernel instance with one or more Chat Completion clients.
|
|
802
828
|
sampling_consent_callback: Optional callback for approving MCP sampling requests.
|
|
803
829
|
Receives the plugin name and MCP sampling request params. Return
|
|
804
|
-
False to deny the request.
|
|
805
|
-
|
|
830
|
+
False to deny the request. Takes precedence over sampling_auto_approve.
|
|
831
|
+
sampling_auto_approve: Whether to auto-approve MCP sampling requests when no
|
|
832
|
+
sampling_consent_callback is configured. Defaults to False (requests are denied).
|
|
833
|
+
Set to True only when connecting to a trusted MCP server.
|
|
806
834
|
kwargs: Any extra arguments to pass to the sse client.
|
|
807
835
|
"""
|
|
808
836
|
super().__init__(
|
|
@@ -814,6 +842,7 @@ class MCPStreamableHttpPlugin(MCPPluginBase):
|
|
|
814
842
|
load_prompts=load_prompts,
|
|
815
843
|
request_timeout=request_timeout,
|
|
816
844
|
sampling_consent_callback=sampling_consent_callback,
|
|
845
|
+
sampling_auto_approve=sampling_auto_approve,
|
|
817
846
|
)
|
|
818
847
|
self.url = url
|
|
819
848
|
self.headers = headers or {}
|
|
@@ -855,6 +884,7 @@ class MCPWebsocketPlugin(MCPPluginBase):
|
|
|
855
884
|
description: str | None = None,
|
|
856
885
|
kernel: Kernel | None = None,
|
|
857
886
|
sampling_consent_callback: SamplingConsentCallback | None = None,
|
|
887
|
+
sampling_auto_approve: bool = False,
|
|
858
888
|
**kwargs: Any,
|
|
859
889
|
) -> None:
|
|
860
890
|
"""Initialize the MCP websocket plugin.
|
|
@@ -876,8 +906,10 @@ class MCPWebsocketPlugin(MCPPluginBase):
|
|
|
876
906
|
kernel: The kernel instance with one or more Chat Completion clients.
|
|
877
907
|
sampling_consent_callback: Optional callback for approving MCP sampling requests.
|
|
878
908
|
Receives the plugin name and MCP sampling request params. Return
|
|
879
|
-
False to deny the request.
|
|
880
|
-
|
|
909
|
+
False to deny the request. Takes precedence over sampling_auto_approve.
|
|
910
|
+
sampling_auto_approve: Whether to auto-approve MCP sampling requests when no
|
|
911
|
+
sampling_consent_callback is configured. Defaults to False (requests are denied).
|
|
912
|
+
Set to True only when connecting to a trusted MCP server.
|
|
881
913
|
kwargs: Any extra arguments to pass to the websocket client.
|
|
882
914
|
|
|
883
915
|
"""
|
|
@@ -890,6 +922,7 @@ class MCPWebsocketPlugin(MCPPluginBase):
|
|
|
890
922
|
load_prompts=load_prompts,
|
|
891
923
|
request_timeout=request_timeout,
|
|
892
924
|
sampling_consent_callback=sampling_consent_callback,
|
|
925
|
+
sampling_auto_approve=sampling_auto_approve,
|
|
893
926
|
)
|
|
894
927
|
self.url = url
|
|
895
928
|
self._client_kwargs = kwargs
|
|
@@ -1023,6 +1056,7 @@ def create_mcp_server_from_kernel(
|
|
|
1023
1056
|
functions_to_expose = [
|
|
1024
1057
|
func for func in kernel.get_full_list_of_function_metadata() if func.name not in (excluded_functions or [])
|
|
1025
1058
|
]
|
|
1059
|
+
exposed_names = frozenset(func.name for func in functions_to_expose)
|
|
1026
1060
|
|
|
1027
1061
|
if len(functions_to_expose) > 0:
|
|
1028
1062
|
|
|
@@ -1058,8 +1092,15 @@ def create_mcp_server_from_kernel(
|
|
|
1058
1092
|
*args: Any,
|
|
1059
1093
|
) -> Sequence[types.TextContent | types.ImageContent | types.AudioContent | types.EmbeddedResource]:
|
|
1060
1094
|
"""Call a tool in the kernel."""
|
|
1061
|
-
await _log(level="debug", data=f"Calling tool with args: {args}")
|
|
1062
1095
|
function_name, arguments = args[0], args[1]
|
|
1096
|
+
if function_name not in exposed_names:
|
|
1097
|
+
raise McpError(
|
|
1098
|
+
error=types.ErrorData(
|
|
1099
|
+
code=types.METHOD_NOT_FOUND,
|
|
1100
|
+
message=f"Unknown tool: {function_name}",
|
|
1101
|
+
)
|
|
1102
|
+
)
|
|
1103
|
+
await _log(level="debug", data=f"Calling tool: {function_name}")
|
|
1063
1104
|
result = await _call_kernel_function(function_name, arguments)
|
|
1064
1105
|
if result:
|
|
1065
1106
|
value = result.value
|
|
@@ -1165,7 +1206,6 @@ def create_mcp_server_from_kernel(
|
|
|
1165
1206
|
async def _call_kernel_function(function_name: str, arguments: Any) -> FunctionResult | None:
|
|
1166
1207
|
function = kernel.get_function(plugin_name=None, function_name=function_name)
|
|
1167
1208
|
arguments["server"] = server
|
|
1168
|
-
print("arguments", arguments)
|
|
1169
1209
|
return await function.invoke(kernel=kernel, **arguments)
|
|
1170
1210
|
|
|
1171
1211
|
return server
|
|
@@ -7,5 +7,11 @@ from semantic_kernel.connectors.openapi_plugin.openapi_parser import OpenApiPars
|
|
|
7
7
|
from semantic_kernel.connectors.openapi_plugin.operation_selection_predicate_context import (
|
|
8
8
|
OperationSelectionPredicateContext,
|
|
9
9
|
)
|
|
10
|
+
from semantic_kernel.connectors.openapi_plugin.server_url_validator import ServerUrlValidationOptions
|
|
10
11
|
|
|
11
|
-
__all__ = [
|
|
12
|
+
__all__ = [
|
|
13
|
+
"OpenAPIFunctionExecutionParameters",
|
|
14
|
+
"OpenApiParser",
|
|
15
|
+
"OperationSelectionPredicateContext",
|
|
16
|
+
"ServerUrlValidationOptions",
|
|
17
|
+
]
|
|
@@ -221,12 +221,48 @@ class RestApiOperation:
|
|
|
221
221
|
|
|
222
222
|
def build_operation_url(self, arguments, server_url_override=None, api_host_url=None):
|
|
223
223
|
"""Build the URL for the operation."""
|
|
224
|
-
server_url = self.get_server_url(server_url_override, api_host_url)
|
|
224
|
+
server_url = self.get_server_url(server_url_override, api_host_url, arguments)
|
|
225
225
|
path = self.build_path(self.path, arguments)
|
|
226
226
|
try:
|
|
227
|
-
|
|
227
|
+
request_url = urljoin(server_url, path.lstrip("/"))
|
|
228
228
|
except Exception as e:
|
|
229
229
|
raise FunctionExecutionException(f"Error building the URL for the operation {self.id}: {e!s}") from e
|
|
230
|
+
self._ensure_request_target_matches_server(server_url, request_url)
|
|
231
|
+
return request_url
|
|
232
|
+
|
|
233
|
+
@staticmethod
|
|
234
|
+
def _ensure_request_target_matches_server(server_url: str, request_url: str) -> None:
|
|
235
|
+
"""Verify URL construction did not move the request off the configured server.
|
|
236
|
+
|
|
237
|
+
A selected operation path must resolve to a request on the same scheme, host, and port and
|
|
238
|
+
within the server's base path. Otherwise an absolute or authority-changing operation path
|
|
239
|
+
(for example "https://another-host/admin") could redirect a credential-bearing request to an
|
|
240
|
+
unintended target even though it carries no dot-segment. This complements
|
|
241
|
+
`_validate_path_segments` so operation selection, path validation, and request construction
|
|
242
|
+
share one canonical target.
|
|
243
|
+
"""
|
|
244
|
+
server = urlparse(server_url)
|
|
245
|
+
request = urlparse(request_url)
|
|
246
|
+
|
|
247
|
+
if (request.scheme, request.username, request.password, request.hostname, request.port) != (
|
|
248
|
+
server.scheme,
|
|
249
|
+
server.username,
|
|
250
|
+
server.password,
|
|
251
|
+
server.hostname,
|
|
252
|
+
server.port,
|
|
253
|
+
):
|
|
254
|
+
raise FunctionExecutionException(
|
|
255
|
+
f"The operation path resolves to '{request.scheme}://{request.netloc}', which does not match "
|
|
256
|
+
f"the configured server '{server.scheme}://{server.netloc}'."
|
|
257
|
+
)
|
|
258
|
+
|
|
259
|
+
# get_server_url guarantees a trailing slash, so the server base path always ends with "/".
|
|
260
|
+
base_path = server.path
|
|
261
|
+
if request.path != base_path.rstrip("/") and not request.path.startswith(base_path):
|
|
262
|
+
raise FunctionExecutionException(
|
|
263
|
+
f"The operation path resolves to '{request.path}', which is outside the configured server "
|
|
264
|
+
f"base path '{base_path}'."
|
|
265
|
+
)
|
|
230
266
|
|
|
231
267
|
def get_server_url(self, server_url_override=None, api_host_url=None, arguments=None):
|
|
232
268
|
"""Get the server URL for the operation."""
|
|
@@ -253,11 +289,11 @@ class RestApiOperation:
|
|
|
253
289
|
argument_name = variable_def.get("argument_name", variable_name)
|
|
254
290
|
if argument_name in arguments:
|
|
255
291
|
value = arguments[argument_name]
|
|
256
|
-
server_url_string = server_url_string.replace(f"{{{variable_name}}}", value)
|
|
292
|
+
server_url_string = server_url_string.replace(f"{{{variable_name}}}", str(value))
|
|
257
293
|
elif "default" in variable_def and variable_def["default"] is not None:
|
|
258
294
|
# Use the default value if no argument is provided
|
|
259
295
|
value = variable_def["default"]
|
|
260
|
-
server_url_string = server_url_string.replace(f"{{{variable_name}}}", value)
|
|
296
|
+
server_url_string = server_url_string.replace(f"{{{variable_name}}}", str(value))
|
|
261
297
|
else:
|
|
262
298
|
# Raise an exception if no value is available
|
|
263
299
|
raise FunctionExecutionException(
|
|
@@ -299,6 +335,20 @@ class RestApiOperation:
|
|
|
299
335
|
The operation is selected using the raw path but the request URL is built from a canonicalized
|
|
300
336
|
path, so encoded dot-segments such as "%2e%2e" must be rejected before the URL is constructed.
|
|
301
337
|
"""
|
|
338
|
+
if RestApiOperation._contains_dot_segment(path):
|
|
339
|
+
raise FunctionExecutionException(
|
|
340
|
+
f"Path '{path}' contains a dot-segment, which could lead to path traversal."
|
|
341
|
+
)
|
|
342
|
+
|
|
343
|
+
@staticmethod
|
|
344
|
+
def _contains_dot_segment(path: str) -> bool:
|
|
345
|
+
"""Return True if the path contains a dot-segment (. or ..), including percent-encoded forms.
|
|
346
|
+
|
|
347
|
+
Used both to reject such paths when building a request URL and to exclude them during operation
|
|
348
|
+
selection so an encoded dot-segment cannot bypass an include/exclude operation-selection filter.
|
|
349
|
+
"""
|
|
350
|
+
if not path:
|
|
351
|
+
return False
|
|
302
352
|
for segment in path.split("/"):
|
|
303
353
|
decoded = segment
|
|
304
354
|
for _ in range(5):
|
|
@@ -310,9 +360,24 @@ class RestApiOperation:
|
|
|
310
360
|
# both "/" and "\" and reject any resulting dot-segment.
|
|
311
361
|
for part in decoded.replace("\\", "/").split("/"):
|
|
312
362
|
if part in (".", ".."):
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
363
|
+
return True
|
|
364
|
+
return False
|
|
365
|
+
|
|
366
|
+
@staticmethod
|
|
367
|
+
def _is_non_relative_path(path: str) -> bool:
|
|
368
|
+
"""Return True if the path is non-relative (absolute or authority-changing).
|
|
369
|
+
|
|
370
|
+
A conformant OpenAPI operation path is relative to the server URL. An absolute URI, a
|
|
371
|
+
protocol-relative reference ("//host"), or a backslash-authority reference changes the request
|
|
372
|
+
target once combined with the server URL, so such a path is excluded during operation selection
|
|
373
|
+
to keep selection and request construction on one canonical target.
|
|
374
|
+
"""
|
|
375
|
+
if not path:
|
|
376
|
+
return False
|
|
377
|
+
if path.startswith(("//", "\\\\", "/\\", "\\/")):
|
|
378
|
+
return True
|
|
379
|
+
parsed = urlparse(path)
|
|
380
|
+
return bool(parsed.scheme or parsed.netloc)
|
|
316
381
|
|
|
317
382
|
def build_query_string(self, arguments: dict[str, Any]) -> str:
|
|
318
383
|
"""Build the query string for the operation."""
|
|
@@ -16,7 +16,13 @@ AuthCallbackType = Callable[..., Awaitable[Any]]
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
class OpenAPIFunctionExecutionParameters(KernelBaseModel):
|
|
19
|
-
"""OpenAPI function execution parameters.
|
|
19
|
+
"""OpenAPI function execution parameters.
|
|
20
|
+
|
|
21
|
+
OpenAPI operation request URLs are validated by default to reduce SSRF risk. Requests must use HTTPS
|
|
22
|
+
and must not resolve to private, loopback, link-local, or otherwise non-public IP addresses unless the
|
|
23
|
+
target is explicitly trusted through `server_url_validation_allowed_base_urls` or
|
|
24
|
+
`allow_private_network_access`.
|
|
25
|
+
"""
|
|
20
26
|
|
|
21
27
|
http_client: httpx.AsyncClient | None = None
|
|
22
28
|
auth_callback: AuthCallbackType | None = None
|
|
@@ -47,9 +53,24 @@ class OpenAPIFunctionExecutionParameters(KernelBaseModel):
|
|
|
47
53
|
"and need external HTTP $ref resolution."
|
|
48
54
|
),
|
|
49
55
|
)
|
|
56
|
+
server_url_validation_allowed_base_urls: list[str] = Field(
|
|
57
|
+
default_factory=list,
|
|
58
|
+
description=(
|
|
59
|
+
"Base URLs that are explicitly allowed for OpenAPI operation requests. Matching URLs bypass "
|
|
60
|
+
"the default HTTPS-only and private-network validation gates. Set only for trusted endpoints."
|
|
61
|
+
),
|
|
62
|
+
)
|
|
63
|
+
allow_private_network_access: bool = Field(
|
|
64
|
+
False,
|
|
65
|
+
description=(
|
|
66
|
+
"Whether OpenAPI operation requests may target private, loopback, link-local, or otherwise "
|
|
67
|
+
"non-public IP addresses. Disabled by default to prevent SSRF."
|
|
68
|
+
),
|
|
69
|
+
)
|
|
50
70
|
|
|
51
71
|
def model_post_init(self, __context: Any) -> None:
|
|
52
72
|
"""Post initialization method for the model."""
|
|
73
|
+
from semantic_kernel.connectors.openapi_plugin.server_url_validator import ServerUrlValidationOptions
|
|
53
74
|
from semantic_kernel.utils.telemetry.user_agent import HTTP_USER_AGENT
|
|
54
75
|
|
|
55
76
|
if self.server_url_override:
|
|
@@ -57,5 +78,7 @@ class OpenAPIFunctionExecutionParameters(KernelBaseModel):
|
|
|
57
78
|
if not parsed_url.scheme or not parsed_url.netloc:
|
|
58
79
|
raise ValueError(f"Invalid server_url_override: {self.server_url_override}")
|
|
59
80
|
|
|
81
|
+
ServerUrlValidationOptions(allowed_base_urls=self.server_url_validation_allowed_base_urls)
|
|
82
|
+
|
|
60
83
|
if not self.user_agent:
|
|
61
84
|
self.user_agent = HTTP_USER_AGENT
|
|
@@ -11,6 +11,7 @@ from semantic_kernel.connectors.openapi_plugin.models.rest_api_security_requirem
|
|
|
11
11
|
from semantic_kernel.connectors.openapi_plugin.models.rest_api_uri import Uri
|
|
12
12
|
from semantic_kernel.connectors.openapi_plugin.openapi_parser import OpenApiParser
|
|
13
13
|
from semantic_kernel.connectors.openapi_plugin.openapi_runner import OpenApiRunner
|
|
14
|
+
from semantic_kernel.connectors.openapi_plugin.server_url_validator import ServerUrlValidationOptions
|
|
14
15
|
from semantic_kernel.exceptions.function_exceptions import FunctionExecutionException
|
|
15
16
|
from semantic_kernel.functions.kernel_arguments import KernelArguments
|
|
16
17
|
from semantic_kernel.functions.kernel_function_decorator import kernel_function
|
|
@@ -79,6 +80,12 @@ def create_functions_from_openapi(
|
|
|
79
80
|
http_client=execution_settings.http_client if execution_settings else None,
|
|
80
81
|
enable_dynamic_payload=execution_settings.enable_dynamic_payload if execution_settings else True,
|
|
81
82
|
enable_payload_namespacing=execution_settings.enable_payload_namespacing if execution_settings else False,
|
|
83
|
+
server_url_validation_options=ServerUrlValidationOptions(
|
|
84
|
+
allowed_base_urls=execution_settings.server_url_validation_allowed_base_urls,
|
|
85
|
+
allow_private_network_access=execution_settings.allow_private_network_access,
|
|
86
|
+
)
|
|
87
|
+
if execution_settings
|
|
88
|
+
else None,
|
|
82
89
|
)
|
|
83
90
|
|
|
84
91
|
functions = []
|
|
@@ -265,6 +265,18 @@ class OpenApiParser:
|
|
|
265
265
|
summary = details.get("summary", None)
|
|
266
266
|
description = details.get("description", None)
|
|
267
267
|
|
|
268
|
+
# Exclude operations whose path would resolve to a different effective request target
|
|
269
|
+
# than the one offered to the selection predicate: a dot-segment (encoded or literal)
|
|
270
|
+
# or a non-relative (absolute / authority-changing) path. Excluding them here keeps
|
|
271
|
+
# operation selection and request construction on one canonical target so such a path
|
|
272
|
+
# cannot bypass an include/exclude operation-selection filter.
|
|
273
|
+
if RestApiOperation._contains_dot_segment(path) or RestApiOperation._is_non_relative_path(path):
|
|
274
|
+
logger.warning(
|
|
275
|
+
f"Skipping operation {operationId} at path '{path}' because it does not resolve to a "
|
|
276
|
+
f"relative path on the configured server."
|
|
277
|
+
)
|
|
278
|
+
continue
|
|
279
|
+
|
|
268
280
|
context = OperationSelectionPredicateContext(operationId, path, method, description)
|
|
269
281
|
if (
|
|
270
282
|
execution_settings
|
|
@@ -17,6 +17,10 @@ from semantic_kernel.connectors.openapi_plugin.models.rest_api_expected_response
|
|
|
17
17
|
from semantic_kernel.connectors.openapi_plugin.models.rest_api_operation import RestApiOperation
|
|
18
18
|
from semantic_kernel.connectors.openapi_plugin.models.rest_api_payload import RestApiPayload
|
|
19
19
|
from semantic_kernel.connectors.openapi_plugin.models.rest_api_run_options import RestApiRunOptions
|
|
20
|
+
from semantic_kernel.connectors.openapi_plugin.server_url_validator import (
|
|
21
|
+
ServerUrlValidationOptions,
|
|
22
|
+
validate_server_url,
|
|
23
|
+
)
|
|
20
24
|
from semantic_kernel.exceptions.function_exceptions import FunctionExecutionException
|
|
21
25
|
from semantic_kernel.functions.kernel_arguments import KernelArguments
|
|
22
26
|
from semantic_kernel.utils.feature_stage_decorator import experimental
|
|
@@ -39,6 +43,7 @@ class OpenApiRunner:
|
|
|
39
43
|
http_client: httpx.AsyncClient | None = None,
|
|
40
44
|
enable_dynamic_payload: bool = True,
|
|
41
45
|
enable_payload_namespacing: bool = False,
|
|
46
|
+
server_url_validation_options: ServerUrlValidationOptions | None = None,
|
|
42
47
|
):
|
|
43
48
|
"""Initialize the OpenApiRunner."""
|
|
44
49
|
self.spec = Spec.from_dict(parsed_openapi_document) # type: ignore
|
|
@@ -46,6 +51,7 @@ class OpenApiRunner:
|
|
|
46
51
|
self.http_client = http_client
|
|
47
52
|
self.enable_dynamic_payload = enable_dynamic_payload
|
|
48
53
|
self.enable_payload_namespacing = enable_payload_namespacing
|
|
54
|
+
self.server_url_validation_options = server_url_validation_options or ServerUrlValidationOptions()
|
|
49
55
|
|
|
50
56
|
def build_full_url(self, base_url, query_string):
|
|
51
57
|
"""Build the full URL."""
|
|
@@ -137,6 +143,7 @@ class OpenApiRunner:
|
|
|
137
143
|
server_url_override=options.server_url_override if options else None,
|
|
138
144
|
api_host_url=options.api_host_url if options else None,
|
|
139
145
|
)
|
|
146
|
+
await validate_server_url(url, self.server_url_validation_options)
|
|
140
147
|
headers = operation.build_headers(arguments=arguments)
|
|
141
148
|
payload, _ = self.build_operation_payload(operation=operation, arguments=arguments)
|
|
142
149
|
|