JSONL(JSON Lines)是一种基于文本的数据格式,通常用于存储一系列 JSON 对象,每个对象占用文件中的一行。JSONL 格式在每行上包含一个有效的 JSON 对象,这些对象可以具有不同的结构,但通常是类似于字典的键值对结构。
JSONL 格式在处理大量数据时非常有用,因为它允许你逐行处理数据而无需一次加载整个文件,这对于处理日志文件、导出数据、文本文件等非常有用。每一行都是一个独立的 JSON 对象,因此可以轻松地逐行读取和处理。
在处理 JSONL 文件时,你可以逐行读取每个 JSON 对象,然后解析它们以获取所需的数据。这种格式的文件通常以 .jsonl
扩展名保存。
code:
# -*- coding: utf-8 -*-
"""
Created on Tue Oct 24 22:49:56 2023
@author: SavingKing
"""
import json
# 1. 打开 JSONL 文件
with open('data.jsonl', 'r') as file:
# 2. 逐行读取文件
for line in file:
# 3. 解析 JSON 对象
data = json.loads(line)
print(data) # 输出每个 JSON 对象
# 在这里,你可以进一步处理 data,获取其中的数据字段
輸出結果:
再示範一例
code:
# -*- coding: utf-8 -*-
"""
Created on Tue Oct 24 22:49:56 2023
@author: SavingKing
"""
import json
# 1. 打开 JSONL 文件
with open('conversation.jsonl', 'r') as file:
conversation = [] # 用于存储消息的列表
#List[dict]
# 2. 逐行读取文件
for line in file:
# 3. 解析 JSON 对象
data = json.loads(line)
# 4. 构建消息字典
message = {"role": data["role"], "content": data["content"]}
# 5. 将消息字典添加到对话列表
conversation.append(message)
# 输出整个对话列表
print(conversation)
# 现在,你可以将 `conversation` 用作 `messages` 参数,传递给 OpenAI GPT-3 API 请求。
輸出結果:
推薦hahow線上學習python: https://igrape.net/30afN