Ch.2 Python 첫걸음 — 데이터를 다루다

딕셔너리와 JSON — AI 학습 데이터 형식

JSON 포맷의 구조를 이해한다json.loads()로 JSON 문자열을 파싱할 수 있다

AI 학습 데이터는 어떤 형태일까?

GPT를 학습시키려면 수십억 줄의 텍스트가 필요합니다. 이 데이터는 보통 JSONL(줄마다 JSON) 형태로 저장됩니다.

텍스트 파일도 아니고 엑셀도 아닌 JSON이 뭐지?

JSON — 프로그래밍 세계의 만국 공통어입니다.


article

핵심 내용

ChatGPT에게 메시지를 보내면, 내부적으로 JSON 형태로 전달됩니다. `{"role": "user", "content": "안녕"}` — 이것이 AI API의 기본 언어죠. AI 학습 데이터도, API 요청/응답도 전부 JSON입니다. 딕셔너리를 아는 것이 곧 AI 데이터를 아는 것입니다.

JSON은 데이터를 표현하는 만국 공통어입니다

{
  "text": "Python은 쉽다",
  "label": "programming",
  "score": 0.95,
  "tags": ["python", "beginner"]
}

json.loads()로 JSON 문자열을 Python 딕셔너리로 변환합니다

import json

# JSONL 형식의 학습 데이터 (한 줄에 하나의 JSON)
jsonl_data = """{"text": "Python은 쉽다", "label": "programming"}
{"text": "AI가 세상을 바꾼다", "label": "ai"}
{"text": "", "label": "empty"}
{"text": "딥러닝 모델 학습", "label": "ai"}"""

# 각 줄을 파싱
for line in jsonl_data.strip().split("\n"):
    item = json.loads(line)
    if item["text"]:  # 빈 텍스트 필터링
        print(f'[{item["label"]}] {item["text"]}')

JSONL 포맷은 어떤 특징이 있는가?

딕셔너리에서 존재하지 않는 키를 조회하면 에러가 발생한다

JSON 데이터

edit_note

정리 노트

딕셔너리와 JSON — AI 학습 데이터 형식

JSON 기본

JSON
키:값 쌍으로 구성된 데이터 포맷 — 프로그래밍의 만국 공통어
JSONL
한 줄에 하나의 JSON 객체 — AI 학습 데이터 표준 포맷
json.loads()
JSON 문자열을 Python 딕셔너리로 변환

딕셔너리 핵심

키 접근
data["key"] — 존재하지 않는 키는 KeyError 발생
안전한 접근
data.get("key", 기본값) — 키 없으면 기본값 반환
키 유일성
같은 키로 값을 넣으면 마지막 값으로 덮어쓰기

ChatGPT API 요청/응답도 전부 JSON — 딕셔너리를 아는 것이 곧 AI 데이터를 아는 것!

image

시각 자료

다이어그램: py-scene-dict-json
check_circle

핵심 정리

  • 1JSON = 키:값 쌍으로 구성된 데이터 포맷
  • 2JSONL = 한 줄에 하나의 JSON
  • 3json.loads()로 파싱

퀴즈와 인터랙션으로 더 깊이 학습하세요

play_circle인터랙티브 레슨 시작