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

运行Python高校招生聊天机器人代码时触发KeyError: 'text'的原因咨询

运行Python高校招生聊天机器人代码时触发KeyError: 'text'的原因咨询

嘿,我来帮你揪出这个错误的根源~

你遇到的KeyError: 'text'本质上是代码里引用的列名和CSV文件实际的列名不匹配导致的:

  1. 你的代码里写了text_matrix = vectorizer.fit_transform(admissions_df['text']),试图从DataFrame里取出名为text的列,但从后面构建聊天对的代码pairs = [(preprocess(q), preprocess(r)) for q, r in zip(admissions_df['question'], admissions_df['response'])]能看出来,你的CSV文件里实际的列名应该是question和response,根本没有text这一列!

  2. 另外,你代码里那行单独的open('/Users/kk/Documents/Python Programs/admissions_data.csv')完全没用,pd.read_csv()会自己处理文件的打开和关闭,直接删掉就行,避免占用不必要的资源。

快速修复方案

把涉及'text'的那行代码,改成你实际要用来做相似度匹配的列(这里应该是问题列question):

# 原错误代码
# text_matrix = vectorizer.fit_transform(admissions_df['text'])

# 修正后
text_matrix = vectorizer.fit_transform(admissions_df['question'])

额外检查建议

  • 打开你的admissions_data.csv文件,确认第一行的列标题是不是question和response,有没有拼写错误、大小写不一致的情况(比如写成Question或者quesiton)
  • 确保pd.read_csv()确实正确读取了所有列,可以在读取后加一行print(admissions_df.columns)来查看当前DataFrame的所有列名,验证是否和预期一致

这样修改后,应该就能解决这个KeyError问题啦~

备注:内容来源于stack exchange,提问作者user21439261

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 09:52:33