dsh-py-codeact:持久 IPython 会话的 CodeAct 智能体循环

前言

DeepSeek Harness 的内置代码模式(Code Mode)在每次运行之间不保留状态,这对于需要上下文的复杂工作流是一个限制。dsh-py-codeact 通过提供一个持久的 IPython 会话作为模型的动作空间来解决这一问题。

这是什么

这是一个基于 Python 的 CodeAct 智能体循环插件,由 CNSeniorious000 维护。它将 DeepSeek Harness 的工具桥接到一个持久的 IPython 会话中,使模型能够在其中执行 Python 代码并保留变量状态。

核心功能

  • CodeAct 智能体循环:在 Harness 中运行智能体。
  • 持久状态:会话中的变量(如 df)在后续单元格中保持可用。
  • 工具桥接:通过 __dsh__.tools 模块提供 Harness 工具。
  • IPython 原生支持:支持魔法命令、transform_cell、顶层 await 和执行历史。
  • REPL 内省:使用 ? 查看文档字符串和签名。
  • MCP 集成:支持 MCP 工具。

安装与启用

插件仓库位于 GitHub:https://github.com/CNSeniorious000/dsh-py-codeact。许可证为 MIT。

典型用法

# 读取 CSV 并连接数据框
from __dsh__.tools import read, glob
import pandas as pd, io

paths = await glob(pattern="data/*.csv")
frames = [pd.read_csv(io.StringIO(await read(file_path=p))) for p in paths]
df = pd.concat(frames)

# 后续单元格:df 变量仍然存在
df.groupby("region").revenue.sum().nlargest(3)

适用场景与注意

此插件适合需要跨执行步骤保持变量状态的 CodeAct 工作流。它拥有自己的进程,因此它不实现 CodeRuntime 后端接口。由于它维护一个持久内核,因此无法从会话重放重建实时解释器状态,但日志会记录所有单元格源代码和工具调用。

总结

dsh-py-codeact 提供了一种利用持久 IPython 会话进行智能体开发的方法。有关更多详细信息,请参阅目录或GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜