写在前面的话
股票杀手。昨天,和一个哥们在外面抽烟。我问他,这几天怎么没看到你。他说:去丰台了,前几年处了个对象,性格不合分手了,上周三去世了,去看一下。我有点吃惊,我说,你处的对象是位七八十岁的富婆吗。他说:你想哪去了,我是88年的,我处的对象是93年的,怎么就八十了呢,我俩分手后,她炒股,开始是零星买,后来把所有钱都买上,再后来,就借钱买,各种刷网贷,这一段中东大战,股价跌到了十八层地狱,她一下子亏了八十多个,吞了一大瓶安眠药,没抢救过来,这不,她爸妈从云南过来料理后事,我去见一面。他说的很平淡,好像在说别人的故事,我听的心一颤一颤的,股票是个杀手啊,要不咋说,理财有风险,投资需谨慎呢。
[283]--------底部有张生活照片
【关键词】python、ragflow、小程序、基础问询
一、python相关(一级)
1.小程序基础问询连问(二级)
描述:现在连问问完之后,走专家诊断要处理一下,以及连问服务器收到消息也要处理一下。先处理连问完的专家诊断。
开工:
第一步:连问(三级)
a.基础问询第三问(四级)
20250205初八时间段:20:21-20:40
20250205初八时间段:22:46-23:00
第三问结果如下:
b.形为异常(四级)
20250205初八时间段:23:00-23:20
处理这个之前,先把子函数搬过来,看能不能解决第二次提问不能正常回复的问题。
处理如下:
图2a-2
注:这个直接把子函数专家问诊拿过来了,接着问下试试。
看走不走非get_sub_intension,结果截图如下:
图2a-3
注:果然走了,处理一下,应该怎么做。
c.处理形为异常(四级)
20250205初八时间段:23:38-23:40
20250205初八时间段:23:40-00:00
处理下异常,修改程序如下:
图2a-4
注:这个是处理形为异常的程序,运行下看会不会出问题,运行结果如下:
图2a-5
注:报错了,处理一下,把specify_type改为0,这个目前没啥用觉得。
再次运行结果如下:
图2a-6
注:es超时,在测试服上跑,本地可能太慢了。又重启了下本地可以了,接下来,修改问询完成。
第二步:问询完成(三级)
20250206初九时间段:00:17-00:20
20250206初九时间段:00:59-01:00
20250206初九时间段:01:16-01:20
问询完成,修改程序如下:
if is_base_finish:
# 获取临床经验
clinical_experience = get_disease_decision_procedure(disease_type)
# 获取携带提示词的问题
question_prompt = doctor_specialist_request_prompt.format(input_text=question,clinical_experience=clinical_experience,disease_type=disease_type2)
log.info(f"question_prompt: {question_prompt}")
try:
json_data_begin = {'retcode': 444, 'retmsg': '开始', 'data': True}
await websocket.send_json(json_data_begin)
res_res_chat = chat(conversation_id, question_prompt,[],True,specify_type,question)
for ans in res_res_chat:
json_data = {'retcode': 0, 'retmsg': '', 'data': {"answer": ans, "reference": []}}
await websocket.send_json(json_data)
except Exception as e:
log.error(f"An error occurred: {traceback.format_exc()}")
注:这样就可以流式处理了,结果如下:
图2a-7
注:其间处理了一个问题,就是写死呼吸科的问题,修改截图如下:
图2a-8
注:图2a-7结果报错了,需要处理一下,目测是输出没接住的问题,给的数据是如下这样的:
ans120: b'data:{"retcode": 0, "retmsg": "", "data": {"answer": "\xe6\x82\xa8\xe5\xa5\xbd", "reference": {}, "audio_binary": null, "type": 102, "id": "1f1f68'注:需要按行接收处理一下,修改代码如下:
图2a-9
注:这样接收应该就没问题了,接下来,如果成功,还有新建个会话,重新跑一遍。最后,还要把日志去掉,免得影响输出速度。
又报错了,按行取不行,截图如下:
图2a-10
注:明天再说吧,先这样。
a.处理接收问题(四级)
20250206初九时间段:09:50-10:00
把接收问题看下怎么处理,先只打日志,不发送到前端,修改程序如下:
图2a-11
注:跑下试试,结果如下:
图2a-12
注:这个数据的到来,不是一个完整的,两个流或多个流加一起才是完事的,要处理一下。要不然,解析不出来。
b.处理接收数据(四级)
20250206初九时间段:10:07-10:20
20250206初九时间段:10:42-11:00
这个思路也很简单,就是定义一个字符串,拼接一下,把\n\n前面的转化发送一下就可以。
书写如下:
if '\n\n' in send_str:
send_str_list = send_str.split('\n\n')
json_str = send_str_list[0]
json_str = json_str.decode('utf-8')
json_str = json_str[len('data:'):].strip()
json_data = json.loads(json_str)
log.info(f"json_data: {json_data}")
send_str = send_str_list[1]
注:这个就是处理字节字符串的方法,运行,看下,能不能行。运行结果如下:
图2a-13
注:修改一下代码,如下:
图2a-14
注:再次运行,结果如下:
注:终于可以了,接下来,代码上线。
c.代码上线(四级)
20250206初九时间段:18:02-18:20
chat_sev代码合并到master上。合并完后,发现发消息提交不了。
本地跑一下,需要改下配置信息,如下:
图2a-16
注:线上测试发现,问到最后一步时,报错了,错误如下:
图2a-17
注:本地测试一下,看看是哪里卡住了。
第三步:本地测试(三级)
a.本地配置环境(四级)
20250206初九时间段:18:58-19:00
20250206初九时间段:19:15-19:20
20250206初九时间段:19:28-19:40
本地通过host文件,配置下转发和ws,突然有个想法,陈哥给我ssl证书文件了,我直接在本地配应该也是可以的,只是ip发生了变化,其它是一样的,把服务器上的配置拿过来,证书文件拿过来。
b.再来个net的虚拟服务器(四级)
20250206初九时间段:19:28-19:40
配置好后,测试一下。
二、生活照片
拍摄于2026年1月17日,20:31:04,北京大雪,和二宝在外面玩。人生无常啊,一个花季少女,因为一只股票,赔上了性命,太不可思议了,我不知道,这位姑娘炒股是不是和分手有关,但显然用劲有点大了。炒股这个东西,我觉得和赌博没啥区别,进入牌桌,都想赢钱,哪怕这次赢了,下次觉得运气好,还会去,来个双喜临门,输了呢,也要去,去翻本,但最终十赌九输,靠赌博发家致富的不能说没有,但很少,即使赢了,觉得这些钱来的容易,就会大手大脚的花,也不会攒住钱。炒股也好,赌博也好,当成一个娱乐,解闷,像东北农村,大家过年没事,或者天冷了,地里没活,打麻将,消磨时间,因为农村也没啥娱乐设施,我觉得这是赌博,炒股的唯一正确意义,如果赌上全部家当,或借钱炒股,那就太危险了,你看,这个女孩被炒股要了命,太吓人了。
图2b-1
《本文完》