versionhq 1.1.12.2__tar.gz → 1.1.12.4__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.
- versionhq-1.1.12.4/.github/workflows/deploy_docs.yml +38 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/.gitignore +4 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/.pre-commit-config.yaml +1 -0
- versionhq-1.1.12.4/CNAME +1 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/PKG-INFO +54 -23
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/README.md +51 -20
- versionhq-1.1.12.4/docs/CNAME +1 -0
- versionhq-1.1.12.4/docs/_logos/favicon.ico +0 -0
- versionhq-1.1.12.4/docs/_logos/logo192.png +0 -0
- versionhq-1.1.12.4/docs/core/Agent.md +526 -0
- versionhq-1.1.12.4/docs/index.md +388 -0
- versionhq-1.1.12.4/docs/quickstart.md +73 -0
- versionhq-1.1.12.4/docs/stylesheets/main.css +26 -0
- versionhq-1.1.12.4/mkdocs.yml +148 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/pyproject.toml +9 -4
- versionhq-1.1.12.4/requirements.txt +27 -0
- versionhq-1.1.12.4/runtime.txt +2 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/__init__.py +5 -2
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/agent/model.py +47 -23
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/llm/llm_vars.py +1 -1
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/llm/model.py +3 -1
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/formation.py +3 -12
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/model.py +1 -1
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/team/model.py +2 -2
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq.egg-info/PKG-INFO +54 -23
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq.egg-info/SOURCES.txt +11 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/agent/agent_test.py +17 -10
- versionhq-1.1.12.4/tests/doc_test.py +200 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/task/task_test.py +13 -12
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/team/team_test.py +6 -6
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/uv.lock +396 -577
- versionhq-1.1.12.2/requirements.txt +0 -465
- versionhq-1.1.12.2/runtime.txt +0 -2
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/.github/workflows/publish.yml +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/.github/workflows/publish_testpypi.yml +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/.github/workflows/run_tests.yml +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/.github/workflows/security_check.yml +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/.python-version +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/LICENSE +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/SECURITY.md +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/db/preprocess.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/requirements-dev.txt +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/setup.cfg +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/_utils/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/_utils/i18n.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/_utils/logger.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/_utils/process_config.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/_utils/usage_metrics.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/_utils/vars.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/agent/TEMPLATES/Backstory.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/agent/TEMPLATES/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/agent/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/agent/inhouse_agents.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/agent/parser.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/agent/rpm_controller.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/cli/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/clients/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/clients/customer/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/clients/customer/model.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/clients/product/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/clients/product/model.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/clients/workflow/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/clients/workflow/model.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/knowledge/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/knowledge/_utils.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/knowledge/embedding.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/knowledge/model.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/knowledge/source.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/knowledge/source_docling.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/knowledge/storage.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/llm/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/memory/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/memory/contextual_memory.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/memory/model.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/storage/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/storage/base.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/storage/ltm_sqlite_storage.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/storage/mem0_storage.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/storage/rag_storage.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/storage/task_output_storage.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/storage/utils.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/TEMPLATES/Description.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/evaluate.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/formatter.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/log_handler.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/task/structured_response.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/team/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/team/team_planner.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/tool/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/tool/cache_handler.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/tool/composio_tool.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/tool/composio_tool_vars.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/tool/decorator.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/tool/model.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq/tool/tool_handler.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq.egg-info/dependency_links.txt +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq.egg-info/requires.txt +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/src/versionhq.egg-info/top_level.txt +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/agent/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/cli/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/clients/customer_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/clients/product_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/clients/workflow_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/conftest.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/knowledge/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/knowledge/knowledge_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/knowledge/mock_report_compressed.pdf +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/llm/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/llm/llm_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/memory/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/memory/memory_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/task/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/task/llm_connection_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/team/Prompts/Demo_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/team/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/tool/__init__.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/tool/composio_test.py +0 -0
- {versionhq-1.1.12.2 → versionhq-1.1.12.4}/tests/tool/tool_test.py +0 -0
@@ -0,0 +1,38 @@
|
|
1
|
+
name: Deploy Docs
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
branches:
|
5
|
+
- main
|
6
|
+
|
7
|
+
permissions:
|
8
|
+
contents: write
|
9
|
+
|
10
|
+
jobs:
|
11
|
+
deploy:
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
steps:
|
14
|
+
- name: Checkout code
|
15
|
+
uses: actions/checkout@v4
|
16
|
+
|
17
|
+
- name: Setup Python
|
18
|
+
uses: actions/setup-python@v5
|
19
|
+
with:
|
20
|
+
python-version: '3.12'
|
21
|
+
|
22
|
+
- name: Setup cache
|
23
|
+
run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
|
24
|
+
uses: actions/cache@v4
|
25
|
+
with:
|
26
|
+
key: mkdocs-material-${{ env.cache_id }}
|
27
|
+
path: .cache
|
28
|
+
restore-keys: |
|
29
|
+
mkdocs-material-
|
30
|
+
|
31
|
+
- name: Install Requirements
|
32
|
+
run: |
|
33
|
+
pip install mkdocs-material mkdocs-material-extensions pillow
|
34
|
+
env:
|
35
|
+
GH_TOKEN: ${{ secrets.GH_TOKEN }}
|
36
|
+
|
37
|
+
- name: Build and deploy MkDocs
|
38
|
+
run: mkdocs gh-deploy --force
|
versionhq-1.1.12.4/CNAME
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
docs.versi0n.io
|
@@ -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.4
|
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
|
|
@@ -26,7 +26,7 @@ License: MIT License
|
|
26
26
|
SOFTWARE.
|
27
27
|
|
28
28
|
Project-URL: Homepage, https://versi0n.io
|
29
|
-
Project-URL: Documentation, https://
|
29
|
+
Project-URL: Documentation, https://docs.versi0n.io
|
30
30
|
Project-URL: Repository, https://github.com/versionHQ/multi-agent-system
|
31
31
|
Project-URL: Issues, https://github.com/versionHQ/multi-agent-system/issues
|
32
32
|
Keywords: orchestration framework,orchestration,ai agent,multi-agent system,RAG,agent,agentic orchestration,llm
|
@@ -91,7 +91,7 @@ Agentic orchestration framework to deploy agent network and handle complex task
|
|
91
91
|
- [PyPI](https://pypi.org/project/versionhq/)
|
92
92
|
- [Github (LLM orchestration framework)](https://github.com/versionHQ/multi-agent-system)
|
93
93
|
- [Use case](https://versi0n.io/) / [Quick demo](https://res.cloudinary.com/dfeirxlea/video/upload/v1737732977/pj_m_home/pnsyh5mfvmilwgt0eusa.mov)
|
94
|
-
- [
|
94
|
+
- [Docs](https://docs.versi0n.io)
|
95
95
|
|
96
96
|
|
97
97
|
<hr />
|
@@ -103,13 +103,16 @@ 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)
|
113
|
+
- [Set up a project](#set-up-a-project)
|
112
114
|
- [Contributing](#contributing)
|
115
|
+
- [Documentation](#documentation)
|
113
116
|
- [Customizing AI Agents](#customizing-ai-agents)
|
114
117
|
- [Modifying RAG Functionality](#modifying-rag-functionality)
|
115
118
|
- [Package Management with uv](#package-management-with-uv)
|
@@ -123,9 +126,9 @@ Agentic orchestration framework to deploy agent network and handle complex task
|
|
123
126
|
|
124
127
|
## Key Features
|
125
128
|
|
126
|
-
|
129
|
+
`versionhq` is a Python framework for agent networks that handle complex task automation without human interaction.
|
127
130
|
|
128
|
-
Agents are model-agnostic, and
|
131
|
+
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
132
|
|
130
133
|
|
131
134
|
### Agent formation
|
@@ -137,7 +140,7 @@ You can specify a desired formation or allow the agents to determine it autonomo
|
|
137
140
|
|
138
141
|
| | **Solo Agent** | **Supervising** | **Network** | **Random** |
|
139
142
|
| :--- | :--- | :--- | :--- | :--- |
|
140
|
-
| **Formation** | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/
|
143
|
+
| **Formation** | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/rbgxttfoeqqis1ettlfz.png" alt="solo" width="200"> | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/zhungor3elxzer5dum10.png" alt="solo" width="200"> | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/dnusl7iy7kiwkxwlpmg8.png" alt="solo" width="200"> | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/sndpczatfzbrosxz9ama.png" alt="solo" width="200"> |
|
141
144
|
| **Usage** | <ul><li>A single agent with tools, knowledge, and memory.</li><li>When self-learning mode is on - it will turn into **Random** formation.</li></ul> | <ul><li>Leader agent gives directions, while sharing its knowledge and memory.</li><li>Subordinates can be solo agents or networks.</li></ul> | <ul><li>Share tasks, knowledge, and memory among network members.</li></ul> | <ul><li>A single agent handles tasks, asking help from other agents without sharing its memory or knowledge.</li></ul> |
|
142
145
|
| **Use case** | An email agent drafts promo message for the given audience. | The leader agent strategizes an outbound campaign plan and assigns components such as media mix or message creation to subordinate agents. | An email agent and social media agent share the product knowledge and deploy multi-channel outbound campaign. | 1. An email agent drafts promo message for the given audience, asking insights on tones from other email agents which oversee other clusters. 2. An agent calls the external agent to deploy the campaign. |
|
143
146
|
|
@@ -153,8 +156,22 @@ You can specify a desired formation or allow the agents to determine it autonomo
|
|
153
156
|
|
154
157
|
(Python 3.11 or higher)
|
155
158
|
|
159
|
+
### Generate agent networks and launch task execution:
|
156
160
|
|
157
|
-
|
161
|
+
```
|
162
|
+
from versionhq import form_agent_network
|
163
|
+
|
164
|
+
network = form_agent_network(
|
165
|
+
task="YOUR AMAZING TASK OVERVIEW",
|
166
|
+
expected_outcome="YOUR OUTCOME EXPECTATION",
|
167
|
+
)
|
168
|
+
res = network.launch()
|
169
|
+
```
|
170
|
+
|
171
|
+
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.
|
172
|
+
|
173
|
+
|
174
|
+
### Solo Agent:
|
158
175
|
|
159
176
|
#### Return a structured output with a summary in string.
|
160
177
|
|
@@ -197,7 +214,7 @@ This will return `TaskOutput` instance that stores a response in plane text, JSO
|
|
197
214
|
)
|
198
215
|
```
|
199
216
|
|
200
|
-
###
|
217
|
+
### Supervising:
|
201
218
|
|
202
219
|
```
|
203
220
|
from versionhq import Agent, Task, ResponseField, Team, TeamMember
|
@@ -291,19 +308,24 @@ src/
|
|
291
308
|
|
292
309
|
## Setup
|
293
310
|
|
311
|
+
|
312
|
+
|
313
|
+
## Set up a project
|
314
|
+
|
294
315
|
1. Install `uv` package manager:
|
295
316
|
|
296
|
-
|
317
|
+
For MacOS:
|
297
318
|
|
298
|
-
|
299
|
-
|
300
|
-
|
319
|
+
```
|
320
|
+
brew install uv
|
321
|
+
```
|
301
322
|
|
302
|
-
|
323
|
+
For Ubuntu/Debian:
|
324
|
+
|
325
|
+
```
|
326
|
+
sudo apt-get install uv
|
327
|
+
```
|
303
328
|
|
304
|
-
```
|
305
|
-
sudo apt-get install uv
|
306
|
-
```
|
307
329
|
|
308
330
|
2. Install dependencies:
|
309
331
|
```
|
@@ -325,11 +347,11 @@ src/
|
|
325
347
|
3. Set up environment variables:
|
326
348
|
Create a `.env` file in the project root and add the following:
|
327
349
|
```
|
328
|
-
OPENAI_API_KEY=your-openai-api-key
|
329
350
|
LITELLM_API_KEY=your-litellm-api-key
|
330
|
-
|
351
|
+
OPENAI_API_KEY=your-openai-api-key
|
331
352
|
COMPOSIO_API_KEY=your-composio-api-key
|
332
353
|
COMPOSIO_CLI_KEY=your-composio-cli-key
|
354
|
+
[LLM_INTERFACE_PROVIDER_OF_YOUR_CHOICE]_API_KEY=your-api-key
|
333
355
|
```
|
334
356
|
|
335
357
|
<hr />
|
@@ -363,16 +385,25 @@ src/
|
|
363
385
|
**Optional**
|
364
386
|
* Flag with `#! REFINEME` for any improvements needed and `#! FIXME` for any errors.
|
365
387
|
|
366
|
-
* Run a React demo app: [React demo app](https://github.com/versionHQ/test-client-app) to check it on the client endpoint.
|
388
|
+
<!-- * Run a React demo app: [React demo app](https://github.com/versionHQ/test-client-app) to check it on the client endpoint.
|
367
389
|
```
|
368
390
|
npm i
|
369
391
|
npm start
|
370
392
|
```
|
371
|
-
The frontend will be available at `http://localhost:3000`.
|
393
|
+
The frontend will be available at `http://localhost:3000`. -->
|
372
394
|
|
373
395
|
* `production` use case is available at `https://versi0n.io`. Currently, we are running alpha test.
|
374
396
|
|
375
397
|
|
398
|
+
### Documentation
|
399
|
+
* To edit the documentation, see `docs` repository and edit the respective component.
|
400
|
+
|
401
|
+
* We use `mkdocs` to update the docs. You can run the doc locally at http://127.0.0.1:8000/:
|
402
|
+
|
403
|
+
```
|
404
|
+
uv run python3 -m mkdocs serve --clean
|
405
|
+
```
|
406
|
+
|
376
407
|
|
377
408
|
### Customizing AI Agents
|
378
409
|
|
@@ -14,7 +14,7 @@ Agentic orchestration framework to deploy agent network and handle complex task
|
|
14
14
|
- [PyPI](https://pypi.org/project/versionhq/)
|
15
15
|
- [Github (LLM orchestration framework)](https://github.com/versionHQ/multi-agent-system)
|
16
16
|
- [Use case](https://versi0n.io/) / [Quick demo](https://res.cloudinary.com/dfeirxlea/video/upload/v1737732977/pj_m_home/pnsyh5mfvmilwgt0eusa.mov)
|
17
|
-
- [
|
17
|
+
- [Docs](https://docs.versi0n.io)
|
18
18
|
|
19
19
|
|
20
20
|
<hr />
|
@@ -26,13 +26,16 @@ Agentic orchestration framework to deploy agent network and handle complex task
|
|
26
26
|
- [Key Features](#key-features)
|
27
27
|
- [Agent formation](#agent-formation)
|
28
28
|
- [Quick Start](#quick-start)
|
29
|
-
- [
|
29
|
+
- [Generate agent networks and launch task execution:](#generate-agent-networks-and-launch-task-execution)
|
30
|
+
- [Solo Agent:](#solo-agent)
|
30
31
|
- [Return a structured output with a summary in string.](#return-a-structured-output-with-a-summary-in-string)
|
31
|
-
- [
|
32
|
+
- [Supervising:](#supervising)
|
32
33
|
- [Technologies Used](#technologies-used)
|
33
34
|
- [Project Structure](#project-structure)
|
34
35
|
- [Setup](#setup)
|
36
|
+
- [Set up a project](#set-up-a-project)
|
35
37
|
- [Contributing](#contributing)
|
38
|
+
- [Documentation](#documentation)
|
36
39
|
- [Customizing AI Agents](#customizing-ai-agents)
|
37
40
|
- [Modifying RAG Functionality](#modifying-rag-functionality)
|
38
41
|
- [Package Management with uv](#package-management-with-uv)
|
@@ -46,9 +49,9 @@ Agentic orchestration framework to deploy agent network and handle complex task
|
|
46
49
|
|
47
50
|
## Key Features
|
48
51
|
|
49
|
-
|
52
|
+
`versionhq` is a Python framework for agent networks that handle complex task automation without human interaction.
|
50
53
|
|
51
|
-
Agents are model-agnostic, and
|
54
|
+
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.
|
52
55
|
|
53
56
|
|
54
57
|
### Agent formation
|
@@ -60,7 +63,7 @@ You can specify a desired formation or allow the agents to determine it autonomo
|
|
60
63
|
|
61
64
|
| | **Solo Agent** | **Supervising** | **Network** | **Random** |
|
62
65
|
| :--- | :--- | :--- | :--- | :--- |
|
63
|
-
| **Formation** | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/
|
66
|
+
| **Formation** | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/rbgxttfoeqqis1ettlfz.png" alt="solo" width="200"> | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/zhungor3elxzer5dum10.png" alt="solo" width="200"> | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/dnusl7iy7kiwkxwlpmg8.png" alt="solo" width="200"> | <img src="https://res.cloudinary.com/dfeirxlea/image/upload/v1738818211/pj_m_agents/sndpczatfzbrosxz9ama.png" alt="solo" width="200"> |
|
64
67
|
| **Usage** | <ul><li>A single agent with tools, knowledge, and memory.</li><li>When self-learning mode is on - it will turn into **Random** formation.</li></ul> | <ul><li>Leader agent gives directions, while sharing its knowledge and memory.</li><li>Subordinates can be solo agents or networks.</li></ul> | <ul><li>Share tasks, knowledge, and memory among network members.</li></ul> | <ul><li>A single agent handles tasks, asking help from other agents without sharing its memory or knowledge.</li></ul> |
|
65
68
|
| **Use case** | An email agent drafts promo message for the given audience. | The leader agent strategizes an outbound campaign plan and assigns components such as media mix or message creation to subordinate agents. | An email agent and social media agent share the product knowledge and deploy multi-channel outbound campaign. | 1. An email agent drafts promo message for the given audience, asking insights on tones from other email agents which oversee other clusters. 2. An agent calls the external agent to deploy the campaign. |
|
66
69
|
|
@@ -76,8 +79,22 @@ You can specify a desired formation or allow the agents to determine it autonomo
|
|
76
79
|
|
77
80
|
(Python 3.11 or higher)
|
78
81
|
|
82
|
+
### Generate agent networks and launch task execution:
|
79
83
|
|
80
|
-
|
84
|
+
```
|
85
|
+
from versionhq import form_agent_network
|
86
|
+
|
87
|
+
network = form_agent_network(
|
88
|
+
task="YOUR AMAZING TASK OVERVIEW",
|
89
|
+
expected_outcome="YOUR OUTCOME EXPECTATION",
|
90
|
+
)
|
91
|
+
res = network.launch()
|
92
|
+
```
|
93
|
+
|
94
|
+
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.
|
95
|
+
|
96
|
+
|
97
|
+
### Solo Agent:
|
81
98
|
|
82
99
|
#### Return a structured output with a summary in string.
|
83
100
|
|
@@ -120,7 +137,7 @@ This will return `TaskOutput` instance that stores a response in plane text, JSO
|
|
120
137
|
)
|
121
138
|
```
|
122
139
|
|
123
|
-
###
|
140
|
+
### Supervising:
|
124
141
|
|
125
142
|
```
|
126
143
|
from versionhq import Agent, Task, ResponseField, Team, TeamMember
|
@@ -214,19 +231,24 @@ src/
|
|
214
231
|
|
215
232
|
## Setup
|
216
233
|
|
234
|
+
|
235
|
+
|
236
|
+
## Set up a project
|
237
|
+
|
217
238
|
1. Install `uv` package manager:
|
218
239
|
|
219
|
-
|
240
|
+
For MacOS:
|
220
241
|
|
221
|
-
|
222
|
-
|
223
|
-
|
242
|
+
```
|
243
|
+
brew install uv
|
244
|
+
```
|
224
245
|
|
225
|
-
|
246
|
+
For Ubuntu/Debian:
|
247
|
+
|
248
|
+
```
|
249
|
+
sudo apt-get install uv
|
250
|
+
```
|
226
251
|
|
227
|
-
```
|
228
|
-
sudo apt-get install uv
|
229
|
-
```
|
230
252
|
|
231
253
|
2. Install dependencies:
|
232
254
|
```
|
@@ -248,11 +270,11 @@ src/
|
|
248
270
|
3. Set up environment variables:
|
249
271
|
Create a `.env` file in the project root and add the following:
|
250
272
|
```
|
251
|
-
OPENAI_API_KEY=your-openai-api-key
|
252
273
|
LITELLM_API_KEY=your-litellm-api-key
|
253
|
-
|
274
|
+
OPENAI_API_KEY=your-openai-api-key
|
254
275
|
COMPOSIO_API_KEY=your-composio-api-key
|
255
276
|
COMPOSIO_CLI_KEY=your-composio-cli-key
|
277
|
+
[LLM_INTERFACE_PROVIDER_OF_YOUR_CHOICE]_API_KEY=your-api-key
|
256
278
|
```
|
257
279
|
|
258
280
|
<hr />
|
@@ -286,16 +308,25 @@ src/
|
|
286
308
|
**Optional**
|
287
309
|
* Flag with `#! REFINEME` for any improvements needed and `#! FIXME` for any errors.
|
288
310
|
|
289
|
-
* Run a React demo app: [React demo app](https://github.com/versionHQ/test-client-app) to check it on the client endpoint.
|
311
|
+
<!-- * Run a React demo app: [React demo app](https://github.com/versionHQ/test-client-app) to check it on the client endpoint.
|
290
312
|
```
|
291
313
|
npm i
|
292
314
|
npm start
|
293
315
|
```
|
294
|
-
The frontend will be available at `http://localhost:3000`.
|
316
|
+
The frontend will be available at `http://localhost:3000`. -->
|
295
317
|
|
296
318
|
* `production` use case is available at `https://versi0n.io`. Currently, we are running alpha test.
|
297
319
|
|
298
320
|
|
321
|
+
### Documentation
|
322
|
+
* To edit the documentation, see `docs` repository and edit the respective component.
|
323
|
+
|
324
|
+
* We use `mkdocs` to update the docs. You can run the doc locally at http://127.0.0.1:8000/:
|
325
|
+
|
326
|
+
```
|
327
|
+
uv run python3 -m mkdocs serve --clean
|
328
|
+
```
|
329
|
+
|
299
330
|
|
300
331
|
### Customizing AI Agents
|
301
332
|
|
@@ -0,0 +1 @@
|
|
1
|
+
docs.versi0n.io
|
Binary file
|
Binary file
|