Swift 6의 수수께끼 같은 `@isolated(any)`: 알아야 할 사항

2025-09-01
Swift 6의 수수께끼 같은 `@isolated(any)`: 알아야 할 사항

Swift 6은 비동기 함수의 격리를 설명하는 `@isolated(any)` 속성을 도입했지만, 처음에는 혼란스러울 수 있습니다. 항상 인수가 필요하지만, 이 인수는 변경할 수 없습니다. 이 글에서는 도입 이유를 설명합니다. 비동기 함수 스케줄링 중에 격리 정보가 손실되는 문제를 해결하기 위해서입니다. `@isolated(any)`는 함수의 격리 속성에 대한 액세스를 제공하여 보다 스마트한 스케줄링을 가능하게 합니다. 특히 `Task`와 `TaskGroup`을 처리할 때 MainActor에서 작업의 실행 순서를 보장합니다. 대부분의 경우 무시해도 되지만, 비동기 함수의 격리 및 스케줄링을 다룰 때 `@isolated(any)`를 이해하는 것은 효율적이고 안정적인 동시 실행 코드를 작성하는 데 필수적입니다.

더 보기

확실성에 작별을 고하다: Swift의 확률적 프로그래밍

2025-08-29
확실성에 작별을 고하다: Swift의 확률적 프로그래밍

이 글에서는 Swift에서 불확실한 데이터를 처리하는 새로운 방법인 Uncertain를 소개합니다. 이는 확률을 형식 시스템에 직접 인코딩하여 GPS 좌표의 부정확성과 같은 문제를 우아하게 해결합니다. 확률 분포와 몬테카를로 샘플링을 사용하여 개발자는 실제 세계의 불확실성을 더 정확하게 모델링하고 더 강력하고 신뢰할 수 있는 애플리케이션을 구축할 수 있습니다. 이 글에서는 Uncertain를 기반으로 하는 Swift 라이브러리를 제공하고 다양한 확률 분포를 처리하고 통계 분석을 수행하는 방법을 보여주는 예제를 포함합니다.

더 보기

Ollama를 사용하여 Mac에서 로컬로 LLM 실행하기

2025-02-16
Ollama를 사용하여 Mac에서 로컬로 LLM 실행하기

Apple은 WWDC 2024에서 Apple Intelligence를 발표하고 "우리를 위한 AI"를 약속했지만, 실제 출시는 아직 멀어 보입니다. 반면 Ollama를 사용하면 llama3.2와 같은 대규모 언어 모델(LLM)을 Mac에서 로컬로 실행할 수 있습니다. "LLM을 위한 Docker"라고 생각하면 됩니다. 모델을 가져오고, 실행하고, 관리하기가 쉽습니다. llama.cpp 기반의 Ollama는 Modelfiles를 구성에, OCI 표준을 배포에 사용합니다. 로컬로 모델을 실행하면 개인 정보 보호, 비용, 지연 시간, 안정성 측면에서 이점이 있습니다. Ollama는 HTTP API를 제공하여 Nominate.app처럼 애플리케이션과의 통합을 용이하게 합니다. Nominate.app은 지능적인 PDF 파일 이름 변경에 사용됩니다. 이 글에서는 Apple의 약속을 기다리는 대신 Ollama를 사용하여 차세대 AI 기반 애플리케이션을 지금 바로 개발할 것을 권장합니다.

더 보기
개발