【Datawhale AI夏令营】科大讯飞AI大赛(大模型技术)/夏令营:让AI理解列车排期表

跑的时候有些地方需要修改,在此记录。

一、硅基流动注册&API密钥使用

baseline.ipynb的此处需要进行修改:

如果不知道自己的token是什么,可参考:免费调用DeepSeek-R1!硅基流动注册&API密钥使用全攻略 | 手把手教程https://zhuanlan.zhihu.com/p/21156769766

二、json数组转换为独立json对象

由于baseline跑出来的结果是json数组,如果不转换直接在MaaS平台上训练,会产生如下报错:

{"category": "数据集错误","reason" :"JSON parse error: Column() changed from object to array in row 0"}

因此在baseline代码基础上,增加以下脚本:

bash 复制代码
# 把json数组转换独立的json对象({"category": "数据集错误","reason" :"JSON parse error: Column() changed from object to array in row 0"})
import json
import os

# === 第一步:转换 JSON 数组为 JSONL 格式 ===
input_json_file = 'single_row.json'
jsonl_file = 'train_data/single_row.jsonl'

# 读取 JSON 数组
with open(input_json_file, 'r', encoding='utf-8') as f:
    data = json.load(f)

# 写入 JSONL 格式(每行一个 JSON 对象)
with open(jsonl_file, 'w', encoding='utf-8') as f:
    for item in data:
        json.dump(item, f, ensure_ascii=False)
        f.write('\n')

print(f"转换完成,已保存为 JSONL 文件:'{jsonl_file}'")

# === 第二步:修复 JSONL 文件中的 output 字段 ===
temp_file = jsonl_file + '.tmp'

with open(jsonl_file, "r", encoding="utf-8") as infile, open(temp_file, "w", encoding="utf-8") as outfile:
    for line_num, line in enumerate(infile, start=1):
        line = line.strip()
        if not line:
            continue
        try:
            data = json.loads(line)
            if "output" in data and not isinstance(data["output"], str):
                data["output"] = str(data["output"])
            json.dump(data, outfile, ensure_ascii=False)
            outfile.write("\n")
        except json.JSONDecodeError as e:
            print(f"第 {line_num} 行解析错误:{e}")

# 替换原文件
os.replace(temp_file, jsonl_file)
print(f"修复完成,JSONL 文件已更新:'{jsonl_file}'")
相关推荐
LBuffer9 小时前
破解入门学习笔记题四十六
数据库·笔记·学习
endcy201610 小时前
基于Spring AI的RAG和智能体应用实践
人工智能·ai·系统架构
Blossom.11810 小时前
移动端部署噩梦终结者:动态稀疏视觉Transformer的量化实战
java·人工智能·python·深度学习·算法·机器学习·transformer
FPGA小迷弟10 小时前
ChatGPT回答用AI怎么怎么赚钱
大数据·人工智能
轻微的风格艾丝凡10 小时前
卷积的直观理解
人工智能·深度学习·神经网络·算法·计算机视觉·matlab·cnn
月下倩影时11 小时前
视觉进阶篇——机器学习训练过程(手写数字识别,量大管饱需要耐心)
人工智能·学习·机器学习
PixelMind11 小时前
【超分辨率专题】HYPIR:扩散模型先验与 GAN 对抗训练相结合的新型图像复原框架
人工智能·生成对抗网络·扩散模型·图像复原
说私域11 小时前
从裂变能力竞争到技术水平竞争:开源AI智能名片链动2+1模式S2B2C商城小程序对微商企业竞争格局的重塑
人工智能·小程序·开源
xybDIY11 小时前
基于 Tuya.AI 开源的大模型构建智能聊天机器人
人工智能·机器人·开源
hssfscv13 小时前
JAVA学习笔记——集合的概念和习题
笔记·学习