rumihoney/chatbot-prototype
GitHub: rumihoney/chatbot-prototype
一个基于 Python NLTK 的规则驱动聊天机器人教育原型,演示如何在不依赖大型语言模型的情况下用基础 NLP 技术实现意图检测与短对话交互。
Stars: 0 | Forks: 0
# Talk to Me — 聊天机器人原型
这是一个使用 Python 构建的小型交互式基于规则的聊天机器人,专为 LING 498 – 语言学计算方法课程开发。该项目探索了如何在不依赖大型语言模型的情况下,利用基础的自然语言处理(NLP)技术来模拟简短的对话。
## 功能
- 检测简单意图,例如问候、感谢和告别
- 使用 NLTK 进行分词和词形还原
- 通过关键词匹配执行基于规则的意图检测
- 生成随机响应以减少重复
- 存储基本用户信息(姓名、年龄、最喜欢的颜色)
- 记录对话历史并将其导出到文本文件中
- 包含用于持续互动的自由聊天模式
- 支持可选的对话实验
## 使用的技术
- Python 3
- NLTK(Natural Language Toolkit)
- Python 标准库(`random`)
## NLP 概念
- 分词
- 词形还原
- 词汇预处理
- 基于规则的意图检测
- 模式匹配
## 我的实践内容
- 字典
- 列表
- 函数
- 循环
- 条件语句
- 用户输入验证
- 基于规则的对话设计
- 使用 NLTK 进行词汇预处理
- 对话记录
## 项目结构
- TalkToMe.py
- experiments.py
- conversation_logs.txt
- README.md
## 运行项目
安装 NLTK
如果是首次运行,请下载以下资源:
- nltk.download("punkt")
- nltk.download("wordnet")
- nltk.download("omw-1.4")
## 项目状态
本项目是为本科计算语言学课程开发的教育原型。它演示了基于规则的对话代理如何利用基础 NLP 技术进行运作。
## 未来改进
- 扩展意图库
- 改进对话记录系统
- 添加情感分析
- 集成词性标注或命名实体识别
标签:NLTK, Python, 分布式搜索, 对话系统, 意图识别, 无后门