versionhq 1.1.12.2__py3-none-any.whl → 1.1.12.3__py3-none-any.whl
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.
- versionhq/__init__.py +5 -2
- versionhq/task/formation.py +3 -12
- versionhq/team/model.py +2 -2
- {versionhq-1.1.12.2.dist-info → versionhq-1.1.12.3.dist-info}/METADATA +23 -8
- {versionhq-1.1.12.2.dist-info → versionhq-1.1.12.3.dist-info}/RECORD +8 -8
- {versionhq-1.1.12.2.dist-info → versionhq-1.1.12.3.dist-info}/LICENSE +0 -0
- {versionhq-1.1.12.2.dist-info → versionhq-1.1.12.3.dist-info}/WHEEL +0 -0
- {versionhq-1.1.12.2.dist-info → versionhq-1.1.12.3.dist-info}/top_level.txt +0 -0
versionhq/__init__.py
CHANGED
@@ -21,9 +21,10 @@ from versionhq.tool.composio_tool import ComposioHandler
|
|
21
21
|
from versionhq.memory.contextual_memory import ContextualMemory
|
22
22
|
from versionhq.memory.model import ShortTermMemory,LongTermMemory, UserMemory, MemoryItem
|
23
23
|
|
24
|
+
from versionhq.task.formation import form_agent_network
|
24
25
|
|
25
26
|
|
26
|
-
__version__ = "1.1.12.
|
27
|
+
__version__ = "1.1.12.3"
|
27
28
|
__all__ = [
|
28
29
|
"Agent",
|
29
30
|
|
@@ -67,5 +68,7 @@ __all__ = [
|
|
67
68
|
"ShortTermMemory",
|
68
69
|
"LongTermMemory",
|
69
70
|
"UserMemory",
|
70
|
-
"MemoryItem"
|
71
|
+
"MemoryItem",
|
72
|
+
|
73
|
+
"form_agent_network"
|
71
74
|
]
|
versionhq/task/formation.py
CHANGED
@@ -11,7 +11,7 @@ from versionhq._utils import Logger
|
|
11
11
|
|
12
12
|
|
13
13
|
def form_agent_network(
|
14
|
-
|
14
|
+
task: str,
|
15
15
|
expected_outcome: str,
|
16
16
|
agents: List[Agent] = None,
|
17
17
|
context: str = None,
|
@@ -21,7 +21,7 @@ def form_agent_network(
|
|
21
21
|
Make a formation of agents from the given task description, agents (optional), context (optional), and expected outcome (optional).
|
22
22
|
"""
|
23
23
|
|
24
|
-
if not
|
24
|
+
if not task:
|
25
25
|
Logger(verbose=True).log(level="error", message="Missing task description.", color="red")
|
26
26
|
return None
|
27
27
|
|
@@ -40,7 +40,7 @@ def form_agent_network(
|
|
40
40
|
vhq_task = Task(
|
41
41
|
description=f"""
|
42
42
|
Create a team of specialized agents designed to automate the following task and deliver the expected outcome. Consider the necessary roles for each agent with a clear task description. If you think we neeed a leader to handle the automation, return a leader_agent role as well, but if not, leave the a leader_agent role blank.
|
43
|
-
Task: {str(
|
43
|
+
Task: {str(task)}
|
44
44
|
Expected outcome: {str(expected_outcome)}
|
45
45
|
""",
|
46
46
|
pydantic_output=Outcome
|
@@ -112,12 +112,3 @@ def form_agent_network(
|
|
112
112
|
except Exception as e:
|
113
113
|
Logger(verbose=True).log(level="error", message=f"Failed to create an agent network - return None. You can try with solo agent. Error: {str(e)}", color="red")
|
114
114
|
return None
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
if __name__ == "__main__":
|
119
|
-
res = form_agent_network(
|
120
|
-
task_overview="Launch an outbound campaign to attract young audience.",
|
121
|
-
expected_outcome="Best media mix of the campaign.",
|
122
|
-
context="We are selling sports wear.",
|
123
|
-
)
|
versionhq/team/model.py
CHANGED
@@ -387,9 +387,9 @@ class Team(BaseModel):
|
|
387
387
|
return self._create_team_output(task_outputs, lead_task_output)
|
388
388
|
|
389
389
|
|
390
|
-
def
|
390
|
+
def launch(self, kwargs_before: Optional[Dict[str, str]] = None, kwargs_after: Optional[Dict[str, Any]] = None) -> TeamOutput:
|
391
391
|
"""
|
392
|
-
|
392
|
+
Confirm and launch the formation - execute tasks and record outputs.
|
393
393
|
0. Assign an agent to a task - using conditions (manager prioritizes team_tasks) and planning_llm.
|
394
394
|
1. Address `before_kickoff_callbacks` if any.
|
395
395
|
2. Handle team members' tasks in accordance with the process.
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: versionhq
|
3
|
-
Version: 1.1.12.
|
4
|
-
Summary:
|
3
|
+
Version: 1.1.12.3
|
4
|
+
Summary: An agentic orchestration framework for multi-agent system that shares memory, knowledge base, and RAG tools.
|
5
5
|
Author-email: Kuriko Iwai <kuriko@versi0n.io>
|
6
6
|
License: MIT License
|
7
7
|
|
@@ -103,9 +103,10 @@ Agentic orchestration framework to deploy agent network and handle complex task
|
|
103
103
|
- [Key Features](#key-features)
|
104
104
|
- [Agent formation](#agent-formation)
|
105
105
|
- [Quick Start](#quick-start)
|
106
|
-
- [
|
106
|
+
- [Generate agent networks and launch task execution:](#generate-agent-networks-and-launch-task-execution)
|
107
|
+
- [Solo Agent:](#solo-agent)
|
107
108
|
- [Return a structured output with a summary in string.](#return-a-structured-output-with-a-summary-in-string)
|
108
|
-
- [
|
109
|
+
- [Supervising:](#supervising)
|
109
110
|
- [Technologies Used](#technologies-used)
|
110
111
|
- [Project Structure](#project-structure)
|
111
112
|
- [Setup](#setup)
|
@@ -123,9 +124,9 @@ Agentic orchestration framework to deploy agent network and handle complex task
|
|
123
124
|
|
124
125
|
## Key Features
|
125
126
|
|
126
|
-
|
127
|
+
`versionhq` is a Python framework that can generate agent networks for complex task automation without human interaction.
|
127
128
|
|
128
|
-
Agents are model-agnostic, and
|
129
|
+
Agents are model-agnostic, and will improve task output, while oprimizing token cost and job latency, by sharing their memory, knowledge base, and RAG tools with other agents in the network.
|
129
130
|
|
130
131
|
|
131
132
|
### Agent formation
|
@@ -153,8 +154,22 @@ You can specify a desired formation or allow the agents to determine it autonomo
|
|
153
154
|
|
154
155
|
(Python 3.11 or higher)
|
155
156
|
|
157
|
+
### Generate agent networks and launch task execution:
|
156
158
|
|
157
|
-
|
159
|
+
```
|
160
|
+
from versionhq import form_agent_network
|
161
|
+
|
162
|
+
network = form_agent_network(
|
163
|
+
task="YOUR AMAZING TASK OVERVIEW",
|
164
|
+
expected_outcome="YOUR OUTCOME EXPECTATION",
|
165
|
+
)
|
166
|
+
res = network.launch()
|
167
|
+
```
|
168
|
+
|
169
|
+
This will form a network with multiple agents on `Formation` and return `TaskOutput` object with output in JSON, plane text, Pydantic model format with evaluation.
|
170
|
+
|
171
|
+
|
172
|
+
### Solo Agent:
|
158
173
|
|
159
174
|
#### Return a structured output with a summary in string.
|
160
175
|
|
@@ -197,7 +212,7 @@ This will return `TaskOutput` instance that stores a response in plane text, JSO
|
|
197
212
|
)
|
198
213
|
```
|
199
214
|
|
200
|
-
###
|
215
|
+
### Supervising:
|
201
216
|
|
202
217
|
```
|
203
218
|
from versionhq import Agent, Task, ResponseField, Team, TeamMember
|
@@ -1,4 +1,4 @@
|
|
1
|
-
versionhq/__init__.py,sha256=
|
1
|
+
versionhq/__init__.py,sha256=7tNLp19NRK1hbonxLY-MD1XLsbs28PwWCnxX9vaXM9A,2349
|
2
2
|
versionhq/_utils/__init__.py,sha256=dzoZr4cBlh-2QZuPzTdehPUCe9lP1dmRtauD7qTjUaA,158
|
3
3
|
versionhq/_utils/i18n.py,sha256=TwA_PnYfDLA6VqlUDPuybdV9lgi3Frh_ASsb_X8jJo8,1483
|
4
4
|
versionhq/_utils/logger.py,sha256=j9SlQPIefdVUlwpGfJY83E2BUt1ejWgZ2M2I8aMyQ3c,1579
|
@@ -42,14 +42,14 @@ versionhq/storage/task_output_storage.py,sha256=E1t_Fkt78dPYIOl3MP7LfQ8oGtjlzxBu
|
|
42
42
|
versionhq/storage/utils.py,sha256=ByYXPoEIGJYLUqz-DWjbCAnneNrH1otiYbp12SCILpM,747
|
43
43
|
versionhq/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
44
44
|
versionhq/task/evaluate.py,sha256=f8S-nuEl2xJ2LnLv7iQixH53-gp0pKx1hFp_sUlN464,3977
|
45
|
-
versionhq/task/formation.py,sha256=
|
45
|
+
versionhq/task/formation.py,sha256=bZytru6I5a_CFq2rtmsBb0hVWIqExpzUxXPXYpd6qnI,4706
|
46
46
|
versionhq/task/formatter.py,sha256=N8Kmk9vtrMtBdgJ8J7RmlKNMdZWSmV8O1bDexmCWgU0,643
|
47
47
|
versionhq/task/log_handler.py,sha256=KJRrcNZgFSKhlNzvtYFnvtp6xukaF1s7ifX9u4zWrN8,1683
|
48
48
|
versionhq/task/model.py,sha256=2p3Fc4iphfAjARaClFL3AXDg_203Kx6VAlMgt2-L29U,29444
|
49
49
|
versionhq/task/structured_response.py,sha256=uVqgeUxNOACPe2hdc0RELSbtKd1vrwonfjXMOGTT0TI,4818
|
50
50
|
versionhq/task/TEMPLATES/Description.py,sha256=V-4kh8xpQTKOcDMi2xnuP-fcNk6kuoz1_5tYBlDLQWQ,420
|
51
51
|
versionhq/team/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
52
|
-
versionhq/team/model.py,sha256=
|
52
|
+
versionhq/team/model.py,sha256=WDnaJuvnVMmreztR0CMypnKpqFtGzAb7rrZ-HKa010Y,18886
|
53
53
|
versionhq/team/team_planner.py,sha256=l1PwyBXK1F3uOcbF1IvJBWKApJhghZnBF_ErkNcE04s,3745
|
54
54
|
versionhq/tool/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
55
55
|
versionhq/tool/cache_handler.py,sha256=iL8FH7X0G-cdT0uhJwzuhLDaadTXOdfybZcDy151-es,1085
|
@@ -58,8 +58,8 @@ versionhq/tool/composio_tool_vars.py,sha256=FvBuEXsOQUYnN7RTFxT20kAkiEYkxWKkiVtg
|
|
58
58
|
versionhq/tool/decorator.py,sha256=C4ZM7Xi2gwtEMaSeRo-geo_g_MAkY77WkSLkAuY0AyI,1205
|
59
59
|
versionhq/tool/model.py,sha256=ILfvRviQR1W1w-u3MtOIz0PrWa-brpgfAiyKWol63mk,12227
|
60
60
|
versionhq/tool/tool_handler.py,sha256=2m41K8qo5bGCCbwMFferEjT-XZ-mE9F0mDUOBkgivOI,1416
|
61
|
-
versionhq-1.1.12.
|
62
|
-
versionhq-1.1.12.
|
63
|
-
versionhq-1.1.12.
|
64
|
-
versionhq-1.1.12.
|
65
|
-
versionhq-1.1.12.
|
61
|
+
versionhq-1.1.12.3.dist-info/LICENSE,sha256=cRoGGdM73IiDs6nDWKqPlgSv7aR4n-qBXYnJlCMHCeE,1082
|
62
|
+
versionhq-1.1.12.3.dist-info/METADATA,sha256=yF8JpWAlDcWmJ9gxaZzZ-Tm3YZlxIzMblGHhBwerqms,19184
|
63
|
+
versionhq-1.1.12.3.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
64
|
+
versionhq-1.1.12.3.dist-info/top_level.txt,sha256=DClQwxDWqIUGeRJkA8vBlgeNsYZs4_nJWMonzFt5Wj0,10
|
65
|
+
versionhq-1.1.12.3.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|