LangChain 框架原生提供了 Self-Ask 的实现。开发者可以通过 create_self_ask_with_search_agent 函数快速创建一个自提问代理,只需传入大模型实例和搜索工具列表。框架内置了标准的 Self-Ask 提示模板(可通过 hub.pull("hwchase17/self-ask-with-search") 加载),开箱即用。
论文作者 Ofir Press 在 GitHub 上开源了 Self-Ask 的参考代码仓库(github.com/ofirpress/self-ask),包含了完整的提示词模板、评估脚本以及在多个基准数据集上的实验配置。该仓库使用 OpenAI API 作为默认推理引擎,同时也支持替换为其他兼容的大模型接口。
围绕 Self-Ask 的核心思想,社区还衍生出了多种变体实现:有的将其与 ReAct 框架结合,在自提问的基础上增加行动执行能力;有的将其集成到 AutoGen、LlamaIndex 等 Agent 框架中,作为多智能体协作的一种通信协议。这些扩展进一步丰富了 Self-Ask 的应用生态。