waldiez 0.4.0__tar.gz → 0.4.2__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.
Potentially problematic release.
This version of waldiez might be problematic. Click here for more details.
- {waldiez-0.4.0 → waldiez-0.4.2}/PKG-INFO +39 -42
- {waldiez-0.4.0 → waldiez-0.4.2}/pyproject.toml +50 -45
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/_version.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/captain_agent.py +5 -4
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/rag_user/vector_db.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/base_exporter.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/chats_exporter.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/utils/single_chat.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/utils/swarm.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/flow_exporter.py +2 -2
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/flow_content.py +6 -6
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/importing_utils.py +0 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/logging_utils.py +25 -4
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/skills/utils.py +2 -2
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/agent.py +1 -2
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/rag_user/vector_db_config.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/model/__init__.py +2 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/model/model.py +25 -6
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/model/model_data.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/waldiez.py +1 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/runner.py +1 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/utils/cli_extras/studio.py +2 -1
- {waldiez-0.4.0 → waldiez-0.4.2}/.gitignore +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/LICENSE +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/NOTICE.md +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/README.md +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/__main__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/cli.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporter.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/agent_exporter.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/code_execution.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/group_manager.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/rag_user/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/rag_user/chroma_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/rag_user/mongo_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/rag_user/pgvector_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/rag_user/qdrant_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/rag_user/rag_user.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/reasoning.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/swarm_agent.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/teachability.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/agent/utils/termination_message.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/agent_position.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/export_position.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/import_position.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/mixin.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/utils/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/utils/comments.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/utils/naming.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/utils/path_check.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/base/utils/to_string.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/utils/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/utils/common.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/utils/nested.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/chats/utils/sequential.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/agent_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/chat_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/def_main.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/flow/utils/flow_names.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/models/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/models/models_exporter.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/models/utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/skills/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/exporting/skills/skills_exporter.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/agent_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/agent_type.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/code_execution.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/linked_skill.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/nested_chat.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/teachability.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agent/termination_message.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/agents.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/assistant/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/assistant/assistant.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/assistant/assistant_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/captain_agent/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/captain_agent/captain_agent.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/captain_agent/captain_agent_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/captain_agent/captain_agent_lib_entry.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/extra_requirements.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/group_manager/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/group_manager/group_manager.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/group_manager/group_manager_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/group_manager/speakers.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/rag_user/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/rag_user/rag_user.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/rag_user/rag_user_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/rag_user/retrieve_config.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/reasoning/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/reasoning/reasoning_agent.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/reasoning/reasoning_agent_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/reasoning/reasoning_agent_reason_config.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/after_work.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/on_condition.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/on_condition_available.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/on_condition_target.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/swarm_agent.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/swarm_agent_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/swarm_agent/update_system_message.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/user_proxy/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/user_proxy/user_proxy.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/user_proxy/user_proxy_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/chat/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/chat/chat.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/chat/chat_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/chat/chat_message.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/chat/chat_nested.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/chat/chat_summary.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/common/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/common/ag2_version.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/common/base.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/common/date_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/common/dict_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/common/method_utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/flow/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/flow/flow.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/flow/flow_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/flow/utils.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/model/extra_requirements.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/skill/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/skill/extra_requirements.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/skill/skill.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/skill/skill_data.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/skill/skill_type.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/py.typed +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/running/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/running/environment.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/running/gen_seq_diagram.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/running/running.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/utils/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/utils/cli_extras/__init__.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/utils/cli_extras/jupyter.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/utils/conflict_checker.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/utils/flaml_warnings.py +0 -0
- {waldiez-0.4.0 → waldiez-0.4.2}/waldiez/utils/pysqlite3_checker.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: waldiez
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.2
|
|
4
4
|
Summary: waldiez
|
|
5
5
|
Project-URL: homepage, https://waldiez.github.io/waldiez/python
|
|
6
6
|
Project-URL: repository, https://github.com/waldiez/python.git
|
|
@@ -17,7 +17,8 @@ Classifier: Programming Language :: Python :: 3
|
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.10
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.11
|
|
19
19
|
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
-
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Requires-Python: <3.14,>=3.10
|
|
21
22
|
Requires-Dist: aiocsv==1.3.2
|
|
22
23
|
Requires-Dist: aiofiles==24.1.0
|
|
23
24
|
Requires-Dist: aiosqlite==0.21.0
|
|
@@ -28,82 +29,78 @@ Requires-Dist: jupytext
|
|
|
28
29
|
Requires-Dist: numpy<2.2.0
|
|
29
30
|
Requires-Dist: pandas>=2
|
|
30
31
|
Requires-Dist: parso==0.8.4
|
|
31
|
-
Requires-Dist: pyautogen==0.
|
|
32
|
-
Requires-Dist: pydantic<3,>=2.
|
|
32
|
+
Requires-Dist: pyautogen[openai]==0.8.4
|
|
33
|
+
Requires-Dist: pydantic<3,>=2.10.2
|
|
33
34
|
Requires-Dist: typer<0.16,>=0.9
|
|
34
35
|
Provides-Extra: ag2-extras
|
|
35
36
|
Requires-Dist: beautifulsoup4; extra == 'ag2-extras'
|
|
36
|
-
Requires-Dist: chromadb>=0.5.
|
|
37
|
-
Requires-Dist:
|
|
38
|
-
Requires-Dist: crewai>0.98.0; extra == 'ag2-extras'
|
|
39
|
-
Requires-Dist: embedchain==0.1.126; extra == 'ag2-extras'
|
|
37
|
+
Requires-Dist: chromadb>=0.5.10; extra == 'ag2-extras'
|
|
38
|
+
Requires-Dist: embedchain; extra == 'ag2-extras'
|
|
40
39
|
Requires-Dist: huggingface-hub; extra == 'ag2-extras'
|
|
41
40
|
Requires-Dist: ipython; extra == 'ag2-extras'
|
|
42
41
|
Requires-Dist: langchain-community<1,>=0.3.12; extra == 'ag2-extras'
|
|
43
42
|
Requires-Dist: markdownify; extra == 'ag2-extras'
|
|
44
|
-
Requires-Dist: pgvector>=0.
|
|
43
|
+
Requires-Dist: pgvector>=0.4.0; extra == 'ag2-extras'
|
|
45
44
|
Requires-Dist: protobuf>=4.25.3; extra == 'ag2-extras'
|
|
46
|
-
Requires-Dist: psycopg[binary]>=3.2.
|
|
47
|
-
Requires-Dist:
|
|
48
|
-
Requires-Dist: pyautogen[
|
|
49
|
-
Requires-Dist: pyautogen[
|
|
50
|
-
Requires-Dist: pyautogen[
|
|
51
|
-
Requires-Dist: pyautogen[
|
|
52
|
-
Requires-Dist: pyautogen[
|
|
53
|
-
Requires-Dist: pyautogen[interop-
|
|
54
|
-
Requires-Dist: pyautogen[
|
|
55
|
-
Requires-Dist: pyautogen[
|
|
56
|
-
Requires-Dist: pyautogen[
|
|
57
|
-
Requires-Dist: pyautogen[
|
|
58
|
-
Requires-Dist: pyautogen[
|
|
59
|
-
Requires-Dist: pyautogen[
|
|
60
|
-
Requires-Dist: pyautogen[websurfer]==0.7.4; extra == 'ag2-extras'
|
|
45
|
+
Requires-Dist: psycopg[binary]>=3.2.6; extra == 'ag2-extras'
|
|
46
|
+
Requires-Dist: pyautogen[anthropic]==0.8.4; extra == 'ag2-extras'
|
|
47
|
+
Requires-Dist: pyautogen[bedrock]==0.8.4; extra == 'ag2-extras'
|
|
48
|
+
Requires-Dist: pyautogen[cohere]==0.8.4; extra == 'ag2-extras'
|
|
49
|
+
Requires-Dist: pyautogen[gemini]==0.8.4; extra == 'ag2-extras'
|
|
50
|
+
Requires-Dist: pyautogen[groq]==0.8.4; extra == 'ag2-extras'
|
|
51
|
+
Requires-Dist: pyautogen[interop-crewai]==0.8.4; extra == 'ag2-extras'
|
|
52
|
+
Requires-Dist: pyautogen[interop-langchain]==0.8.4; extra == 'ag2-extras'
|
|
53
|
+
Requires-Dist: pyautogen[lmm]==0.8.4; extra == 'ag2-extras'
|
|
54
|
+
Requires-Dist: pyautogen[mistral]==0.8.4; extra == 'ag2-extras'
|
|
55
|
+
Requires-Dist: pyautogen[neo4j]==0.8.4; extra == 'ag2-extras'
|
|
56
|
+
Requires-Dist: pyautogen[ollama]==0.8.4; extra == 'ag2-extras'
|
|
57
|
+
Requires-Dist: pyautogen[together]==0.8.4; extra == 'ag2-extras'
|
|
58
|
+
Requires-Dist: pyautogen[websurfer]==0.8.4; extra == 'ag2-extras'
|
|
61
59
|
Requires-Dist: pydantic-ai>=0.0.21; extra == 'ag2-extras'
|
|
62
60
|
Requires-Dist: pymongo>=4.11; extra == 'ag2-extras'
|
|
63
61
|
Requires-Dist: pypdf; extra == 'ag2-extras'
|
|
64
62
|
Requires-Dist: qdrant-client[fastembed]; extra == 'ag2-extras'
|
|
65
63
|
Requires-Dist: sentence-transformers; extra == 'ag2-extras'
|
|
66
|
-
Requires-Dist: weaviate-client>=4.10.2; extra == 'ag2-extras'
|
|
67
64
|
Provides-Extra: dev
|
|
68
65
|
Requires-Dist: autoflake==2.3.1; extra == 'dev'
|
|
69
|
-
Requires-Dist: bandit==1.8.
|
|
66
|
+
Requires-Dist: bandit==1.8.3; extra == 'dev'
|
|
70
67
|
Requires-Dist: black[jupyter]==25.1.0; extra == 'dev'
|
|
71
|
-
Requires-Dist: flake8==7.
|
|
72
|
-
Requires-Dist: isort==6.0.
|
|
68
|
+
Requires-Dist: flake8==7.2.0; extra == 'dev'
|
|
69
|
+
Requires-Dist: isort==6.0.1; extra == 'dev'
|
|
73
70
|
Requires-Dist: mypy==1.15.0; extra == 'dev'
|
|
74
71
|
Requires-Dist: pandas-stubs; extra == 'dev'
|
|
75
|
-
Requires-Dist: pre-commit==4.
|
|
72
|
+
Requires-Dist: pre-commit==4.2.0; extra == 'dev'
|
|
76
73
|
Requires-Dist: pydocstyle==6.3.0; extra == 'dev'
|
|
77
|
-
Requires-Dist: pylint==3.3.
|
|
78
|
-
Requires-Dist: python-dotenv==1.0
|
|
79
|
-
Requires-Dist: ruff==0.
|
|
74
|
+
Requires-Dist: pylint==3.3.6; extra == 'dev'
|
|
75
|
+
Requires-Dist: python-dotenv==1.1.0; extra == 'dev'
|
|
76
|
+
Requires-Dist: ruff==0.11.2; extra == 'dev'
|
|
80
77
|
Requires-Dist: toml; (python_version <= '3.10') and extra == 'dev'
|
|
81
|
-
Requires-Dist: types-pyyaml==6.0.12.
|
|
78
|
+
Requires-Dist: types-pyyaml==6.0.12.20250326; extra == 'dev'
|
|
82
79
|
Requires-Dist: types-toml==0.10.8.20240310; extra == 'dev'
|
|
83
|
-
Requires-Dist: yamllint==1.
|
|
80
|
+
Requires-Dist: yamllint==1.37.0; extra == 'dev'
|
|
84
81
|
Provides-Extra: docs
|
|
85
82
|
Requires-Dist: mdx-include==1.4.2; extra == 'docs'
|
|
86
83
|
Requires-Dist: mdx-truly-sane-lists==1.3; extra == 'docs'
|
|
87
84
|
Requires-Dist: mkdocs-jupyter==0.25.1; extra == 'docs'
|
|
88
85
|
Requires-Dist: mkdocs-macros-plugin==1.3.7; extra == 'docs'
|
|
89
|
-
Requires-Dist: mkdocs-material==9.6.
|
|
90
|
-
Requires-Dist: mkdocs-minify-html-plugin==0.
|
|
86
|
+
Requires-Dist: mkdocs-material==9.6.9; extra == 'docs'
|
|
87
|
+
Requires-Dist: mkdocs-minify-html-plugin==0.3.1; extra == 'docs'
|
|
91
88
|
Requires-Dist: mkdocs==1.6.1; extra == 'docs'
|
|
92
|
-
Requires-Dist: mkdocstrings-python==1.
|
|
93
|
-
Requires-Dist: mkdocstrings[crystal,python]==0.
|
|
89
|
+
Requires-Dist: mkdocstrings-python==1.16.8; extra == 'docs'
|
|
90
|
+
Requires-Dist: mkdocstrings[crystal,python]==0.29.0; extra == 'docs'
|
|
94
91
|
Provides-Extra: jupyter
|
|
95
92
|
Requires-Dist: jupyterlab>=4.3.0; extra == 'jupyter'
|
|
96
|
-
Requires-Dist: waldiez-jupyter==0.4.
|
|
93
|
+
Requires-Dist: waldiez-jupyter==0.4.2; extra == 'jupyter'
|
|
97
94
|
Provides-Extra: studio
|
|
98
|
-
Requires-Dist: waldiez-studio==0.4.
|
|
95
|
+
Requires-Dist: waldiez-studio==0.4.2; extra == 'studio'
|
|
99
96
|
Provides-Extra: test
|
|
100
|
-
Requires-Dist: pytest-asyncio==0.
|
|
97
|
+
Requires-Dist: pytest-asyncio==0.26.0; extra == 'test'
|
|
101
98
|
Requires-Dist: pytest-cov==6.0.0; extra == 'test'
|
|
102
99
|
Requires-Dist: pytest-html==4.1.1; extra == 'test'
|
|
103
100
|
Requires-Dist: pytest-sugar==1.0.0; extra == 'test'
|
|
104
101
|
Requires-Dist: pytest-timeout==2.3.1; extra == 'test'
|
|
105
102
|
Requires-Dist: pytest-xdist==3.6.1; extra == 'test'
|
|
106
|
-
Requires-Dist: pytest==8.3.
|
|
103
|
+
Requires-Dist: pytest==8.3.5; extra == 'test'
|
|
107
104
|
Description-Content-Type: text/markdown
|
|
108
105
|
|
|
109
106
|
# Waldiez
|
|
@@ -7,7 +7,7 @@ authors = [
|
|
|
7
7
|
{ name = 'Stella Ioannidou', email = 'stella@humancentered.gr'}
|
|
8
8
|
]
|
|
9
9
|
readme = "README.md"
|
|
10
|
-
requires-python = '>=3.10,<3.
|
|
10
|
+
requires-python = '>=3.10,<3.14'
|
|
11
11
|
dynamic = ["version"]
|
|
12
12
|
classifiers = [
|
|
13
13
|
"Development Status :: 3 - Alpha",
|
|
@@ -17,6 +17,7 @@ classifiers = [
|
|
|
17
17
|
"Programming Language :: Python :: 3.10",
|
|
18
18
|
"Programming Language :: Python :: 3.11",
|
|
19
19
|
"Programming Language :: Python :: 3.12",
|
|
20
|
+
"Programming Language :: Python :: 3.13",
|
|
20
21
|
"Operating System :: OS Independent",
|
|
21
22
|
"Intended Audience :: Science/Research",
|
|
22
23
|
"Intended Audience :: Developers",
|
|
@@ -29,10 +30,10 @@ dependencies =[
|
|
|
29
30
|
"numpy<2.2.0",
|
|
30
31
|
"graphviz==0.20.3",
|
|
31
32
|
"pandas>=2",
|
|
32
|
-
"pyautogen==0.
|
|
33
|
+
"pyautogen[openai]==0.8.4",
|
|
33
34
|
"jupytext",
|
|
34
35
|
"parso==0.8.4",
|
|
35
|
-
"pydantic>=2.
|
|
36
|
+
"pydantic>=2.10.2,<3",
|
|
36
37
|
"typer>=0.9,<0.16",
|
|
37
38
|
"httpx<1",
|
|
38
39
|
]
|
|
@@ -41,6 +42,7 @@ dependencies =[
|
|
|
41
42
|
homepage = 'https://waldiez.github.io/waldiez/python'
|
|
42
43
|
repository = 'https://github.com/waldiez/python.git'
|
|
43
44
|
|
|
45
|
+
|
|
44
46
|
[tool.hatch.build.targets.sdist]
|
|
45
47
|
packages = ["waldiez", "waldiez.*"]
|
|
46
48
|
exclude = [ "**/example.py", ".gitignore" ]
|
|
@@ -51,49 +53,49 @@ exclude = [ "**/example.py" ]
|
|
|
51
53
|
|
|
52
54
|
[project.optional-dependencies]
|
|
53
55
|
studio = [
|
|
54
|
-
|
|
56
|
+
'waldiez_studio==0.4.2',
|
|
55
57
|
]
|
|
56
58
|
jupyter = [
|
|
57
|
-
|
|
58
|
-
|
|
59
|
+
'waldiez_jupyter==0.4.2',
|
|
60
|
+
'jupyterlab>=4.3.0',
|
|
59
61
|
]
|
|
60
62
|
dev = [
|
|
61
63
|
'autoflake==2.3.1',
|
|
62
|
-
'bandit==1.8.
|
|
64
|
+
'bandit==1.8.3',
|
|
63
65
|
'black[jupyter]==25.1.0',
|
|
64
|
-
'flake8==7.
|
|
65
|
-
'isort==6.0.
|
|
66
|
+
'flake8==7.2.0',
|
|
67
|
+
'isort==6.0.1',
|
|
66
68
|
'mypy==1.15.0',
|
|
67
|
-
|
|
68
|
-
'pre-commit==4.
|
|
69
|
+
'pandas-stubs',
|
|
70
|
+
'pre-commit==4.2.0',
|
|
69
71
|
'pydocstyle==6.3.0',
|
|
70
|
-
'pylint==3.3.
|
|
71
|
-
'python-dotenv==1.0
|
|
72
|
-
'ruff==0.
|
|
73
|
-
'types-
|
|
74
|
-
'yamllint==1.
|
|
72
|
+
'pylint==3.3.6',
|
|
73
|
+
'python-dotenv==1.1.0',
|
|
74
|
+
'ruff==0.11.2',
|
|
75
|
+
'types-pyyaml==6.0.12.20250326',
|
|
76
|
+
'yamllint==1.37.0',
|
|
75
77
|
'toml; python_version <= "3.10"',
|
|
76
|
-
'types-toml==
|
|
78
|
+
'types-toml==0.10.8.20240310',
|
|
77
79
|
]
|
|
78
80
|
ag2_extras =[
|
|
79
81
|
# models
|
|
80
|
-
'pyautogen[anthropic]==0.
|
|
81
|
-
'pyautogen[bedrock]==0.
|
|
82
|
-
'pyautogen[cohere]==0.
|
|
83
|
-
'pyautogen[gemini]==0.
|
|
84
|
-
'pyautogen[groq]==0.
|
|
85
|
-
'pyautogen[lmm]==0.
|
|
86
|
-
'pyautogen[mistral]==0.
|
|
87
|
-
'pyautogen[ollama]==0.
|
|
88
|
-
'pyautogen[together]==0.
|
|
82
|
+
'pyautogen[anthropic]==0.8.4',
|
|
83
|
+
'pyautogen[bedrock]==0.8.4',
|
|
84
|
+
'pyautogen[cohere]==0.8.4',
|
|
85
|
+
'pyautogen[gemini]==0.8.4',
|
|
86
|
+
'pyautogen[groq]==0.8.4',
|
|
87
|
+
'pyautogen[lmm]==0.8.4',
|
|
88
|
+
'pyautogen[mistral]==0.8.4',
|
|
89
|
+
'pyautogen[ollama]==0.8.4',
|
|
90
|
+
'pyautogen[together]==0.8.4',
|
|
89
91
|
# utils
|
|
90
|
-
'pyautogen[interop-crewai]==0.
|
|
91
|
-
'pyautogen[interop-langchain]==0.
|
|
92
|
-
'pyautogen[neo4j]==0.
|
|
93
|
-
'pyautogen[websurfer]==0.
|
|
94
|
-
'chromadb>=0.5.
|
|
95
|
-
'pgvector>=0.
|
|
96
|
-
'psycopg[binary]>=3.2.
|
|
92
|
+
'pyautogen[interop-crewai]==0.8.4',
|
|
93
|
+
'pyautogen[interop-langchain]==0.8.4',
|
|
94
|
+
'pyautogen[neo4j]==0.8.4',
|
|
95
|
+
'pyautogen[websurfer]==0.8.4',
|
|
96
|
+
'chromadb>=0.5.10',
|
|
97
|
+
'pgvector>=0.4.0',
|
|
98
|
+
'psycopg[binary]>=3.2.6',
|
|
97
99
|
'protobuf>=4.25.3',
|
|
98
100
|
'pypdf',
|
|
99
101
|
'ipython',
|
|
@@ -102,19 +104,16 @@ ag2_extras =[
|
|
|
102
104
|
'sentence-transformers',
|
|
103
105
|
'huggingface-hub',
|
|
104
106
|
'qdrant-client[fastembed]',
|
|
105
|
-
'pgvector>=0.
|
|
106
|
-
'psycopg[binary]>=3.2.
|
|
107
|
-
'
|
|
108
|
-
'embedchain==0.1.126',
|
|
109
|
-
'crewai>0.98.0',
|
|
110
|
-
'weaviate-client>=4.10.2',
|
|
107
|
+
'pgvector>=0.4.0',
|
|
108
|
+
'psycopg[binary]>=3.2.6',
|
|
109
|
+
'embedchain',
|
|
111
110
|
'langchain-community>=0.3.12,<1',
|
|
112
111
|
'pydantic-ai>=0.0.21',
|
|
113
112
|
'pymongo>=4.11',
|
|
114
113
|
]
|
|
115
114
|
test = [
|
|
116
|
-
'pytest==8.3.
|
|
117
|
-
'pytest-asyncio==0.
|
|
115
|
+
'pytest==8.3.5',
|
|
116
|
+
'pytest-asyncio==0.26.0',
|
|
118
117
|
'pytest-cov==6.0.0',
|
|
119
118
|
'pytest-html==4.1.1',
|
|
120
119
|
'pytest-sugar==1.0.0',
|
|
@@ -127,10 +126,10 @@ docs = [
|
|
|
127
126
|
'mkdocs==1.6.1',
|
|
128
127
|
'mkdocs-jupyter==0.25.1',
|
|
129
128
|
'mkdocs-macros-plugin==1.3.7',
|
|
130
|
-
'mkdocs-material==9.6.
|
|
131
|
-
'mkdocs-minify-html-plugin==0.
|
|
132
|
-
'mkdocstrings[crystal,python]==0.
|
|
133
|
-
'mkdocstrings-python==1.
|
|
129
|
+
'mkdocs-material==9.6.9',
|
|
130
|
+
'mkdocs-minify-html-plugin==0.3.1',
|
|
131
|
+
'mkdocstrings[crystal,python]==0.29.0',
|
|
132
|
+
'mkdocstrings-python==1.16.8'
|
|
134
133
|
]
|
|
135
134
|
|
|
136
135
|
[project.scripts]
|
|
@@ -194,6 +193,12 @@ exclude = [
|
|
|
194
193
|
'waldiez_out',
|
|
195
194
|
]
|
|
196
195
|
|
|
196
|
+
[[tool.mypy.overrides]]
|
|
197
|
+
module = "tests.*"
|
|
198
|
+
# with python < 3.13 we get seem to get 'call-arg' errors :(
|
|
199
|
+
# and with python>=3.13 'unused-ignore' : (
|
|
200
|
+
disable_error_code = ["call-arg"]
|
|
201
|
+
|
|
197
202
|
[tool.pydantic-mypy]
|
|
198
203
|
init_forbid_extra = true
|
|
199
204
|
init_typed = true
|
|
@@ -142,10 +142,11 @@ def get_llm_config(
|
|
|
142
142
|
max_tokens: Optional[int] = 2048
|
|
143
143
|
if agent.data.model_ids:
|
|
144
144
|
waldiez_model = get_waldiez_model(agent.data.model_ids[0], all_models)
|
|
145
|
-
|
|
146
|
-
temperature
|
|
147
|
-
|
|
148
|
-
|
|
145
|
+
llm_config = waldiez_model.get_llm_config(skip_price=True)
|
|
146
|
+
for key in ["temperature", "top_p", "max_tokens"]:
|
|
147
|
+
if key not in llm_config:
|
|
148
|
+
llm_config[key] = None
|
|
149
|
+
return llm_config
|
|
149
150
|
config_dict = {
|
|
150
151
|
"model": model_name,
|
|
151
152
|
"temperature": temperature,
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
- If the flow is async, the `run` function is async.
|
|
20
20
|
"""
|
|
21
21
|
|
|
22
|
-
# flake8: noqa E501
|
|
22
|
+
# flake8: noqa: E501
|
|
23
23
|
# pylint: disable=line-too-long
|
|
24
24
|
|
|
25
25
|
from functools import partial
|
|
@@ -213,7 +213,7 @@ class FlowExporter(BaseExporter, ExporterMixin):
|
|
|
213
213
|
content += imports[0] + "\n"
|
|
214
214
|
content += get_np_no_nep50_handle() + "\n"
|
|
215
215
|
content += self.get_comment("logging", self.for_notebook) + "\n"
|
|
216
|
-
content += get_start_logging(tabs=0) + "\n"
|
|
216
|
+
content += get_start_logging(is_async=is_async, tabs=0) + "\n"
|
|
217
217
|
content += "start_logging()\n\n"
|
|
218
218
|
if models_output:
|
|
219
219
|
content += self.get_comment("models", self.for_notebook) + "\n"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# SPDX-License-Identifier: Apache-2.0.
|
|
2
2
|
# Copyright (c) 2024 - 2025 Waldiez and contributors.
|
|
3
|
-
# flake8: noqa E501
|
|
3
|
+
# flake8: noqa: E501
|
|
4
4
|
# pylint: disable=line-too-long
|
|
5
5
|
"""Utils to generate the content of a flow."""
|
|
6
6
|
|
|
@@ -22,7 +22,7 @@ def get_py_content_start(waldiez: Waldiez) -> str:
|
|
|
22
22
|
The first part of the python script.
|
|
23
23
|
"""
|
|
24
24
|
content = "#!/usr/bin/env python\n"
|
|
25
|
-
content += "# flake8: noqa E501\n"
|
|
25
|
+
content += "# flake8: noqa: E501\n"
|
|
26
26
|
content += get_pylint_ignore_comment(False)
|
|
27
27
|
content += "# cspell: disable\n"
|
|
28
28
|
content += f'"""{waldiez.name}.' + "\n\n"
|
|
@@ -60,7 +60,7 @@ def get_ipynb_content_start(
|
|
|
60
60
|
# fmt: off
|
|
61
61
|
content += "# " + f"!{{sys.executable}} -m pip install -q {requirements}" + "\n"
|
|
62
62
|
# fmt: on
|
|
63
|
-
content += "# flake8: noqa E501"
|
|
63
|
+
content += "# flake8: noqa: E501"
|
|
64
64
|
content += get_pylint_ignore_comment(True)
|
|
65
65
|
content += "# cspell: disable\n"
|
|
66
66
|
return content
|
|
@@ -135,8 +135,8 @@ def get_after_run_content(
|
|
|
135
135
|
str
|
|
136
136
|
The content to add after the flow is run.
|
|
137
137
|
"""
|
|
138
|
-
# if
|
|
139
|
-
# visualize_tree(
|
|
138
|
+
# if the flow has a reasoning agents, we add
|
|
139
|
+
# agent.visualize_tree() for each agent
|
|
140
140
|
content = ""
|
|
141
141
|
tab = " "
|
|
142
142
|
space = tab * tabs
|
|
@@ -146,7 +146,7 @@ def get_after_run_content(
|
|
|
146
146
|
content += f"""
|
|
147
147
|
{space}# pylint: disable=broad-except,too-many-try-statements
|
|
148
148
|
{space}try:
|
|
149
|
-
{space}{tab}
|
|
149
|
+
{space}{tab}{agent_name}.visualize_tree()
|
|
150
150
|
{space}{tab}if os.path.exists("tree_of_thoughts.png"):
|
|
151
151
|
{space}{tab}{tab}new_name = "{agent_name}_tree_of_thoughts.png"
|
|
152
152
|
{space}{tab}{tab}os.rename("tree_of_thoughts.png", new_name)
|
|
@@ -16,11 +16,13 @@ get_sqlite_to_csv_call_string
|
|
|
16
16
|
"""
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
def get_start_logging(tabs: int = 0) -> str:
|
|
19
|
+
def get_start_logging(is_async: bool, tabs: int = 0) -> str:
|
|
20
20
|
"""Get the logging start call string.
|
|
21
21
|
|
|
22
22
|
Parameters
|
|
23
23
|
----------
|
|
24
|
+
is_async : bool
|
|
25
|
+
Whether to use async mode.
|
|
24
26
|
tabs : int, optional
|
|
25
27
|
The number of tabs to use for indentation, by default 0
|
|
26
28
|
|
|
@@ -41,7 +43,8 @@ def get_start_logging(tabs: int = 0) -> str:
|
|
|
41
43
|
)
|
|
42
44
|
"""
|
|
43
45
|
tab = " " * tabs
|
|
44
|
-
|
|
46
|
+
if is_async is False:
|
|
47
|
+
return f'''
|
|
45
48
|
{tab}def start_logging() -> None:
|
|
46
49
|
{tab} """Start logging."""
|
|
47
50
|
{tab} runtime_logging.start(
|
|
@@ -49,7 +52,20 @@ def get_start_logging(tabs: int = 0) -> str:
|
|
|
49
52
|
{tab} config={{"dbname": "flow.db"}},
|
|
50
53
|
{tab} )
|
|
51
54
|
'''
|
|
52
|
-
return
|
|
55
|
+
return f'''
|
|
56
|
+
{tab}def start_logging() -> None:
|
|
57
|
+
{tab} """Start logging."""
|
|
58
|
+
{tab} # pylint: disable=import-outside-toplevel
|
|
59
|
+
{tab} from anyio.from_thread import start_blocking_portal
|
|
60
|
+
|
|
61
|
+
{tab} with start_blocking_portal(backend="asyncio") as portal:
|
|
62
|
+
{tab} portal.call(
|
|
63
|
+
{tab} runtime_logging.start,
|
|
64
|
+
{tab} None,
|
|
65
|
+
{tab} "sqlite",
|
|
66
|
+
{tab} {{"dbname": "flow.db"}},
|
|
67
|
+
{tab} )
|
|
68
|
+
'''
|
|
53
69
|
|
|
54
70
|
|
|
55
71
|
# pylint: disable=differing-param-doc,differing-type-doc
|
|
@@ -336,6 +352,11 @@ def get_stop_logging(tabs: int, is_async: bool) -> str:
|
|
|
336
352
|
content += "async "
|
|
337
353
|
content += "def stop_logging() -> None:\n"
|
|
338
354
|
content += ' """Stop logging."""\n'
|
|
339
|
-
|
|
355
|
+
if is_async:
|
|
356
|
+
content += f"{tab} # pylint: disable=import-outside-toplevel\n"
|
|
357
|
+
content += f"{tab} from asyncer import asyncify\n\n"
|
|
358
|
+
content += f"{tab} await asyncify(runtime_logging.stop)()\n"
|
|
359
|
+
else:
|
|
360
|
+
content += f"{tab} runtime_logging.stop()\n"
|
|
340
361
|
content += get_sqlite_out_call(tabs + 1, is_async)
|
|
341
362
|
return content
|
|
@@ -263,8 +263,8 @@ def get_skill_secrets_import(flow_name: str, skill: WaldiezSkill) -> str:
|
|
|
263
263
|
return ""
|
|
264
264
|
# fmt: on
|
|
265
265
|
module_name = f"{flow_name}_{skill.name}"
|
|
266
|
-
|
|
267
|
-
return f"import {module_name}_secrets{
|
|
266
|
+
type_ignore_noqa = " # type: ignore # noqa"
|
|
267
|
+
return f"import {module_name}_secrets{type_ignore_noqa}" + "\n"
|
|
268
268
|
|
|
269
269
|
|
|
270
270
|
def get_agent_skill_registrations(
|
|
@@ -177,8 +177,7 @@ class WaldiezAgent(WaldiezBase):
|
|
|
177
177
|
)
|
|
178
178
|
elif agent_class == "ReasoningAgent":
|
|
179
179
|
imports.add(
|
|
180
|
-
"from autogen.
|
|
181
|
-
"import ReasoningAgent, visualize_tree"
|
|
180
|
+
"from autogen.agents.experimental import ReasoningAgent"
|
|
182
181
|
)
|
|
183
182
|
elif agent_class == "CaptainAgent":
|
|
184
183
|
imports.add(
|
|
@@ -3,12 +3,13 @@
|
|
|
3
3
|
"""Waldiez model."""
|
|
4
4
|
|
|
5
5
|
from .extra_requirements import get_models_extra_requirements
|
|
6
|
-
from .model import DEFAULT_BASE_URLS, WaldiezModel
|
|
6
|
+
from .model import DEFAULT_BASE_URLS, MODEL_NEEDS_BASE_URL, WaldiezModel
|
|
7
7
|
from .model_data import WaldiezModelAPIType, WaldiezModelData, WaldiezModelPrice
|
|
8
8
|
|
|
9
9
|
__all__ = [
|
|
10
10
|
"get_models_extra_requirements",
|
|
11
11
|
"DEFAULT_BASE_URLS",
|
|
12
|
+
"MODEL_NEEDS_BASE_URL",
|
|
12
13
|
"WaldiezModel",
|
|
13
14
|
"WaldiezModelData",
|
|
14
15
|
"WaldiezModelPrice",
|
|
@@ -23,6 +23,22 @@ DEFAULT_BASE_URLS: Dict[WaldiezModelAPIType, str] = {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
|
|
26
|
+
# we can omit the base_url for these models
|
|
27
|
+
MODEL_NEEDS_BASE_URL: Dict[WaldiezModelAPIType, bool] = {
|
|
28
|
+
"openai": False,
|
|
29
|
+
"azure": False,
|
|
30
|
+
"google": False,
|
|
31
|
+
"anthropic": False,
|
|
32
|
+
"cohere": False,
|
|
33
|
+
"other": False, # falls back to openai
|
|
34
|
+
"deepseek": True,
|
|
35
|
+
"mistral": True,
|
|
36
|
+
"groq": True,
|
|
37
|
+
"together": True,
|
|
38
|
+
"nim": True,
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
|
|
26
42
|
class WaldiezModel(WaldiezBase):
|
|
27
43
|
"""Waldiez Model class.
|
|
28
44
|
|
|
@@ -225,10 +241,13 @@ def set_default_base_url(
|
|
|
225
241
|
Dict[str, Any]
|
|
226
242
|
The llm config dictionary with the default base url set.
|
|
227
243
|
"""
|
|
228
|
-
|
|
229
|
-
return llm_config
|
|
244
|
+
dict_copy = llm_config.copy()
|
|
230
245
|
if "base_url" not in llm_config or not llm_config["base_url"]:
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
246
|
+
if MODEL_NEEDS_BASE_URL.get(api_type, True):
|
|
247
|
+
dict_copy["base_url"] = DEFAULT_BASE_URLS.get(api_type, "")
|
|
248
|
+
if (
|
|
249
|
+
not llm_config.get("base_url", "")
|
|
250
|
+
and MODEL_NEEDS_BASE_URL.get(api_type, True) is False
|
|
251
|
+
):
|
|
252
|
+
dict_copy.pop("base_url", None)
|
|
253
|
+
return dict_copy
|
|
@@ -239,7 +239,7 @@ class Waldiez:
|
|
|
239
239
|
self.flow.requirements,
|
|
240
240
|
)
|
|
241
241
|
requirements = set(requirements_list)
|
|
242
|
-
requirements.add(f"pyautogen=={autogen_version}")
|
|
242
|
+
requirements.add(f"pyautogen[openai]=={autogen_version}")
|
|
243
243
|
if self.has_rag_agents:
|
|
244
244
|
rag_extras = get_retrievechat_extra_requirements(self.agents)
|
|
245
245
|
requirements.update(rag_extras)
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
# Copyright (c) 2024 - 2025 Waldiez and contributors.
|
|
3
3
|
# pylint: skip-file
|
|
4
4
|
# isort: skip_file
|
|
5
|
+
# flake8: noqa: E501,E402
|
|
5
6
|
"""Waldiez-studio extra typer commands for CLI."""
|
|
6
7
|
|
|
7
8
|
from typing import Any, Callable
|
|
@@ -13,7 +14,7 @@ HAVE_STUDIO = False
|
|
|
13
14
|
studio_app: Callable[..., Any] | None = None
|
|
14
15
|
|
|
15
16
|
try:
|
|
16
|
-
from waldiez_studio.cli import run # type: ignore[unused-ignore, import-not-found, import-untyped]
|
|
17
|
+
from waldiez_studio.cli import run # type: ignore[unused-ignore, import-not-found, import-untyped]
|
|
17
18
|
|
|
18
19
|
studio_app = run
|
|
19
20
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/captain_agent/captain_agent_lib_entry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{waldiez-0.4.0 → waldiez-0.4.2}/waldiez/models/agents/reasoning/reasoning_agent_reason_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|