You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否仅用LangChain与OpenAI构建带信息收集的多轮嵌套对话机器人?

LangChain + OpenAI 实现多轮对话与信息收集的可行性

结论:完全可以实现,能力与MS Bot Framework对等

LangChain结合OpenAI能够轻松构建你描述的多轮对话、嵌套对话流程,同时完成姓名、邮箱、反馈信息的收集,包括手机号选择这类分支逻辑。核心实现方式如下:

1. 用对话记忆维护上下文

LangChain提供多种对话记忆组件(如ConversationBufferMemory、ConversationSummaryMemory),可以精准保存多轮对话的上下文,让AI能记住之前收集的信息(比如已经获取了姓名,就不会重复询问)。

2. 用自定义Prompt引导收集流程

通过编写结构化的Prompt,明确告诉AI需要按照「请求反馈→收集姓名→收集邮箱→收集反馈内容→询问手机号」的顺序执行,同时处理用户的分支回复(是/否提供手机号)。

3. 用链或代理实现流程控制

  • 可以用SequentialChain按顺序执行信息收集步骤;
  • 对于分支逻辑,可结合LLMChain和条件判断,根据用户回复切换后续对话路径。

4. 信息验证与存储

可在流程中加入自定义逻辑(比如用正则验证邮箱格式),将收集到的信息存储到数据库或本地文件中,这部分可以通过LangChain的工具集成或自定义函数实现。

对话示例(中文翻译)

用户:我想提交反馈
机器人:好的,请告诉我你的姓名?
用户:我叫Alex
机器人:请告诉我你的邮箱?
用户:我的邮箱是alex@gmail.com
机器人:请告诉我你的反馈内容?
用户:产品加载速度太慢,希望优化
机器人:请问你是否愿意留下电话号码?
用户:不用了
机器人:好的,有任何需求请随时告知我。
用户:好的,我的号码是023232323123123
机器人:谢谢,有任何需求请随时告知我。

简化代码示例

from langchain.chat_models import ChatOpenAI
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
from langchain.prompts import PromptTemplate

# 定义引导收集流程的Prompt
prompt = PromptTemplate(
    input_variables=["history", "input"],
    template="""你是一个反馈收集机器人,按照以下流程和用户对话:
1. 用户说要提交反馈时,先询问姓名;
2. 获取姓名后,询问邮箱;
3. 获取邮箱后,询问反馈内容;
4. 获取反馈内容后,询问是否愿意留下电话号码;
5. 用户回复不用,则结束对话;用户回复愿意并提供号码,则表示感谢后结束对话。
不要跳过步骤,不要重复询问已收集的信息。

历史对话:{history}
用户当前输入:{input}
你的回复:"""
)

# 初始化LLM、记忆和对话链
llm = ChatOpenAI(temperature=0)
memory = ConversationBufferMemory()
conversation_chain = ConversationChain(llm=llm, memory=memory, prompt=prompt)

# 模拟对话
print(conversation_chain.predict(input="我想提交反馈"))
print(conversation_chain.predict(input="我叫Alex"))
print(conversation_chain.predict(input="我的邮箱是alex@gmail.com"))
print(conversation_chain.predict(input="产品加载速度太慢,希望优化"))
print(conversation_chain.predict(input="不用了"))
# 或执行以下代码测试提供手机号的分支
# print(conversation_chain.predict(input="好的,我的号码是023232323123123"))

内容的提问来源于stack exchange,提问作者user2467491

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 03:23:00