agno 2.2.11__tar.gz → 2.2.13__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.
- {agno-2.2.11 → agno-2.2.13}/PKG-INFO +1 -1
- {agno-2.2.11 → agno-2.2.13}/agno/agent/agent.py +62 -47
- {agno-2.2.11 → agno-2.2.13}/agno/db/mysql/mysql.py +1 -1
- {agno-2.2.11 → agno-2.2.13}/agno/db/singlestore/singlestore.py +1 -1
- {agno-2.2.11 → agno-2.2.13}/agno/db/sqlite/async_sqlite.py +1 -1
- {agno-2.2.11 → agno-2.2.13}/agno/db/sqlite/sqlite.py +1 -1
- agno-2.2.13/agno/filters.py +354 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/knowledge.py +43 -22
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/slack/router.py +53 -33
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/slack/slack.py +9 -1
- {agno-2.2.11 → agno-2.2.13}/agno/os/router.py +25 -1
- {agno-2.2.11 → agno-2.2.13}/agno/run/base.py +3 -2
- {agno-2.2.11 → agno-2.2.13}/agno/session/agent.py +10 -5
- {agno-2.2.11 → agno-2.2.13}/agno/team/team.py +44 -17
- {agno-2.2.11 → agno-2.2.13}/agno/utils/agent.py +22 -17
- {agno-2.2.11 → agno-2.2.13}/agno/utils/gemini.py +15 -5
- {agno-2.2.11 → agno-2.2.13}/agno/utils/knowledge.py +12 -5
- {agno-2.2.11 → agno-2.2.13}/agno/utils/log.py +1 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/print_response/agent.py +5 -4
- {agno-2.2.11 → agno-2.2.13}/agno/utils/print_response/team.py +5 -4
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/base.py +2 -4
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/cassandra/cassandra.py +12 -5
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/chroma/chromadb.py +10 -4
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/clickhouse/clickhousedb.py +12 -4
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/couchbase/couchbase.py +12 -3
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/lancedb/lance_db.py +69 -144
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/langchaindb/langchaindb.py +13 -4
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/lightrag/lightrag.py +8 -3
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/llamaindex/llamaindexdb.py +10 -4
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/milvus/milvus.py +16 -5
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/mongodb/mongodb.py +14 -3
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/pgvector/pgvector.py +73 -15
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/pineconedb/pineconedb.py +6 -2
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/qdrant/qdrant.py +25 -13
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/redis/redisdb.py +37 -30
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/singlestore/singlestore.py +9 -4
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/surrealdb/surrealdb.py +13 -3
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/upstashdb/upstashdb.py +8 -5
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/weaviate/weaviate.py +29 -12
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/step.py +116 -52
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/workflow.py +12 -6
- {agno-2.2.11 → agno-2.2.13}/agno.egg-info/PKG-INFO +1 -1
- {agno-2.2.11 → agno-2.2.13}/agno.egg-info/SOURCES.txt +1 -0
- {agno-2.2.11 → agno-2.2.13}/pyproject.toml +1 -1
- {agno-2.2.11 → agno-2.2.13}/LICENSE +0 -0
- {agno-2.2.11 → agno-2.2.13}/README.md +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/agent/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/agent.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/api.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/evals.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/os.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/routes.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/agent.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/evals.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/os.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/response.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/team.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/schemas/workflows.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/settings.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/team.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/api/workflow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/cloud/aws/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/cloud/aws/s3/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/cloud/aws/s3/api_client.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/cloud/aws/s3/bucket.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/cloud/aws/s3/object.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/culture/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/culture/manager.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/async_postgres/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/dynamo/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/dynamo/dynamo.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/dynamo/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/dynamo/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/firestore/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/firestore/firestore.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/firestore/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/firestore/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/gcs_json/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/gcs_json/gcs_json_db.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/gcs_json/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/in_memory/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/in_memory/in_memory_db.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/in_memory/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/json/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/json/json_db.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/json/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/migrations/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/migrations/v1_to_v2.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mongo/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mongo/async_mongo.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mongo/mongo.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mongo/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mongo/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mysql/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mysql/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/mysql/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/postgres/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/postgres/async_postgres.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/postgres/postgres.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/postgres/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/postgres/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/redis/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/redis/redis.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/redis/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/redis/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/schemas/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/schemas/culture.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/schemas/evals.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/schemas/knowledge.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/schemas/memory.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/schemas/metrics.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/singlestore/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/singlestore/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/singlestore/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/sqlite/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/sqlite/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/sqlite/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/surrealdb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/surrealdb/metrics.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/surrealdb/models.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/surrealdb/queries.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/surrealdb/surrealdb.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/surrealdb/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/db/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/debug.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/eval/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/eval/accuracy.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/eval/performance.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/eval/reliability.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/eval/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/exceptions.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/guardrails/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/guardrails/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/guardrails/openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/guardrails/pii.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/guardrails/prompt_injection.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/integrations/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/integrations/discord/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/integrations/discord/client.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/agentic.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/document.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/fixed.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/markdown.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/recursive.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/row.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/semantic.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/chunking/strategy.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/content.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/document/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/document/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/aws_bedrock.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/azure_openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/cohere.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/fastembed.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/fireworks.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/google.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/huggingface.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/jina.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/langdb.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/mistral.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/nebius.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/ollama.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/sentence_transformer.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/together.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/vllm.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/embedder/voyageai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/arxiv_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/csv_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/docx_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/field_labeled_csv_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/firecrawl_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/json_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/markdown_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/pdf_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/pptx_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/reader_factory.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/s3_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/tavily_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/text_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/web_search_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/website_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/wikipedia_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reader/youtube_reader.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/remote_content/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/remote_content/remote_content.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reranker/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reranker/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reranker/cohere.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reranker/infinity.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/reranker/sentence_transformer.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/types.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/knowledge/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/media.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/memory/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/memory/manager.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/aimlapi/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/aimlapi/aimlapi.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/anthropic/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/anthropic/claude.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/aws/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/aws/bedrock.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/aws/claude.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/azure/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/azure/ai_foundry.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/azure/openai_chat.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/cerebras/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/cerebras/cerebras.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/cerebras/cerebras_openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/cohere/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/cohere/chat.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/cometapi/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/cometapi/cometapi.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/dashscope/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/dashscope/dashscope.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/deepinfra/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/deepinfra/deepinfra.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/deepseek/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/deepseek/deepseek.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/defaults.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/fireworks/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/fireworks/fireworks.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/google/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/google/gemini.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/groq/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/groq/groq.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/huggingface/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/huggingface/huggingface.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/ibm/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/ibm/watsonx.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/internlm/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/internlm/internlm.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/langdb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/langdb/langdb.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/litellm/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/litellm/chat.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/litellm/litellm_openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/llama_cpp/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/llama_cpp/llama_cpp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/lmstudio/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/lmstudio/lmstudio.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/message.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/meta/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/meta/llama.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/meta/llama_openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/metrics.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/mistral/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/mistral/mistral.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/nebius/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/nebius/nebius.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/nexus/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/nexus/nexus.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/nvidia/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/nvidia/nvidia.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/ollama/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/ollama/chat.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/openai/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/openai/chat.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/openai/like.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/openai/responses.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/openrouter/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/openrouter/openrouter.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/perplexity/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/perplexity/perplexity.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/portkey/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/portkey/portkey.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/requesty/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/requesty/requesty.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/response.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/sambanova/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/sambanova/sambanova.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/siliconflow/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/siliconflow/siliconflow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/together/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/together/together.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/vercel/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/vercel/v0.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/vertexai/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/vertexai/claude.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/vllm/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/vllm/vllm.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/xai/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/models/xai/xai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/app.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/auth.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/config.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/a2a/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/a2a/a2a.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/a2a/router.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/a2a/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/agui/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/agui/agui.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/agui/router.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/agui/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/base.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/slack/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/slack/security.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/whatsapp/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/whatsapp/router.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/whatsapp/security.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/interfaces/whatsapp/whatsapp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/mcp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/middleware/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/middleware/jwt.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/evals/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/evals/evals.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/evals/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/evals/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/health.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/home.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/knowledge/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/knowledge/knowledge.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/knowledge/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/memory/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/memory/memory.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/memory/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/metrics/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/metrics/metrics.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/metrics/schemas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/session/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/routers/session/session.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/schema.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/settings.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/os/utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/py.typed +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/anthropic.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/azure_ai_foundry.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/deepseek.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/default.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/gemini.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/groq.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/helpers.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/ollama.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/step.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/reasoning/vertexai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/run/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/run/agent.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/run/cancel.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/run/messages.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/run/team.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/run/workflow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/session/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/session/summary.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/session/team.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/session/workflow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/team/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/agentql.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/airflow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/api.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/apify.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/arxiv.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/aws_lambda.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/aws_ses.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/baidusearch.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/bitbucket.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/brandfetch.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/bravesearch.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/brightdata.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/browserbase.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/calcom.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/calculator.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/cartesia.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/clickup.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/confluence.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/crawl4ai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/csv_toolkit.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/dalle.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/daytona.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/decorator.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/desi_vocal.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/discord.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/docker.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/duckdb.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/duckduckgo.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/e2b.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/eleven_labs.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/email.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/evm.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/exa.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/fal.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/file.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/file_generation.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/financial_datasets.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/firecrawl.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/function.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/giphy.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/github.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/gmail.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/google_bigquery.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/google_drive.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/google_maps.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/googlecalendar.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/googlesearch.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/googlesheets.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/hackernews.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/jina.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/jira.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/knowledge.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/linear.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/linkup.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/local_file_system.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/lumalab.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/mcp/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/mcp/mcp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/mcp/multi_mcp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/mcp/params.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/mcp_toolbox.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/mem0.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/memori.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/memory.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/mlx_transcribe.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/models/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/models/azure_openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/models/gemini.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/models/groq.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/models/morph.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/models/nebius.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/models_labs.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/moviepy_video.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/neo4j.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/newspaper.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/newspaper4k.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/notion.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/openbb.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/opencv.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/openweather.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/oxylabs.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/pandas.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/parallel.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/postgres.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/pubmed.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/python.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/reasoning.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/reddit.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/replicate.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/resend.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/scrapegraph.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/searxng.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/serpapi.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/serper.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/shell.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/slack.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/sleep.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/spider.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/sql.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/streamlit/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/streamlit/components.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/tavily.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/telegram.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/todoist.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/tool_registry.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/toolkit.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/trafilatura.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/trello.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/twilio.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/user_control_flow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/valyu.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/visualization.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/webbrowser.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/webex.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/website.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/webtools.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/whatsapp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/wikipedia.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/workflow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/x.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/yfinance.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/youtube.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/zendesk.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/zep.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/tools/zoom.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/audio.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/certs.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/code_execution.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/common.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/dttm.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/enum.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/env.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/events.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/format_str.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/functions.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/hooks.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/http.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/json_schema.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/location.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/mcp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/media.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/merge_dict.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/message.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/ai_foundry.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/claude.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/cohere.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/llama.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/mistral.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/openai_responses.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/schema_utils.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/models/watsonx.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/openai.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/pickle.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/pprint.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/print_response/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/print_response/workflow.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/prompts.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/reasoning.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/response.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/response_iterator.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/safe_formatter.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/serialize.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/shell.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/streamlit.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/string.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/team.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/timer.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/tools.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/web.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/whatsapp.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/utils/yaml_io.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/cassandra/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/cassandra/extra_param_mixin.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/cassandra/index.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/chroma/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/clickhouse/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/clickhouse/index.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/couchbase/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/distance.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/lancedb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/langchaindb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/lightrag/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/llamaindex/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/milvus/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/mongodb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/pgvector/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/pgvector/index.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/pineconedb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/qdrant/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/redis/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/search.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/singlestore/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/singlestore/index.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/surrealdb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/upstashdb/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/weaviate/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/vectordb/weaviate/index.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/__init__.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/agent.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/condition.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/loop.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/parallel.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/router.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/steps.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno/workflow/types.py +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno.egg-info/dependency_links.txt +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno.egg-info/requires.txt +0 -0
- {agno-2.2.11 → agno-2.2.13}/agno.egg-info/top_level.txt +0 -0
- {agno-2.2.11 → agno-2.2.13}/setup.cfg +0 -0
|
@@ -38,6 +38,7 @@ from agno.exceptions import (
|
|
|
38
38
|
RunCancelledException,
|
|
39
39
|
StopAgentRun,
|
|
40
40
|
)
|
|
41
|
+
from agno.filters import FilterExpr
|
|
41
42
|
from agno.guardrails import BaseGuardrail
|
|
42
43
|
from agno.knowledge.knowledge import Knowledge
|
|
43
44
|
from agno.knowledge.types import KnowledgeFilter
|
|
@@ -233,7 +234,7 @@ class Agent:
|
|
|
233
234
|
knowledge: Optional[Knowledge] = None
|
|
234
235
|
# Enable RAG by adding references from Knowledge to the user prompt.
|
|
235
236
|
# Add knowledge_filters to the Agent class attributes
|
|
236
|
-
knowledge_filters: Optional[Dict[str, Any]] = None
|
|
237
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None
|
|
237
238
|
# Let the agent choose the knowledge filters
|
|
238
239
|
enable_agentic_knowledge_filters: Optional[bool] = False
|
|
239
240
|
add_knowledge_to_context: bool = False
|
|
@@ -450,7 +451,7 @@ class Agent:
|
|
|
450
451
|
store_tool_messages: bool = True,
|
|
451
452
|
store_history_messages: bool = True,
|
|
452
453
|
knowledge: Optional[Knowledge] = None,
|
|
453
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
454
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
454
455
|
enable_agentic_knowledge_filters: Optional[bool] = None,
|
|
455
456
|
add_knowledge_to_context: bool = False,
|
|
456
457
|
knowledge_retriever: Optional[Callable[..., Optional[List[Union[Dict, str]]]]] = None,
|
|
@@ -1460,7 +1461,7 @@ class Agent:
|
|
|
1460
1461
|
videos: Optional[Sequence[Video]] = None,
|
|
1461
1462
|
files: Optional[Sequence[File]] = None,
|
|
1462
1463
|
retries: Optional[int] = None,
|
|
1463
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
1464
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
1464
1465
|
add_history_to_context: Optional[bool] = None,
|
|
1465
1466
|
add_dependencies_to_context: Optional[bool] = None,
|
|
1466
1467
|
add_session_state_to_context: Optional[bool] = None,
|
|
@@ -1487,7 +1488,7 @@ class Agent:
|
|
|
1487
1488
|
videos: Optional[Sequence[Video]] = None,
|
|
1488
1489
|
files: Optional[Sequence[File]] = None,
|
|
1489
1490
|
retries: Optional[int] = None,
|
|
1490
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
1491
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
1491
1492
|
add_history_to_context: Optional[bool] = None,
|
|
1492
1493
|
add_dependencies_to_context: Optional[bool] = None,
|
|
1493
1494
|
add_session_state_to_context: Optional[bool] = None,
|
|
@@ -1515,7 +1516,7 @@ class Agent:
|
|
|
1515
1516
|
videos: Optional[Sequence[Video]] = None,
|
|
1516
1517
|
files: Optional[Sequence[File]] = None,
|
|
1517
1518
|
retries: Optional[int] = None,
|
|
1518
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
1519
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
1519
1520
|
add_history_to_context: Optional[bool] = None,
|
|
1520
1521
|
add_dependencies_to_context: Optional[bool] = None,
|
|
1521
1522
|
add_session_state_to_context: Optional[bool] = None,
|
|
@@ -2385,7 +2386,7 @@ class Agent:
|
|
|
2385
2386
|
stream_events: Optional[bool] = None,
|
|
2386
2387
|
stream_intermediate_steps: Optional[bool] = None,
|
|
2387
2388
|
retries: Optional[int] = None,
|
|
2388
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
2389
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
2389
2390
|
add_history_to_context: Optional[bool] = None,
|
|
2390
2391
|
add_dependencies_to_context: Optional[bool] = None,
|
|
2391
2392
|
add_session_state_to_context: Optional[bool] = None,
|
|
@@ -2411,7 +2412,7 @@ class Agent:
|
|
|
2411
2412
|
stream_events: Optional[bool] = None,
|
|
2412
2413
|
stream_intermediate_steps: Optional[bool] = None,
|
|
2413
2414
|
retries: Optional[int] = None,
|
|
2414
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
2415
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
2415
2416
|
add_history_to_context: Optional[bool] = None,
|
|
2416
2417
|
add_dependencies_to_context: Optional[bool] = None,
|
|
2417
2418
|
add_session_state_to_context: Optional[bool] = None,
|
|
@@ -2439,7 +2440,7 @@ class Agent:
|
|
|
2439
2440
|
stream_events: Optional[bool] = None,
|
|
2440
2441
|
stream_intermediate_steps: Optional[bool] = None,
|
|
2441
2442
|
retries: Optional[int] = None,
|
|
2442
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
2443
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
2443
2444
|
add_history_to_context: Optional[bool] = None,
|
|
2444
2445
|
add_dependencies_to_context: Optional[bool] = None,
|
|
2445
2446
|
add_session_state_to_context: Optional[bool] = None,
|
|
@@ -2662,7 +2663,7 @@ class Agent:
|
|
|
2662
2663
|
user_id: Optional[str] = None,
|
|
2663
2664
|
session_id: Optional[str] = None,
|
|
2664
2665
|
retries: Optional[int] = None,
|
|
2665
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
2666
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
2666
2667
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
2667
2668
|
metadata: Optional[Dict[str, Any]] = None,
|
|
2668
2669
|
debug_mode: Optional[bool] = None,
|
|
@@ -2681,7 +2682,7 @@ class Agent:
|
|
|
2681
2682
|
user_id: Optional[str] = None,
|
|
2682
2683
|
session_id: Optional[str] = None,
|
|
2683
2684
|
retries: Optional[int] = None,
|
|
2684
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
2685
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
2685
2686
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
2686
2687
|
metadata: Optional[Dict[str, Any]] = None,
|
|
2687
2688
|
debug_mode: Optional[bool] = None,
|
|
@@ -2700,7 +2701,7 @@ class Agent:
|
|
|
2700
2701
|
session_id: Optional[str] = None,
|
|
2701
2702
|
run_context: Optional[RunContext] = None,
|
|
2702
2703
|
retries: Optional[int] = None,
|
|
2703
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
2704
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
2704
2705
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
2705
2706
|
metadata: Optional[Dict[str, Any]] = None,
|
|
2706
2707
|
debug_mode: Optional[bool] = None,
|
|
@@ -3223,7 +3224,7 @@ class Agent:
|
|
|
3223
3224
|
user_id: Optional[str] = None,
|
|
3224
3225
|
session_id: Optional[str] = None,
|
|
3225
3226
|
retries: Optional[int] = None,
|
|
3226
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
3227
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
3227
3228
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
3228
3229
|
metadata: Optional[Dict[str, Any]] = None,
|
|
3229
3230
|
debug_mode: Optional[bool] = None,
|
|
@@ -3242,7 +3243,7 @@ class Agent:
|
|
|
3242
3243
|
user_id: Optional[str] = None,
|
|
3243
3244
|
session_id: Optional[str] = None,
|
|
3244
3245
|
retries: Optional[int] = None,
|
|
3245
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
3246
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
3246
3247
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
3247
3248
|
metadata: Optional[Dict[str, Any]] = None,
|
|
3248
3249
|
debug_mode: Optional[bool] = None,
|
|
@@ -3261,7 +3262,7 @@ class Agent:
|
|
|
3261
3262
|
session_id: Optional[str] = None,
|
|
3262
3263
|
run_context: Optional[RunContext] = None,
|
|
3263
3264
|
retries: Optional[int] = None,
|
|
3264
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
3265
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
3265
3266
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
3266
3267
|
metadata: Optional[Dict[str, Any]] = None,
|
|
3267
3268
|
debug_mode: Optional[bool] = None,
|
|
@@ -5344,13 +5345,9 @@ class Agent:
|
|
|
5344
5345
|
run_context: RunContext,
|
|
5345
5346
|
session: AgentSession,
|
|
5346
5347
|
user_id: Optional[str] = None,
|
|
5347
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
5348
5348
|
) -> List[Union[Toolkit, Callable, Function, Dict]]:
|
|
5349
5349
|
agent_tools: List[Union[Toolkit, Callable, Function, Dict]] = []
|
|
5350
5350
|
|
|
5351
|
-
# Consider both run_context.knowledge_filters and knowledge_filters (deprecated)
|
|
5352
|
-
run_context.knowledge_filters = run_context.knowledge_filters or knowledge_filters
|
|
5353
|
-
|
|
5354
5351
|
# Add provided tools
|
|
5355
5352
|
if self.tools is not None:
|
|
5356
5353
|
# If not running in async mode, raise if any tool is async
|
|
@@ -5419,14 +5416,10 @@ class Agent:
|
|
|
5419
5416
|
run_context: RunContext,
|
|
5420
5417
|
session: AgentSession,
|
|
5421
5418
|
user_id: Optional[str] = None,
|
|
5422
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
5423
5419
|
check_mcp_tools: bool = True,
|
|
5424
5420
|
) -> List[Union[Toolkit, Callable, Function, Dict]]:
|
|
5425
5421
|
agent_tools: List[Union[Toolkit, Callable, Function, Dict]] = []
|
|
5426
5422
|
|
|
5427
|
-
# Consider both run_context.knowledge_filters and knowledge_filters (deprecated)
|
|
5428
|
-
run_context.knowledge_filters = run_context.knowledge_filters or knowledge_filters
|
|
5429
|
-
|
|
5430
5423
|
# Connect MCP tools
|
|
5431
5424
|
await self._connect_mcp_tools()
|
|
5432
5425
|
|
|
@@ -5784,7 +5777,9 @@ class Agent:
|
|
|
5784
5777
|
log_warning(f"Error getting session from db: {e}")
|
|
5785
5778
|
return None
|
|
5786
5779
|
|
|
5787
|
-
def _upsert_session(
|
|
5780
|
+
def _upsert_session(
|
|
5781
|
+
self, session: Union[AgentSession, TeamSession, WorkflowSession]
|
|
5782
|
+
) -> Optional[Union[AgentSession, TeamSession, WorkflowSession]]:
|
|
5788
5783
|
"""Upsert a Session into the database."""
|
|
5789
5784
|
|
|
5790
5785
|
try:
|
|
@@ -5798,7 +5793,9 @@ class Agent:
|
|
|
5798
5793
|
log_warning(f"Error upserting session into db: {e}")
|
|
5799
5794
|
return None
|
|
5800
5795
|
|
|
5801
|
-
async def _aupsert_session(
|
|
5796
|
+
async def _aupsert_session(
|
|
5797
|
+
self, session: Union[AgentSession, TeamSession, WorkflowSession]
|
|
5798
|
+
) -> Optional[Union[AgentSession, TeamSession, WorkflowSession]]:
|
|
5802
5799
|
"""Upsert a Session into the database."""
|
|
5803
5800
|
try:
|
|
5804
5801
|
if not self.db:
|
|
@@ -6012,7 +6009,7 @@ class Agent:
|
|
|
6012
6009
|
def get_session(
|
|
6013
6010
|
self,
|
|
6014
6011
|
session_id: Optional[str] = None,
|
|
6015
|
-
) -> Optional[AgentSession]:
|
|
6012
|
+
) -> Optional[Union[AgentSession, TeamSession, WorkflowSession]]:
|
|
6016
6013
|
"""Load an AgentSession from database or cache.
|
|
6017
6014
|
|
|
6018
6015
|
Args:
|
|
@@ -6073,7 +6070,7 @@ class Agent:
|
|
|
6073
6070
|
async def aget_session(
|
|
6074
6071
|
self,
|
|
6075
6072
|
session_id: Optional[str] = None,
|
|
6076
|
-
) -> Optional[AgentSession]:
|
|
6073
|
+
) -> Optional[Union[AgentSession, TeamSession, WorkflowSession]]:
|
|
6077
6074
|
"""Load an AgentSession from database or cache.
|
|
6078
6075
|
|
|
6079
6076
|
Args:
|
|
@@ -6128,7 +6125,7 @@ class Agent:
|
|
|
6128
6125
|
log_debug(f"AgentSession {session_id_to_load} not found in db")
|
|
6129
6126
|
return None
|
|
6130
6127
|
|
|
6131
|
-
def save_session(self, session: AgentSession) -> None:
|
|
6128
|
+
def save_session(self, session: Union[AgentSession, TeamSession, WorkflowSession]) -> None:
|
|
6132
6129
|
"""
|
|
6133
6130
|
Save the AgentSession to storage
|
|
6134
6131
|
"""
|
|
@@ -6150,7 +6147,7 @@ class Agent:
|
|
|
6150
6147
|
self._upsert_session(session=session)
|
|
6151
6148
|
log_debug(f"Created or updated AgentSession record: {session.session_id}")
|
|
6152
6149
|
|
|
6153
|
-
async def asave_session(self, session: AgentSession) -> None:
|
|
6150
|
+
async def asave_session(self, session: Union[AgentSession, TeamSession, WorkflowSession]) -> None:
|
|
6154
6151
|
"""
|
|
6155
6152
|
Save the AgentSession to storage
|
|
6156
6153
|
"""
|
|
@@ -6226,12 +6223,16 @@ class Agent:
|
|
|
6226
6223
|
if session is None:
|
|
6227
6224
|
raise Exception("Session not found")
|
|
6228
6225
|
|
|
6226
|
+
if not hasattr(session, "agent_data"):
|
|
6227
|
+
raise Exception("Session is not an AgentSession")
|
|
6228
|
+
|
|
6229
6229
|
# -*- Rename Agent
|
|
6230
6230
|
self.name = name
|
|
6231
|
-
|
|
6232
|
-
|
|
6231
|
+
|
|
6232
|
+
if session.agent_data is not None: # type: ignore
|
|
6233
|
+
session.agent_data["name"] = name # type: ignore
|
|
6233
6234
|
else:
|
|
6234
|
-
session.agent_data = {"name": name}
|
|
6235
|
+
session.agent_data = {"name": name} # type: ignore
|
|
6235
6236
|
|
|
6236
6237
|
# -*- Save to storage
|
|
6237
6238
|
if self._has_async_db():
|
|
@@ -6485,7 +6486,7 @@ class Agent:
|
|
|
6485
6486
|
raise Exception("Session not found")
|
|
6486
6487
|
|
|
6487
6488
|
# Only filter by agent_id if this is part of a team
|
|
6488
|
-
return session.get_messages_from_last_n_runs(
|
|
6489
|
+
return session.get_messages_from_last_n_runs( # type: ignore
|
|
6489
6490
|
agent_id=self.id if self.team_id is not None else None,
|
|
6490
6491
|
)
|
|
6491
6492
|
|
|
@@ -6508,7 +6509,7 @@ class Agent:
|
|
|
6508
6509
|
raise Exception("Session not found")
|
|
6509
6510
|
|
|
6510
6511
|
# Only filter by agent_id if this is part of a team
|
|
6511
|
-
return session.get_messages_from_last_n_runs(
|
|
6512
|
+
return session.get_messages_from_last_n_runs( # type: ignore
|
|
6512
6513
|
agent_id=self.id if self.team_id is not None else None,
|
|
6513
6514
|
)
|
|
6514
6515
|
|
|
@@ -6529,7 +6530,7 @@ class Agent:
|
|
|
6529
6530
|
if session is None:
|
|
6530
6531
|
raise Exception(f"Session {session_id} not found")
|
|
6531
6532
|
|
|
6532
|
-
return session.get_session_summary()
|
|
6533
|
+
return session.get_session_summary() # type: ignore
|
|
6533
6534
|
|
|
6534
6535
|
async def aget_session_summary(self, session_id: Optional[str] = None) -> Optional[SessionSummary]:
|
|
6535
6536
|
"""Get the session summary for the given session ID and user ID.
|
|
@@ -6548,7 +6549,7 @@ class Agent:
|
|
|
6548
6549
|
if session is None:
|
|
6549
6550
|
raise Exception(f"Session {session_id} not found")
|
|
6550
6551
|
|
|
6551
|
-
return session.get_session_summary()
|
|
6552
|
+
return session.get_session_summary() # type: ignore
|
|
6552
6553
|
|
|
6553
6554
|
def get_user_memories(self, user_id: Optional[str] = None) -> Optional[List[UserMemory]]:
|
|
6554
6555
|
"""Get the user memories for the given user ID.
|
|
@@ -7370,7 +7371,7 @@ class Agent:
|
|
|
7370
7371
|
videos: Optional[Sequence[Video]] = None,
|
|
7371
7372
|
files: Optional[Sequence[File]] = None,
|
|
7372
7373
|
add_dependencies_to_context: Optional[bool] = None,
|
|
7373
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
7374
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
7374
7375
|
**kwargs: Any,
|
|
7375
7376
|
) -> Optional[Message]:
|
|
7376
7377
|
"""Return the user message for the Agent.
|
|
@@ -7385,7 +7386,6 @@ class Agent:
|
|
|
7385
7386
|
dependencies = run_context.dependencies or dependencies
|
|
7386
7387
|
metadata = run_context.metadata or metadata
|
|
7387
7388
|
knowledge_filters = run_context.knowledge_filters or knowledge_filters
|
|
7388
|
-
|
|
7389
7389
|
# Get references from the knowledge base to use in the user message
|
|
7390
7390
|
references = None
|
|
7391
7391
|
|
|
@@ -7746,7 +7746,7 @@ class Agent:
|
|
|
7746
7746
|
images: Optional[Sequence[Image]] = None,
|
|
7747
7747
|
videos: Optional[Sequence[Video]] = None,
|
|
7748
7748
|
files: Optional[Sequence[File]] = None,
|
|
7749
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
7749
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
7750
7750
|
add_history_to_context: Optional[bool] = None,
|
|
7751
7751
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
7752
7752
|
add_dependencies_to_context: Optional[bool] = None,
|
|
@@ -8041,7 +8041,7 @@ class Agent:
|
|
|
8041
8041
|
self,
|
|
8042
8042
|
query: str,
|
|
8043
8043
|
num_documents: Optional[int] = None,
|
|
8044
|
-
filters: Optional[Dict[str, Any]] = None,
|
|
8044
|
+
filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
8045
8045
|
**kwargs,
|
|
8046
8046
|
) -> Optional[List[Union[Dict[str, Any], str]]]:
|
|
8047
8047
|
"""Get relevant docs from the knowledge base to answer a query.
|
|
@@ -8074,6 +8074,10 @@ class Agent:
|
|
|
8074
8074
|
if not filters:
|
|
8075
8075
|
log_warning("No valid filters remain after validation. Search will proceed without filters.")
|
|
8076
8076
|
|
|
8077
|
+
if invalid_keys == [] and valid_filters == {}:
|
|
8078
|
+
log_warning("No valid filters provided. Search will proceed without filters.")
|
|
8079
|
+
filters = None
|
|
8080
|
+
|
|
8077
8081
|
if self.knowledge_retriever is not None and callable(self.knowledge_retriever):
|
|
8078
8082
|
from inspect import signature
|
|
8079
8083
|
|
|
@@ -8120,7 +8124,7 @@ class Agent:
|
|
|
8120
8124
|
self,
|
|
8121
8125
|
query: str,
|
|
8122
8126
|
num_documents: Optional[int] = None,
|
|
8123
|
-
filters: Optional[Dict[str, Any]] = None,
|
|
8127
|
+
filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
8124
8128
|
**kwargs,
|
|
8125
8129
|
) -> Optional[List[Union[Dict[str, Any], str]]]:
|
|
8126
8130
|
"""Get relevant documents from knowledge base asynchronously."""
|
|
@@ -8143,6 +8147,10 @@ class Agent:
|
|
|
8143
8147
|
if not filters:
|
|
8144
8148
|
log_warning("No valid filters remain after validation. Search will proceed without filters.")
|
|
8145
8149
|
|
|
8150
|
+
if invalid_keys == [] and valid_filters == {}:
|
|
8151
|
+
log_warning("No valid filters provided. Search will proceed without filters.")
|
|
8152
|
+
filters = None
|
|
8153
|
+
|
|
8146
8154
|
if self.knowledge_retriever is not None and callable(self.knowledge_retriever):
|
|
8147
8155
|
from inspect import isawaitable, signature
|
|
8148
8156
|
|
|
@@ -9464,7 +9472,7 @@ class Agent:
|
|
|
9464
9472
|
def _get_search_knowledge_base_function(
|
|
9465
9473
|
self,
|
|
9466
9474
|
run_response: RunOutput,
|
|
9467
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
9475
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
9468
9476
|
async_mode: bool = False,
|
|
9469
9477
|
) -> Function:
|
|
9470
9478
|
"""Factory function to create a search_knowledge_base function with filters."""
|
|
@@ -9540,7 +9548,7 @@ class Agent:
|
|
|
9540
9548
|
def _search_knowledge_base_with_agentic_filters_function(
|
|
9541
9549
|
self,
|
|
9542
9550
|
run_response: RunOutput,
|
|
9543
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
9551
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
9544
9552
|
async_mode: bool = False,
|
|
9545
9553
|
) -> Function:
|
|
9546
9554
|
"""Factory function to create a search_knowledge_base function with filters."""
|
|
@@ -9810,7 +9818,7 @@ class Agent:
|
|
|
9810
9818
|
stream_events: Optional[bool] = None,
|
|
9811
9819
|
stream_intermediate_steps: Optional[bool] = None,
|
|
9812
9820
|
markdown: Optional[bool] = None,
|
|
9813
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
9821
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
9814
9822
|
add_history_to_context: Optional[bool] = None,
|
|
9815
9823
|
add_dependencies_to_context: Optional[bool] = None,
|
|
9816
9824
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
@@ -9924,7 +9932,7 @@ class Agent:
|
|
|
9924
9932
|
stream_events: Optional[bool] = None,
|
|
9925
9933
|
stream_intermediate_steps: Optional[bool] = None,
|
|
9926
9934
|
markdown: Optional[bool] = None,
|
|
9927
|
-
knowledge_filters: Optional[Dict[str, Any]] = None,
|
|
9935
|
+
knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None,
|
|
9928
9936
|
add_history_to_context: Optional[bool] = None,
|
|
9929
9937
|
dependencies: Optional[Dict[str, Any]] = None,
|
|
9930
9938
|
add_dependencies_to_context: Optional[bool] = None,
|
|
@@ -10105,7 +10113,9 @@ class Agent:
|
|
|
10105
10113
|
|
|
10106
10114
|
return None
|
|
10107
10115
|
|
|
10108
|
-
def _get_effective_filters(
|
|
10116
|
+
def _get_effective_filters(
|
|
10117
|
+
self, knowledge_filters: Optional[Union[Dict[str, Any], List[FilterExpr]]] = None
|
|
10118
|
+
) -> Optional[Any]:
|
|
10109
10119
|
"""
|
|
10110
10120
|
Determine which knowledge filters to use, with priority to run-level filters.
|
|
10111
10121
|
|
|
@@ -10124,8 +10134,13 @@ class Agent:
|
|
|
10124
10134
|
# If run has filters, they override agent filters
|
|
10125
10135
|
if knowledge_filters:
|
|
10126
10136
|
if effective_filters:
|
|
10127
|
-
|
|
10128
|
-
|
|
10137
|
+
if isinstance(knowledge_filters, dict):
|
|
10138
|
+
if isinstance(effective_filters, dict):
|
|
10139
|
+
effective_filters.update(knowledge_filters)
|
|
10140
|
+
else:
|
|
10141
|
+
effective_filters = knowledge_filters
|
|
10142
|
+
elif isinstance(knowledge_filters, list):
|
|
10143
|
+
effective_filters = [*effective_filters, *knowledge_filters]
|
|
10129
10144
|
else:
|
|
10130
10145
|
effective_filters = knowledge_filters
|
|
10131
10146
|
|
|
@@ -134,7 +134,7 @@ class MySQLDb(BaseDb):
|
|
|
134
134
|
try:
|
|
135
135
|
table_schema = get_table_schema_definition(table_type)
|
|
136
136
|
|
|
137
|
-
log_debug(f"Creating table {
|
|
137
|
+
log_debug(f"Creating table {table_name}")
|
|
138
138
|
|
|
139
139
|
columns: List[Column] = []
|
|
140
140
|
indexes: List[str] = []
|
|
@@ -197,7 +197,7 @@ class SingleStoreDb(BaseDb):
|
|
|
197
197
|
try:
|
|
198
198
|
table_schema = get_table_schema_definition(table_type)
|
|
199
199
|
|
|
200
|
-
log_debug(f"Creating table {table_ref}
|
|
200
|
+
log_debug(f"Creating table {table_ref}")
|
|
201
201
|
|
|
202
202
|
columns: List[Column] = []
|
|
203
203
|
indexes: List[str] = []
|
|
@@ -150,7 +150,7 @@ class AsyncSqliteDb(AsyncBaseDb):
|
|
|
150
150
|
"""
|
|
151
151
|
try:
|
|
152
152
|
table_schema = get_table_schema_definition(table_type)
|
|
153
|
-
log_debug(f"Creating table {table_name}
|
|
153
|
+
log_debug(f"Creating table {table_name}")
|
|
154
154
|
|
|
155
155
|
columns: List[Column] = []
|
|
156
156
|
indexes: List[str] = []
|
|
@@ -151,7 +151,7 @@ class SqliteDb(BaseDb):
|
|
|
151
151
|
"""
|
|
152
152
|
try:
|
|
153
153
|
table_schema = get_table_schema_definition(table_type)
|
|
154
|
-
log_debug(f"Creating table {table_name}
|
|
154
|
+
log_debug(f"Creating table {table_name}")
|
|
155
155
|
|
|
156
156
|
columns: List[Column] = []
|
|
157
157
|
indexes: List[str] = []
|