|
22 | 22 | ) |
23 | 23 | from .toolkits.notebook import toolkit as nb_toolkit |
24 | 24 | from .toolkits.jupyterlab import toolkit as jlab_toolkit |
| 25 | +from .toolkits.code_execution import toolkit as exec_toolkit |
25 | 26 |
|
26 | 27 | MEMORY_STORE_PATH = os.path.join(jupyter_data_dir(), "jupyter_ai", "memory.sqlite") |
27 | 28 |
|
@@ -123,29 +124,18 @@ async def get_memory_store(self): |
123 | 124 | def get_tools(self): |
124 | 125 | tools = nb_toolkit |
125 | 126 | tools += jlab_toolkit |
126 | | - return nb_toolkit |
| 127 | + tools += exec_toolkit |
| 128 | + return tools |
127 | 129 |
|
128 | 130 | async def get_agent(self, model_id: str, model_args, system_prompt: str): |
129 | 131 | model = ChatLiteLLM(**model_args, model=model_id, streaming=True) |
130 | 132 | memory_store = await self.get_memory_store() |
131 | | - |
132 | | - if not hasattr(self, "search_tool"): |
133 | | - self.search_tool = FilesystemFileSearchMiddleware( |
134 | | - root_path=self.parent.root_dir |
135 | | - ) |
136 | | - if not hasattr(self, "shell_tool"): |
137 | | - self.shell_tool = ShellToolMiddleware(workspace_root=self.parent.root_dir) |
138 | | - if not hasattr(self, "tool_call_handler"): |
139 | | - self.tool_call_handler = ToolMonitoringMiddleware( |
140 | | - persona=self |
141 | | - ) |
142 | | - |
| 133 | + |
143 | 134 | return create_agent( |
144 | 135 | model, |
145 | 136 | system_prompt=system_prompt, |
146 | 137 | checkpointer=memory_store, |
147 | | - tools=self.get_tools(), # notebook and jlab tools |
148 | | - middleware=[self.shell_tool, self.tool_call_handler], |
| 138 | + tools=self.get_tools(), |
149 | 139 | ) |
150 | 140 |
|
151 | 141 | async def process_message(self, message: Message) -> None: |
|
0 commit comments