mirascope 1.23.4__tar.gz → 1.24.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.
- {mirascope-1.23.4 → mirascope-1.24.0}/PKG-INFO +3 -3
- {mirascope-1.23.4 → mirascope-1.24.0}/README.md +2 -2
- mirascope-1.24.0/api_ref/llm/call_response.md +3 -0
- mirascope-1.24.0/api_ref/llm/call_response_chunk.md +3 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/__init__.py +2 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/__init__.py +2 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/__init__.py +2 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_convert_messages_to_message_params.py +9 -2
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/message_param.py +13 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/messages.py +5 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_convert_message_params.py +76 -3
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_message_param_converter.py +42 -4
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_validate_media_type.py +24 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/pyproject.toml +1 -1
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/_utils/test_convert_message_params.py +400 -1
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/_utils/test_message_param_converter.py +59 -4
- {mirascope-1.23.4 → mirascope-1.24.0}/uv.lock +1 -1
- mirascope-1.23.4/api_ref/llm/call_response.md +0 -3
- mirascope-1.23.4/api_ref/llm/call_response_chunk.md +0 -3
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/CODEOWNERS +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/ISSUE_TEMPLATE/question.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/workflows/label_issues.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/workflows/lint.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/workflows/release.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.github/workflows/tests.yml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.gitignore +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.pre-commit-config.yaml +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.vscode/extensions.json +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.vscode/launch.json +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/.vscode/settings.json +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/LICENSE +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/anthropic/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/anthropic/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/anthropic/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/anthropic/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/anthropic/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/anthropic/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/anthropic/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/azure/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/azure/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/azure/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/azure/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/azure/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/azure/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/azure/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/call_factory.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/merge_decorators.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/message_param.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/metadata.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/prompt.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/structured_stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/toolkit.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/base/types.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/bedrock/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/bedrock/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/bedrock/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/bedrock/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/bedrock/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/bedrock/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/bedrock/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/cohere/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/cohere/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/cohere/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/cohere/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/cohere/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/cohere/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/cohere/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/costs/calculate_cost.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/google/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/google/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/google/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/google/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/google/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/google/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/google/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/groq/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/groq/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/groq/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/groq/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/groq/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/groq/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/groq/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/litellm/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/litellm/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/litellm/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/litellm/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/litellm/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/litellm/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/litellm/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/mistral/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/mistral/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/mistral/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/mistral/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/mistral/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/mistral/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/mistral/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/openai/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/openai/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/openai/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/openai/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/openai/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/openai/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/openai/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/xai/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/xai/call_params.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/xai/call_response.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/xai/call_response_chunk.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/xai/dynamic_config.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/xai/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/core/xai/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/llm/call.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/llm/context.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/llm/override.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/llm/stream.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/llm/tool.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/mcp/client.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/retries/fallback.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/retries/tenacity.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/tools/system/docker_operation.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/tools/system/file_system.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/tools/web/duckduckgo.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/tools/web/httpx.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/tools/web/parse_url_content.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/api_ref/tools/web/requests.md +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/realtime/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/realtime/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/realtime/_utils/_audio.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/realtime/_utils/_protocols.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/realtime/realtime.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/realtime/recording.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/openai/realtime/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/chunkers/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/chunkers/base_chunker.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/chunkers/text_chunker.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/document.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/embedders.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/embedding_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/embedding_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/query_results.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/vectorstore_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/base/vectorstores.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/chroma/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/chroma/types.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/chroma/vectorstores.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/cohere/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/cohere/embedders.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/cohere/embedding_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/cohere/embedding_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/cohere/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/openai/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/openai/embedders.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/openai/embedding_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/openai/embedding_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/openai/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/pinecone/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/pinecone/types.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/pinecone/vectorstores.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/weaviate/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/weaviate/types.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/beta/rag/weaviate/vectorstores.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/anthropic/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_get_credential.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/azure/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_call_factory.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_create.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_extract.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_extract_with_tools.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_partial.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_base_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_base_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_convert_base_model_to_base_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_convert_base_type_to_base_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_convert_function_to_base_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_convert_provider_finish_reason_to_finish_reason.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_default_tool_docstring.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_extract_tool_return.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_fn_is_async.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_format_template.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_audio_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_common_usage.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_create_fn_or_async_create_fn.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_document_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_dynamic_configuration.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_fields_from_call_args.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_fn_args.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_image_dimensions.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_image_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_metadata.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_possible_user_message_param.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_prompt_template.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_template_values.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_template_variables.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_get_unsupported_tool_config_keys.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_is_prompt_template.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_json_mode_content.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_messages_decorator.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_parse_content_template.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_parse_prompt_messages.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_pil_image_to_bytes.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_protocols.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/_utils/_setup_extract_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/from_call_args.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/merge_decorators.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/metadata.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/prompt.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/response_model_config_dict.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/stream_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/structured_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/toolkit.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/base/types.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_types.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/bedrock/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_types.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/cohere/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_anthropic_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_azure_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_bedrock_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_cohere_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_gemini_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_google_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_groq_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_litellm_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_mistral_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_openai_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_vertex_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/_xai_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/costs/calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/gemini/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/groq/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/litellm/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/mistral/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/openai/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_call_kwargs.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/_convert_finish_reason_to_common_finish_reasons.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/vertex/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/_utils/_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/dynamic_config.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/xai/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/experimental/graphs/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/experimental/graphs/finite_state_machine.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/_middleware_factory.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/langfuse/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/langfuse/_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/langfuse/_with_langfuse.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/logfire/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/logfire/_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/logfire/_with_logfire.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/otel/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/otel/_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/otel/_with_hyperdx.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/otel/_with_otel.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/integrations/tenacity.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/_context.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/_override.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/_protocols.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/_response_metaclass.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/llm/tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/mcp/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/mcp/_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/mcp/client.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/mcp/server.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/mcp/tools.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/py.typed +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/retries/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/retries/fallback.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/retries/tenacity.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/base.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/system/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/system/_docker_operation.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/system/_file_system.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/web/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/web/_duckduckgo.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/web/_httpx.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/web/_parse_url_content.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/tools/web/_requests.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/anthropic.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/base/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/base/calls.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/base/extractors.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/base/ops_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/base/prompts.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/base/types.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/base/utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/mirascope/v0/openai.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/conftest.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/anthropic/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/test_get_credential.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/azure/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_base_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_convert_base_model_to_base_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_convert_base_type_to_base_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_convert_function_to_base_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_convert_messages_to_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_extract_tool_return.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_format_template.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_audio_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_create_fn_or_async_create_fn.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_document_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_dynamic_configuration.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_fields_from_call_args.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_fn_args.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_image_dimensions.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_image_type.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_metadata.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_possible_user_message_param.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_prompt_template.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_template_values.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_template_variables.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_get_unsupported_tool_config_keys.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_json_mode_content.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_message_decorator.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_parse_content_template.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_parse_prompt_messages.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_pil_image_to_bytes.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/_utils/test_setup_extract_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/conftest.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_call_factory.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_create.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_extract.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_extract_with_tools.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_merge_decorators.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_partial.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_prompt.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_structured_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/base/test_toolkit.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/conftest.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/bedrock/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/cohere/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_anthropic_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_azure_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_bedrock_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_calculation_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_cohere_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_gemini_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_google_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_groq_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_mistral_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_openai_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_vertex_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/costs/test_xai_calculate_cost.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/gemini/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/google/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/groq/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/litellm/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/litellm/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/litellm/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/litellm/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/litellm/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/litellm/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/mistral/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/openai/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/_utils/test_convert_common_call_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/_utils/test_convert_message_params.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/_utils/test_get_json_output.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/_utils/test_handle_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/_utils/test_message_param_converter.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/vertex/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/xai/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/xai/_utils/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/xai/_utils/test_setup_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/xai/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/xai/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/core/xai/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/langfuse/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/langfuse/test_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/langfuse/test_with_langfuse.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/logfire/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/logfire/test_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/logfire/test_with_logfire.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/otel/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/otel/test_utils.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/otel/test_with_hyperdx.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/otel/test_with_otel.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/integrations/test_middleware_factory.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_call.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_call_response.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_call_response_chunk.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_context.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_override.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_response_metaclass.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_stream.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/llm/test_tool.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/mcp/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/mcp/test_client.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/mcp/test_server.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/retries/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/retries/test_fallback.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/retries/test_tenacity.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/test_base.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/test_docker_operation_toolkit.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/test_filesystem_toolkit.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/web/__init__.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/web/test_duckduckgo.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/web/test_httpx.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/web/test_parse_url_content.py +0 -0
- {mirascope-1.23.4 → mirascope-1.24.0}/tests/tools/web/test_requests.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mirascope
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.24.0
|
|
4
4
|
Summary: LLM abstractions that aren't obstructions
|
|
5
5
|
Project-URL: Homepage, https://mirascope.com
|
|
6
6
|
Project-URL: Documentation, https://mirascope.com/WELCOME
|
|
@@ -154,7 +154,7 @@ print(book)
|
|
|
154
154
|
|
|
155
155
|
## Tutorials
|
|
156
156
|
|
|
157
|
-
Check out our [quickstart tutorial](https://mirascope.com/
|
|
157
|
+
Check out our [quickstart tutorial](https://mirascope.com/docs/mirascope/getting-started/quickstart) and many other tutorials for an interactive way to getting started with Mirascope.
|
|
158
158
|
|
|
159
159
|
## Usage
|
|
160
160
|
|
|
@@ -166,4 +166,4 @@ Mirascope uses [Semantic Versioning](https://semver.org/).
|
|
|
166
166
|
|
|
167
167
|
## Licence
|
|
168
168
|
|
|
169
|
-
This project is licensed under the terms of the [MIT License](https://github.com/Mirascope/mirascope/
|
|
169
|
+
This project is licensed under the terms of the [MIT License](https://github.com/Mirascope/mirascope/tree/main/LICENSE).
|
|
@@ -51,7 +51,7 @@ print(book)
|
|
|
51
51
|
|
|
52
52
|
## Tutorials
|
|
53
53
|
|
|
54
|
-
Check out our [quickstart tutorial](https://mirascope.com/
|
|
54
|
+
Check out our [quickstart tutorial](https://mirascope.com/docs/mirascope/getting-started/quickstart) and many other tutorials for an interactive way to getting started with Mirascope.
|
|
55
55
|
|
|
56
56
|
## Usage
|
|
57
57
|
|
|
@@ -63,4 +63,4 @@ Mirascope uses [Semantic Versioning](https://semver.org/).
|
|
|
63
63
|
|
|
64
64
|
## Licence
|
|
65
65
|
|
|
66
|
-
This project is licensed under the terms of the [MIT License](https://github.com/Mirascope/mirascope/
|
|
66
|
+
This project is licensed under the terms of the [MIT License](https://github.com/Mirascope/mirascope/tree/main/LICENSE).
|
|
@@ -15,6 +15,7 @@ from .core import (
|
|
|
15
15
|
BaseToolKit,
|
|
16
16
|
CacheControlPart,
|
|
17
17
|
DocumentPart,
|
|
18
|
+
DocumentURLPart,
|
|
18
19
|
ImagePart,
|
|
19
20
|
ImageURLPart,
|
|
20
21
|
LocalProvider,
|
|
@@ -43,6 +44,7 @@ __all__ = [
|
|
|
43
44
|
"BaseToolKit",
|
|
44
45
|
"CacheControlPart",
|
|
45
46
|
"DocumentPart",
|
|
47
|
+
"DocumentURLPart",
|
|
46
48
|
"ImagePart",
|
|
47
49
|
"ImageURLPart",
|
|
48
50
|
"LocalProvider",
|
|
@@ -16,6 +16,7 @@ from .base import (
|
|
|
16
16
|
CacheControlPart,
|
|
17
17
|
CostMetadata,
|
|
18
18
|
DocumentPart,
|
|
19
|
+
DocumentURLPart,
|
|
19
20
|
FromCallArgs,
|
|
20
21
|
ImagePart,
|
|
21
22
|
ImageURLPart,
|
|
@@ -77,6 +78,7 @@ __all__ = [
|
|
|
77
78
|
"CacheControlPart",
|
|
78
79
|
"CostMetadata",
|
|
79
80
|
"DocumentPart",
|
|
81
|
+
"DocumentURLPart",
|
|
80
82
|
"FromCallArgs",
|
|
81
83
|
"ImagePart",
|
|
82
84
|
"ImageURLPart",
|
|
@@ -16,6 +16,7 @@ from .message_param import (
|
|
|
16
16
|
BaseMessageParam,
|
|
17
17
|
CacheControlPart,
|
|
18
18
|
DocumentPart,
|
|
19
|
+
DocumentURLPart,
|
|
19
20
|
ImagePart,
|
|
20
21
|
ImageURLPart,
|
|
21
22
|
TextPart,
|
|
@@ -59,6 +60,7 @@ __all__ = [
|
|
|
59
60
|
"CommonCallParams",
|
|
60
61
|
"CostMetadata",
|
|
61
62
|
"DocumentPart",
|
|
63
|
+
"DocumentURLPart",
|
|
62
64
|
"FromCallArgs",
|
|
63
65
|
"GenerateJsonSchemaNoTitles",
|
|
64
66
|
"ImagePart",
|
|
@@ -14,6 +14,7 @@ from ..message_param import (
|
|
|
14
14
|
BaseMessageParam,
|
|
15
15
|
CacheControlPart,
|
|
16
16
|
DocumentPart,
|
|
17
|
+
DocumentURLPart,
|
|
17
18
|
ImagePart,
|
|
18
19
|
ImageURLPart,
|
|
19
20
|
TextPart,
|
|
@@ -37,7 +38,8 @@ def _convert_message_sequence_part_to_content_part(
|
|
|
37
38
|
| AudioURLPart
|
|
38
39
|
| AudioSegment
|
|
39
40
|
| Wave_read
|
|
40
|
-
| DocumentPart
|
|
41
|
+
| DocumentPart
|
|
42
|
+
| DocumentURLPart,
|
|
41
43
|
) -> (
|
|
42
44
|
TextPart
|
|
43
45
|
| ImagePart
|
|
@@ -45,6 +47,7 @@ def _convert_message_sequence_part_to_content_part(
|
|
|
45
47
|
| AudioPart
|
|
46
48
|
| AudioURLPart
|
|
47
49
|
| CacheControlPart
|
|
50
|
+
| DocumentURLPart
|
|
48
51
|
| DocumentPart
|
|
49
52
|
):
|
|
50
53
|
if isinstance(message_sequence_part, str):
|
|
@@ -57,7 +60,8 @@ def _convert_message_sequence_part_to_content_part(
|
|
|
57
60
|
| AudioPart
|
|
58
61
|
| AudioURLPart
|
|
59
62
|
| CacheControlPart
|
|
60
|
-
| DocumentPart
|
|
63
|
+
| DocumentPart
|
|
64
|
+
| DocumentURLPart,
|
|
61
65
|
):
|
|
62
66
|
return message_sequence_part
|
|
63
67
|
elif has_pil_module and isinstance(message_sequence_part, Image.Image):
|
|
@@ -107,6 +111,7 @@ def convert_message_content_to_message_param_content(
|
|
|
107
111
|
| AudioSegment
|
|
108
112
|
| Wave_read
|
|
109
113
|
| DocumentPart
|
|
114
|
+
| DocumentURLPart,
|
|
110
115
|
],
|
|
111
116
|
) -> (
|
|
112
117
|
list[
|
|
@@ -117,6 +122,7 @@ def convert_message_content_to_message_param_content(
|
|
|
117
122
|
| AudioURLPart
|
|
118
123
|
| CacheControlPart
|
|
119
124
|
| DocumentPart
|
|
125
|
+
| DocumentURLPart,
|
|
120
126
|
]
|
|
121
127
|
| str
|
|
122
128
|
):
|
|
@@ -151,6 +157,7 @@ def convert_messages_to_message_params(
|
|
|
151
157
|
| AudioSegment
|
|
152
158
|
| Wave_read
|
|
153
159
|
| DocumentPart
|
|
160
|
+
| DocumentURLPart,
|
|
154
161
|
]
|
|
155
162
|
| list[BaseMessageParam]
|
|
156
163
|
| BaseMessageParam,
|
|
@@ -103,6 +103,18 @@ class DocumentPart(BaseModel):
|
|
|
103
103
|
document: bytes
|
|
104
104
|
|
|
105
105
|
|
|
106
|
+
class DocumentURLPart(BaseModel):
|
|
107
|
+
"""A content part for documents with a URL.
|
|
108
|
+
|
|
109
|
+
Attributes:
|
|
110
|
+
type: Always "document_url"
|
|
111
|
+
url: The URL to the document
|
|
112
|
+
"""
|
|
113
|
+
|
|
114
|
+
type: Literal["document_url"]
|
|
115
|
+
url: str
|
|
116
|
+
|
|
117
|
+
|
|
106
118
|
class ToolCallPart(BaseModel):
|
|
107
119
|
"""A content part for tool.
|
|
108
120
|
|
|
@@ -156,6 +168,7 @@ class BaseMessageParam(BaseModel):
|
|
|
156
168
|
| AudioURLPart
|
|
157
169
|
| CacheControlPart
|
|
158
170
|
| DocumentPart
|
|
171
|
+
| DocumentURLPart
|
|
159
172
|
| ToolCallPart
|
|
160
173
|
| ToolResultPart
|
|
161
174
|
]
|
|
@@ -14,6 +14,7 @@ from .message_param import (
|
|
|
14
14
|
BaseMessageParam,
|
|
15
15
|
CacheControlPart,
|
|
16
16
|
DocumentPart,
|
|
17
|
+
DocumentURLPart,
|
|
17
18
|
ImagePart,
|
|
18
19
|
ImageURLPart,
|
|
19
20
|
TextPart,
|
|
@@ -36,6 +37,7 @@ class Messages:
|
|
|
36
37
|
| AudioSegment
|
|
37
38
|
| Wave_read
|
|
38
39
|
| DocumentPart
|
|
40
|
+
| DocumentURLPart
|
|
39
41
|
]
|
|
40
42
|
| list[BaseMessageParam | Any]
|
|
41
43
|
| BaseMessageParam
|
|
@@ -57,6 +59,7 @@ class Messages:
|
|
|
57
59
|
| AudioSegment
|
|
58
60
|
| Wave_read
|
|
59
61
|
| DocumentPart
|
|
62
|
+
| DocumentURLPart
|
|
60
63
|
],
|
|
61
64
|
) -> BaseMessageParam:
|
|
62
65
|
return BaseMessageParam(
|
|
@@ -80,6 +83,7 @@ class Messages:
|
|
|
80
83
|
| AudioSegment
|
|
81
84
|
| Wave_read
|
|
82
85
|
| DocumentPart
|
|
86
|
+
| DocumentURLPart
|
|
83
87
|
],
|
|
84
88
|
) -> BaseMessageParam:
|
|
85
89
|
return BaseMessageParam(
|
|
@@ -103,6 +107,7 @@ class Messages:
|
|
|
103
107
|
| AudioSegment
|
|
104
108
|
| Wave_read
|
|
105
109
|
| DocumentPart
|
|
110
|
+
| DocumentURLPart
|
|
106
111
|
],
|
|
107
112
|
) -> BaseMessageParam:
|
|
108
113
|
return BaseMessageParam(
|
{mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_convert_message_params.py
RENAMED
|
@@ -16,9 +16,13 @@ from google.genai.types import (
|
|
|
16
16
|
)
|
|
17
17
|
|
|
18
18
|
from ...base import BaseMessageParam
|
|
19
|
-
from ...base._utils import get_audio_type, get_image_type
|
|
19
|
+
from ...base._utils import get_audio_type, get_document_type, get_image_type
|
|
20
20
|
from ...base._utils._parse_content_template import _load_media
|
|
21
|
-
from ._validate_media_type import
|
|
21
|
+
from ._validate_media_type import (
|
|
22
|
+
_check_audio_media_type,
|
|
23
|
+
_check_document_media_type,
|
|
24
|
+
_check_image_media_type,
|
|
25
|
+
)
|
|
22
26
|
|
|
23
27
|
|
|
24
28
|
def _over_file_size_limit(size: int) -> bool:
|
|
@@ -154,9 +158,78 @@ async def _convert_message_params_async(
|
|
|
154
158
|
if _over_file_size_limit(total_payload_size):
|
|
155
159
|
must_upload[index] = blob_dict
|
|
156
160
|
total_payload_size -= audio_size
|
|
161
|
+
elif part.type == "document":
|
|
162
|
+
_check_document_media_type(part.media_type)
|
|
163
|
+
blob_dict = BlobDict(data=part.document, mime_type=part.media_type)
|
|
164
|
+
converted_content.append(PartDict(inline_data=blob_dict))
|
|
165
|
+
document_size = len(part.document)
|
|
166
|
+
total_payload_size += document_size
|
|
167
|
+
if _over_file_size_limit(total_payload_size):
|
|
168
|
+
must_upload[index] = blob_dict
|
|
169
|
+
total_payload_size -= document_size
|
|
170
|
+
elif part.type == "document_url":
|
|
171
|
+
if (
|
|
172
|
+
client.vertexai
|
|
173
|
+
or not part.url.startswith(("https://", "http://"))
|
|
174
|
+
or "generativelanguage.googleapis.com" in part.url
|
|
175
|
+
):
|
|
176
|
+
converted_content.append(
|
|
177
|
+
PartDict(
|
|
178
|
+
file_data=FileDataDict(
|
|
179
|
+
file_uri=part.url, mime_type=None
|
|
180
|
+
)
|
|
181
|
+
)
|
|
182
|
+
)
|
|
183
|
+
else:
|
|
184
|
+
media_type = None
|
|
185
|
+
try:
|
|
186
|
+
downloaded_document = _load_media(part.url)
|
|
187
|
+
document_types = {
|
|
188
|
+
"pdf": "application/pdf",
|
|
189
|
+
"html": "text/html",
|
|
190
|
+
"xml": "text/xml",
|
|
191
|
+
"rtf": "text/rtf",
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
try:
|
|
195
|
+
document_type_ext = get_document_type(
|
|
196
|
+
downloaded_document
|
|
197
|
+
)
|
|
198
|
+
media_type = document_types.get(document_type_ext)
|
|
199
|
+
except ValueError:
|
|
200
|
+
try:
|
|
201
|
+
downloaded_document.decode("utf-8")
|
|
202
|
+
media_type = "text/plain"
|
|
203
|
+
except UnicodeDecodeError:
|
|
204
|
+
pass
|
|
205
|
+
|
|
206
|
+
if media_type is None:
|
|
207
|
+
raise ValueError(
|
|
208
|
+
f"Unsupported document format detected for URL: {part.url}. "
|
|
209
|
+
"Google API only supports the following document formats: "
|
|
210
|
+
"PDF, JavaScript, Python, TXT, HTML, CSS, Markdown, CSV, XML and RTF. "
|
|
211
|
+
"Please provide a document in one of these supported formats."
|
|
212
|
+
)
|
|
213
|
+
|
|
214
|
+
_check_document_media_type(media_type)
|
|
215
|
+
blob_dict = BlobDict(
|
|
216
|
+
data=downloaded_document, mime_type=media_type
|
|
217
|
+
)
|
|
218
|
+
converted_content.append(PartDict(inline_data=blob_dict))
|
|
219
|
+
document_size = len(downloaded_document)
|
|
220
|
+
total_payload_size += document_size
|
|
221
|
+
if _over_file_size_limit(total_payload_size):
|
|
222
|
+
must_upload[index] = blob_dict
|
|
223
|
+
total_payload_size -= document_size
|
|
224
|
+
except ValueError as e:
|
|
225
|
+
raise ValueError(
|
|
226
|
+
f"Failed to process document from URL: {part.url}. "
|
|
227
|
+
f"Error details: {str(e)}. "
|
|
228
|
+
"Please ensure the URL is accessible and points to a supported document format."
|
|
229
|
+
)
|
|
157
230
|
else:
|
|
158
231
|
raise ValueError(
|
|
159
|
-
"Google currently only supports text, tool_call, tool_result, image, and
|
|
232
|
+
"Google currently only supports text, tool_call, tool_result, image, audio, and document parts. "
|
|
160
233
|
f"Part provided: {part.type}"
|
|
161
234
|
)
|
|
162
235
|
|
{mirascope-1.23.4 → mirascope-1.24.0}/mirascope/core/google/_utils/_message_param_converter.py
RENAMED
|
@@ -8,7 +8,7 @@ from google.genai.types import (
|
|
|
8
8
|
)
|
|
9
9
|
|
|
10
10
|
from mirascope.core import BaseMessageParam
|
|
11
|
-
from mirascope.core.base import DocumentPart, ImagePart, TextPart
|
|
11
|
+
from mirascope.core.base import DocumentPart, DocumentURLPart, ImagePart, TextPart
|
|
12
12
|
from mirascope.core.base._utils._base_message_param_converter import (
|
|
13
13
|
BaseMessageParamConverter,
|
|
14
14
|
)
|
|
@@ -21,7 +21,11 @@ from mirascope.core.base.message_param import (
|
|
|
21
21
|
)
|
|
22
22
|
from mirascope.core.google._utils import convert_message_params
|
|
23
23
|
|
|
24
|
-
from ._validate_media_type import
|
|
24
|
+
from ._validate_media_type import (
|
|
25
|
+
_check_audio_media_type,
|
|
26
|
+
_check_document_media_type,
|
|
27
|
+
_check_image_media_type,
|
|
28
|
+
)
|
|
25
29
|
|
|
26
30
|
|
|
27
31
|
class GoogleMessageParamConverter(BaseMessageParamConverter):
|
|
@@ -78,7 +82,21 @@ class GoogleMessageParamConverter(BaseMessageParamConverter):
|
|
|
78
82
|
audio=data,
|
|
79
83
|
)
|
|
80
84
|
)
|
|
81
|
-
elif mime_type
|
|
85
|
+
elif mime_type in [
|
|
86
|
+
"application/pdf",
|
|
87
|
+
"application/x-javascript",
|
|
88
|
+
"text/javascript",
|
|
89
|
+
"application/x-python",
|
|
90
|
+
"text/x-python",
|
|
91
|
+
"text/plain",
|
|
92
|
+
"text/html",
|
|
93
|
+
"text/css",
|
|
94
|
+
"text/csv",
|
|
95
|
+
"text/xml",
|
|
96
|
+
"text/rtf",
|
|
97
|
+
"text/md",
|
|
98
|
+
]:
|
|
99
|
+
_check_document_media_type(mime_type)
|
|
82
100
|
content_list.append(
|
|
83
101
|
DocumentPart(
|
|
84
102
|
type="document", media_type=mime_type, document=data
|
|
@@ -106,6 +124,26 @@ class GoogleMessageParamConverter(BaseMessageParamConverter):
|
|
|
106
124
|
url=cast(str, part.file_data.file_uri),
|
|
107
125
|
)
|
|
108
126
|
)
|
|
127
|
+
elif mime_type in [
|
|
128
|
+
"application/pdf",
|
|
129
|
+
"application/x-javascript",
|
|
130
|
+
"text/javascript",
|
|
131
|
+
"application/x-python",
|
|
132
|
+
"text/x-python",
|
|
133
|
+
"text/plain",
|
|
134
|
+
"text/html",
|
|
135
|
+
"text/css",
|
|
136
|
+
"text/csv",
|
|
137
|
+
"text/xml",
|
|
138
|
+
"text/rtf",
|
|
139
|
+
"text/md",
|
|
140
|
+
]:
|
|
141
|
+
content_list.append(
|
|
142
|
+
DocumentURLPart(
|
|
143
|
+
type="document_url",
|
|
144
|
+
url=cast(str, part.file_data.file_uri),
|
|
145
|
+
)
|
|
146
|
+
)
|
|
109
147
|
else:
|
|
110
148
|
# Since `FileDataDict` handles any file data, we use
|
|
111
149
|
# `ImageURLPart` for unknown mime types
|
|
@@ -148,7 +186,7 @@ class GoogleMessageParamConverter(BaseMessageParamConverter):
|
|
|
148
186
|
)
|
|
149
187
|
else:
|
|
150
188
|
raise ValueError(
|
|
151
|
-
"Part does not contain any supported content (text, image, or document)."
|
|
189
|
+
"Part does not contain any supported content (text, image, audio, or document)."
|
|
152
190
|
)
|
|
153
191
|
|
|
154
192
|
if len(content_list) == 1 and isinstance(content_list[0], TextPart):
|
|
@@ -32,3 +32,27 @@ def _check_audio_media_type(media_type: str) -> None:
|
|
|
32
32
|
"Google currently only supports WAV, MP3, AIFF, AAC, OGG, "
|
|
33
33
|
"and FLAC audio file types."
|
|
34
34
|
)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def _check_document_media_type(media_type: str) -> None:
|
|
38
|
+
"""Raises a `ValueError` if the document media type is not supported."""
|
|
39
|
+
|
|
40
|
+
if media_type not in [
|
|
41
|
+
"application/pdf",
|
|
42
|
+
"application/x-javascript",
|
|
43
|
+
"text/javascript",
|
|
44
|
+
"application/x-python",
|
|
45
|
+
"text/x-python",
|
|
46
|
+
"text/plain",
|
|
47
|
+
"text/html",
|
|
48
|
+
"text/css",
|
|
49
|
+
"text/csv",
|
|
50
|
+
"text/xml",
|
|
51
|
+
"text/rtf",
|
|
52
|
+
"text/md",
|
|
53
|
+
]:
|
|
54
|
+
raise ValueError(
|
|
55
|
+
f"Unsupported document media type: {media_type}. "
|
|
56
|
+
"Google currently only supports PDF, JavaScript, Python, TXT, HTML, CSS, "
|
|
57
|
+
"CSV, XML, RTF, and Markdown document types."
|
|
58
|
+
)
|