2022년 개발 연대기: 생성형 AI가 대화창을 열고 대규모 장애가 복원력을 묻다
ChatGPT 연구 프리뷰, GitHub Copilot 일반 제공, Stable Diffusion, Linux의 Rust 초기 지원, 국내 금융 마이데이터 전면 시행과 카카오 서비스 장애로 2022년의 개발 흐름을 살펴봅니다.
2022년에는 생성형 AI가 연구 결과와 제한된 demo를 넘어 일반 사용자가 직접 만지는 product로 들어왔다. GitHub Copilot은 기술 preview를 마치고 개인 개발자에게 일반 제공됐고, Stable Diffusion은 model weight를 공개해 개인 GPU에서도 text로 image를 만들 수 있게 했다. 11월 말 공개된 ChatGPT는 복잡한 prompt engineering을 몰라도 대화창에서 질문과 후속 요청을 이어가는 경험을 제공했다.
software의 기반도 새로운 선택지를 받아들였다. Linux 6.1은 memory safety를 강점으로 하는 Rust의 초기 지원을 mainline에 포함했다. 당장 kernel driver가 Rust로 대체된 것은 아니지만 C가 중심이던 가장 보수적인 project에서도 memory-safe language를 검토할 수 있는 문이 열렸다.
국내에서는 금융 마이데이터가 1월 5일 API 방식으로 전면 시행됐다. 반면 10월 판교 data center 화재로 카카오의 여러 service가 장시간 중단되며, data 복제만으로는 재해복구가 완성되지 않는다는 사실이 드러났다. monitoring, deployment, 인증 같은 운영 도구까지 다른 장애 영역에 있어야 실제 전환과 복구가 가능했다.
2022년을 보여주는 장면
| 분야 | 주요 변화 | 개발자에게 생긴 의미 |
|---|---|---|
| 대화형 AI | ChatGPT 연구 preview | 자연어 대화로 생성 model을 반복 사용하고 feedback하는 interface가 대중화 |
| AI 개발 도구 | GitHub Copilot 일반 제공 | AI code suggestion이 제한 실험에서 유료 개발 도구로 전환 |
| image 생성 | Stable Diffusion 공개 | 내려받을 수 있는 model weight로 image 생성 application 생태계 확산 |
| system programming | Linux 6.1에 Rust 초기 지원 | kernel code에서 C 외에 memory-safe language를 실험할 기반 마련 |
| 국내 금융 | 금융 마이데이터 전면 시행 | scraping을 금지하고 동의 기반 표준 API 전송으로 전환 |
| 국내 platform | 판교 data center 화재와 카카오 장애 | data center 단위 failover와 독립된 운영 도구·복구 훈련의 중요성 확인 |
GitHub Copilot, 기술 preview에서 일상 도구로
GitHub은 6월 21일 Copilot을 개인 개발자에게 일반 제공했다. 2021년 6월 제한된 기술 preview를 시작한 지 약 1년 만이었다. Visual Studio Code뿐 아니라 Visual Studio, JetBrains IDE와 Neovim에서도 extension으로 사용할 수 있었고, 당시 가격은 월 10달러 또는 연 100달러였다. 검증된 학생과 인기 open source project maintainer에게는 무료였다.
개발자는 comment와 함수 signature를 쓰고 구현 제안을 받아들이거나 여러 후보를 비교했다. 반복적인 test, data 변환과 낯선 language의 syntax 초안을 만드는 데 유용했다. 12월에는 organization의 license와 policy를 관리하는 Copilot for Business도 일반 제공됐다.
하지만 ‘AI pair programmer’라는 이름이 사람 동료와 같은 이해와 책임을 뜻하지는 않았다. suggestion은 실행되지 않은 text였고 존재하지 않는 API, 보안상 취약한 pattern이나 requirement와 다른 동작을 만들 수 있었다. code review와 test, static analysis의 책임은 개발팀에 남았다.
학습 data에 public repository가 포함된 데 대한 license와 attribution 논쟁도 계속됐다. private code를 어떤 조건으로 처리·보관하는지는 개인용과 business product의 policy가 달랐고 시간이 지나며 변경됐다. 2022년 당시의 계약과 privacy 조건을 현재 조건으로 소급해 설명해서는 안 된다.
Copilot의 일반 제공은 AI code generation이 흥미로운 demo에서 budget과 보안 policy, onboarding을 검토해야 하는 실제 개발 도구로 이동한 사건이었다. 팀은 생성된 code의 양보다 defect와 review cost를 포함한 전체 delivery 품질을 측정해야 했다.
Stable Diffusion, model weight가 창작 도구 생태계를 열다
Stability AI는 LMU Munich의 CompVis 연구진과 Runway 등의 협력을 바탕으로 8월 22일 Stable Diffusion을 공개했다. text prompt를 image로 바꾸는 latent diffusion model로, CreativeML Open RAIL-M license 아래 code와 model weight를 내려받아 사용할 수 있었다.
diffusion model은 noise에서 시작해 text condition에 맞는 image를 반복적으로 복원한다. Stable Diffusion은 pixel 공간 전체가 아니라 autoencoder가 압축한 latent 공간에서 이 과정을 수행해 계산량을 줄였다. 공개 당시 권장 model은 약 6.9GB VRAM으로 실행할 수 있어 고성능 개인 GPU 한 장에서도 image 생성이 가능했다.
사용자가 weight를 직접 실행할 수 있다는 점은 중앙 API만 제공하는 model과 다른 생태계를 만들었다. 개발자들은 web UI, plugin, fine-tuning, inpainting과 image-to-image workflow를 빠르게 만들었다. 11월에는 새 text encoder와 depth-to-image 등을 포함한 Stable Diffusion 2.0도 공개됐다.
접근성이 곧 안전성과 권리 문제의 해결을 뜻하지 않았다. training dataset에 포함된 image의 저작권과 creator 동의, 특정 style 모방, deepfake와 성적·폭력적 output이 논쟁이 됐다. 기본 safety classifier는 조정하거나 제거할 수 있었고 open weight 배포 뒤에는 중앙 제공자가 사용을 완전히 통제할 수 없었다.
2022년의 의미는 image 생성 품질만이 아니었다. foundation model을 application code와 함께 내려받고 변형하는 open ecosystem이 형성되면서 model card, license, dataset provenance와 output policy가 software dependency 검토의 새로운 항목이 됐다.
ChatGPT, prompt를 대화로 바꾸다
OpenAI는 11월 30일 ChatGPT를 무료 연구 preview로 공개했다. InstructGPT 계열의 sibling model로, dialogue format을 통해 후속 질문에 답하고 앞선 문맥을 이어가며 잘못된 전제를 지적하거나 일부 부적절한 요청을 거절하도록 훈련됐다.
기술적으로 갑자기 모든 능력이 처음 생긴 것은 아니었다. GPT-3와 instruction-following model, human feedback을 이용한 reinforcement learning 연구가 앞서 있었다. ChatGPT의 변화는 이를 일반 사용자가 별도 API code 없이 browser의 conversation UI에서 시험하고 feedback할 수 있게 만든 데 있었다.
개발자는 오류 message와 code를 붙여 원인을 묻고, 함수 초안을 요청한 뒤 test case나 다른 language version을 연속으로 요구할 수 있었다. 자연어가 search query뿐 아니라 iterative programming interface처럼 쓰이기 시작했다.
그러나 model은 근거가 없는 설명과 존재하지 않는 source·API를 자신 있게 생성할 수 있었다. 대화가 자연스럽다는 사실은 사실성이나 program correctness의 보증이 아니었다. secret, personal data와 proprietary code를 외부 service에 입력하는 문제도 조직의 data policy가 준비되기 전에 나타났다.
2022년 ChatGPT를 이후의 GPT-4나 plugin, web browsing, code execution 기능과 혼동해서는 안 된다. 공개 당시에는 연구 preview였고 알려진 한계와 safety weakness를 수집하려는 iterative deployment 단계였다. 그럼에도 conversation이 범용 AI의 대표 interface가 되는 출발점이었다.
Linux 6.1, kernel에 들어온 Rust의 첫 기반
Linux 6.1은 12월 공개되며 Rust support의 초기 infrastructure를 mainline에 포함했다. Rust는 ownership와 borrow checking으로 use-after-free, null pointer와 data race 같은 여러 memory safety bug를 compile 단계에서 줄이는 system programming language다.
kernel의 Rust 지원은 C code를 자동으로 바꾸거나 production driver를 즉시 제공한 것이 아니었다. build 설정, binding 생성, alloc과 kernel abstraction 등 개발자가 Rust module과 driver를 작성하기 위한 기초가 들어간 experimental 단계였다. 공식 문서도 당시 end user용 production module은 없다고 밝혔다.
Linux kernel은 hardware와 architecture, compiler version의 범위가 넓고 오랫동안 C 중심의 API와 관행을 쌓아왔다. Rust compiler와 language feature의 안정성, C API를 safe abstraction으로 감싸는 방법과 maintainer의 review 능력을 함께 마련해야 했다.
따라서 2022년을 ‘Linux가 Rust로 전환한 해’라고 부르면 과장이다. 정확한 의미는 memory-safe language가 mainline tree 안에서 실제 driver를 만들며 적합성을 검증할 공식 공간을 얻었다는 것이다. 이후 Android와 여러 vendor가 memory safety 취약점을 줄이기 위한 Rust driver 개발에 참여할 기반이 됐다.
국내: 금융 마이데이터의 전면 시행
금융 마이데이터는 2021년 12월 1일 시범 서비스를 거친 뒤 2022년 1월 5일 API 방식으로 전면 시행됐다. 당초 1월 1일 계획에서 연말연초 대응 인력과 전체 system 점검을 고려해 나흘 순연된 날짜다. 이날부터 마이데이터 사업자는 scraping 방식 대신 API로만 service를 제공해야 했다.
이용자는 마이데이터 application에서 여러 금융회사와 통신업체의 계좌, 대출, 카드 결제, 보험과 투자 정보를 선택하고 전송을 요구할 수 있었다. 1월 4일 기준 사업자별 연결 정보 제공자는 시범 초기 평균 약 20개에서 약 100개로 늘었고, 구 공인인증서뿐 아니라 인정된 사설인증서도 통합 인증에 활용됐다.
전면 시행은 417개 정보 제공자의 모든 data가 완전히 동일한 품질로 즉시 도착했다는 뜻은 아니었다. 공란 대신 임의값을 보내 발생한 오류처럼 schema 해석 차이를 고쳐야 했고, 일부 사업자는 이후 순차 참여했다. consent와 token 만료, provider별 latency, partial failure를 지속적으로 운영해야 했다.
마이데이터는 개인의 정보주권을 구현하는 동시에 더 많은 민감 data를 한 application에 모았다. 최소 권한, 전송 항목별 동의, 철회 시 token과 수집 data 처리, 침해 사고의 영향 범위를 엄격히 관리해야 했다. 편리한 통합 화면이 새로운 집중 위험이 되지 않도록 security architecture가 중요했다.
국내: 판교 data center 화재와 카카오 서비스 장애
10월 15일 오후 SK C&C 판교 data center의 lithium-ion battery에서 화재가 발생하고 전원 공급이 중단됐다. 이곳을 사용하던 카카오 server가 영향을 받으면서 카카오톡, 결제, mobility와 login을 포함한 여러 service에 장애가 발생했다. message 송수신 핵심 기능은 약 10시간 뒤 복구됐지만 모든 service가 원활해지기까지 약 5일이 걸렸다.
카카오가 사후 공개한 자료에 따르면 해당 data center의 server는 전체의 약 34%였다. database data는 여러 center에 분산돼 유실 없이 자동 또는 수동 전환됐지만, 일부 failover를 돕는 system이 같은 장애의 영향을 받아 전환이 늦어졌다. data를 복제한 사실과 service가 자동으로 계속된다는 사실은 같지 않았다.
monitoring과 분석 도구가 함께 멈춰 장애를 파악하기 어려웠고, 사내 인증·source 관리·deployment·wiki 같은 운영 도구도 일부가 data center 간 이중화되지 않았다. 특히 application build와 배포 도구가 판교 center 안에서만 이중화돼 복구 작업 자체를 지연시켰다.
사건은 availability zone이나 data center라는 장애 영역을 문서로만 나누는 것으로 충분하지 않음을 보여줬다. control plane, DNS, secret, monitoring, CI/CD와 communication channel까지 primary service와 독립적으로 작동해야 한다. 전환 절차를 평소에 실제로 훈련하지 않으면 manual failover도 사고 순간에는 동작하지 않을 수 있다.
카카오는 기존 center 간 이중화와 운영 도구 보완, cloud·platform 도구의 data center 단위 삼중화와 자체 data center 투자를 재발방지책으로 제시했다. 한 platform의 장애가 소상공인 영업과 교통·결제·인증에 연쇄 영향을 준 점은 software resilience가 개별 기업의 기술 지표를 넘어 사회 기반 시설의 문제임을 드러냈다.
2022년의 의미
2022년에는 생성형 AI의 interface와 배포 방식이 동시에 넓어졌다. Copilot은 editor에서 code를, Stable Diffusion은 local GPU에서 image를, ChatGPT는 대화창에서 text와 code를 생성했다. 개발자는 deterministic API뿐 아니라 확률적인 model output을 평가하고 safety·license·privacy를 관리하는 역할을 맡기 시작했다.
Linux의 Rust 지원은 기존 핵심 system에 memory safety를 점진적으로 도입하려는 긴 호흡의 변화를 보여줬다. 새 언어를 채택하는 일은 문법 선택이 아니라 toolchain, abstraction과 maintainer 생태계를 함께 만드는 과정이었다.
국내 마이데이터 전면 시행은 표준 API가 개인의 data 이동권을 실제 service로 바꾼 사례다. 판교 data center 화재는 복제본이 있어도 monitoring과 deployment 등 복구 수단이 같은 장애 영역에 있으면 recovery가 지연된다는 교훈을 남겼다. 2023년에는 GPT-4와 생성형 AI API가 product 개발 전반으로 빠르게 확산되는 동시에 AI의 신뢰성과 규제를 둘러싼 논의도 본격화된다.
참고 자료
- GitHub, GitHub Copilot is generally available to all developers
- GitHub, GitHub Copilot is generally available for businesses
- Stability AI, Stable Diffusion Public Release
- Stability AI, Stable Diffusion 2.0 Release
- OpenAI, Introducing ChatGPT
- Linux Kernel Documentation, Rust
- 금융위원회, API 방식 금융 마이데이터 전면 시행
- 카카오, 우리가 부족했던 이유
- 카카오, 우리의 재발 방지 계획
- 카카오, 데이터센터 화재 관련 비상대책위원회 출범