|
|
|
@ -34,6 +34,7 @@ logger.addHandler(handler)
|
|
|
|
|
model = KeyedVectors.load_word2vec_format(MS_MODEL_PATH, binary=False, limit=MS_MODEL_LIMIT)
|
|
|
|
|
logger.info(f"模型加载成功,词向量维度: {model.vector_size}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 将HTML文件转换为Word文件
|
|
|
|
|
def html_to_word_pandoc(html_file, output_file):
|
|
|
|
|
subprocess.run(['pandoc', html_file, '-o', output_file])
|
|
|
|
@ -114,7 +115,6 @@ async def generate_stream(client, milvus_pool, collection_manager, query, docume
|
|
|
|
|
logger.info(f"ID: {hit.id}")
|
|
|
|
|
logger.info(f"标签: {record['tags']}")
|
|
|
|
|
logger.info(f"用户问题: {record['user_input']}")
|
|
|
|
|
|
|
|
|
|
logger.info(f"时间: {record['timestamp']}")
|
|
|
|
|
logger.info(f"距离: {hit.distance}")
|
|
|
|
|
logger.info("-" * 40) # 分隔线
|
|
|
|
@ -148,8 +148,11 @@ async def generate_stream(client, milvus_pool, collection_manager, query, docume
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
# 调用阿里云大模型
|
|
|
|
|
html_content = client.chat(prompt)
|
|
|
|
|
yield {"data": html_content}
|
|
|
|
|
if len(context) > 0:
|
|
|
|
|
html_content = client.chat(prompt)
|
|
|
|
|
yield {"data": html_content}
|
|
|
|
|
else:
|
|
|
|
|
yield {"data": "没有在知识库中找到相关的信息,无法回答此问题。"}
|
|
|
|
|
except Exception as e:
|
|
|
|
|
yield {"data": f"生成报告时出错: {str(e)}"}
|
|
|
|
|
finally:
|
|
|
|
|