import os import sys from transformers import AutoTokenizer from .config import Config from .dataset import DataProcessor def main(): print("⏳ 开始下载并处理数据...") # 1. 确保 data 目录存在 if not os.path.exists(Config.DATA_DIR): os.makedirs(Config.DATA_DIR) # 2. 初始化流程 tokenizer = AutoTokenizer.from_pretrained(Config.BASE_MODEL) processor = DataProcessor(tokenizer) # 3. 获取处理后的数据 (get_processed_dataset 内部已经有加载逻辑) # 注意:我们这里为了保存原始数据,可能需要调用 load_clap_data 和 load_medical_data # 但 DataProcessor.get_processed_dataset 返回的是 encode 后的数据。 # 用户可能想要的是 Raw Data 或者 Processed Data。 # 这里我们保存 Processed Data (Ready for Training) 到磁盘 dataset = processor.get_processed_dataset() save_path = os.path.join(Config.DATA_DIR, "processed_dataset") print(f"💾 正在保存处理后的数据集到: {save_path}") dataset.save_to_disk(save_path) print("✅ 数据保存完成!") print(f" Train set size: {len(dataset['train'])}") print(f" Test set size: {len(dataset['test'])}") print(" 下次加载可直接使用: from datasets import load_from_disk") if __name__ == "__main__": main()