# LQKgDataGovernance 路桥数据治理与知识库入库脚本项目(标准规范 + 施工方案 + 状态数据)。 ## 1. 项目启动 ### 1.1 环境要求 安装uv powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" - Python 3.12+ - 可访问的服务:Milvus、MinIO、MySQL(如果要跑数据库入库脚本) ### 1.2 安装依赖 使用 `uv`: ```bash uv venv uv sync --index-url https://pypi.tuna.tsinghua.edu.cn/simple ``` ### 1.4 运行脚本(示例) 进入项目根目录后执行: ```bash uv run -m src.app.scripts.statu_to_milvus ``` > 提示:大多数脚本在文件顶部有路径常量(如 `ROOT_FOLDER`、`EXCEL_PATH`),运行前请先改成你本机路径。 --- ## 2. 文件说明 #### base(编制依据) - `base_count.py`:比对 Excel ID 与目录,输出缺失目录清单 JSON - `base_check.py`:检查目录结构/命名与 Excel 是否一致,输出问题清单 - `base_info_json_generation.py`:按 Excel + 文件夹生成标准信息 JSON,并切分 MD 为 parent/children - `base_in_minio.py`:上传原始文件、MD、JSON 到 MinIO - `base_info_in_database.py`:将 JSON 中文档信息写入 MySQL(文档主表 + 标准基础信息表) - `base_create_collection.py`:创建 Milvus parent/child collection(含 BM25 function) - `base_in_collection.py`:将 JSON 的 parent/children 生成向量并写入 Milvus #### plan(施工方案) - `plan_count.py`:比对 Excel ID 与目录,输出缺失目录清单 JSON - `plan_check.py`:检查施工方案目录结构/命名与 Excel 的一致性 - `plan_info_json_generation.py`:生成施工方案 JSON,并切分 MD 为 parent/children - `plan_info_in_minio.py`:上传施工方案原始文件、MD、JSON 到 MinIO - `plan_info_in_database.py`:将施工方案 JSON 信息写入 MySQL - `plan_info_in_collection.py`:将施工方案 parent/children 向量化后写入 Milvus - `plan_chaxun.py`:按 `missing_folders.json` 在目录中做名称匹配检查的小工具 #### 其他/测试脚本 - `statu_to_milvus.py`:状态数据(含发布单位)向量化并写入 Milvus 指定 collection - `copy_pdf_md_files.py`:拷贝各子目录中的 PDF/MD 到目标目录,保留子目录结构 - `ceshi.py`:MinIO 上传测试脚本(批量上传 md) - `ceshi_embdding.py`:Embedding 接口联通测试脚本 - `python_processed_article`:python脚本修复层级 --- ## 4. 注意事项 - 多数脚本为“一次性批处理”,执行前请先确认顶部路径配置。 - `base_*` 与 `plan_*` 基本一一对应,不要混用目录。 - 如果 Milvus schema 未开启动态字段,写入字段必须与 collection 定义完全一致。