swarmauri-standard 0.10.1.dev3__tar.gz → 0.11.0.dev2__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.
- swarmauri_standard-0.11.0.dev2/PKG-INFO +213 -0
- swarmauri_standard-0.11.0.dev2/README.md +170 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/pyproject.toml +21 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/README.md +3 -1
- swarmauri_standard-0.11.0.dev2/swarmauri_standard/__init__.py +66 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/agents/QAAgent.py +2 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/agents/RagAgent.py +14 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/agents/ToolAgent.py +9 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/agents/__init__.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chains/CallableChain.py +6 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chains/ContextChain.py +12 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chunkers/DelimiterBasedChunker.py +10 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chunkers/FixedLengthChunker.py +10 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chunkers/MdSnippetChunker.py +9 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chunkers/SentenceChunker.py +8 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chunkers/SlidingWindowChunker.py +5 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chunkers/__init__.py +5 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/conversations/Conversation.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/conversations/MaxSizeConversation.py +6 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/conversations/MaxSystemContextConversation.py +25 -10
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/conversations/SessionCacheConversation.py +19 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/conversations/__init__.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/dataconnectors/GoogleDriveDataConnector.py +40 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/dataconnectors/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/decorators/deprecate.py +21 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/decorators/retry_on_status_codes.py +19 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/decorators/tool_decorator.py +9 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/CanberraDistance.py +30 -13
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/ChebyshevDistance.py +21 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/ChiSquaredDistance.py +17 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/CosineDistance.py +28 -12
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/EuclideanDistance.py +17 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/HaversineDistance.py +28 -12
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/JaccardIndexDistance.py +21 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/LevenshteinDistance.py +40 -16
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/ManhattanDistance.py +22 -10
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/SorensenDiceDistance.py +30 -11
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/SquaredEuclideanDistance.py +26 -10
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/distances/__init__.py +8 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/documents/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/embeddings/CohereEmbedding.py +30 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/embeddings/GeminiEmbedding.py +39 -17
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/embeddings/MistralEmbedding.py +40 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/embeddings/OpenAIEmbedding.py +32 -13
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/embeddings/TfidfEmbedding.py +26 -12
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/embeddings/VoyageEmbedding.py +21 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/embeddings/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/evaluator_results/EvalResult.py +21 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/exceptions/IndexErrorWithContext.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/exceptions/__init__.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/factories/Factory.py +15 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/factories/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/image_gens/BlackForestImgGenModel.py +38 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/image_gens/DeepInfraImgGenModel.py +29 -14
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/image_gens/FalAIImgGenModel.py +53 -21
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/image_gens/HyperbolicImgGenModel.py +32 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/image_gens/OpenAIImgGenModel.py +24 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/image_gens/__init__.py +4 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/EuclideanInnerProduct.py +57 -21
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/FrobeniusComplexInnerProduct.py +45 -18
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/FrobeniusRealInnerProduct.py +37 -12
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/HermitianInnerProduct.py +59 -22
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/RKHSInnerProduct.py +41 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/SobolevH1InnerProduct.py +75 -25
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/TraceFormWeightedInnerProduct.py +77 -26
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/WeightedL2InnerProduct.py +97 -33
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/key_providers/InMemoryKeyProvider.py +21 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/AI21StudioModel.py +76 -30
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/AnthropicModel.py +103 -55
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/AnthropicToolModel.py +145 -71
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/CerebrasModel.py +23 -13
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/CohereModel.py +107 -56
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/CohereToolModel.py +131 -66
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/DeepInfraModel.py +87 -70
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/DeepSeekModel.py +97 -46
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/FalAIVisionModel.py +46 -19
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/GeminiProModel.py +93 -49
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/GeminiToolModel.py +92 -40
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/GroqAIAudio.py +40 -18
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/GroqModel.py +70 -29
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/GroqToolModel.py +119 -48
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/GroqVisionModel.py +66 -28
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/HyperbolicAudioTTS.py +16 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/HyperbolicModel.py +45 -16
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/HyperbolicVisionModel.py +70 -30
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/LLM.py +57 -26
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/LlamaCppModel.py +46 -18
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/MistralModel.py +64 -28
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/MistralToolModel.py +129 -51
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/OpenAIAudio.py +37 -19
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/OpenAIAudioTTS.py +34 -14
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/OpenAIModel.py +88 -64
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/OpenAIReasonModel.py +75 -45
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/OpenAIToolModel.py +156 -87
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/PerplexityModel.py +158 -76
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/PlayHTModel.py +81 -33
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/WhisperLargeModel.py +36 -18
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/llms/__init__.py +14 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/BorderFormatter.py +5 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/ColorFormatter.py +12 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/ContextualFormatter.py +12 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/HTMLFormatter.py +14 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/IndentedFormatter.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/JSONFormatter.py +8 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/KeyValueFormatter.py +14 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/MultilineFormatter.py +5 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/EmailLoggingHandler.py +7 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/FileLoggingHandler.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/HTTPLoggingHandler.py +10 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/HTTPSLoggingHandler.py +21 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/MemoryLoggingHandler.py +14 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/NullLoggingHandler.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/QueueLoggingHandler.py +12 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/RichLoggingHandler.py +8 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/RotatingFileLoggingHandler.py +12 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/StreamLoggingHandler.py +15 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/SysLogLoggingHandler.py +19 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/TimedRotatingFileLoggingHandler.py +11 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/CompletenessMeasurement.py +22 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/DistinctivenessMeasurement.py +23 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/MeanMeasurement.py +10 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/MiscMeasurement.py +17 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/MissingnessMeasurement.py +20 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/PatternMatchingMeasurement.py +9 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/RatioOfSumsMeasurement.py +6 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/UniquenessMeasurement.py +22 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/ZeroMeasurement.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/__init__.py +5 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/messages/FunctionMessage.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/messages/HumanMessage.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/messages/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/AbsoluteValueMetric.py +26 -10
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/DiscreteMetric.py +11 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/EuclideanMetric.py +75 -25
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/FrobeniusMetric.py +29 -10
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/HammingMetric.py +43 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/LevenshteinMetric.py +64 -21
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/LpMetric.py +33 -11
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/SobolevMetric.py +86 -29
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/SupremumMetric.py +42 -17
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/norms/GeneralLpNorm.py +69 -26
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/norms/L1ManhattanNorm.py +60 -19
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/norms/L2EuclideanNorm.py +95 -33
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/norms/LInfNorm.py +73 -29
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/norms/SobolevNorm.py +108 -40
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/norms/SupremumComplexNorm.py +63 -26
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/CSVParser.py +15 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/HTMLTagStripParser.py +8 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/Md2HtmlParser.py +6 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/OpenAPISpecParser.py +10 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/PhoneNumberExtractorParser.py +8 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/PythonParser.py +7 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/RegExParser.py +10 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/URLExtractorParser.py +7 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/XMLParser.py +11 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/parsers/__init__.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pipelines/Pipeline.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pipelines/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/programs/Program.py +25 -10
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/prompt_templates/PromptTemplate.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/prompts/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pseudometrics/EquivalenceRelationPseudometric.py +41 -18
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pseudometrics/FunctionDifferencePseudometric.py +88 -35
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pseudometrics/LpPseudometric.py +112 -33
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pseudometrics/ProjectionPseudometricR2.py +73 -29
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pseudometrics/ZeroPseudometric.py +50 -17
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/AnthropicSchemaConverter.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/CohereSchemaConverter.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/GeminiSchemaConverter.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/GroqSchemaConverter.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/MistralSchemaConverter.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/OpenAISchemaConverter.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/ShuttleAISchemaConverter.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/schema_converters/__init__.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/seminorms/CoordinateProjectionSeminorm.py +76 -26
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/seminorms/LpSeminorm.py +28 -11
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/seminorms/PartialSumSeminorm.py +54 -16
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/seminorms/PointEvaluationSeminorm.py +54 -16
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/seminorms/TraceSeminorm.py +34 -11
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/seminorms/ZeroSeminorm.py +12 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/service_registries/ServiceRegistry.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/service_registries/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/BhattacharyyaCoefficientSimilarity.py +59 -22
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/BrayCurtisSimilarity.py +37 -14
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/CosineSimilarity.py +68 -30
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/DiceSimilarity.py +18 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/GaussianRBFSimilarity.py +18 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/HellingerAffinitySimilarity.py +63 -26
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/JaccardIndexSimilarity.py +6 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/OverlapCoefficientSimilarity.py +47 -19
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/TanimotoSimilarity.py +58 -24
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/TriangleCosineSimilarity.py +32 -12
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/state/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/stt/GroqSTT.py +39 -17
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/stt/OpenaiSTT.py +37 -17
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/stt/WhisperLargeSTT.py +31 -15
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/swarms/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/task_mgmt_strategies/RoundRobinStrategy.py +6 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/task_mgmt_strategies/__init__.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/AnthropicToolModel.py +146 -78
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/CohereToolModel.py +180 -81
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/DeepInfraToolModel.py +101 -41
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/GeminiToolModel.py +107 -51
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/GroqToolModel.py +84 -34
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/MistralToolModel.py +110 -50
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/OpenAIToolModel.py +125 -79
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/ToolLLM.py +104 -38
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/toolkits/AccessibilityToolkit.py +3 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/toolkits/__init__.py +3 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/AutomatedReadabilityIndexTool.py +12 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/CalculatorTool.py +24 -11
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/CodeExtractorTool.py +22 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/CodeInterpreterTool.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/ColemanLiauIndexTool.py +13 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/FleschKincaidTool.py +21 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/FleschReadingEaseTool.py +12 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/GunningFogTool.py +5 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/ImportMemoryModuleTool.py +22 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/JSONRequestsTool.py +42 -20
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/RequestsTool.py +57 -35
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/SubprocessTool.py +9 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/TemperatureConverterTool.py +14 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/TestTool.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/WeatherTool.py +6 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/__init__.py +12 -7
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tracing/CallableTracer.py +8 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tracing/ChainTracer.py +6 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tracing/SimpleTracer.py +8 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tracing/TracedVariable.py +9 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tracing/VariableTracer.py +6 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tracing/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/transports/PubSubTransport.py +8 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/transports/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tts/HyperbolicTTS.py +13 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tts/OpenaiTTS.py +34 -12
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tts/PlayhtTTS.py +76 -28
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/_get_subclasses.py +12 -5
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/_lazy_import.py +7 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/apply_metaclass.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/base64_to_img_url.py +5 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/decorate.py +8 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/file_path_to_img_url.py +5 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/get_class_hash.py +4 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/img_url_to_base64.py +2 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/img_url_to_file_path.py +2 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/img_url_to_in_memory_img.py +2 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/in_memory_img_to_img_url.py +5 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/load_documents_from_folder.py +27 -10
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/method_signature_extractor_decorator.py +18 -6
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/print_notebook_metadata.py +15 -4
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/retry_decorator.py +19 -8
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/sql_log.py +8 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/timeout_wrapper.py +5 -2
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/tool_decorator.py +12 -5
- swarmauri_standard-0.11.0.dev2/swarmauri_standard/vector_stores/CosineSimilarityComparator.py +11 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vector_stores/TfidfVectorStore.py +6 -9
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vector_stores/__init__.py +4 -3
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vectors/__init__.py +2 -1
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vlms/FalVLM.py +53 -22
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vlms/GroqVLM.py +64 -26
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vlms/HyperbolicVLM.py +67 -27
- swarmauri_standard-0.10.1.dev3/PKG-INFO +0 -342
- swarmauri_standard-0.10.1.dev3/README.md +0 -307
- swarmauri_standard-0.10.1.dev3/swarmauri_standard/__init__.py +0 -44
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/LICENSE +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/agents/SimpleConversationAgent.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chains/ChainStep.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chains/PromptContextChain.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/chains/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/decorators/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/decorators/maybe_async.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/documents/Document.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/evaluator_pools/EvaluatorPool.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/evaluator_pools/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/evaluator_results/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/factories/AgentFactory.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/inner_products/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/key_providers/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/LoggerFormatter.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_formatters/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/logger_handlers/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/loggers/Logger.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/loggers/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/FirstImpressionMeasurement.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/measurements/StaticMeasurement.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/messages/AgentMessage.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/messages/SystemMessage.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/metrics/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/norms/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/programs/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/prompt_templates/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/prompts/Prompt.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/prompts/PromptGenerator.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/prompts/PromptMatrix.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/pseudometrics/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/rate_limits/TokenBucketRateLimit.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/rate_limits/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/seminorms/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/signing/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/similarities/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/state/DictState.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/stt/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/swarms/Swarm.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tool_llms/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/toolkits/Toolkit.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/AdditionTool.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tools/Parameter.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tracing/SimpleTraceContext.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/tts/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/__init__.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/base64_encoder.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/base64_to_file_path.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/base64_to_in_memory_img.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/duration_manager.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/file_path_to_base64.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/file_path_to_in_memory_img.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/in_memory_img_to_base64.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/in_memory_img_to_file_path.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/json_validator.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/load_documents_from_json.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/utils/memoize.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vectors/Vector.py +0 -0
- {swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/vlms/__init__.py +0 -0
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: swarmauri_standard
|
|
3
|
+
Version: 0.11.0.dev2
|
|
4
|
+
Summary: First-party Swarmauri standard components for agents, tools, parsers, vectors, model adapters, and composable intelligence workflows.
|
|
5
|
+
License-Expression: Apache-2.0
|
|
6
|
+
License-File: LICENSE
|
|
7
|
+
Keywords: swarmauri,standard-components,ai-sdk,agents,tools,toolkits,parsers,vector-stores,llms,embeddings,schema-converters,composable-intelligence,dynamic-json-schema,discriminated-unions,pydantic,schema-first,serialization,yaml,toml,plugin-factory,typed-components
|
|
8
|
+
Author: Jacob Stewart
|
|
9
|
+
Author-email: jacob@swarmauri.com
|
|
10
|
+
Requires-Python: >=3.10,<3.15
|
|
11
|
+
Classifier: Development Status :: 4 - Beta
|
|
12
|
+
Classifier: Intended Audience :: Developers
|
|
13
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Classifier: Programming Language :: Python
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
23
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
24
|
+
Classifier: Topic :: Scientific/Engineering :: Information Analysis
|
|
25
|
+
Classifier: Topic :: Software Development :: Libraries
|
|
26
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
27
|
+
Classifier: Topic :: Text Processing
|
|
28
|
+
Requires-Dist: aiofiles
|
|
29
|
+
Requires-Dist: h11 (>=0.16.0)
|
|
30
|
+
Requires-Dist: httpx (>=0.27.0)
|
|
31
|
+
Requires-Dist: joblib (>=1.4.0)
|
|
32
|
+
Requires-Dist: numpy
|
|
33
|
+
Requires-Dist: pandas
|
|
34
|
+
Requires-Dist: pillow (>=11.1.0)
|
|
35
|
+
Requires-Dist: pydantic (>=2.9.2)
|
|
36
|
+
Requires-Dist: rich
|
|
37
|
+
Requires-Dist: swarmauri_base
|
|
38
|
+
Requires-Dist: swarmauri_core
|
|
39
|
+
Requires-Dist: toml (>=0.10.2)
|
|
40
|
+
Requires-Dist: typing_extensions
|
|
41
|
+
Description-Content-Type: text/markdown
|
|
42
|
+
|
|
43
|
+

|
|
44
|
+
|
|
45
|
+
<p align="center">
|
|
46
|
+
<a href="https://pepy.tech/project/swarmauri_standard/">
|
|
47
|
+
<img src="https://static.pepy.tech/badge/swarmauri_standard/month" alt="PyPI - Downloads"/></a>
|
|
48
|
+
<a href="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/swarmauri_standard/">
|
|
49
|
+
<img alt="Hits" src="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/swarmauri_standard.svg"/></a>
|
|
50
|
+
<a href="https://pypi.org/project/swarmauri_standard/">
|
|
51
|
+
<img src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-blue" alt="PyPI - Python Version"/></a>
|
|
52
|
+
<a href="https://pypi.org/project/swarmauri_standard/">
|
|
53
|
+
<img src="https://img.shields.io/pypi/l/swarmauri_standard" alt="PyPI - License"/></a>
|
|
54
|
+
<a href="https://pypi.org/project/swarmauri_standard/">
|
|
55
|
+
<img src="https://img.shields.io/pypi/v/swarmauri_standard?label=swarmauri_standard&color=green" alt="PyPI - swarmauri_standard"/></a>
|
|
56
|
+
<a href="https://discord.gg/N4UpBuQv8T">
|
|
57
|
+
<img src="https://img.shields.io/badge/Discord-Join%20Chat-5865F2?logo=discord&logoColor=white" alt="Discord"/></a></p>
|
|
58
|
+
|
|
59
|
+
# Swarmauri Standard
|
|
60
|
+
|
|
61
|
+
`swarmauri_standard` provides first-party, ready-to-use Swarmauri components built on `swarmauri_core` interfaces and `swarmauri_base` component behavior. It is the standard component bundle for agents, chains, chunkers, conversations, documents, tools, toolkits, parsers, prompts, schema converters, metrics, similarities, deprecated distance compatibility shims, vectors, vector stores, tracing utilities, STT/TTS/VLM adapters, signing helpers, and key-provider components.
|
|
62
|
+
|
|
63
|
+
## Why Swarmauri Standard?
|
|
64
|
+
|
|
65
|
+
`swarmauri_standard` provides maintained first-party components that users can install and instantiate directly. It also demonstrates the expected Swarmauri component style: typed base classes, direct class imports, dynamic serialization, and namespace-ready registration.
|
|
66
|
+
|
|
67
|
+
## FAQ
|
|
68
|
+
|
|
69
|
+
### Q: What kinds of components are included?
|
|
70
|
+
|
|
71
|
+
A: The package includes agents, chains, chunkers, conversations, documents, tools, toolkits, parsers, prompts, schema converters, metrics, similarities, deprecated distance compatibility shims, vectors, vector stores, tracing utilities, STT/TTS/VLM adapters, signing helpers, and key-provider components.
|
|
72
|
+
|
|
73
|
+
### Q: Is this package the same as `swarmauri`?
|
|
74
|
+
|
|
75
|
+
A: No. `swarmauri` provides the namespace importer and plugin discovery layer. `swarmauri_standard` provides concrete first-party implementation classes.
|
|
76
|
+
|
|
77
|
+
### Q: Should examples instantiate plugins directly?
|
|
78
|
+
|
|
79
|
+
A: Yes. Direct class imports and direct instantiation are the preferred documented workflow unless a package explicitly requires another integration pattern.
|
|
80
|
+
|
|
81
|
+
## Features
|
|
82
|
+
|
|
83
|
+
- Standard agents including question-answering, RAG, simple conversation, and tool-using agent patterns.
|
|
84
|
+
- Tool and toolkit components such as calculator, HTTP request, readability, code extraction, temperature conversion, weather, and accessibility utilities.
|
|
85
|
+
- Parser and document components for CSV, XML, OpenAPI specs, markdown-to-HTML, URLs, regular expressions, Python code, and phone-number extraction.
|
|
86
|
+
- Chunkers, conversations, prompts, prompt templates, chains, pipelines, service registries, state objects, and tracing helpers for application workflows.
|
|
87
|
+
- Deprecated distance compatibility shims, vectors, vector stores, measurements, metrics, norms, similarities, and related numerical components.
|
|
88
|
+
- Model adapter classes for LLM, tool LLM, embedding, image generation, STT, TTS, OCR, and VLM workflows where provider configuration is available.
|
|
89
|
+
- Signing and key-provider components that align with Swarmauri's security-oriented interfaces.
|
|
90
|
+
- Dynamic JSON, YAML, and TOML serialization through `ComponentBase`, `DynamicBase`, and `SubclassUnion`.
|
|
91
|
+
- Python 3.10, 3.11, 3.12, 3.13, and 3.14 support.
|
|
92
|
+
|
|
93
|
+
## Installation
|
|
94
|
+
|
|
95
|
+
Install with `uv`:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
uv add swarmauri_standard
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Install with `pip`:
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
pip install swarmauri_standard
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Usage
|
|
108
|
+
|
|
109
|
+
Use standard components directly from their implementation modules:
|
|
110
|
+
|
|
111
|
+
```python
|
|
112
|
+
from swarmauri_standard.tools.CalculatorTool import CalculatorTool
|
|
113
|
+
|
|
114
|
+
calculator = CalculatorTool()
|
|
115
|
+
result = calculator("add", 5, 3)
|
|
116
|
+
|
|
117
|
+
assert result == {"operation": "add", "calculated_result": "8.0"}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Create documents and serialize them as Swarmauri components:
|
|
121
|
+
|
|
122
|
+
```python
|
|
123
|
+
from swarmauri_standard.documents.Document import Document
|
|
124
|
+
|
|
125
|
+
doc = Document(content="Composable intelligence infrastructure")
|
|
126
|
+
payload = doc.model_dump_json()
|
|
127
|
+
restored = Document.model_validate_json(payload)
|
|
128
|
+
|
|
129
|
+
assert restored.type == "Document"
|
|
130
|
+
assert restored.content == doc.content
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
Hydrate registered standard components through a base-family union:
|
|
134
|
+
|
|
135
|
+
```python
|
|
136
|
+
from pydantic import BaseModel
|
|
137
|
+
|
|
138
|
+
from swarmauri_base.DynamicBase import SubclassUnion
|
|
139
|
+
from swarmauri_base.toolkits.ToolkitBase import ToolkitBase
|
|
140
|
+
from swarmauri_standard.toolkits.Toolkit import Toolkit
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
class ToolkitEnvelope(BaseModel):
|
|
144
|
+
toolkit: SubclassUnion[ToolkitBase]
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
payload = ToolkitEnvelope(toolkit=Toolkit()).model_dump_json()
|
|
148
|
+
restored = ToolkitEnvelope.model_validate_json(payload)
|
|
149
|
+
|
|
150
|
+
assert isinstance(restored.toolkit, Toolkit)
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## Component Families
|
|
154
|
+
|
|
155
|
+
The package includes these standard component families:
|
|
156
|
+
|
|
157
|
+
- Agents: `QAAgent`, `RagAgent`, `SimpleConversationAgent`, and `ToolAgent`.
|
|
158
|
+
- Chains and workflow: callable chains, chain steps, context chains, prompt context chains, pipelines, service registries, swarms, and round-robin task management.
|
|
159
|
+
- Text and document processing: chunkers, documents, conversations, prompts, prompt templates, parsers, messages, and schema converters.
|
|
160
|
+
- Tools and toolkits: calculator, arithmetic, HTTP requests, JSON requests, code extraction, code interpretation, readability scoring, weather, temperature conversion, parameters, accessibility toolkit, and generic toolkit support.
|
|
161
|
+
- Vector and numerical work: vectors, TF-IDF vector store, deprecated distance compatibility shims, measurements, metrics, norms, similarities, pseudometrics, seminorms, matrices, tensors, and inner products.
|
|
162
|
+
- AI model surfaces: LLMs, tool LLMs, embeddings, image generators, OCR, STT, TTS, and VLM classes for supported providers.
|
|
163
|
+
- Runtime support: decorators, tracing, transports, state, logging, and utility classes.
|
|
164
|
+
- Trust and security surfaces: signing and key-provider components that align with Swarmauri's core interfaces.
|
|
165
|
+
|
|
166
|
+
## Distance Migration
|
|
167
|
+
|
|
168
|
+
The `swarmauri_standard.distances` module remains available only as a deprecated compatibility surface. Prefer the active metric and similarity families instead:
|
|
169
|
+
|
|
170
|
+
- `CosineDistance` -> `CosineSimilarity`
|
|
171
|
+
- `EuclideanDistance` -> `EuclideanMetric`
|
|
172
|
+
- `LevenshteinDistance` -> `LevenshteinMetric`
|
|
173
|
+
- `JaccardIndexDistance` -> `JaccardIndexSimilarity`
|
|
174
|
+
- `SorensenDiceDistance` -> `DiceSimilarity`
|
|
175
|
+
- `ChebyshevDistance` -> `SupremumMetric`
|
|
176
|
+
- `ManhattanDistance` -> `LpMetric(p=1)`
|
|
177
|
+
- `MinkowskiDistance` -> `LpMetric(p=<order>)`
|
|
178
|
+
- `SquaredEuclideanDistance` -> `EuclideanMetric` or `GaussianRBFSimilarity`, depending on whether you need metric or similarity semantics
|
|
179
|
+
- `CanberraDistance`, `ChiSquaredDistance`, and `HaversineDistance` do not yet have active drop-in replacements in the workspace
|
|
180
|
+
|
|
181
|
+
## Related Packages
|
|
182
|
+
|
|
183
|
+
Foundational packages:
|
|
184
|
+
|
|
185
|
+
- [swarmauri](https://pypi.org/project/swarmauri/) provides namespace imports and plugin discovery.
|
|
186
|
+
- [swarmauri_core](https://pypi.org/project/swarmauri_core/) provides the interfaces implemented by these standard components.
|
|
187
|
+
- [swarmauri_base](https://pypi.org/project/swarmauri_base/) provides component base classes, mixins, and serialization behavior.
|
|
188
|
+
- [swarmauri_typing](https://pypi.org/project/swarmauri_typing/) provides dynamic typing utilities used by the component model.
|
|
189
|
+
|
|
190
|
+
Related component packages:
|
|
191
|
+
|
|
192
|
+
- [swarmauri_embedding_doc2vec](https://pypi.org/project/swarmauri_embedding_doc2vec/) for Doc2Vec embedding support.
|
|
193
|
+
- [swarmauri_embedding_nmf](https://pypi.org/project/swarmauri_embedding_nmf/) for NMF embedding support.
|
|
194
|
+
- [swarmauri_vectorstore_doc2vec](https://pypi.org/project/swarmauri_vectorstore_doc2vec/) for Doc2Vec vector-store workflows.
|
|
195
|
+
- [swarmauri_standard](https://pypi.org/project/swarmauri_standard/) for the active metric, similarity, and vector-store comparator surface.
|
|
196
|
+
- [swarmauri_tool_matplotlib](https://pypi.org/project/swarmauri_tool_matplotlib/) for Matplotlib tool support.
|
|
197
|
+
- [swarmauri_parser_keywordextractor](https://pypi.org/project/swarmauri_parser_keywordextractor/) for keyword extraction parsing.
|
|
198
|
+
- [swarmauri_signing_ed25519](https://pypi.org/project/swarmauri_signing_ed25519/) for Ed25519 signing.
|
|
199
|
+
|
|
200
|
+
## When To Use This Package
|
|
201
|
+
|
|
202
|
+
Use `swarmauri_standard` when you want maintained first-party implementations that are ready for examples, prototypes, tests, and production workflows where the included component behavior fits. Use smaller standalone component packages when you want a narrower dependency surface for a specific provider, algorithm, or runtime integration.
|
|
203
|
+
|
|
204
|
+
## License
|
|
205
|
+
|
|
206
|
+
Apache-2.0
|
|
207
|
+
|
|
208
|
+
## Contributing
|
|
209
|
+
|
|
210
|
+
When adding standard components, inherit from the matching `swarmauri_base` class, satisfy the `swarmauri_core` interface, register the component type, document direct instantiation, and follow the [Swarmauri SDK contribution guide](https://github.com/swarmauri/swarmauri-sdk/blob/master/CONTRIBUTING.md).
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<a href="https://pepy.tech/project/swarmauri_standard/">
|
|
5
|
+
<img src="https://static.pepy.tech/badge/swarmauri_standard/month" alt="PyPI - Downloads"/></a>
|
|
6
|
+
<a href="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/swarmauri_standard/">
|
|
7
|
+
<img alt="Hits" src="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/swarmauri_standard.svg"/></a>
|
|
8
|
+
<a href="https://pypi.org/project/swarmauri_standard/">
|
|
9
|
+
<img src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-blue" alt="PyPI - Python Version"/></a>
|
|
10
|
+
<a href="https://pypi.org/project/swarmauri_standard/">
|
|
11
|
+
<img src="https://img.shields.io/pypi/l/swarmauri_standard" alt="PyPI - License"/></a>
|
|
12
|
+
<a href="https://pypi.org/project/swarmauri_standard/">
|
|
13
|
+
<img src="https://img.shields.io/pypi/v/swarmauri_standard?label=swarmauri_standard&color=green" alt="PyPI - swarmauri_standard"/></a>
|
|
14
|
+
<a href="https://discord.gg/N4UpBuQv8T">
|
|
15
|
+
<img src="https://img.shields.io/badge/Discord-Join%20Chat-5865F2?logo=discord&logoColor=white" alt="Discord"/></a></p>
|
|
16
|
+
|
|
17
|
+
# Swarmauri Standard
|
|
18
|
+
|
|
19
|
+
`swarmauri_standard` provides first-party, ready-to-use Swarmauri components built on `swarmauri_core` interfaces and `swarmauri_base` component behavior. It is the standard component bundle for agents, chains, chunkers, conversations, documents, tools, toolkits, parsers, prompts, schema converters, metrics, similarities, deprecated distance compatibility shims, vectors, vector stores, tracing utilities, STT/TTS/VLM adapters, signing helpers, and key-provider components.
|
|
20
|
+
|
|
21
|
+
## Why Swarmauri Standard?
|
|
22
|
+
|
|
23
|
+
`swarmauri_standard` provides maintained first-party components that users can install and instantiate directly. It also demonstrates the expected Swarmauri component style: typed base classes, direct class imports, dynamic serialization, and namespace-ready registration.
|
|
24
|
+
|
|
25
|
+
## FAQ
|
|
26
|
+
|
|
27
|
+
### Q: What kinds of components are included?
|
|
28
|
+
|
|
29
|
+
A: The package includes agents, chains, chunkers, conversations, documents, tools, toolkits, parsers, prompts, schema converters, metrics, similarities, deprecated distance compatibility shims, vectors, vector stores, tracing utilities, STT/TTS/VLM adapters, signing helpers, and key-provider components.
|
|
30
|
+
|
|
31
|
+
### Q: Is this package the same as `swarmauri`?
|
|
32
|
+
|
|
33
|
+
A: No. `swarmauri` provides the namespace importer and plugin discovery layer. `swarmauri_standard` provides concrete first-party implementation classes.
|
|
34
|
+
|
|
35
|
+
### Q: Should examples instantiate plugins directly?
|
|
36
|
+
|
|
37
|
+
A: Yes. Direct class imports and direct instantiation are the preferred documented workflow unless a package explicitly requires another integration pattern.
|
|
38
|
+
|
|
39
|
+
## Features
|
|
40
|
+
|
|
41
|
+
- Standard agents including question-answering, RAG, simple conversation, and tool-using agent patterns.
|
|
42
|
+
- Tool and toolkit components such as calculator, HTTP request, readability, code extraction, temperature conversion, weather, and accessibility utilities.
|
|
43
|
+
- Parser and document components for CSV, XML, OpenAPI specs, markdown-to-HTML, URLs, regular expressions, Python code, and phone-number extraction.
|
|
44
|
+
- Chunkers, conversations, prompts, prompt templates, chains, pipelines, service registries, state objects, and tracing helpers for application workflows.
|
|
45
|
+
- Deprecated distance compatibility shims, vectors, vector stores, measurements, metrics, norms, similarities, and related numerical components.
|
|
46
|
+
- Model adapter classes for LLM, tool LLM, embedding, image generation, STT, TTS, OCR, and VLM workflows where provider configuration is available.
|
|
47
|
+
- Signing and key-provider components that align with Swarmauri's security-oriented interfaces.
|
|
48
|
+
- Dynamic JSON, YAML, and TOML serialization through `ComponentBase`, `DynamicBase`, and `SubclassUnion`.
|
|
49
|
+
- Python 3.10, 3.11, 3.12, 3.13, and 3.14 support.
|
|
50
|
+
|
|
51
|
+
## Installation
|
|
52
|
+
|
|
53
|
+
Install with `uv`:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
uv add swarmauri_standard
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Install with `pip`:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
pip install swarmauri_standard
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Usage
|
|
66
|
+
|
|
67
|
+
Use standard components directly from their implementation modules:
|
|
68
|
+
|
|
69
|
+
```python
|
|
70
|
+
from swarmauri_standard.tools.CalculatorTool import CalculatorTool
|
|
71
|
+
|
|
72
|
+
calculator = CalculatorTool()
|
|
73
|
+
result = calculator("add", 5, 3)
|
|
74
|
+
|
|
75
|
+
assert result == {"operation": "add", "calculated_result": "8.0"}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Create documents and serialize them as Swarmauri components:
|
|
79
|
+
|
|
80
|
+
```python
|
|
81
|
+
from swarmauri_standard.documents.Document import Document
|
|
82
|
+
|
|
83
|
+
doc = Document(content="Composable intelligence infrastructure")
|
|
84
|
+
payload = doc.model_dump_json()
|
|
85
|
+
restored = Document.model_validate_json(payload)
|
|
86
|
+
|
|
87
|
+
assert restored.type == "Document"
|
|
88
|
+
assert restored.content == doc.content
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Hydrate registered standard components through a base-family union:
|
|
92
|
+
|
|
93
|
+
```python
|
|
94
|
+
from pydantic import BaseModel
|
|
95
|
+
|
|
96
|
+
from swarmauri_base.DynamicBase import SubclassUnion
|
|
97
|
+
from swarmauri_base.toolkits.ToolkitBase import ToolkitBase
|
|
98
|
+
from swarmauri_standard.toolkits.Toolkit import Toolkit
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
class ToolkitEnvelope(BaseModel):
|
|
102
|
+
toolkit: SubclassUnion[ToolkitBase]
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
payload = ToolkitEnvelope(toolkit=Toolkit()).model_dump_json()
|
|
106
|
+
restored = ToolkitEnvelope.model_validate_json(payload)
|
|
107
|
+
|
|
108
|
+
assert isinstance(restored.toolkit, Toolkit)
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Component Families
|
|
112
|
+
|
|
113
|
+
The package includes these standard component families:
|
|
114
|
+
|
|
115
|
+
- Agents: `QAAgent`, `RagAgent`, `SimpleConversationAgent`, and `ToolAgent`.
|
|
116
|
+
- Chains and workflow: callable chains, chain steps, context chains, prompt context chains, pipelines, service registries, swarms, and round-robin task management.
|
|
117
|
+
- Text and document processing: chunkers, documents, conversations, prompts, prompt templates, parsers, messages, and schema converters.
|
|
118
|
+
- Tools and toolkits: calculator, arithmetic, HTTP requests, JSON requests, code extraction, code interpretation, readability scoring, weather, temperature conversion, parameters, accessibility toolkit, and generic toolkit support.
|
|
119
|
+
- Vector and numerical work: vectors, TF-IDF vector store, deprecated distance compatibility shims, measurements, metrics, norms, similarities, pseudometrics, seminorms, matrices, tensors, and inner products.
|
|
120
|
+
- AI model surfaces: LLMs, tool LLMs, embeddings, image generators, OCR, STT, TTS, and VLM classes for supported providers.
|
|
121
|
+
- Runtime support: decorators, tracing, transports, state, logging, and utility classes.
|
|
122
|
+
- Trust and security surfaces: signing and key-provider components that align with Swarmauri's core interfaces.
|
|
123
|
+
|
|
124
|
+
## Distance Migration
|
|
125
|
+
|
|
126
|
+
The `swarmauri_standard.distances` module remains available only as a deprecated compatibility surface. Prefer the active metric and similarity families instead:
|
|
127
|
+
|
|
128
|
+
- `CosineDistance` -> `CosineSimilarity`
|
|
129
|
+
- `EuclideanDistance` -> `EuclideanMetric`
|
|
130
|
+
- `LevenshteinDistance` -> `LevenshteinMetric`
|
|
131
|
+
- `JaccardIndexDistance` -> `JaccardIndexSimilarity`
|
|
132
|
+
- `SorensenDiceDistance` -> `DiceSimilarity`
|
|
133
|
+
- `ChebyshevDistance` -> `SupremumMetric`
|
|
134
|
+
- `ManhattanDistance` -> `LpMetric(p=1)`
|
|
135
|
+
- `MinkowskiDistance` -> `LpMetric(p=<order>)`
|
|
136
|
+
- `SquaredEuclideanDistance` -> `EuclideanMetric` or `GaussianRBFSimilarity`, depending on whether you need metric or similarity semantics
|
|
137
|
+
- `CanberraDistance`, `ChiSquaredDistance`, and `HaversineDistance` do not yet have active drop-in replacements in the workspace
|
|
138
|
+
|
|
139
|
+
## Related Packages
|
|
140
|
+
|
|
141
|
+
Foundational packages:
|
|
142
|
+
|
|
143
|
+
- [swarmauri](https://pypi.org/project/swarmauri/) provides namespace imports and plugin discovery.
|
|
144
|
+
- [swarmauri_core](https://pypi.org/project/swarmauri_core/) provides the interfaces implemented by these standard components.
|
|
145
|
+
- [swarmauri_base](https://pypi.org/project/swarmauri_base/) provides component base classes, mixins, and serialization behavior.
|
|
146
|
+
- [swarmauri_typing](https://pypi.org/project/swarmauri_typing/) provides dynamic typing utilities used by the component model.
|
|
147
|
+
|
|
148
|
+
Related component packages:
|
|
149
|
+
|
|
150
|
+
- [swarmauri_embedding_doc2vec](https://pypi.org/project/swarmauri_embedding_doc2vec/) for Doc2Vec embedding support.
|
|
151
|
+
- [swarmauri_embedding_nmf](https://pypi.org/project/swarmauri_embedding_nmf/) for NMF embedding support.
|
|
152
|
+
- [swarmauri_vectorstore_doc2vec](https://pypi.org/project/swarmauri_vectorstore_doc2vec/) for Doc2Vec vector-store workflows.
|
|
153
|
+
- [swarmauri_standard](https://pypi.org/project/swarmauri_standard/) for the active metric, similarity, and vector-store comparator surface.
|
|
154
|
+
- [swarmauri_tool_matplotlib](https://pypi.org/project/swarmauri_tool_matplotlib/) for Matplotlib tool support.
|
|
155
|
+
- [swarmauri_parser_keywordextractor](https://pypi.org/project/swarmauri_parser_keywordextractor/) for keyword extraction parsing.
|
|
156
|
+
- [swarmauri_signing_ed25519](https://pypi.org/project/swarmauri_signing_ed25519/) for Ed25519 signing.
|
|
157
|
+
|
|
158
|
+
## When To Use This Package
|
|
159
|
+
|
|
160
|
+
Use `swarmauri_standard` when you want maintained first-party implementations that are ready for examples, prototypes, tests, and production workflows where the included component behavior fits. Use smaller standalone component packages when you want a narrower dependency surface for a specific provider, algorithm, or runtime integration.
|
|
161
|
+
|
|
162
|
+
## License
|
|
163
|
+
|
|
164
|
+
Apache-2.0
|
|
165
|
+
|
|
166
|
+
## Contributing
|
|
167
|
+
|
|
168
|
+
When adding standard components, inherit from the matching `swarmauri_base` class, satisfy the `swarmauri_core` interface, register the component type, document direct instantiation, and follow the [Swarmauri SDK contribution guide](https://github.com/swarmauri/swarmauri-sdk/blob/master/CONTRIBUTING.md).
|
|
169
|
+
|
|
170
|
+
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "swarmauri_standard"
|
|
3
|
-
version = "0.
|
|
4
|
-
description = "
|
|
3
|
+
version = "0.11.0.dev2"
|
|
4
|
+
description = "First-party Swarmauri standard components for agents, tools, parsers, vectors, model adapters, and composable intelligence workflows."
|
|
5
5
|
keywords = [
|
|
6
6
|
"swarmauri",
|
|
7
7
|
"standard-components",
|
|
8
|
+
"ai-sdk",
|
|
9
|
+
"agents",
|
|
10
|
+
"tools",
|
|
11
|
+
"toolkits",
|
|
12
|
+
"parsers",
|
|
13
|
+
"vector-stores",
|
|
14
|
+
"llms",
|
|
15
|
+
"embeddings",
|
|
16
|
+
"schema-converters",
|
|
17
|
+
"composable-intelligence",
|
|
8
18
|
"dynamic-json-schema",
|
|
9
19
|
"discriminated-unions",
|
|
10
20
|
"pydantic",
|
|
@@ -20,7 +30,10 @@ license = "Apache-2.0"
|
|
|
20
30
|
readme = { file = "README.md", content-type = "text/markdown" }
|
|
21
31
|
repository = "http://github.com/swarmauri/swarmauri-sdk"
|
|
22
32
|
classifiers = [
|
|
33
|
+
"Development Status :: 4 - Beta",
|
|
34
|
+
"Intended Audience :: Developers",
|
|
23
35
|
"License :: OSI Approved :: Apache Software License",
|
|
36
|
+
"Operating System :: OS Independent",
|
|
24
37
|
"Programming Language :: Python",
|
|
25
38
|
"Programming Language :: Python :: 3",
|
|
26
39
|
"Programming Language :: Python :: 3 :: Only",
|
|
@@ -29,6 +42,11 @@ classifiers = [
|
|
|
29
42
|
"Programming Language :: Python :: 3.12",
|
|
30
43
|
"Programming Language :: Python :: 3.13",
|
|
31
44
|
"Programming Language :: Python :: 3.14",
|
|
45
|
+
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
|
46
|
+
"Topic :: Scientific/Engineering :: Information Analysis",
|
|
47
|
+
"Topic :: Software Development :: Libraries",
|
|
48
|
+
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
49
|
+
"Topic :: Text Processing",
|
|
32
50
|
]
|
|
33
51
|
requires-python = ">=3.10,<3.15"
|
|
34
52
|
dependencies = [
|
|
@@ -64,7 +82,7 @@ dev = [
|
|
|
64
82
|
"python-dotenv>=1.0.0",
|
|
65
83
|
"jsonschema>=4.18.5",
|
|
66
84
|
"ipython>=8.28.0",
|
|
67
|
-
"
|
|
85
|
+
"httpx>=0.27",
|
|
68
86
|
"ruff>=0.9.9",
|
|
69
87
|
"pytest-benchmark>=4.0.0",
|
|
70
88
|
]
|
{swarmauri_standard-0.10.1.dev3 → swarmauri_standard-0.11.0.dev2}/swarmauri_standard/README.md
RENAMED
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
<img src="https://img.shields.io/pypi/l/swarmauri-standard" alt="PyPI - License"/></a>
|
|
12
12
|
<a href="https://pypi.org/project/swarmauri-standard/">
|
|
13
13
|
<img src="https://img.shields.io/pypi/v/swarmauri-standard?label=swarmauri-standard&color=green" alt="PyPI - swarmauri-standard"/></a>
|
|
14
|
-
|
|
15
14
|
</p>
|
|
16
15
|
|
|
17
16
|
# Standard Library
|
|
@@ -51,3 +50,6 @@ Your contributions can help the Standard Library grow! Whether it's adding new t
|
|
|
51
50
|
## License
|
|
52
51
|
|
|
53
52
|
Please see the `LICENSE` file in the repository for details.
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
__long_desc__ = """
|
|
2
|
+
# Swarmauri Standard SDK
|
|
3
|
+
|
|
4
|
+
The Swarmauri Standard SDK offers a comprehensive suite of tools designed for
|
|
5
|
+
building distributed, extensible systems using the Swarmauri framework.
|
|
6
|
+
|
|
7
|
+
## Standard
|
|
8
|
+
- **Base Classes**: Provide a foundation for constructing Swarmauri components,
|
|
9
|
+
with standardized methods and properties.
|
|
10
|
+
- **Mixins**: Reusable code fragments designed to be integrated into various
|
|
11
|
+
classes, offering shared functionality across different components.
|
|
12
|
+
- **Concrete Classes**: Ready-to-use, pre-implemented classes that fulfill
|
|
13
|
+
standard system needs while adhering to Swarmauri principles. **These classes
|
|
14
|
+
are the first in line for ongoing support and maintenance, ensuring they
|
|
15
|
+
remain stable, performant, and up to date with future SDK developments.**
|
|
16
|
+
|
|
17
|
+
# Features
|
|
18
|
+
|
|
19
|
+
- **Polymorphism**: Allows for dynamic behavior switching between components,
|
|
20
|
+
enabling flexible, context-aware system behavior.
|
|
21
|
+
- **Discriminated Unions**: Provides a robust method for handling multiple
|
|
22
|
+
possible object types in a type-safe manner.
|
|
23
|
+
- **Serialization**: Efficiently encode and decode data for transmission across
|
|
24
|
+
different environments and system components, with support for both standard
|
|
25
|
+
and custom serialization formats.
|
|
26
|
+
- **Intensional and Extensional Programming**: Leverages both rule-based
|
|
27
|
+
(intensional) and set-based (extensional) approaches to building and
|
|
28
|
+
manipulating complex data structures, offering developers a wide range of
|
|
29
|
+
tools for system design.
|
|
30
|
+
|
|
31
|
+
## Use Cases
|
|
32
|
+
|
|
33
|
+
- **Modular Systems**: Develop scalable, pluggable systems that can evolve over
|
|
34
|
+
time by adding or modifying components without disrupting the entire
|
|
35
|
+
ecosystem.
|
|
36
|
+
- **Distributed Architectures**: Build systems with distributed nodes that
|
|
37
|
+
seamlessly communicate using the SDK’s standardized interfaces.
|
|
38
|
+
- **Third-Party Integrations**: Extend the system's capabilities by easily
|
|
39
|
+
incorporating third-party tools, libraries, and services.
|
|
40
|
+
- **Prototype and Experimentation**: Test cutting-edge ideas using the
|
|
41
|
+
experimental components in the SDK, while retaining the reliability of core
|
|
42
|
+
and standard features for production systems.
|
|
43
|
+
|
|
44
|
+
# Future Development
|
|
45
|
+
|
|
46
|
+
The Swarmauri SDK is an evolving platform, and the community is encouraged to
|
|
47
|
+
contribute to its growth. Upcoming releases will focus on enhancing the
|
|
48
|
+
framework's modularity, providing more advanced serialization methods, and
|
|
49
|
+
expanding the community-driven component library.
|
|
50
|
+
|
|
51
|
+
Visit us at: https://swarmauri.com
|
|
52
|
+
Follow us at: https://github.com/swarmauri
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
try:
|
|
56
|
+
# For Python 3.8 and newer
|
|
57
|
+
from importlib.metadata import version, PackageNotFoundError
|
|
58
|
+
except ImportError:
|
|
59
|
+
# For older Python versions, use the backport
|
|
60
|
+
from importlib_metadata import version, PackageNotFoundError
|
|
61
|
+
|
|
62
|
+
try:
|
|
63
|
+
__version__ = version("swarmauri_standard")
|
|
64
|
+
except PackageNotFoundError:
|
|
65
|
+
# If the package is not installed (for example, during development)
|
|
66
|
+
__version__ = "0.0.0"
|
|
@@ -12,8 +12,8 @@ from swarmauri_base.ComponentBase import SubclassUnion, ComponentBase
|
|
|
12
12
|
|
|
13
13
|
@ComponentBase.register_type(AgentBase, "QAAgent")
|
|
14
14
|
class QAAgent(AgentBase):
|
|
15
|
-
conversation: SubclassUnion[ConversationBase] =
|
|
16
|
-
max_size=2
|
|
15
|
+
conversation: SubclassUnion[ConversationBase] = (
|
|
16
|
+
MaxSystemContextConversation(max_size=2)
|
|
17
17
|
)
|
|
18
18
|
type: Literal["QAAgent"] = "QAAgent"
|
|
19
19
|
|
|
@@ -14,7 +14,9 @@ from swarmauri_base.agents.AgentBase import AgentBase
|
|
|
14
14
|
from swarmauri_base.agents.AgentRetrieveMixin import AgentRetrieveMixin
|
|
15
15
|
from swarmauri_base.agents.AgentConversationMixin import AgentConversationMixin
|
|
16
16
|
from swarmauri_base.agents.AgentVectorStoreMixin import AgentVectorStoreMixin
|
|
17
|
-
from swarmauri_base.agents.AgentSystemContextMixin import
|
|
17
|
+
from swarmauri_base.agents.AgentSystemContextMixin import (
|
|
18
|
+
AgentSystemContextMixin,
|
|
19
|
+
)
|
|
18
20
|
from swarmauri_base.vector_stores.VectorStoreBase import VectorStoreBase
|
|
19
21
|
from swarmauri_core.messages import IMessage
|
|
20
22
|
from swarmauri_base.ComponentBase import SubclassUnion, ComponentBase
|
|
@@ -30,13 +32,14 @@ class RagAgent(
|
|
|
30
32
|
):
|
|
31
33
|
"""
|
|
32
34
|
RagAgent (Retriever-And-Generator Agent) extends DocumentAgentBase,
|
|
33
|
-
specialized in retrieving documents based on input queries and generating
|
|
35
|
+
specialized in retrieving documents based on input queries and generating
|
|
36
|
+
responses.
|
|
34
37
|
"""
|
|
35
38
|
|
|
36
39
|
llm: SubclassUnion[LLMBase]
|
|
37
|
-
conversation: Union[
|
|
38
|
-
MaxSystemContextConversation
|
|
39
|
-
)
|
|
40
|
+
conversation: Union[
|
|
41
|
+
MaxSystemContextConversation, SessionCacheConversation
|
|
42
|
+
] = MaxSystemContextConversation(system_context="")
|
|
40
43
|
vector_store: SubclassUnion[VectorStoreBase]
|
|
41
44
|
system_context: Union[SystemMessage, str] = SystemMessage(content="")
|
|
42
45
|
type: Literal["RagAgent"] = "RagAgent"
|
|
@@ -66,7 +69,9 @@ class RagAgent(
|
|
|
66
69
|
elif isinstance(input_data, IMessage):
|
|
67
70
|
human_message = input_data
|
|
68
71
|
else:
|
|
69
|
-
raise TypeError(
|
|
72
|
+
raise TypeError(
|
|
73
|
+
"Input data must be a string or an instance of IMessage."
|
|
74
|
+
)
|
|
70
75
|
|
|
71
76
|
self.conversation.add_message(human_message)
|
|
72
77
|
|
|
@@ -125,7 +130,9 @@ class RagAgent(
|
|
|
125
130
|
try:
|
|
126
131
|
self._prepare_context(input_data, top_k, preamble, fixed)
|
|
127
132
|
if llm_kwargs:
|
|
128
|
-
await self.llm.apredict(
|
|
133
|
+
await self.llm.apredict(
|
|
134
|
+
conversation=self.conversation, **llm_kwargs
|
|
135
|
+
)
|
|
129
136
|
else:
|
|
130
137
|
await self.llm.apredict(conversation=self.conversation)
|
|
131
138
|
return self.conversation.get_last().content
|
|
@@ -35,7 +35,9 @@ class ToolAgent(AgentToolMixin, AgentConversationMixin, AgentBase):
|
|
|
35
35
|
elif isinstance(input_data, IMessage):
|
|
36
36
|
human_message = input_data
|
|
37
37
|
else:
|
|
38
|
-
raise TypeError(
|
|
38
|
+
raise TypeError(
|
|
39
|
+
"Input data must be a string or an instance of Message."
|
|
40
|
+
)
|
|
39
41
|
|
|
40
42
|
# Add the human message to the conversation
|
|
41
43
|
self.conversation.add_message(human_message)
|
|
@@ -64,7 +66,9 @@ class ToolAgent(AgentToolMixin, AgentConversationMixin, AgentBase):
|
|
|
64
66
|
elif isinstance(input_data, IMessage):
|
|
65
67
|
human_message = input_data
|
|
66
68
|
else:
|
|
67
|
-
raise TypeError(
|
|
69
|
+
raise TypeError(
|
|
70
|
+
"Input data must be a string or an instance of Message."
|
|
71
|
+
)
|
|
68
72
|
|
|
69
73
|
# Add input to conversation
|
|
70
74
|
self.conversation.add_message(human_message)
|
|
@@ -79,4 +83,6 @@ class ToolAgent(AgentToolMixin, AgentConversationMixin, AgentBase):
|
|
|
79
83
|
return self.conversation.get_last().content
|
|
80
84
|
|
|
81
85
|
def get_tool_message_content(self) -> List[str]:
|
|
82
|
-
return [
|
|
86
|
+
return [
|
|
87
|
+
m.content for m in self.conversation.history if m.role == "tool"
|
|
88
|
+
]
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
# from swarmauri_standard.utils._lazy_import import _lazy_import
|
|
2
2
|
|
|
3
|
-
# # List of agent names (file names without the ".py" extension) and
|
|
3
|
+
# # List of agent names (file names without the ".py" extension) and
|
|
4
|
+
# corresponding class names
|
|
4
5
|
# agent_files = [
|
|
5
6
|
# ("swarmauri_standard.agents.QAAgent", "QAAgent"),
|
|
6
7
|
# ("swarmauri_standard.agents.RagAgent", "RagAgent"),
|
|
7
|
-
#
|
|
8
|
+
# ("swarmauri_standard.agents.SimpleConversationAgent",
|
|
9
|
+
# "SimpleConversationAgent"),
|
|
8
10
|
# ("swarmauri_standard.agents.ToolAgent", "ToolAgent"),
|
|
9
11
|
# ]
|
|
10
12
|
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
from typing import Any, Callable, List, Dict, Optional
|
|
2
|
-
from swarmauri_core.chains.ICallableChain import
|
|
2
|
+
from swarmauri_core.chains.ICallableChain import (
|
|
3
|
+
ICallableChain,
|
|
4
|
+
CallableDefinition,
|
|
5
|
+
)
|
|
3
6
|
|
|
4
7
|
|
|
5
8
|
class CallableChain(ICallableChain):
|
|
@@ -10,7 +13,8 @@ class CallableChain(ICallableChain):
|
|
|
10
13
|
result = None
|
|
11
14
|
for func, args, kwargs in self.callables:
|
|
12
15
|
if result is not None:
|
|
13
|
-
# If there was a previous result, use it as the first argument
|
|
16
|
+
# If there was a previous result, use it as the first argument
|
|
17
|
+
# for the next function
|
|
14
18
|
args = [result] + list(args)
|
|
15
19
|
result = func(*args, **kwargs)
|
|
16
20
|
return result
|