Skip to content

Latest commit

 

History

History
executable file
·
79 lines (54 loc) · 3.02 KB

File metadata and controls

executable file
·
79 lines (54 loc) · 3.02 KB

开发文档说明

本文件介绍本项目开发中用到的文件与工具。

项目说明:本项目是一个基于图结构的智能对话导航系统(Graph Chatbot)。虽然代码中仍使用"phone"相关命名以保持向后兼容,但系统的核心是一个通用的图导航框架。

编码规范:建议每个文件都添加 if __name__=="__main__" 测试方法。

重要提示:本项目为通用框架,所有业务数据都可自定义。当前提供的是示例数据,需根据实际业务场景进行修改。

# 激活虚拟环境(路径请根据实际情况调整)
source test_env/bin/activate    # Linux/Mac
# 或 test_env\Scripts\activate  # Windows

数据库相关

1. 通过现有 json 数据文件(phone_node.json)创建图结构表

python -m src.DAL.db.db_clients.create_tables   #删除旧数据并导入新数据以创建数据表

1A. 若遇到无法建表的问题

问题原因通常是原始数据经过增删改,图节点的 node_id 可能不是连续递增,中间可能缺号(如1、2、51、3、53)。此命令会生成 normalized_phone_node.json,请手动将其重命名为 phone_node.json 使用。

python -m src.utils.json_normalizer

2. 导出图结构数据为 json 文件(exported_phone_node.json),如需再次使用请手动改名为phone_node.json

python -m src.DAL.json.export_to_json   #备份数据库为json

运行会话应用与管理页面

llama-server -m /home/lkm/00model/Qwen3-4B-Instruct-2507-UD-Q8_K_XL.gguf -c 4096 -ngl 35 --host 0.0.0.0 --port 8080	#模型推理服务推荐参数
python -m src.api.app   # 启动WEB应用,访问 localhost:8003

生成训练数据

注意:训练数据生成工具目前采用通用客服系统模板。请根据实际业务需求修改 src/tools/generate_training_data.py 的查询模板和变量。

# 生成训练数据模板(请根据业务需求修改脚本中的模板)
python -m src.tools.generate_training_data  #会生成三类文件,分别用于系统提示词、用户提示词以及结果合并

# 使用Web页面编辑训练数据
python -m src.tools.training_data_editor    #网页编辑器,可人工筛选与验证答案

修改建议

  1. 打开 src/tools/generate_training_data.py
  2. 修改 generate_user_queries() 方法中的 query_templates,使其符合具体业务需求
  3. 修改产品/服务名称清单,或根据节点数据自动生成
  4. 生成数据后,用训练数据编辑器手动核对与完善

生成语音文本和音频

注意:这些工具适用于语音文本与音频文件生成。应根据实际业务场景修改相关脚本。

# 生成语音文本(请在脚本内修改模板以适配业务)
python scripts/generate_text/generate_verbal_texts.py --mode all

# 将语音文本转换为节点音频文件
python scripts/generate_audio/generate_node_audio_from_verbal.py

ASR 识别纠错

python -m src.services.asr_correction.service