atendentepro 0.6.2__tar.gz → 0.6.3__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.
Files changed (48) hide show
  1. {atendentepro-0.6.2 → atendentepro-0.6.3}/CHANGELOG.md +16 -0
  2. {atendentepro-0.6.2 → atendentepro-0.6.3}/PKG-INFO +23 -23
  3. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/knowledge.py +13 -0
  4. {atendentepro-0.6.2 → atendentepro-0.6.3}/pyproject.toml +23 -23
  5. atendentepro-0.6.3/requirements.txt +57 -0
  6. atendentepro-0.6.2/requirements.txt +0 -46
  7. {atendentepro-0.6.2 → atendentepro-0.6.3}/LICENSE +0 -0
  8. {atendentepro-0.6.2 → atendentepro-0.6.3}/MANIFEST.in +0 -0
  9. {atendentepro-0.6.2 → atendentepro-0.6.3}/README.md +0 -0
  10. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/README.md +0 -0
  11. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/__init__.py +0 -0
  12. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/__init__.py +0 -0
  13. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/answer.py +0 -0
  14. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/confirmation.py +0 -0
  15. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/escalation.py +0 -0
  16. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/feedback.py +0 -0
  17. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/flow.py +0 -0
  18. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/interview.py +0 -0
  19. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/onboarding.py +0 -0
  20. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/triage.py +0 -0
  21. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/agents/usage.py +0 -0
  22. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/config/__init__.py +0 -0
  23. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/config/settings.py +0 -0
  24. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/guardrails/__init__.py +0 -0
  25. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/guardrails/manager.py +0 -0
  26. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/license.py +0 -0
  27. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/models/__init__.py +0 -0
  28. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/models/context.py +0 -0
  29. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/models/outputs.py +0 -0
  30. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/network.py +0 -0
  31. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/__init__.py +0 -0
  32. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/answer.py +0 -0
  33. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/confirmation.py +0 -0
  34. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/escalation.py +0 -0
  35. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/feedback.py +0 -0
  36. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/flow.py +0 -0
  37. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/interview.py +0 -0
  38. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/knowledge.py +0 -0
  39. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/onboarding.py +0 -0
  40. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/prompts/triage.py +0 -0
  41. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/templates/__init__.py +0 -0
  42. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/templates/manager.py +0 -0
  43. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/utils/__init__.py +0 -0
  44. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/utils/openai_client.py +0 -0
  45. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro/utils/tracing.py +0 -0
  46. {atendentepro-0.6.2 → atendentepro-0.6.3}/atendentepro.egg-info/SOURCES.txt +0 -0
  47. {atendentepro-0.6.2 → atendentepro-0.6.3}/setup.cfg +0 -0
  48. {atendentepro-0.6.2 → atendentepro-0.6.3}/setup.py +0 -0
@@ -5,6 +5,22 @@ All notable changes to AtendentePro will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.6.3] - 2025-01-12
9
+
10
+ ### Changed
11
+ - **Dependências otimizadas**: numpy e scikit-learn movidos para opcional `[rag]`
12
+ - **Versões com limites**: Todas as dependências agora têm limites máximos de versão
13
+ - **CI mais rápido**: Cache de pip adicionado e matriz reduzida para Python 3.9 e 3.12
14
+ - Instalação base reduzida de ~300MB para ~50MB
15
+
16
+ ### Fixed
17
+ - Warnings de instalação eliminados com pinagem de versões
18
+ - Tempo de deploy reduzido de ~40min para ~8-10min
19
+ - Verificação clara quando RAG dependencies não estão instaladas
20
+
21
+ ### Migration
22
+ - Se você usa RAG/Knowledge Agent, agora precisa: `pip install atendentepro[rag]`
23
+
8
24
  ## [0.6.2] - 2025-01-12
9
25
 
10
26
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atendentepro
3
- Version: 0.6.2
3
+ Version: 0.6.3
4
4
  Summary: Framework de orquestração de agentes IA com tom e estilo customizáveis. Integra documentos (RAG), APIs e bancos de dados em uma plataforma inteligente multi-agente.
5
5
  Author-email: BeMonkAI <contato@monkai.com.br>
6
6
  Maintainer-email: BeMonkAI <contato@monkai.com.br>
@@ -25,33 +25,33 @@ Classifier: Operating System :: OS Independent
25
25
  Requires-Python: >=3.9
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE
28
- Requires-Dist: openai-agents>=0.3.3
29
- Requires-Dist: openai>=1.107.1
30
- Requires-Dist: pydantic>=2.0.0
31
- Requires-Dist: PyYAML>=6.0
32
- Requires-Dist: python-dotenv>=1.0.0
33
- Requires-Dist: httpx>=0.27.0
34
- Requires-Dist: numpy>=1.24.0
35
- Requires-Dist: scikit-learn>=1.3.0
28
+ Requires-Dist: openai-agents<1.0.0,>=0.3.3
29
+ Requires-Dist: openai<2.0.0,>=1.107.1
30
+ Requires-Dist: pydantic<3.0.0,>=2.0.0
31
+ Requires-Dist: PyYAML<7.0,>=6.0
32
+ Requires-Dist: python-dotenv<2.0.0,>=1.0.0
33
+ Requires-Dist: httpx<1.0.0,>=0.27.0
36
34
  Provides-Extra: dev
37
- Requires-Dist: pytest>=7.0.0; extra == "dev"
38
- Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
39
- Requires-Dist: black>=23.0.0; extra == "dev"
40
- Requires-Dist: isort>=5.12.0; extra == "dev"
41
- Requires-Dist: mypy>=1.0.0; extra == "dev"
35
+ Requires-Dist: pytest<9.0.0,>=7.0.0; extra == "dev"
36
+ Requires-Dist: pytest-asyncio<1.0.0,>=0.21.0; extra == "dev"
37
+ Requires-Dist: black<25.0.0,>=23.0.0; extra == "dev"
38
+ Requires-Dist: isort<6.0.0,>=5.12.0; extra == "dev"
39
+ Requires-Dist: mypy<2.0.0,>=1.0.0; extra == "dev"
42
40
  Provides-Extra: docs
43
- Requires-Dist: mkdocs>=1.5.0; extra == "docs"
44
- Requires-Dist: mkdocs-material>=9.0.0; extra == "docs"
41
+ Requires-Dist: mkdocs<2.0.0,>=1.5.0; extra == "docs"
42
+ Requires-Dist: mkdocs-material<10.0.0,>=9.0.0; extra == "docs"
45
43
  Provides-Extra: rag
46
- Requires-Dist: PyPDF2>=3.0.0; extra == "rag"
47
- Requires-Dist: python-docx>=0.8.11; extra == "rag"
48
- Requires-Dist: python-pptx>=0.6.21; extra == "rag"
49
- Requires-Dist: PyMuPDF>=1.23.0; extra == "rag"
44
+ Requires-Dist: numpy<2.0.0,>=1.24.0; extra == "rag"
45
+ Requires-Dist: scikit-learn<2.0.0,>=1.3.0; extra == "rag"
46
+ Requires-Dist: PyPDF2<4.0.0,>=3.0.0; extra == "rag"
47
+ Requires-Dist: python-docx<2.0.0,>=0.8.11; extra == "rag"
48
+ Requires-Dist: python-pptx<1.0.0,>=0.6.21; extra == "rag"
49
+ Requires-Dist: PyMuPDF<2.0.0,>=1.23.0; extra == "rag"
50
50
  Provides-Extra: tracing
51
- Requires-Dist: monkai-trace>=0.2.9; extra == "tracing"
51
+ Requires-Dist: monkai-trace<1.0.0,>=0.2.9; extra == "tracing"
52
52
  Provides-Extra: azure
53
- Requires-Dist: opentelemetry-sdk>=1.20.0; extra == "azure"
54
- Requires-Dist: azure-monitor-opentelemetry-exporter>=1.0.0; extra == "azure"
53
+ Requires-Dist: opentelemetry-sdk<2.0.0,>=1.20.0; extra == "azure"
54
+ Requires-Dist: azure-monitor-opentelemetry-exporter<2.0.0,>=1.0.0; extra == "azure"
55
55
  Provides-Extra: all
56
56
  Requires-Dist: atendentepro[azure,dev,docs,rag,tracing]; extra == "all"
57
57
  Dynamic: license-file
@@ -58,9 +58,22 @@ def load_embeddings() -> List[dict]:
58
58
  return []
59
59
 
60
60
 
61
+ def _check_rag_dependencies() -> None:
62
+ """Check if RAG dependencies are installed."""
63
+ try:
64
+ import numpy # noqa: F401
65
+ import sklearn # noqa: F401
66
+ except ImportError as e:
67
+ raise ImportError(
68
+ "RAG dependencies not installed. "
69
+ "Install with: pip install atendentepro[rag]"
70
+ ) from e
71
+
72
+
61
73
  async def _find_relevant_chunks(query: str, top_k: int = 3) -> List[dict]:
62
74
  """Find most relevant chunks for a given query."""
63
75
  try:
76
+ _check_rag_dependencies()
64
77
  from sklearn.metrics.pairwise import cosine_similarity
65
78
  import numpy as np
66
79
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "atendentepro"
3
- version = "0.6.2"
3
+ version = "0.6.3"
4
4
  description = "Framework de orquestração de agentes IA com tom e estilo customizáveis. Integra documentos (RAG), APIs e bancos de dados em uma plataforma inteligente multi-agente."
5
5
  authors = [
6
6
  { name = "BeMonkAI", email = "contato@monkai.com.br" }
@@ -43,40 +43,40 @@ classifiers = [
43
43
  "Operating System :: OS Independent",
44
44
  ]
45
45
  dependencies = [
46
- "openai-agents>=0.3.3",
47
- "openai>=1.107.1",
48
- "pydantic>=2.0.0",
49
- "PyYAML>=6.0",
50
- "python-dotenv>=1.0.0",
51
- "httpx>=0.27.0",
52
- "numpy>=1.24.0",
53
- "scikit-learn>=1.3.0",
46
+ "openai-agents>=0.3.3,<1.0.0",
47
+ "openai>=1.107.1,<2.0.0",
48
+ "pydantic>=2.0.0,<3.0.0",
49
+ "PyYAML>=6.0,<7.0",
50
+ "python-dotenv>=1.0.0,<2.0.0",
51
+ "httpx>=0.27.0,<1.0.0",
54
52
  ]
55
53
 
56
54
  [project.optional-dependencies]
57
55
  dev = [
58
- "pytest>=7.0.0",
59
- "pytest-asyncio>=0.21.0",
60
- "black>=23.0.0",
61
- "isort>=5.12.0",
62
- "mypy>=1.0.0",
56
+ "pytest>=7.0.0,<9.0.0",
57
+ "pytest-asyncio>=0.21.0,<1.0.0",
58
+ "black>=23.0.0,<25.0.0",
59
+ "isort>=5.12.0,<6.0.0",
60
+ "mypy>=1.0.0,<2.0.0",
63
61
  ]
64
62
  docs = [
65
- "mkdocs>=1.5.0",
66
- "mkdocs-material>=9.0.0",
63
+ "mkdocs>=1.5.0,<2.0.0",
64
+ "mkdocs-material>=9.0.0,<10.0.0",
67
65
  ]
68
66
  rag = [
69
- "PyPDF2>=3.0.0",
70
- "python-docx>=0.8.11",
71
- "python-pptx>=0.6.21",
72
- "PyMuPDF>=1.23.0",
67
+ "numpy>=1.24.0,<2.0.0",
68
+ "scikit-learn>=1.3.0,<2.0.0",
69
+ "PyPDF2>=3.0.0,<4.0.0",
70
+ "python-docx>=0.8.11,<2.0.0",
71
+ "python-pptx>=0.6.21,<1.0.0",
72
+ "PyMuPDF>=1.23.0,<2.0.0",
73
73
  ]
74
74
  tracing = [
75
- "monkai-trace>=0.2.9",
75
+ "monkai-trace>=0.2.9,<1.0.0",
76
76
  ]
77
77
  azure = [
78
- "opentelemetry-sdk>=1.20.0",
79
- "azure-monitor-opentelemetry-exporter>=1.0.0",
78
+ "opentelemetry-sdk>=1.20.0,<2.0.0",
79
+ "azure-monitor-opentelemetry-exporter>=1.0.0,<2.0.0",
80
80
  ]
81
81
  all = [
82
82
  "atendentepro[dev,docs,rag,tracing,azure]",
@@ -0,0 +1,57 @@
1
+ # AtendentePro - Sistema de Atendimento Inteligente com Múltiplos Agentes IA
2
+ # Dependências principais (core)
3
+
4
+ # OpenAI Agents SDK (core framework)
5
+ openai-agents>=0.3.3,<1.0.0
6
+
7
+ # OpenAI Python SDK
8
+ openai>=1.107.1,<2.0.0
9
+
10
+ # Data validation and serialization
11
+ pydantic>=2.0.0,<3.0.0
12
+
13
+ # YAML configuration files
14
+ PyYAML>=6.0,<7.0
15
+
16
+ # Environment management
17
+ python-dotenv>=1.0.0,<2.0.0
18
+
19
+ # HTTP client
20
+ httpx>=0.27.0,<1.0.0
21
+
22
+ # ===========================================
23
+ # Optional Dependencies - RAG
24
+ # ===========================================
25
+ # Para usar o Knowledge Agent com RAG, instale:
26
+ # pip install atendentepro[rag]
27
+ #
28
+ # Ou manualmente:
29
+ # numpy>=1.24.0,<2.0.0
30
+ # scikit-learn>=1.3.0,<2.0.0
31
+ # PyPDF2>=3.0.0,<4.0.0
32
+ # python-docx>=0.8.11,<2.0.0
33
+ # python-pptx>=0.6.21,<1.0.0
34
+ # PyMuPDF>=1.23.0,<2.0.0
35
+
36
+ # ===========================================
37
+ # Optional Dependencies - Tracing
38
+ # ===========================================
39
+ # pip install atendentepro[tracing]
40
+ # monkai-trace>=0.2.9,<1.0.0
41
+
42
+ # ===========================================
43
+ # Optional Dependencies - Azure
44
+ # ===========================================
45
+ # pip install atendentepro[azure]
46
+ # opentelemetry-sdk>=1.20.0,<2.0.0
47
+ # azure-monitor-opentelemetry-exporter>=1.0.0,<2.0.0
48
+
49
+ # ===========================================
50
+ # Development
51
+ # ===========================================
52
+ # pip install atendentepro[dev]
53
+ # pytest>=7.0.0,<9.0.0
54
+ # pytest-asyncio>=0.21.0,<1.0.0
55
+ # black>=23.0.0,<25.0.0
56
+ # isort>=5.12.0,<6.0.0
57
+ # mypy>=1.0.0,<2.0.0
@@ -1,46 +0,0 @@
1
- # AtendentePro - Sistema de Atendimento Inteligente com Múltiplos Agentes IA
2
- # Dependências principais
3
-
4
- # OpenAI Agents SDK (core framework)
5
- openai-agents>=0.3.3
6
-
7
- # OpenAI Python SDK
8
- openai>=1.107.1
9
-
10
- # Data validation and serialization
11
- pydantic>=2.0.0
12
-
13
- # YAML configuration files
14
- PyYAML>=6.0
15
-
16
- # Environment management
17
- python-dotenv>=1.0.0
18
-
19
- # HTTP client
20
- httpx>=0.27.0
21
-
22
- # Machine Learning and Vector Operations (for RAG)
23
- numpy>=1.24.0
24
- scikit-learn>=1.3.0
25
-
26
- # ===========================================
27
- # Optional Dependencies
28
- # ===========================================
29
-
30
- # Document processing (for RAG)
31
- # PyPDF2>=3.0.0
32
- # python-docx>=0.8.11
33
- # python-pptx>=0.6.21
34
- # PyMuPDF>=1.23.0
35
-
36
- # Tracing (Application Insights)
37
- # opentelemetry-sdk>=1.20.0
38
- # azure-monitor-opentelemetry-exporter>=1.0.0
39
-
40
- # Development
41
- # pytest>=7.0.0
42
- # pytest-asyncio>=0.21.0
43
- # black>=23.0.0
44
- # isort>=5.12.0
45
- # mypy>=1.0.0
46
-
File without changes
File without changes
File without changes
File without changes
File without changes