waldiez 0.1.13__tar.gz → 0.1.15__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.1.13 → waldiez-0.1.15}/PKG-INFO +31 -21
- {waldiez-0.1.13 → waldiez-0.1.15}/README.md +11 -4
- {waldiez-0.1.13 → waldiez-0.1.15}/pyproject.toml +29 -18
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/_version.py +1 -1
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/cli.py +1 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/conflict_checker.py +3 -2
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/group_manager/speakers.py +2 -2
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/common/base.py +1 -1
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/flow/flow_data.py +15 -3
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/model/model_data.py +65 -8
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/waldiez.py +5 -4
- {waldiez-0.1.13 → waldiez-0.1.15}/.gitignore +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/LICENSE +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/__main__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporter.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/agent.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/agent_skills.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/code_execution.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/group_manager.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/llm_config.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/rag_user/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/rag_user/chroma_utils.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/rag_user/mongo_utils.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/rag_user/pgvector_utils.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/rag_user/qdrant_utils.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/rag_user/rag_user.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/rag_user/vector_db.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/teachability.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/agents/termination_message.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/chats/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/chats/chats.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/chats/helpers.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/chats/nested.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/flow/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/flow/def_main.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/flow/flow.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/models/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/skills/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/comments.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/importing.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/logging_utils.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/method_utils.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/naming.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/object_string.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/exporting/utils/path_check.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/io/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/agent.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/agent_data.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/code_execution.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/linked_skill.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/nested_chat.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/teachability.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agent/termination_message.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/agents.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/assistant/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/assistant/assistant.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/assistant/assistant_data.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/group_manager/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/group_manager/group_manager.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/group_manager/group_manager_data.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/rag_user/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/rag_user/rag_user.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/rag_user/rag_user_data.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/rag_user/retrieve_config.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/rag_user/vector_db_config.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/user_proxy/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/user_proxy/user_proxy.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/agents/user_proxy/user_proxy_data.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/chat/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/chat/chat.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/chat/chat_data.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/chat/chat_message.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/chat/chat_nested.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/chat/chat_summary.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/common/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/common/method_utils.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/flow/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/flow/flow.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/model/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/model/model.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/skill/__init__.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/skill/skill.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/models/skill/skill_data.py +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/py.typed +0 -0
- {waldiez-0.1.13 → waldiez-0.1.15}/waldiez/runner.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: waldiez
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.15
|
|
4
4
|
Summary: waldiez
|
|
5
5
|
Project-URL: homepage, https://waldiez.github.io/waldiez/
|
|
6
6
|
Project-URL: repository, https://github.com/waldiez/waldiez.git
|
|
@@ -16,28 +16,29 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.11
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.12
|
|
18
18
|
Requires-Python: <3.13,>=3.10
|
|
19
|
-
Requires-Dist: ag2==0.4.1
|
|
20
19
|
Requires-Dist: jupytext
|
|
20
|
+
Requires-Dist: pyautogen==0.5.0
|
|
21
|
+
Requires-Dist: pydantic>=2.0
|
|
21
22
|
Requires-Dist: typer<0.13,>=0.9
|
|
22
23
|
Provides-Extra: ag2-extras
|
|
23
|
-
Requires-Dist: ag2[anthropic]==0.4.1; extra == 'ag2-extras'
|
|
24
|
-
Requires-Dist: ag2[bedrock]==0.4.1; extra == 'ag2-extras'
|
|
25
|
-
Requires-Dist: ag2[captainagent]==0.4.1; extra == 'ag2-extras'
|
|
26
|
-
Requires-Dist: ag2[gemini]==0.4.1; extra == 'ag2-extras'
|
|
27
|
-
Requires-Dist: ag2[groq]==0.4.1; extra == 'ag2-extras'
|
|
28
|
-
Requires-Dist: ag2[lmm]==0.4.1; extra == 'ag2-extras'
|
|
29
|
-
Requires-Dist: ag2[mistral]==0.4.1; extra == 'ag2-extras'
|
|
30
|
-
Requires-Dist: ag2[retrievechat-mongodb]==0.4.1; extra == 'ag2-extras'
|
|
31
|
-
Requires-Dist: ag2[retrievechat-pgvector]==0.4.1; extra == 'ag2-extras'
|
|
32
|
-
Requires-Dist: ag2[retrievechat-qdrant]==0.4.1; extra == 'ag2-extras'
|
|
33
|
-
Requires-Dist: ag2[retrievechat]==0.4.1; extra == 'ag2-extras'
|
|
34
|
-
Requires-Dist: ag2[together]==0.4.1; extra == 'ag2-extras'
|
|
35
|
-
Requires-Dist: ag2[websurfer]==0.4.1; extra == 'ag2-extras'
|
|
36
24
|
Requires-Dist: fastembed==0.4.2; extra == 'ag2-extras'
|
|
37
25
|
Requires-Dist: pgvector>=0.3.6; extra == 'ag2-extras'
|
|
38
26
|
Requires-Dist: psycopg[binary]>=3.2.3; extra == 'ag2-extras'
|
|
27
|
+
Requires-Dist: pyautogen[anthropic]==0.5.0; extra == 'ag2-extras'
|
|
28
|
+
Requires-Dist: pyautogen[bedrock]==0.5.0; extra == 'ag2-extras'
|
|
29
|
+
Requires-Dist: pyautogen[captainagent]==0.5.0; extra == 'ag2-extras'
|
|
30
|
+
Requires-Dist: pyautogen[gemini]==0.5.0; extra == 'ag2-extras'
|
|
31
|
+
Requires-Dist: pyautogen[groq]==0.5.0; extra == 'ag2-extras'
|
|
32
|
+
Requires-Dist: pyautogen[lmm]==0.5.0; extra == 'ag2-extras'
|
|
33
|
+
Requires-Dist: pyautogen[mistral]==0.5.0; extra == 'ag2-extras'
|
|
34
|
+
Requires-Dist: pyautogen[retrievechat-mongodb]==0.5.0; extra == 'ag2-extras'
|
|
35
|
+
Requires-Dist: pyautogen[retrievechat-pgvector]==0.5.0; extra == 'ag2-extras'
|
|
36
|
+
Requires-Dist: pyautogen[retrievechat-qdrant]==0.5.0; (python_version < '3.13') and extra == 'ag2-extras'
|
|
37
|
+
Requires-Dist: pyautogen[retrievechat]==0.5.0; extra == 'ag2-extras'
|
|
38
|
+
Requires-Dist: pyautogen[together]==0.5.0; extra == 'ag2-extras'
|
|
39
|
+
Requires-Dist: pyautogen[websurfer]==0.5.0; extra == 'ag2-extras'
|
|
39
40
|
Requires-Dist: pymongo==4.10.1; extra == 'ag2-extras'
|
|
40
|
-
Requires-Dist: qdrant-client
|
|
41
|
+
Requires-Dist: qdrant-client[fastembed]; (python_version >= '3.13') and extra == 'ag2-extras'
|
|
41
42
|
Provides-Extra: dev
|
|
42
43
|
Requires-Dist: autoflake==2.3.1; extra == 'dev'
|
|
43
44
|
Requires-Dist: bandit==1.8.0; extra == 'dev'
|
|
@@ -49,8 +50,10 @@ Requires-Dist: pre-commit==4.0.1; extra == 'dev'
|
|
|
49
50
|
Requires-Dist: pydocstyle==6.3.0; extra == 'dev'
|
|
50
51
|
Requires-Dist: pylint==3.3.2; extra == 'dev'
|
|
51
52
|
Requires-Dist: python-dotenv==1.0.1; extra == 'dev'
|
|
52
|
-
Requires-Dist: ruff==0.8.
|
|
53
|
+
Requires-Dist: ruff==0.8.2; extra == 'dev'
|
|
54
|
+
Requires-Dist: toml; (python_version <= '3.10') and extra == 'dev'
|
|
53
55
|
Requires-Dist: types-pyyaml==6.0.12.20240917; extra == 'dev'
|
|
56
|
+
Requires-Dist: types-toml==0.10.8.20240310; extra == 'dev'
|
|
54
57
|
Requires-Dist: yamllint==1.35.1; extra == 'dev'
|
|
55
58
|
Provides-Extra: docs
|
|
56
59
|
Requires-Dist: mdx-include==1.4.2; extra == 'docs'
|
|
@@ -123,7 +126,7 @@ $CONTAINER_COMMAND run \
|
|
|
123
126
|
--rm \
|
|
124
127
|
-v /path/to/a/flow.waldiez:/flow.waldiez \
|
|
125
128
|
-v /path/to/an/output:/output \
|
|
126
|
-
waldiez/waldiez --
|
|
129
|
+
waldiez/waldiez convert --file /flow.waldiez --output /output/flow[.py|.ipynb] [--force]
|
|
127
130
|
|
|
128
131
|
# with selinux and/or podman, you might get permission (or file not found) errors, so you can try:
|
|
129
132
|
$CONTAINER_COMMAND run \
|
|
@@ -132,7 +135,7 @@ $CONTAINER_COMMAND run \
|
|
|
132
135
|
-v /path/to/an/output:/output \
|
|
133
136
|
--userns=keep-id \
|
|
134
137
|
--security-opt label=disable \
|
|
135
|
-
waldiez/waldiez convert --file /flow.waldiez --output /output/flow[.py|.ipynb]
|
|
138
|
+
waldiez/waldiez convert --file /flow.waldiez --output /output/flow[.py|.ipynb] [--force]
|
|
136
139
|
```
|
|
137
140
|
|
|
138
141
|
```shell
|
|
@@ -144,6 +147,13 @@ $CONTAINER_COMMAND run \
|
|
|
144
147
|
waldiez/waldiez run --file /flow.waldiez --output /output/output[.py]
|
|
145
148
|
```
|
|
146
149
|
|
|
150
|
+
### UI
|
|
151
|
+
|
|
152
|
+
For creating-only (no exporting or running) waldiez flows, you can use the playground at <https://waldiez.github.io>.
|
|
153
|
+
The repo for the js library is [here](https://github.com/waldiez/react).
|
|
154
|
+
We are currently working on waldiez-studio to provide a visual interface for creating and running Waldiez flows (you can find more [here](https://github.com/waldiez/studio)).
|
|
155
|
+
Until then, you can use our [Jupyter](https://github.com/waldiez/jupyter) or the [VSCode](https://github.com/waldiez/vscode) extension to create and run Waldiez flows.
|
|
156
|
+
|
|
147
157
|
### As a library
|
|
148
158
|
|
|
149
159
|
#### Export a flow
|
|
@@ -244,7 +254,7 @@ with WaldiezIOStream.set_default(io_stream):
|
|
|
244
254
|
|
|
245
255
|
## Known Conflicts
|
|
246
256
|
|
|
247
|
-
- **autogen-agentchat**: This package conflicts with `ag2`. Ensure that `autogen-agentchat` is uninstalled before installing `waldiez`. If you have already installed `autogen-agentchat`, you can uninstall it with the following command:
|
|
257
|
+
- **autogen-agentchat**: This package conflicts with `ag2` / `pyautogen`. Ensure that `autogen-agentchat` is uninstalled before installing `waldiez`. If you have already installed `autogen-agentchat`, you can uninstall it with the following command:
|
|
248
258
|
|
|
249
259
|
```shell
|
|
250
260
|
pip uninstall autogen-agentchat -y
|
|
@@ -253,7 +263,7 @@ with WaldiezIOStream.set_default(io_stream):
|
|
|
253
263
|
If already installed waldiez you might need to reinstall it after uninstalling `autogen-agentchat`:
|
|
254
264
|
|
|
255
265
|
```shell
|
|
256
|
-
pip install --force --no-cache waldiez
|
|
266
|
+
pip install --force --no-cache waldiez pyautogen
|
|
257
267
|
```
|
|
258
268
|
|
|
259
269
|
## License
|
|
@@ -50,7 +50,7 @@ $CONTAINER_COMMAND run \
|
|
|
50
50
|
--rm \
|
|
51
51
|
-v /path/to/a/flow.waldiez:/flow.waldiez \
|
|
52
52
|
-v /path/to/an/output:/output \
|
|
53
|
-
waldiez/waldiez --
|
|
53
|
+
waldiez/waldiez convert --file /flow.waldiez --output /output/flow[.py|.ipynb] [--force]
|
|
54
54
|
|
|
55
55
|
# with selinux and/or podman, you might get permission (or file not found) errors, so you can try:
|
|
56
56
|
$CONTAINER_COMMAND run \
|
|
@@ -59,7 +59,7 @@ $CONTAINER_COMMAND run \
|
|
|
59
59
|
-v /path/to/an/output:/output \
|
|
60
60
|
--userns=keep-id \
|
|
61
61
|
--security-opt label=disable \
|
|
62
|
-
waldiez/waldiez convert --file /flow.waldiez --output /output/flow[.py|.ipynb]
|
|
62
|
+
waldiez/waldiez convert --file /flow.waldiez --output /output/flow[.py|.ipynb] [--force]
|
|
63
63
|
```
|
|
64
64
|
|
|
65
65
|
```shell
|
|
@@ -71,6 +71,13 @@ $CONTAINER_COMMAND run \
|
|
|
71
71
|
waldiez/waldiez run --file /flow.waldiez --output /output/output[.py]
|
|
72
72
|
```
|
|
73
73
|
|
|
74
|
+
### UI
|
|
75
|
+
|
|
76
|
+
For creating-only (no exporting or running) waldiez flows, you can use the playground at <https://waldiez.github.io>.
|
|
77
|
+
The repo for the js library is [here](https://github.com/waldiez/react).
|
|
78
|
+
We are currently working on waldiez-studio to provide a visual interface for creating and running Waldiez flows (you can find more [here](https://github.com/waldiez/studio)).
|
|
79
|
+
Until then, you can use our [Jupyter](https://github.com/waldiez/jupyter) or the [VSCode](https://github.com/waldiez/vscode) extension to create and run Waldiez flows.
|
|
80
|
+
|
|
74
81
|
### As a library
|
|
75
82
|
|
|
76
83
|
#### Export a flow
|
|
@@ -171,7 +178,7 @@ with WaldiezIOStream.set_default(io_stream):
|
|
|
171
178
|
|
|
172
179
|
## Known Conflicts
|
|
173
180
|
|
|
174
|
-
- **autogen-agentchat**: This package conflicts with `ag2`. Ensure that `autogen-agentchat` is uninstalled before installing `waldiez`. If you have already installed `autogen-agentchat`, you can uninstall it with the following command:
|
|
181
|
+
- **autogen-agentchat**: This package conflicts with `ag2` / `pyautogen`. Ensure that `autogen-agentchat` is uninstalled before installing `waldiez`. If you have already installed `autogen-agentchat`, you can uninstall it with the following command:
|
|
175
182
|
|
|
176
183
|
```shell
|
|
177
184
|
pip uninstall autogen-agentchat -y
|
|
@@ -180,7 +187,7 @@ with WaldiezIOStream.set_default(io_stream):
|
|
|
180
187
|
If already installed waldiez you might need to reinstall it after uninstalling `autogen-agentchat`:
|
|
181
188
|
|
|
182
189
|
```shell
|
|
183
|
-
pip install --force --no-cache waldiez
|
|
190
|
+
pip install --force --no-cache waldiez pyautogen
|
|
184
191
|
```
|
|
185
192
|
|
|
186
193
|
## License
|
|
@@ -22,10 +22,11 @@ classifiers = [
|
|
|
22
22
|
"Intended Audience :: Developers",
|
|
23
23
|
]
|
|
24
24
|
dependencies =[
|
|
25
|
-
"
|
|
25
|
+
"pyautogen==0.5.0",
|
|
26
26
|
"jupytext",
|
|
27
|
+
"pydantic>=2.0",
|
|
27
28
|
# together(ag2 extra) 1.2.0 depends on typer<0.13 and >=0.9
|
|
28
|
-
"typer>=0.9,<0.13"
|
|
29
|
+
"typer>=0.9,<0.13",
|
|
29
30
|
]
|
|
30
31
|
|
|
31
32
|
[project.urls]
|
|
@@ -52,30 +53,40 @@ dev = [
|
|
|
52
53
|
'pydocstyle==6.3.0',
|
|
53
54
|
'pylint==3.3.2',
|
|
54
55
|
'python-dotenv==1.0.1',
|
|
55
|
-
'ruff==0.8.
|
|
56
|
+
'ruff==0.8.2',
|
|
56
57
|
'types-PyYAML==6.0.12.20240917',
|
|
57
58
|
'yamllint==1.35.1',
|
|
59
|
+
'toml; python_version <= "3.10"',
|
|
60
|
+
'types-toml== 0.10.8.20240310',
|
|
58
61
|
]
|
|
62
|
+
# fastembed and fastembed-gpu are not available, yet for python 3.13
|
|
63
|
+
# ref: https://github.com/qdrant/qdrant-client/blob/master/pyproject.toml
|
|
64
|
+
# fastembed = [
|
|
65
|
+
# { version = "0.3.6", optional = true, python = "<3.13" }
|
|
66
|
+
# ]
|
|
67
|
+
# fastembed-gpu = [
|
|
68
|
+
# { version = "0.3.6", optional = true, python = "<3.13" }
|
|
69
|
+
# ]
|
|
59
70
|
ag2_extras =[
|
|
60
71
|
'fastembed==0.4.2',
|
|
61
72
|
'pgvector>=0.3.6',
|
|
62
73
|
'psycopg[binary]>=3.2.3',
|
|
63
|
-
'
|
|
64
|
-
'
|
|
65
|
-
'
|
|
66
|
-
'
|
|
67
|
-
'
|
|
68
|
-
'
|
|
69
|
-
'
|
|
70
|
-
'
|
|
71
|
-
'
|
|
72
|
-
'
|
|
73
|
-
'
|
|
74
|
-
'
|
|
75
|
-
'
|
|
76
|
-
'
|
|
74
|
+
'pyautogen[captainagent]==0.5.0',
|
|
75
|
+
'pyautogen[retrievechat]==0.5.0',
|
|
76
|
+
'pyautogen[retrievechat-pgvector]==0.5.0',
|
|
77
|
+
'pyautogen[retrievechat-mongodb]==0.5.0',
|
|
78
|
+
'pyautogen[retrievechat-qdrant]==0.5.0; python_version < "3.13"',
|
|
79
|
+
'qdrant-client[fastembed]; python_version >= "3.13"',
|
|
80
|
+
'pyautogen[gemini]==0.5.0',
|
|
81
|
+
'pyautogen[together]==0.5.0',
|
|
82
|
+
'pyautogen[anthropic]==0.5.0',
|
|
83
|
+
'pyautogen[lmm]==0.5.0',
|
|
84
|
+
'pyautogen[mistral]==0.5.0',
|
|
85
|
+
'pyautogen[groq]==0.5.0',
|
|
86
|
+
'pyautogen[bedrock]==0.5.0',
|
|
87
|
+
'pyautogen[websurfer]==0.5.0',
|
|
88
|
+
'pyautogen[together]==0.5.0',
|
|
77
89
|
'pymongo==4.10.1',
|
|
78
|
-
'qdrant-client==1.12.1',
|
|
79
90
|
]
|
|
80
91
|
test = [
|
|
81
92
|
'pytest==8.3.4',
|
|
@@ -12,9 +12,10 @@ def check_conflicts() -> None: # pragma: no cover
|
|
|
12
12
|
try:
|
|
13
13
|
version("autogen-agentchat")
|
|
14
14
|
print(
|
|
15
|
-
"Conflict detected: 'autogen-agentchat' is installed,
|
|
15
|
+
"Conflict detected: 'autogen-agentchat' is installed, "
|
|
16
|
+
"which conflicts with 'ag2' / 'pyautogen'.\n"
|
|
16
17
|
"Please uninstall 'autogen-agentchat': pip uninstall -y autogen-agentchat \n"
|
|
17
|
-
"And install '
|
|
18
|
+
"And install 'pyautogen' (or 'waldiez') again: pip install --force pyautogen waldiez"
|
|
18
19
|
)
|
|
19
20
|
sys.exit(1)
|
|
20
21
|
except PackageNotFoundError:
|
|
@@ -148,8 +148,8 @@ class WaldiezGroupManagerSpeakers(WaldiezBase):
|
|
|
148
148
|
default_factory=dict,
|
|
149
149
|
title="Allowed or disallowed transitions",
|
|
150
150
|
description=(
|
|
151
|
-
"A mapping (agent.id => List[agent.ids])"
|
|
152
|
-
"with the allowed or disallowed transitions."
|
|
151
|
+
"A mapping (agent.id => List[agent.ids])"
|
|
152
|
+
"with the allowed or disallowed transitions."
|
|
153
153
|
),
|
|
154
154
|
alias="allowedOrDisallowedTransitions",
|
|
155
155
|
),
|
|
@@ -42,15 +42,27 @@ class WaldiezFlowData(WaldiezBase):
|
|
|
42
42
|
# (they for graph connections, positions, etc.)
|
|
43
43
|
nodes: Annotated[
|
|
44
44
|
List[Dict[str, Any]],
|
|
45
|
-
Field(
|
|
45
|
+
Field(
|
|
46
|
+
default_factory=list,
|
|
47
|
+
title="Nodes",
|
|
48
|
+
description="The nodes of the flow",
|
|
49
|
+
),
|
|
46
50
|
]
|
|
47
51
|
edges: Annotated[
|
|
48
52
|
List[Dict[str, Any]],
|
|
49
|
-
Field(
|
|
53
|
+
Field(
|
|
54
|
+
default_factory=list,
|
|
55
|
+
title="Edges",
|
|
56
|
+
description="The edges of the flow",
|
|
57
|
+
),
|
|
50
58
|
]
|
|
51
59
|
viewport: Annotated[
|
|
52
60
|
Dict[str, Any],
|
|
53
|
-
Field(
|
|
61
|
+
Field(
|
|
62
|
+
default_factory=dict,
|
|
63
|
+
title="Viewport",
|
|
64
|
+
description="The viewport of the flow",
|
|
65
|
+
),
|
|
54
66
|
]
|
|
55
67
|
# these are the ones we use.
|
|
56
68
|
agents: Annotated[
|
|
@@ -74,13 +74,70 @@ class WaldiezModelData(WaldiezBase):
|
|
|
74
74
|
alias="baseUrl",
|
|
75
75
|
),
|
|
76
76
|
]
|
|
77
|
-
api_key: Annotated[
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
77
|
+
api_key: Annotated[
|
|
78
|
+
Optional[str],
|
|
79
|
+
Field(
|
|
80
|
+
None,
|
|
81
|
+
alias="apiKey",
|
|
82
|
+
title="API Key",
|
|
83
|
+
description="The api key to use with the model",
|
|
84
|
+
),
|
|
85
|
+
]
|
|
86
|
+
api_type: Annotated[
|
|
87
|
+
WaldiezModelAPIType,
|
|
88
|
+
Field(
|
|
89
|
+
"other",
|
|
90
|
+
alias="apiType",
|
|
91
|
+
title="API Type",
|
|
92
|
+
description="The api type of the model",
|
|
93
|
+
),
|
|
94
|
+
]
|
|
95
|
+
api_version: Annotated[
|
|
96
|
+
Optional[str],
|
|
97
|
+
Field(
|
|
98
|
+
None,
|
|
99
|
+
alias="apiVersion",
|
|
100
|
+
title="API Version",
|
|
101
|
+
description="The api version of the model",
|
|
102
|
+
),
|
|
103
|
+
]
|
|
104
|
+
temperature: Annotated[
|
|
105
|
+
Optional[float],
|
|
106
|
+
Field(
|
|
107
|
+
None,
|
|
108
|
+
alias="temperature",
|
|
109
|
+
title="Temperature",
|
|
110
|
+
description="The temperature of the model",
|
|
111
|
+
),
|
|
112
|
+
]
|
|
113
|
+
top_p: Annotated[
|
|
114
|
+
Optional[float],
|
|
115
|
+
Field(
|
|
116
|
+
None,
|
|
117
|
+
alias="topP",
|
|
118
|
+
title="Top P",
|
|
119
|
+
description="The top p of the model",
|
|
120
|
+
),
|
|
121
|
+
]
|
|
122
|
+
max_tokens: Annotated[
|
|
123
|
+
Optional[int],
|
|
124
|
+
Field(
|
|
125
|
+
None,
|
|
126
|
+
alias="maxTokens",
|
|
127
|
+
title="Max Tokens",
|
|
128
|
+
description="The max tokens of the model",
|
|
129
|
+
),
|
|
130
|
+
]
|
|
83
131
|
default_headers: Annotated[
|
|
84
|
-
Dict[str, str],
|
|
132
|
+
Dict[str, str],
|
|
133
|
+
Field(
|
|
134
|
+
alias="defaultHeaders",
|
|
135
|
+
default_factory=dict,
|
|
136
|
+
title="Default Headers",
|
|
137
|
+
description="The default headers of the model",
|
|
138
|
+
),
|
|
139
|
+
]
|
|
140
|
+
price: Annotated[
|
|
141
|
+
Optional[WaldiezModelPrice],
|
|
142
|
+
Field(None, title="Price", description="The price of the model"),
|
|
85
143
|
]
|
|
86
|
-
price: Annotated[Optional[WaldiezModelPrice], Field(None)]
|
|
@@ -211,16 +211,17 @@ class Waldiez:
|
|
|
211
211
|
lambda requirement: not (
|
|
212
212
|
requirement.startswith("pyautogen")
|
|
213
213
|
or requirement.startswith("ag2")
|
|
214
|
+
or requirement.startswith("autogen")
|
|
214
215
|
),
|
|
215
216
|
self.flow.requirements,
|
|
216
217
|
)
|
|
217
218
|
requirements = set(requirements_list)
|
|
218
219
|
if self.has_rag_agents:
|
|
219
|
-
requirements.add(f"
|
|
220
|
+
requirements.add(f"pyautogen[retrievechat]=={autogen_version}")
|
|
220
221
|
else:
|
|
221
|
-
requirements.add(f"
|
|
222
|
+
requirements.add(f"pyautogen=={autogen_version}")
|
|
222
223
|
if self.has_multimodal_agents:
|
|
223
|
-
requirements.add(f"
|
|
224
|
+
requirements.add(f"pyautogen[lmm]=={autogen_version}")
|
|
224
225
|
# ref: https://github.com/ag2ai/ag2/blob/main/setup.py
|
|
225
226
|
models_with_additional_requirements = [
|
|
226
227
|
"together",
|
|
@@ -234,7 +235,7 @@ class Waldiez:
|
|
|
234
235
|
for model in self.models:
|
|
235
236
|
if model.data.api_type in models_with_additional_requirements:
|
|
236
237
|
requirements.add(
|
|
237
|
-
f"
|
|
238
|
+
f"pyautogen[{model.data.api_type}]==" f"{autogen_version}"
|
|
238
239
|
)
|
|
239
240
|
return list(requirements)
|
|
240
241
|
|
|
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
|
|
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
|