grasp_agents 0.1.7__py3-none-any.whl → 0.1.10__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.
- grasp_agents-0.1.10.dist-info/METADATA +318 -0
- {grasp_agents-0.1.7.dist-info → grasp_agents-0.1.10.dist-info}/RECORD +5 -4
- grasp_agents-0.1.10.dist-info/licenses/LICENSE.md +13 -0
- grasp_agents-0.1.7.dist-info/METADATA +0 -203
- {grasp_agents-0.1.7.dist-info → grasp_agents-0.1.10.dist-info}/WHEEL +0 -0
- {grasp_agents-0.1.7.dist-info → grasp_agents-0.1.10.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,318 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: grasp_agents
|
3
|
+
Version: 0.1.10
|
4
|
+
Summary: Grasp Agents Library
|
5
|
+
License-File: LICENSE
|
6
|
+
License-File: LICENSE.md
|
7
|
+
Requires-Python: <3.12,>=3.11.4
|
8
|
+
Requires-Dist: dotenv>=0.9.9
|
9
|
+
Requires-Dist: httpx<1,>=0.27.0
|
10
|
+
Requires-Dist: openai<2,>=1.68.2
|
11
|
+
Requires-Dist: pyyaml>=6.0.2
|
12
|
+
Requires-Dist: tenacity>=9.1.2
|
13
|
+
Requires-Dist: termcolor<3,>=2.4.0
|
14
|
+
Requires-Dist: tqdm<5,>=4.66.2
|
15
|
+
Description-Content-Type: text/markdown
|
16
|
+
|
17
|
+
# Grasp Agents
|
18
|
+
|
19
|
+
<br/>
|
20
|
+
<img src="./.assets/grasp.png" alt="Grasp Agents" width="320" />
|
21
|
+
<br/>
|
22
|
+
<br/>
|
23
|
+
|
24
|
+
[](https://badge.fury.io/py/grasp_agents)
|
25
|
+
[](https://pypi.org/project/grasp_agents/)
|
26
|
+
[](https://mit-license.org/)
|
27
|
+
|
28
|
+
## Overview
|
29
|
+
|
30
|
+
**Grasp Agents** is a modular Python framework for building agentic AI pipelines and applications. It provides reusable agent classes, message handling, LLM integration, memory, and orchestration utilities. The framework is designed for flexibility, composability, and clarity, enabling rapid prototyping and robust development of multi-agent systems.
|
31
|
+
|
32
|
+
## Features
|
33
|
+
|
34
|
+
- Modular agent base classes
|
35
|
+
- Message and memory management
|
36
|
+
- LLM and tool orchestration
|
37
|
+
- Logging and usage tracking
|
38
|
+
- Extensible architecture
|
39
|
+
|
40
|
+
## Project Structure
|
41
|
+
|
42
|
+
- `src/grasp_agents/` — Core framework modules
|
43
|
+
- `base_agent.py`, `llm_agent.py`, `comm_agent.py`: Agent classes
|
44
|
+
- `agent_message.py`, `agent_message_pool.py`: Messaging
|
45
|
+
- `memory.py`: Memory management
|
46
|
+
- `cloud_llm.py`, `llm.py`: LLM integration
|
47
|
+
- `tool_orchestrator.py`: Tool orchestration
|
48
|
+
- `usage_tracker.py`, `grasp_logging.py`: Usage and logging
|
49
|
+
- `data_retrieval/`, `openai/`, `typing/`, `workflow/`: Extensions and utilities
|
50
|
+
- `configs/` — Configuration files
|
51
|
+
- `data/` — Logs and datasets
|
52
|
+
|
53
|
+
## Quickstart & Installation Variants
|
54
|
+
|
55
|
+
### Option 1: UV Package Manager Project
|
56
|
+
|
57
|
+
> **Note:** You can check this sample project code in the [src/grasp_agents/examples/demo/uv](src/grasp_agents/examples/demo/uv) folder. Feel free to copy and paste the code from there to a separate project.
|
58
|
+
|
59
|
+
#### 1. Prerequisites
|
60
|
+
|
61
|
+
Install the [UV Package Manager](https://github.com/astral-sh/uv):
|
62
|
+
|
63
|
+
```bash
|
64
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
65
|
+
```
|
66
|
+
|
67
|
+
#### 2. Create Project & Install Dependencies
|
68
|
+
|
69
|
+
```bash
|
70
|
+
mkdir my-test-uv-app
|
71
|
+
cd my-test-uv-app
|
72
|
+
uv init .
|
73
|
+
```
|
74
|
+
|
75
|
+
Create and activate a virtual environment:
|
76
|
+
|
77
|
+
```bash
|
78
|
+
uv venv
|
79
|
+
source .venv/bin/activate
|
80
|
+
```
|
81
|
+
|
82
|
+
Add and sync dependencies:
|
83
|
+
|
84
|
+
```bash
|
85
|
+
uv add grasp_agents
|
86
|
+
uv sync
|
87
|
+
```
|
88
|
+
|
89
|
+
#### 3. Example Usage
|
90
|
+
|
91
|
+
Create a file, e.g., `hello.py`:
|
92
|
+
|
93
|
+
Ensure you have a `.env` file with your OpenAI and Google AI Studio API keys set
|
94
|
+
|
95
|
+
```
|
96
|
+
OPENAI_API_KEY=your_openai_api_key
|
97
|
+
GOOGLE_AI_STUDIO_API_KEY=your_google_ai_studio_api_key
|
98
|
+
```
|
99
|
+
|
100
|
+
```python
|
101
|
+
import asyncio
|
102
|
+
from typing import Any
|
103
|
+
|
104
|
+
from grasp_agents.llm_agent import LLMAgent
|
105
|
+
from grasp_agents.openai.openai_llm import (
|
106
|
+
OpenAILLM,
|
107
|
+
OpenAILLMSettings,
|
108
|
+
)
|
109
|
+
from grasp_agents.typing.io import (
|
110
|
+
AgentPayload,
|
111
|
+
)
|
112
|
+
from grasp_agents.run_context import RunContextWrapper
|
113
|
+
|
114
|
+
from dotenv import load_dotenv
|
115
|
+
|
116
|
+
load_dotenv()
|
117
|
+
|
118
|
+
class Response(AgentPayload):
|
119
|
+
response: str
|
120
|
+
|
121
|
+
|
122
|
+
chatbot = LLMAgent[Any, Response, None](
|
123
|
+
agent_id="chatbot",
|
124
|
+
llm=OpenAILLM(
|
125
|
+
model_name="gpt-4o",
|
126
|
+
llm_settings=OpenAILLMSettings(),
|
127
|
+
),
|
128
|
+
sys_prompt=None,
|
129
|
+
out_schema=Response,
|
130
|
+
)
|
131
|
+
|
132
|
+
|
133
|
+
@chatbot.parse_output_handler
|
134
|
+
def output_handler(conversation, ctx, **kwargs) -> Response:
|
135
|
+
return Response(response=conversation[-1].content)
|
136
|
+
|
137
|
+
|
138
|
+
async def main():
|
139
|
+
ctx = RunContextWrapper(print_messages=True)
|
140
|
+
out = await chatbot.run("Hello, agent!", ctx=ctx)
|
141
|
+
print(out.payloads[0].response)
|
142
|
+
|
143
|
+
|
144
|
+
asyncio.run(main())
|
145
|
+
```
|
146
|
+
|
147
|
+
Run your script:
|
148
|
+
|
149
|
+
```bash
|
150
|
+
uv run hello.py
|
151
|
+
```
|
152
|
+
|
153
|
+
---
|
154
|
+
|
155
|
+
### Option 2: PIP-only (requirements.txt-based) Project
|
156
|
+
|
157
|
+
> **Note:** You can check this sample project code in the [src/grasp_agents/examples/demo/pip](src/grasp_agents/examples/demo/pip) folder. Feel free to copy and paste the code from there to a separate project.
|
158
|
+
|
159
|
+
#### 1. Create Project Folder
|
160
|
+
|
161
|
+
```bash
|
162
|
+
mkdir my-test-pip-app
|
163
|
+
cd my-test-pip-app
|
164
|
+
```
|
165
|
+
|
166
|
+
#### 2. Install Python 3.11.9 (Recommended)
|
167
|
+
|
168
|
+
If using [pyenv](https://github.com/pyenv/pyenv):
|
169
|
+
|
170
|
+
```bash
|
171
|
+
brew install pyenv
|
172
|
+
pyenv install 3.11.9
|
173
|
+
pyenv local 3.11.9
|
174
|
+
```
|
175
|
+
|
176
|
+
Open a new terminal after setting the Python version.
|
177
|
+
|
178
|
+
#### 3. Create & Activate Virtual Environment
|
179
|
+
|
180
|
+
```bash
|
181
|
+
python -m venv .venv
|
182
|
+
source .venv/bin/activate
|
183
|
+
```
|
184
|
+
|
185
|
+
#### 4. Install Grasp Agents SDK
|
186
|
+
|
187
|
+
If you have a `requirements.txt` file:
|
188
|
+
|
189
|
+
```bash
|
190
|
+
pip install -r requirements.txt
|
191
|
+
```
|
192
|
+
|
193
|
+
Or install directly:
|
194
|
+
|
195
|
+
```bash
|
196
|
+
pip install grasp-agents
|
197
|
+
```
|
198
|
+
|
199
|
+
#### 5. Example Usage
|
200
|
+
|
201
|
+
Create a file, e.g., `hello.py`, and use the same code as above.
|
202
|
+
|
203
|
+
#### 6. Run the App
|
204
|
+
|
205
|
+
```bash
|
206
|
+
python hello.py
|
207
|
+
```
|
208
|
+
|
209
|
+
---
|
210
|
+
|
211
|
+
### Option 3: Poetry-based Project
|
212
|
+
|
213
|
+
> **Note:** You can check this sample project code in the [src/grasp_agents/examples/demo/poetry](src/grasp_agents/examples/demo/poetry) folder. Feel free to copy and paste the code from there to a separate project.
|
214
|
+
|
215
|
+
#### 1. Create Project Folder
|
216
|
+
|
217
|
+
```bash
|
218
|
+
mkdir my-test-poetry-app
|
219
|
+
cd my-test-poetry-app
|
220
|
+
```
|
221
|
+
|
222
|
+
#### 2. Install Python 3.11.9 via pyenv
|
223
|
+
|
224
|
+
```bash
|
225
|
+
brew install pyenv
|
226
|
+
pyenv install 3.11.9
|
227
|
+
pyenv local 3.11.9
|
228
|
+
```
|
229
|
+
|
230
|
+
#### 3. Install Poetry Package Manager
|
231
|
+
|
232
|
+
If you don't have Poetry, install it:
|
233
|
+
|
234
|
+
```bash
|
235
|
+
curl -sSL https://install.python-poetry.org | python3 -
|
236
|
+
```
|
237
|
+
|
238
|
+
Open a new terminal after installing Poetry.
|
239
|
+
|
240
|
+
#### 4. Create and Activate a Virtual Environment
|
241
|
+
|
242
|
+
```bash
|
243
|
+
python -m venv .venv
|
244
|
+
source .venv/bin/activate
|
245
|
+
```
|
246
|
+
|
247
|
+
#### 5. Make Poetry Use the Virtual Environment's Python
|
248
|
+
|
249
|
+
```bash
|
250
|
+
poetry env use $(which python)
|
251
|
+
```
|
252
|
+
|
253
|
+
#### 6. Install the Grasp Agents SDK
|
254
|
+
|
255
|
+
```bash
|
256
|
+
poetry install
|
257
|
+
```
|
258
|
+
|
259
|
+
#### 7. Example Usage
|
260
|
+
|
261
|
+
Create a file, e.g., `hello.py`, and use the same code as above.
|
262
|
+
|
263
|
+
#### 8. Environment Variables
|
264
|
+
|
265
|
+
Ensure you have a `.env` file with your OpenAI API key set:
|
266
|
+
|
267
|
+
```
|
268
|
+
OPENAI_API_KEY=your_openai_api_key
|
269
|
+
```
|
270
|
+
|
271
|
+
#### 9. Run the App
|
272
|
+
|
273
|
+
```bash
|
274
|
+
poetry run python hello.py
|
275
|
+
```
|
276
|
+
|
277
|
+
## Development
|
278
|
+
|
279
|
+
To develop and test the library locally, follow these steps:
|
280
|
+
|
281
|
+
### 1. Install UV Package Manager
|
282
|
+
|
283
|
+
Make sure [UV](https://github.com/astral-sh/uv) is installed on your system:
|
284
|
+
|
285
|
+
```bash
|
286
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
287
|
+
```
|
288
|
+
|
289
|
+
### 2. Install Dependencies
|
290
|
+
|
291
|
+
Create a new virtual environment and install dependencies:
|
292
|
+
|
293
|
+
```bash
|
294
|
+
uv venv
|
295
|
+
source .venv/bin/activate
|
296
|
+
uv sync
|
297
|
+
```
|
298
|
+
|
299
|
+
### 3. Test Example for VS Code
|
300
|
+
|
301
|
+
- Install the [Jupyter Notebook extension](https://marketplace.visualstudio.com/items/?itemName=ms-toolsai.jupyter).
|
302
|
+
|
303
|
+
- Ensure you have a `.env` file with your OpenAI and Google AI Studio API keys set (see [.env.example](.env.example)).
|
304
|
+
|
305
|
+
```
|
306
|
+
OPENAI_API_KEY=your_openai_api_key
|
307
|
+
GOOGLE_AI_STUDIO_API_KEY=your_google_ai_studio_api_key
|
308
|
+
```
|
309
|
+
|
310
|
+
- Open [src/grasp_agents/examples/notebooks/agents_demo.ipynb](src/grasp_agents/examples/notebooks/agents_demo.ipynb).
|
311
|
+
|
312
|
+
You're now ready to run and experiment with the example notebook.
|
313
|
+
|
314
|
+
### 4. Recommended VS Code Extensions
|
315
|
+
|
316
|
+
- [Ruff](https://marketplace.visualstudio.com/items/?itemName=charliermarsh.ruff) -- for formatting and code analysis
|
317
|
+
- [Pylint](https://marketplace.visualstudio.com/items/?itemName=ms-python.pylint) -- for linting
|
318
|
+
- [Pylance](https://marketplace.visualstudio.com/items/?itemName=ms-python.vscode-pylance) -- for type checking
|
@@ -38,7 +38,8 @@ grasp_agents/workflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
|
|
38
38
|
grasp_agents/workflow/looped_agent.py,sha256=YBOgOIvy3_NwKvEoGgzQJ2fY9SNG66MQk6obSBGWvCc,3896
|
39
39
|
grasp_agents/workflow/sequential_agent.py,sha256=yDt2nA-b1leVByD8jsKrWD6bHe0o9z33jrOJGOLwbyk,2004
|
40
40
|
grasp_agents/workflow/workflow_agent.py,sha256=9U94IQ39Vb1W_5u8aoqHb65ikdarEhEJkexDz8xwHD4,2294
|
41
|
-
grasp_agents-0.1.
|
42
|
-
grasp_agents-0.1.
|
43
|
-
grasp_agents-0.1.
|
44
|
-
grasp_agents-0.1.
|
41
|
+
grasp_agents-0.1.10.dist-info/METADATA,sha256=XOMAmMxZc3EP2fKPSME19AAufaakNKdh0NGmVC8Q-cY,7411
|
42
|
+
grasp_agents-0.1.10.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
43
|
+
grasp_agents-0.1.10.dist-info/licenses/LICENSE,sha256=GRDob7--af0SOT8BRgu7Ds1NqhunPyxGjyETcCk-o7s,1062
|
44
|
+
grasp_agents-0.1.10.dist-info/licenses/LICENSE.md,sha256=Kfeo0gdlLS6tLQiWwO9UWhjp9-f93a5kShSiBp2FG-c,1201
|
45
|
+
grasp_agents-0.1.10.dist-info/RECORD,,
|
@@ -0,0 +1,13 @@
|
|
1
|
+
Grasp Agents itself is [MIT](https://mit-license.org/)-licensed.
|
2
|
+
|
3
|
+
Package production dependencies are licensed under the following terms:
|
4
|
+
|
5
|
+
| Name | Version | License | URL |
|
6
|
+
| --------- | ------- | ------------------------------------------------- | --------------------------------------- |
|
7
|
+
| PyYAML | 6.0.2 | MIT License | https://pyyaml.org/ |
|
8
|
+
| dotenv | 0.9.9 | BSD-3-Clause license | https://github.com/pedroburon/dotenv |
|
9
|
+
| httpx | 0.28.1 | BSD License | https://github.com/encode/httpx |
|
10
|
+
| openai | 1.77.0 | Apache Software License | https://github.com/openai/openai-python |
|
11
|
+
| tenacity | 9.1.2 | Apache Software License | https://github.com/jd/tenacity |
|
12
|
+
| termcolor | 2.5.0 | MIT License | https://github.com/termcolor/termcolor |
|
13
|
+
| tqdm | 4.67.1 | MIT License; Mozilla Public License 2.0 (MPL 2.0) | https://tqdm.github.io |
|
@@ -1,203 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.4
|
2
|
-
Name: grasp_agents
|
3
|
-
Version: 0.1.7
|
4
|
-
Summary: Grasp Agents Library
|
5
|
-
License-File: LICENSE
|
6
|
-
Requires-Python: <3.12,>=3.11.4
|
7
|
-
Requires-Dist: httpx<1,>=0.27.0
|
8
|
-
Requires-Dist: openai<2,>=1.68.2
|
9
|
-
Requires-Dist: tenacity>=9.1.2
|
10
|
-
Requires-Dist: termcolor<3,>=2.4.0
|
11
|
-
Requires-Dist: tqdm<5,>=4.66.2
|
12
|
-
Description-Content-Type: text/markdown
|
13
|
-
|
14
|
-
# grasp_agents
|
15
|
-
|
16
|
-
<br/>
|
17
|
-
<img src="./.assets/grasp.svg" alt="Grasp Agents" width="320" />
|
18
|
-
<br/>
|
19
|
-
<br/>
|
20
|
-
|
21
|
-
[](https://badge.fury.io/py/grasp_agents)
|
22
|
-
[](https://pypi.org/project/grasp_agents/)
|
23
|
-
[](LICENSE)
|
24
|
-
|
25
|
-
## Overview
|
26
|
-
|
27
|
-
grasp-agents is a modular Python framework for building agentic AI pipelines and applications. It provides reusable agent classes, message handling, LLM integration, memory, and orchestration utilities. The framework is designed for flexibility, composability, and clarity, enabling rapid prototyping and robust development of multi-agent systems.
|
28
|
-
|
29
|
-
## Features
|
30
|
-
|
31
|
-
- Modular agent base classes
|
32
|
-
- Message and memory management
|
33
|
-
- LLM and tool orchestration
|
34
|
-
- Logging and usage tracking
|
35
|
-
- Extensible architecture
|
36
|
-
|
37
|
-
## Project Structure
|
38
|
-
|
39
|
-
- `src/grasp_agents/` — Core framework modules
|
40
|
-
- `base_agent.py`, `llm_agent.py`, `comm_agent.py`: Agent classes
|
41
|
-
- `agent_message.py`, `agent_message_pool.py`: Messaging
|
42
|
-
- `memory.py`: Memory management
|
43
|
-
- `cloud_llm.py`, `llm.py`: LLM integration
|
44
|
-
- `tool_orchestrator.py`: Tool orchestration
|
45
|
-
- `usage_tracker.py`, `grasp_logging.py`: Usage and logging
|
46
|
-
- `data_retrieval/`, `openai/`, `typing/`, `workflow/`: Extensions and utilities
|
47
|
-
- `configs/` — Configuration files
|
48
|
-
- `data/` — Logs and datasets
|
49
|
-
|
50
|
-
## Quickstart & Installation Variants
|
51
|
-
|
52
|
-
### Option 1: UV Package Manager Project
|
53
|
-
|
54
|
-
#### 1. Prerequisites
|
55
|
-
|
56
|
-
Install the [UV Package Manager](https://github.com/astral-sh/uv):
|
57
|
-
|
58
|
-
```bash
|
59
|
-
curl -LsSf https://astral.sh/uv/install.sh | sh
|
60
|
-
```
|
61
|
-
|
62
|
-
#### 2. Create Project & Install Dependencies
|
63
|
-
|
64
|
-
```bash
|
65
|
-
mkdir my-test-uv-app
|
66
|
-
cd my-test-uv-app
|
67
|
-
uv init .
|
68
|
-
```
|
69
|
-
|
70
|
-
Create and activate a virtual environment:
|
71
|
-
|
72
|
-
```bash
|
73
|
-
uv venv
|
74
|
-
source .venv/bin/activate
|
75
|
-
```
|
76
|
-
|
77
|
-
Add and sync dependencies:
|
78
|
-
|
79
|
-
```bash
|
80
|
-
uv add grasp_agents
|
81
|
-
uv sync
|
82
|
-
```
|
83
|
-
|
84
|
-
#### 3. Example Usage
|
85
|
-
|
86
|
-
Create a file, e.g., `hello.py`:
|
87
|
-
|
88
|
-
```python
|
89
|
-
from grasp_agents.llm_agent import LLMAgent
|
90
|
-
from grasp_agents.base_agent import BaseAgentConfig
|
91
|
-
|
92
|
-
agent = LLMAgent(
|
93
|
-
config=BaseAgentConfig(
|
94
|
-
model="gpt-4o-mini",
|
95
|
-
memory=None, # or your memory implementation
|
96
|
-
)
|
97
|
-
)
|
98
|
-
|
99
|
-
response = agent.run("Hello, agent!")
|
100
|
-
print(response)
|
101
|
-
```
|
102
|
-
|
103
|
-
Run your script:
|
104
|
-
|
105
|
-
```bash
|
106
|
-
python hello.py
|
107
|
-
```
|
108
|
-
|
109
|
-
---
|
110
|
-
|
111
|
-
### Option 2: PIP-only (requirements.txt-based) Project
|
112
|
-
|
113
|
-
#### 1. Create Project Folder
|
114
|
-
|
115
|
-
```bash
|
116
|
-
mkdir my-test-pip-app
|
117
|
-
cd my-test-pip-app
|
118
|
-
```
|
119
|
-
|
120
|
-
#### 2. Install Python 3.11.9 (Recommended)
|
121
|
-
|
122
|
-
If using [pyenv](https://github.com/pyenv/pyenv):
|
123
|
-
|
124
|
-
```bash
|
125
|
-
brew install pyenv
|
126
|
-
pyenv install 3.11.9
|
127
|
-
pyenv local 3.11.9
|
128
|
-
```
|
129
|
-
|
130
|
-
Open a new terminal after setting the Python version.
|
131
|
-
|
132
|
-
#### 3. Create & Activate Virtual Environment
|
133
|
-
|
134
|
-
```bash
|
135
|
-
python -m venv .venv
|
136
|
-
source .venv/bin/activate
|
137
|
-
```
|
138
|
-
|
139
|
-
If you see `ModuleNotFoundError: No module named 'yaml'`, run:
|
140
|
-
|
141
|
-
```bash
|
142
|
-
pip install pyyaml
|
143
|
-
```
|
144
|
-
|
145
|
-
#### 4. Install Grasp Agents SDK
|
146
|
-
|
147
|
-
If you have a `requirements.txt`:
|
148
|
-
|
149
|
-
```bash
|
150
|
-
pip install -r requirements.txt
|
151
|
-
```
|
152
|
-
|
153
|
-
Or install directly:
|
154
|
-
|
155
|
-
```bash
|
156
|
-
pip install grasp-agents
|
157
|
-
```
|
158
|
-
|
159
|
-
#### 5. Example Usage
|
160
|
-
|
161
|
-
Create a file, e.g., `hello.py`, and use the same code as above.
|
162
|
-
|
163
|
-
#### 6. Run the App
|
164
|
-
|
165
|
-
```bash
|
166
|
-
python hello.py
|
167
|
-
```
|
168
|
-
|
169
|
-
---
|
170
|
-
|
171
|
-
## License
|
172
|
-
|
173
|
-
MIT License. See [LICENSE](LICENSE) for details.
|
174
|
-
|
175
|
-
## Development
|
176
|
-
|
177
|
-
To develop and test the library locally, follow these steps:
|
178
|
-
|
179
|
-
### 1. Install UV Package Manager
|
180
|
-
|
181
|
-
Make sure [UV](https://github.com/astral-sh/uv) is installed on your system:
|
182
|
-
|
183
|
-
```bash
|
184
|
-
curl -LsSf https://astral.sh/uv/install.sh | sh
|
185
|
-
```
|
186
|
-
|
187
|
-
### 2. Install Dependencies
|
188
|
-
|
189
|
-
Create a new virtual environment and install dependencies:
|
190
|
-
|
191
|
-
```bash
|
192
|
-
uv venv
|
193
|
-
source .venv/bin/activate
|
194
|
-
uv sync
|
195
|
-
```
|
196
|
-
|
197
|
-
### 3. Test Example
|
198
|
-
|
199
|
-
- Install the Jupyter Notebook extension for VS Code.
|
200
|
-
- Open `src/grasp_agents/examples/notebooks/agents_demo.ipynb` in VS Code.
|
201
|
-
- Ensure you have a `.env` file with your OpenAI and Google AI Studio API keys set (see `.env.example`).
|
202
|
-
|
203
|
-
You're now ready to run and experiment with the example notebook.
|
File without changes
|
File without changes
|