繁华落尽。最近做头条运营,周三时,一个上号的都没有,让我很失落,昨天(周四)一天上了快20个号,一个妹妹一口气上了8个号,把我累得喝水的功夫都没有,最终也咬牙坚持接住了这泼天的富贵。昨天晚上,我躺在床上想,一个人不可能一直顺,也不可能一直背,顺的时候别嚣张,背的时候别要死要活的,因为这都是生活的常态,就像一年四季,春夏秋冬,不能说春天来了,就特别开心,冬天来了就不想活了,这不正常啊。记得上初中时,家里种了西瓜,在村口卖,有时旁边一个叔,一上午卖了一车,下午又去地里摘了一车,晚上时也卖差不多了,我一天只卖了个位数,当时就很失落,这种失落在买瓜人看来是态度不好,加剧了西瓜卖不动。所以,要理解事情有好有坏是正常现象,不要大惊小怪,平和的看待,荣辱不惊,这样才能做成一件事,加油!
[153+200]-------->底部有张生活照片(头条号运营:大家想全托管上号的联系我哦,每天让你得个地铁钱,微信号: qhz_toutiao)
【关键词】python、ragflow、输出不完整、关键部分
描述:现在基础问询输出不完整,需要追踪一下。
开工:
20250624周二时间段:23:16-00:00使用测试用例如下:
def test_multi_chat_choose(client,login_header):
log.info("test_multi_chat_choose-108")
'''
测试多轮对话-包括三轮对话场景====加入了模拟登录
主要测新版意图识别
'''
########调用接口
json_data = {
"conversation_id": '605f2736370511f0bf8e75026f04980c',
"question": '我有售后问题要解决,心情很烦躁',
}
#############小租户:
json_data = {
"conversation_id": '4cbbfc624d8111f08be70ac66fac3d9b',
"question": '我家狗拉肚子',
}
# ###测试专家诊断中的深度思考
# json_data = {
# "conversation_id": '4cbbfc624d8111f08be70ac66fac3d9b',
# "question": '结束基础问询,请直接给出结果',
# "deep_think": True, # 是否深度思考
# "enable_search": False, # 是否启用联网搜索
# }
##### 调用多轮对话接口
url = f"/v1/conversation/multi_chat_choose"
resp = client.post(
url,
json=json_data,
headers={
**login_header # 携带 JWT(如果有)
}
)
if not 200 <= resp.status_code < 300:
raise Exception(f"GET {url} status_code {resp.status_code}.")
# received_data = []
for chunk in resp.iter_encoded():
answer = chunk.decode('utf-8').strip()
log.info(f"\n\n answer: {answer} \n\n")
注:打断点追踪,没找到原因,看下测试用例输出,还是被截断,问下deepseek.
20250625周三时间段:10:42-11:00提问如下:
现在调deepseek-chat接口,提示词函数如下:
###基础问询回复成选择题的样式
def pre_question_prompt_choose_fun(input_text, role, prequestion, reference_knowledge,finish_flag):
formatted_prompt = f"""
你是一位专业的{role}专家,擅长根据用户当前描述和可参考的基础问题,归纳出进一步向用户提问的问题,
不要问超出基础问题的范围,并根据历史记录,过滤掉用户已回答的问题。
如果用户已经回答‘不确定’的问题,不要继续追问。
如果全部问题都能根据历史记录过滤掉,请给出【{finish_flag}】标识,否则,请继续问下去。请不要出现【基础问题未问完】等无意义的提示。如果有问题需要询问用户,不要出现【{finish_flag}】提示。
# 任务要求
1. 根据以下信息提出诊断性问题:
- 当前描述:{input_text}
- 可参考的基础问题:{prequestion}
2. 提问规范:
- 尽可能多的给出问题,但每次提出不超过10个未问过的问题
- 每次输出最后一个问题,请完整给出,不要只输出部分问题
- 提问时不要向用户要图片或视频
- 每个问题提供3-4个选项,最后一个选项必须是"不确定"
- 问题以"?"结束
- 只输出问题与选项,不要额外解释
3. 格式规范(严格遵循):
问题 选项1 选项2 不确定
[换行后下一个问题]
4. 特殊情况处理:
- 如果无需再提问,只输出:【{finish_flag}】
- 如果还有问题要问,必须继续提问,不要提前结束
# 输出示例
肿胀部位是否有疼痛反应? 是 否 不确定
肿胀部位颜色是否有变化? 发红 发紫 不确定
# 请开始输出你的问题(严格按格式要求):
"""
return formatted_prompt
以上函数输出formatted_prompt如下:
现在遇到的问题是:输出的问题老被截断,如下:
{"answer": "呕吐内容物? 食物 黄水/白沫 不确定 呕吐动作? 喷射状 缓慢吐出 不确定 呕吐发生时间? 只在吃饭后呕吐 &"}
请帮我优化下提示词函数。
注:给出的方案如下:
针对输出截断问题,我优化了提示词函数,主要改进点包括:
明确限制问题数量:将"不超过10个"改为"3-5个",避免输出过长
强调格式要求:增加特殊分隔符和严格换行要求
精简任务描述:删除冗余说明,聚焦核心要求
强化截断防护:添加显式的输出长度控制提示
优化选项格式:使用更清晰的选项分隔符
def optimized_question_prompt(input_text, role, prequestion, finish_flag):
formatted_prompt = f"""
# 角色
你是专业{role},需根据用户描述和基础问题生成追问问题
# 核心任务
1. 根据当前描述生成追问问题:
- 用户描述:【{input_text}】
- 基础问题范围:{prequestion}
2. 生成要求:
• 每次生成3-5个问题(必须严格限制数量)
• 每个问题格式:问题文本? 选项1 选项2 不确定
• 必须换行分隔不同问题(禁止连续输出)
• 最后选项必须包含"不确定"
• 禁止要求图片/视频
# 特殊规则
▲ 所有问题必须完整显示(严禁截断)
▲ 若需追问:生成3-5个问题(严格换行分隔)
▲ 若无需追问:仅输出【{finish_flag}】
# 输出格式(严格遵循)
问题1文本? 选项A 选项B 不确定
问题2文本? 选项A 选项B 选项C 不确定
# 当前待生成问题(基于基础问题):
"""
return formatted_prompt
问题数量控制:
• 每次生成3-5个问题(必须严格限制数量)将上限从10降至5,确保输出长度可控
防截断措施:
▲ 所有问题必须完整显示(严禁截断)
▲ 必须换行分隔不同问题(禁止连续输出)
显式强调完整性和格式要求
格式强化:
问题1文本? 选项A 选项B 不确定 使用明确的分隔符
每个问题独立成行
精简结构:
删除冗余的任务描述
使用符号(▲•)强化重点要求
移除可能引起混淆的"最后一个问题"表述
参数优化:
# 移除了未使用的reference_knowledge参数
def optimized_question_prompt(input_text, role, prequestion, finish_flag):
prompt = optimized_question_prompt(
input_text="我家狗拉肚子",
role="宠物医生",
prequestion="呕吐内容物/呕吐次数/精神食欲",
finish_flag="问题结束"
)
此优化版本通过严格控制问题数量、强化格式要求和精简提示内容,可有效解决输出截断问题,同时保持核心功能不变。
运行看下效果,效果如下:

图5a-1
注:没什么用,看来,还是要继续优化。
昨日数据来啦,昨日总收入:1143.07块,昨日总播放:822.72万次,软件截图如下:

图5b-1
注:想要全托管运营头条号的联系我,你出账号,我来运营,保你天天有钱花,咨询电话: 17701328814(微信同号),也可以加群先了解一下。

图5b-2
注:个人微信如下,欢迎骚扰。

图5b-3
拍摄于2025年6月23日,19:06:57,在图书馆拍的自拍照,再过几年,估计头发就掉光了。最近,看视频,雷军搞了个增程式的车出来,说:我这个车不挑油,能加92号油,95号油,还能加98号油。网友说:太牛B了,我家车能走土路,也能走水泥路,还能走柏油路,神奇不。雷军被称为营销大师,一副人畜无害的样子,总能把话题炒起来,人家做的都是大生意,上百亿上千亿的那种,既然我没那个能力,也不用操那份心,现在运营头条,数据好了,不要嚣张,数据不好,也不要自卑,慢慢找方法,多总结,踏实干就完了,加油!

图5c-1
《本文完》