분류 전체보기 252

2025년의 AI: AI의 기초가 완성되는 해

원본2025년의 AI: AI의 기초가 완성되는 해세콰이어 캐피탈의 2025년 AI 업계 예상2024년은 AI의 “원시 수프(primordial soup)” 단계로, 새로운 아이디어와 가능성이 넘쳐났음."잠재력은 무궁무진하지만 아직은 무정형. 실체적이며 궁극적으로 영향력 있는 것으로 전환하려면 비전이 필요"2025년은 아이디어를 선별하여 실제로 구현하고 어떤 것이 효과적인지 검증하는 해AI의 가능성이 점차 구체적이고 실질적인 형태로 결집1. LLM 플레이어들의 차별화 전략2024년, GPT-4와의 품질 동등성을 목표로 한 경쟁에서 5개의 주요 플레이어가 남음:Microsoft/OpenAI, Amazon/Anthropic, Google, Meta, xAI.공통 전략: 방대한 데이터 수집, GPU를 활용한 대..

AI/AI News 2025.01.06

PostgreSQL 디스크 쓰기 지연 관련 설정

PostgreSQL에서는 WAL의 쓰기 동작을 조정하는 몇 가지 매개변수를 통해 유사한 효과를 낼 수 있다.이 값들을 통해 쓰기 성능을 개선할 수 있다. 단 이러한 설정 시, 재해 등으로 인해 데이터 손실 가능성이 생기게 된다. 다음은 관련 설정들이다:1. wal_writer_delayWAL Writer 프로세스가 디스크로 WAL을 기록하기 전에 대기하는 시간(밀리초)을 설정기본값: 200ms더 큰 값을 설정하면 쓰기 빈도가 줄어들어 디스크 I/O 부하를 줄일 수 있다.설정:SET wal_writer_delay = '500ms';2. wal_writer_flush_afterWAL Writer가 데이터를 디스크로 flush하기 전에 누적할 수 있는 최대 데이터 양(바이트)을 지정기본값: 1MB더 큰 값을 ..

DB/PostgreSQL 2025.01.05

Jetson에서 onnxruntime 사용 시 pthread_setaffinity_np failed 에러 해결하기

Nvidia 젯슨 플랫폼은 엔비디아에서 만든 엣지 디바이스 플랫폼으로 GPU를 엣지 디바이스에서도 사용하기 위한 프로젝트들을 위한 고성능 엣지 디바이스 플랫폼이다. 최근 Jetson 기기에서 onnxruntime을 사용해서 모델을 포팅하려던 중 다음과 같은 에러를 마주하게 되었다:2024-12-17 08:24:58.694297027 [E:onnxruntime:Default, env.cc:251 ThreadMain] pthread_setaffinity_np failed for thread: 531, index: 6, mask: {7, 39, }, error code: 22 error msg: Invalid argument. Specify the number of threads explicitly so th..

AI/Nvidia Jetson 2024.12.18

엔터프라이즈 아키텍처는 냉소적이어야 한다.

회사에 입사를 하고 많은 프로젝트들을 거치며 꾸준히 느끼는 바가 있는데, 기본적으로 엔터프라이즈 아키텍처는 냉소적이어야 한다는 것이다. 실제 세상에서 다양한 물리적 혹은 논리적인 이유로 시스템들은 에러를 마주하게 된다. 그 어떤 큰 기업에서 운영하는 시스템도 에러로부터 자유로울 수는 없다는 것은 확실하다. 엔터프라이즈 아키텍처는 이러한 현실에 냉소적일 수 있는 아키텍처여야만 한다. 다른 API나 모듈 또는 컴포넌트가 언제든 에러를 낼 수 있다고 의심하고, 그들이 주기적으로 에러를 낼 것이라는 가정 하에 스스로를 지킬 수 있는 방벽을 덕지덕지 세워 놓아야만 한다. 서킷브레이커 도입을 통해 장애 전파를 막고, try-catch 등을 통해 적절한 레이어에서 적절하게 에러 처리를 할 수 있도록 코드를 짜야 한다..

PostgreSQL Connection이 90분만에 끊어지는 상황 해결하기

네트워크 라우터의 TCP 연결 타임아웃과 Postgres keep-alive 설정에 대한 흥미로운 사례를 공유하고자 한다.부제는 "Cisco와 Windows의 조합으로 만들어진 혼돈" 정도로 하고자 한다. 문제 상황Windows 환경에서 Postgres 클라이언트와 DB 서버를 사용하던 중, 90분이 지나면 연결이 끊어지는 현상이 발생했다. 이 문제를 해결하기 위해 Cisco 공식 문서를 찾아보면서 원인을 파악할 수 있었다.라우터의 연결 상태 관리 방식라우터는 로컬 상태 테이블에서 연결들을 추적하며, 이를 통해 라우팅 결정을 내리고 유효하지 않은 패킷을 필터링한다. 이 상태 정보는 다음과 같은 경우에 제거된다:양쪽 중 한 쪽이 연결을 종료할 때연결이 너무 오랫동안 유휴 상태일 때 (클라이언트와 서버가 모..

DB/PostgreSQL 2024.11.29

AI 데이터 인프라의 부상

문서에서 정보를 추출하는 것은 새로운 개념은 아님. 하지만 생성형AI(GenAI)는 대량의 고품질 데이터를 필요로 함훈련과 추론 모두에 데이터가 중요하며 데이터 규모뿐만 아니라 텍스트, 테이블 데이터에서 비디오, 이미지, 오디오로 확장됨위성 이미지, 로봇 센서 데이터 등 공간 데이터의 증가도 관찰됨데이터 계층에서 AI로 인해 가장 즉각적으로 재창조될 수 있는 새로운 영역은 무엇일까?비정형 데이터 추출과 파이프라인, 검색 증강 생성 (Retrieval-Augmented Generation, RAG), 데이터 큐레이션, 데이터 스토리지 , - 인공지능 메모리이 글의 목적은 AI 데이터 인프라 환경을 분석하고, 최신 트렌드를 공유하고, 가장 유망한 혁신 영역에 대해 이야기 하는 것AI 데이터 인프라 현황AI ..

AI/AI News 2024.11.25

NVIDIA garak - LLM 취약점 스캐너

Garak은 LLM 기반 시스템의 취약점을 찾기 위해 개발된 무료 도구주로 LLM의 오작동과 보안 문제를 검사하며, nmap의 LLM 버전이라 할 수 있음다양한 정적, 동적, 적응형 탐침(probes)을 사용하여 LLM의 여러 취약점을 탐색Garak의 주요 기능LLM의 실패 지점 확인: 잘못된 정보 생성, 데이터 유출, 프롬프트 인젝션, 독성 생성, 제일브레이크(jailbreak) 등 여러 약점을 탐색다양한 프로빙 기법 사용: 수십 개의 플러그인과 수많은 탐침을 통해 다양한 LLM 실패 모드를 분석로그 기록: 각 실패 사례에 대해 프롬프트, 목표, 응답을 포함한 상세한 로그 제공지속적인 업데이트: 커뮤니티의 기여로 새로운 탐침이 추가되고 기존 탐침이 개선되며, 테스트 범위가 지속적으로 확대Garak의 주..

AI/AI News 2024.11.19

벡터 데이터베이스는 잘못된 추상화임

AI 애플리케이션을 구축하려는 엔지니어링 팀을 괴롭히는 메시지 : "임베딩이 다시 동기화되지 않았습니다"간단한 벡터 검색 구현은 모니터링, 동기화 및 문제 해결의 복잡한 오케스트라로 발전함벡터 데이터베이스로 AI 시스템을 구축하는 엔지니어링 팀과 이야기를 나눈 결과, 벡터 데이터베이스의 잘못된 추상화와 오늘날 사용 방식의 결함을 발견함"RAG 시스템을 구축하는 공통적인 사례"Pinecone을 벡터 데이터베이스로 사용하여 임베딩을 저장하고 검색함텍스트 데이터가 Pinecone의 메타데이터에 잘 맞지 않아 DynamoDB로 블롭과 애플리케이션 데이터를 처리함어휘 검색을 위해 OpenSearch가 필요했음 이제 3개의 시스템을 연결하고 동기화하는 것이 악몽임소스 문서를 삭제할 때 다음을 수행해야 함:boto3..

DB/Vector DB 2024.11.05

Rate Limiter 시스템 디자인 및 설계 방안

Token Bucket토큰 버켓의 경우 사전에 정해진 용량을 갖는다. 토큰은 주기적으로 사전에 설정된 비율로 버켓에 저장된다. 그리고 버켓이 꽉차게 되면 정해진 용량을 초과하여 토큰을 추가하지 않는다.각 API 요청은 1개의 토큰을 사용한다. 요청이 오면 버켓에 적어도 1개의 토큰이 존재하는지 확인한다. 존재하는 경우 1개의 토큰을 버켓에서 꺼내고 요청이 처리된다. 버켓이 비어있는 경우 요청들은 버려진다.   위 사진을 보면 유저마다 분당 3개의 요청량 제한이 설정되어있다.1번 유저가 10:00:00에 첫 번째 요청을 보냈을 때 토큰은 3개가 존재하므로 해당 요청은 정상 처리되며 잔여 토큰은 2개로 감소한다.10:00:10에 유저의 두 번째 요청이 오고 토큰은 2개가 존재하기 때문에 정상 처리되며 잔여 ..

GPT-4o는 이미지를 어떻게 인코딩할까?

GPT-4o는 이미지를 어떻게 인코딩할까? GPT-4o는 고해상도 모드에서 사용되는 각 512x512 타일을 처리하는 데 170 토큰을 부과함. 약 0.75 토큰/단어의 비율로 보면 이는 그림 한 장이 약 227 단어와 같다는 것"그림 한 장이 천 마디 말보다 낫다"는 말과 비교했을 때 약 4배 차이임170이라는 숫자는 기괴할 정도로 특이한 숫자임. OpenAI는 가격 책정에서 "20달러" 또는 "0.50달러"와 같은 반올림된 숫자나 내부 차원에 2와 3의 거듭제곱을 사용함170과 같은 숫자를 선택한 이유는 무엇일까? 프로그래밍에서 코드베이스에 설명 없이 그냥 던져진 숫자를 "매직 넘버"라고 하는데, 170은 상당히 눈에 띄는 매직 넘버임이미지 비용을 토큰 수로 변환하는 이유는 무엇일까? 단순히 청구 목..

AI/LLM 2024.07.27