|
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다." 벡터 데이터베이스 국내 1호책 RAG 구축과 관련된 국내 도서와 강의를 보면 유독 벡터 데이터베이스에 대한 내용이 간단하다. 벡터 데이터베이스와 관련해서 ChromaDB, pgvector, FAISS, Qdrant, Milvus, Pinecone, Weaviate 등의 이름을 들어봤고, Redis, MongoDB, ElasticSearch에서도 지원한다는 얘기는 들은 적이 있다. ChromaDB, Qdrant 작업을 하기 위해서 공식 사이트에 방문하여 사용법을 익혔지만, 벡터 데이터베이스의 핵심 요소인 임베딩과 인덱스에 대한 설명은 제대로 찾을 수 없었다. 사실은, 제대로 이해하려고 접근한 적이 없었다. 이 책은 벡터 데이터베이스 관점에서 작성된 국내 1호책이다. 임베딩의 역사와 FAISS 인덱스, 양자화, ANN, HNSW 인덱스 이해하기까지 벡터 데이터베이스의 이론을 자세히 설명한다. 이어서 실습으로 SQLite—vss, PostgreSQL pgvector로 검색 시스템 및 RAG 시스템을 구축하는 예제를 설명한다. 마지막에는 벡터 쿼리 언어를 제안한다. 책에서 소개하는 예제는 운영 환경에 바로 적용할 수 있는 완성된 레시피가 아니라 예제를 통해 핵심 개념을 잘 설명하고 있다. 또한 예제의 한계점을 얘기하고 개선할 수 있는 아이디어를 각 장의 말미에 언급한다. 설명하는 내용은 벡터 데이터베이스의 스키마 설계부터 PDF 전처리, 배치 처리, 하이브리드 검색, Ollama를 통한 답변 생성, 도커 패키징, 검색 시연까지 운영 시스템의 전과정을 총망라하고 있다. 벡터 데이터베이스는 SQL처럼 표준이나 추상화된 개념이 없어서 벤더별로 커스터마이징해야 할 요소들이 있는데, 마지막 장에서 VQL을 제안한 것이 인상적이다. |
|
모든 기술의 청사진은 해당 기술을 통해 서빙하고 자 하는 데이터의 형태를 통해 이해할 수 있다. 불과 15년 전까지만 해도, AI를 통해 할 수 있는 업무의 형태는 지금과 사뭇 달랐다. 당시에는 mySql, mariaDB와 같은 RDB가 서비스 구성의 대부분을 전담하고 있었고, 그런 중에 no-sql이 등장했으니 말이다. 하지만, "알파고"가 등장하고 AI가 더욱 주목받기 시작하면서 기존의 DB 패러다임으로는 고도화된 AI를 대응하기에 한계가 있음을 연구자들은 깨닫게 되었다. 하여 새로운 DB의 필요성이 주목받기 시작했고 이후, 다양한 DB가 탄생과 소멸을 거듭하여 지금의 vector 기반의 데이터베이스에 이르게 되었다. 이처럼, DB의 형태는 기술의 발전 방향에 따라, 그 목적에 따라, 변화하고 발전해 왔다. 또한 그 변화는 점점 인간의 사고하는 방식 / 판단하는 방식을 닮아가고 있다. 따라서 지금의 DB의 본질과 형태를 제대로 이해하고 사람의 생각의 흐름과 작동 방식을 이해한다면 앞으로 발전해갈 AI의 방향과 DB의 형태를 충분히 가늠할 수 있을 것이라 생각된다. 【책 내용 요약】 이 책은 Vector DB의 탄생 배경/형상 그리고 Vector DB가 근본적으로 기존 RDB 와 무엇이 다른지, 동작 방식에서는 어떤 차이가 있는지에 대해서 설명하고 있다. 뿐만 아니라, 실무에서 자주 사용하는 PostgresSQL과 SQLite3 등, 개발자라면 한 번쯤 사용했을 법한 DB를 통해 예시 코드를 제공하고 있기에 학습하는 데에 있어 큰 어려움이 없을 것이라 예상된다. 구성은 아래와 같다. - 배경 설명 - 배경에 근거가 되는 이론 / 코드 제시 - 코드의 라인별 혹은 기능별 리뷰 - 결론 요약 또한 이 책은 AI의 본질인 DB의 성질과 그 원리에 대해서 다양한 예시를 통해 독자의 이해를 돕고 있다. 따라서 이 책을 정독한다면 기본적인 AI의 Embedding, RAG 나아가 Vector DB에 관해 AI 중급자 이상의 지식을 쌓을 수 있다. 【 벡터 데이터베이스를 읽고 나서 】 모든 서비스는 DB에서 시작된다고 봐도 무방하다. RDB의 경우, DB의 관계도를 보면 서비스가 추구하는 방향과 스펙을 대략적으로 가늠할 수 있기 때문이다. 마찬가지로 AI도 동일하다. DB의 형상과 동작 방식을 이해한다면 AI가 근본적으로 어떻게 동작하고 최종적으로 어떤 형태로 데이터를 서빙하고 사람에게 다가가고자 하는지 그 이유와 취지를 이해할 수 있게 된다. 하지만 AI가 고도화됨에 따라, 아이러니하게도 이런 기초 학문 / 기초 지식에 대해서 많은 이들이 등한시하는 경향이 나타나고 있다. 왜냐하면 AI에게 물어보면, 혹은 마우스로 딸칵하면 모든 게 해결될 것이라는 AI를 향한 맹신적 믿음이 있기 때문이다. 이러한 맹신적 믿음은 AI에 대한 객관적 판단뿐만 아니라, 개인 스스로에게도 판단을 흐리게 하고 나아가 스스로의 주체성을 무너트리는 단초가 될 가능성이 크다. 따라서 이럴 때일수록 더욱더 스스로 학습하고 깨닫는 자세가 필요하다. AI는 도구일 뿐, 판단의 주체가 될 수 없다는 것을 절대로 잊어선 안된다. #본 도서는 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다. |
"한빛미디어 서평단 <나는 리뷰어다> 활동을 위해서 책을 협찬받아 작성된 서평입니다."이 책에서 좋았던 점1. 특정 기술의 사용법보다 원리를 설명한다개인적으로 이 부분이 가장 마음에 들었다. RAG나 벡터 데이터베이스를 공부할 때 보통은 특정 라이브러리나 서비스를 사용하는 방법부터 접하게 된다. 예를 들어 문서 → 임베딩 → 벡터 DB 저장 → 검색 → LLM정도의 흐름은 알 수 있지만, 막상 왜 벡터로 바꾸는지, 유사하다는 것을 어떻게 판단하는지, 검색 속도를 높이기 위해 인덱스를 왜 사용하는지까지 들어가면 조금 추상적으로 느껴질 수 있다. 이 책은 이런 부분을 직접 코드로 구현하면서 설명한다. Word2Vec이나 Doc2Vec 같은 임베딩 방식부터 시작해서 벡터 간 유사도를 계산하고, 검색과 인덱싱이 어떤 식으로 연결되는지를 단계적으로 다룬다. 단순히 "이 API를 호출하면 된다"가 아니라 그 API 내부에서 어떤 일이 일어나는지를 이해하는 데 초점이 맞춰져 있다. 개발 공부를 할 때도 라이브러리를 사용하는 것과 내부 원리를 이해하는 것은 꽤 차이가 있다고 생각하는데, 그런 관점에서 읽기 좋았다. 2. 로컬 환경에서 직접 따라 해볼 수 있다또 하나 좋았던 점은 실습 환경이 비교적 부담스럽지 않다는 것이다. 대규모 클라우드 환경이나 비싼 서비스를 준비하지 않아도 SQLite와 PostgreSQL을 이용해서 직접 실습할 수 있다. 여기에 pgvector, FAISS, Ollama 등을 활용하면서 점점 실제 RAG 시스템에 가까운 형태로 확장한다. 개인적으로 이런 방식의 책을 좋아하는 편이다. 처음부터 거대한 시스템을 보여주는 것보다 작은 예제를 직접 만들어보고, 임베딩 ↓ 벡터 저장 ↓ 유사도 검색 ↓ 검색 결과 활용 ↓ RAG 이런 식으로 하나씩 확장해가는 편이 전체 구조를 이해하기 쉽기 때문이다. 3. 단계적으로 난이도가 올라간다처음부터 RAG 시스템을 만들어보는 것이 아니라, 먼저 임베딩과 시맨틱 검색에 대한 기본적인 내용을 다룬다. 그 다음 SQLite를 이용한 검색부터 시작해서 PostgreSQL과 pgvector, FAISS 등을 활용하고, 이후에는 실제 논문 데이터를 검색하는 시스템과 Ollama를 이용한 RAG 시스템까지 확장한다. 그래서 책을 따라가다 보면 처음에는 단순한 벡터 검색이었던 것이 점점 하나의 AI 애플리케이션으로 발전하는 과정을 볼 수 있다. 개인적으로는 이 부분이 책의 구성이 잘 되어 있다고 느꼈다. 이런 사람에게 잘 맞을 것 같다
특히 이미 개발 경험이 있는 사람이라면 코드를 직접 따라가면서 읽는 방식이 잘 맞을 것 같다. 읽어보고 느낀 점책을 읽으면서 가장 기억에 남았던 것은 LLM 자체만큼 어떤 데이터를 어떻게 가져와서 전달하느냐도 중요하다는 점이었다. LLM이 아무리 좋은 모델이라고 하더라도 질문에 필요한 정보가 컨텍스트로 제대로 전달되지 않으면 원하는 답변을 만들기 어렵다. 결국 RAG는 단순히 LLM 앞에 검색 기능 하나를 붙이는 것이 아니라, "사용자의 질문과 관련된 데이터를 얼마나 잘 찾아서 LLM에게 전달할 수 있는가" 에 대한 문제라고 볼 수 있을 것 같다. 평소에는 벡터 검색을 하나의 추상화된 기능처럼 생각했는데, 책을 통해 임베딩부터 유사도 계산, 인덱싱, 검색, 그리고 RAG까지 이어지는 과정을 직접 따라가면서 전체 구조를 조금 더 구체적으로 이해할 수 있었다. 특히 특정 벡터 DB 제품의 사용법을 외우는 방식이 아니라 벡터 검색 자체의 동작 원리를 먼저 이해한다는 점이 좋았다. AI 관련 기술을 공부하면서 RAG나 벡터 데이터베이스가 정확히 어떤 방식으로 동작하는지 궁금했던 사람이라면 한 번쯤 읽어볼 만한 책이라고 생각한다. |
|
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬받아 작성된 서평입니다." 부제 : SQLite, PostgreSQL로 직접 만드는 시맨틱 검색과 RAG
AI를 활용한 어플리케이션이 많이 개발되고 있습니다. 클로드, 코덱스의 API를 활용하는 기술을 통해서 개발하고, RAG, MCP 등을 통한 실시간 데이터를 활용한 개념을 도입하려고 할때 항상 나오는 것이 벡터 테이터베이스 입니다.
그러면 기존에 있는 데이터베이스와 어떤 차이를 가지고 있는 것일까요? 벡터에 대한 구조를 저장할 수 있는 데이터 베이스는 무엇이 있고, 기존 일반적인 RDBMS와의 차이는 무엇인지 살펴보고 AI개발시 어떠한 부분을 고려해야 하는지 알아볼수 있는 책입니다. 정확히 알고 벡터 데이터베이스를 사용해야 하는 시점에 필요한 책이 출간 된것 같습니다.
■ 벡터DB란 무엇일까? · 말을 풀어보면 벡터의 요소를 저장하는 database를 의미합니다. 그러면 벡터의 요소를 어떻게, 어디에 저장이 가능할가요? 책의 부제목처럼, SQLite, PostgreSQL 을 활용해서 데이터를 저장하는 방식을 구성합니다. 우선 우리가 일반적으로 아는 텍스트 형태의 정보말고 벡터의 의미를 정확히 이해해야 할것 같습니다. 그리고 책에서 주로 살펴보것은 왜 AI시대에 벡터DB가 중요하고, 무엇을 해결하기 위해서 벡터 DB를 이시점에 이용해야 하는지 이해하고 어떻게 활용할수 있을지 이해하는 것이 중요할것 같습니다. · 결국 AI시대에서도 핵심은 데이터 이고, 기술적인 핵심은 임베딩 방식입니다. 이제 이책을 통해서 명확히 이해를 시작해봅니다.
<책의 대상 독자>
<관련 저장소>
■ 벡터 DB알아보기 (1장~3장) · 기존 방식은 비정형 데이터에 대해서 BLOB으로 저정하거나, 파일에 직접 저장한 뒤 관계형 데이터베이스에서 파일 저장 위치를 가르키는 방식으로 구성했습니다. 저장은 하고 있지만, 효율적으로 사용하기 힘든 구조 입니다. · 새로운 데이터 타입인 벡터를 구성하고, PostgreSQL에서 확정 시스템 타입을 새로 추가해서, pgvector확장이 VECTOR타입 컬럼을 생성하는 기능을 제공합니다. · 유사도 검색기능 단순히 정렬된 부동 소수점 수의 집합을 저장하고 조회하는 방식에서 VECTOR타입을 구별해 주는 핵심 요소입니다. 이 기능 덕분에 주어진 텍스트와 의미상 유사한 텍스트를 찾을수 있습니다. · 임베딩에 대해서 구조화되지 않은 데이터를 청크 단위로 나누어 백터, 부동소수점 수 목록으로 매핑하는 과정입니다. 이러한 매핑은 단어나 문장이 사용된 문맥을 보존합니다. 의미가 가까까운 단어들은 벡터 공간에서 서로 가까운 위치의 벡터로 매핑됩니다. 3장에서 임베딩에 대해서 더욱 구체적으로 다룹니다. 그것을 이해해야지 벡터DB를 더 잘 활용할수가 있습니다. Word2Vec를 통해서 기술적인 활용도가 높아진 벡터의 동작원리를 파악하고, 오늘날까지 기술의 혁신이 된 부분을 확인합니다. Doc2Vec을 통해서 단어에서 문서를 활용하기 위한 방식, 희소 임베딩, 밀집 임베딩을 살펴보고 Word2Vec와 Doc2Vec이 정적 벡터 표현을 제공했다면, 현대 LLM의 핵심인 트랜스포머 아키텍처를 통해서 대규모 동적으로 조작하고 생성합니다. BERT와 같은 인코더 전용 트랜스포머, GPT계열의 디코더 전용 트랜스포머에 대해서 설명하면서 기본적으로 딥러닝 내용에서 언급하고 설명할 사항일 벡터DB가 왜 필요할지, 우리는 어떻게 활용해야 할지 이해할수 있습니다.
· 최근접 이웃검색 등 벡터DB가 어떻게 검색되고 동작하는지 원리를 살펴봅니다.
· 기존 RDBM에서 처리하기 힘든 부분과 차이점, NO-SQL을 통해서 해결시도 등에 대해서 다룹니다. NO-SQL을 통해서도 시도는 해보았지만, 벡터정보를 처리하기 하기에는 어려움이 있습니다.
· RAG 파이프라인 - 기본 python코드로 구성 및 sentence-transformers 라이브러리를 이용해서 구현 실습합니다.
·FAISS(Facebook AI Similarity Search)는 대규모 고차원 밀집 벡터(dense vector)의 유사도 검색과 클러스터링을 아주 빠르게 처리하기 위해 페이스북에서 개발한 오픈소스 라이브러리입니다. https://github.com/facebookresearch/faiss FAISS를 이용해서 벡터DB를 실습하고 연습합니다. 오픈소스 아키텍처를 하나하나 살펴보고, 동작 원리를 살펴봅니다. 벡터구성을 어떤 식으로 알고리즘 적용하는 것을 하나하나 분석합니다.
■ SQLite3와 PostgreSQL을 사용한 어플리케이션 구축 (4장~8장) · SQLite를 이용해서 SQL인터페이스와 벡터유사도 검색을 결합해 키워드가 아니라 의미를 기준으로 검색하는 방법을 파악합니다. FAISS를 래핑한 SQLite확정인 sqlite-vss를 사용해서 벡터 검색을 관계형 데이터베이스 환경에 통합합니다.
· 개발환경을 구성해서 코드적으로 실습을 진행하게 구성되어 있습니다. - DB생성을 통한 테이블 구성을 진행하고, 스카마 설계를 결정 합니다. - 데이터 구성은 캐글 레딧 댓글 데이터셋에서 로컬 지식 베이스용 레코드 추출하여서 CSV파일을 로컬 데이터 소스로 활용합니다. 실제 예제를 동작시키면서, 의미기반 검색을 동작시켜 봅니다.
· PostgreSQL pgvector로 arXiv 논문 검색 시스템 구축하기 · SQLite VSS와 Ollama로 검색 증강 생성 시스템 구축하기 · PostgreSQL과 pgvector로 과학 논문 RAG 시스템 구축하기
· PostgreSQL을 통해서는 pgvector를 활용하여서 arXiv 논문검색 및 과학논문 RAG 시스템을 구축합니다. - 시스템 구성 아키텍처는 아래와 같습니다.
- 세부적인 데이터의 흐름도는 아래와 같습니다. - 디렉토리 구성은 아래와 같이 개발을 진행합니다.
엔티티구성을 통한 데이터베이스 설계를 진행하고, 벡터 저장 및 인덱싱 전략을 적용합니다. PDF의 텍스트를 추출하고 처리합니다. 임베딩 생성 및 저장을 통해서, 유사도 구현까지 진행을 진행합니다.
배포에 대한 부분도 도커 / ks8을 통해서 실제 서비스 구현 레벨까지 구현합니다.
· SQLite을 통해서 VSS와 Ollama을 이용해서 검색 증강 생성 시스템을 구축해봅니다. - 테스트용 로컬 LLM 실행 환경으로 Ollama을 이용합니다. RAG용 스키마 생성 후, 검색 인덱싱 생성을 효율적으로 진행하기 위해서 2가지 생성합니다. 임베딩을 사용한 컨텐츠를 저장하고, Ollama API를 연동합니다. 이것을 통해서 RAG 파이프라인을 구축합니다. 모든 구성요소가 하나로 이어집니다. |
|
|
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬받아 작성된 서평입니다." 예전의 검색은 단순했습니다. 정확한 단어를 넣으면 그 단어가 든 문서가 나왔고, 틀리게 넣으면 못 찾는 게 당연했습니다. 지금은 좀 다릅니다. 표현을 조금 다르게 써도 의도를 알아듣고, 수많은 문서와 이미지 사이에서 맥락상 가장 가까운 것을 꺼내 주기를 기대하죠. 검색에 대한 우리의 기준 자체가 올라간 셈입니다. 한빛미디어의 [벡터 데이터베이스]는 그 기대를 실제로 구현하는 기술을 개념부터 코드까지 한 줄로 이어서 설명하는 책입니다. 생성형 AI와 RAG가 빠르게 현장으로 들어오는 지금, 이 책은 새로운 데이터베이스 하나를 소개하는 데서 멈추지 않습니다. AI가 데이터를 '의미'로 다룬다는 게 무슨 뜻인지, 그걸 서비스로 만들려면 무엇을 준비해야 하는지까지 짚어 줍니다. 기술이 빨리 바뀔수록 용어를 외우는 일보다 그 기술이 풀려는 문제가 무엇인지 아는 게 중요합니다. 알고 쓰는 것과 모르고 쓰는 것은 결과가 완전히 다르니까요. 이 책은 딱 그 지점에서 출발합니다. 왜 하필 벡터일까 기존 데이터베이스와 키워드 검색은 정확한 문자열을 찾는 데 아주 강합니다. 문제는 사람의 말이 그렇게 단순하지 않다는 것이죠. '배'가 과일인지 선박인지는 앞뒤 문맥이 정합니다. 비슷한 분위기의 이미지를 찾는 일, 단어는 다르지만 같은 주제를 다루는 문서를 찾는 일도 마찬가지고요. 사용자가 원하는 건 자기가 친 문장이 그대로 들어간 결과가 아니라, 질문의 의도에 가장 가까운 답인 경우가 많습니다. 벡터 데이터베이스는 텍스트와 이미지, 오디오 같은 비정형 데이터를 숫자 벡터로 바꾸고, 그 사이의 거리와 유사도로 의미가 가까운 정보를 찾아냅니다. 이 책은 왜 이런 변화가 필요했는지부터 차근차근 설명해서, '벡터'를 낯선 용어가 아니라 문제를 푸는 도구로 받아들이게 만듭니다. 이론과 실습 사이가 비어 있지 않다 가장 좋았던 점은 개념과 코드가 끊기지 않고 이어진다는 것입니다. 벡터 데이터베이스가 왜 필요한지, SQL·NoSQL과는 어떤 관계인지, 정형 데이터와 벡터 데이터를 함께 다루는 하이브리드 방식은 무엇인지를 먼저 정리한 뒤 임베딩과 유사도 검색으로 넘어갑니다. 실습도 계단이 자연스럽습니다. FAISS로 검색을 해 보고, SQLite3 기반의 의미 검색을 만들고, PostgreSQL의 pgvector로 arXiv 논문 검색 시스템까지 올립니다. 이어서 SQLite VSS와 Ollama를 묶은 검색 증강 생성 시스템, pgvector 기반 과학 논문 RAG 시스템, 그리고 완전한 대화형 검색 및 RAG 시스템까지 다룹니다. 덕분에 독자는 개념만 읽고 덮는 게 아니라, 데이터를 준비하고 저장한 뒤 검색 결과를 생성형 AI의 답변으로 연결하는 전 과정을 직접 따라가 보게 됩니다. 처음 보는 사람에게는 학습 순서가 되고, 이미 AI 서비스를 만져 본 사람에게는 내 프로젝트에서 뭘 빠뜨렸는지 확인하는 체크리스트가 됩니다. 결국 승부는 검색에서 납니다 이 책을 권하는 가장 큰 이유는 따로 있습니다. AI를 잘 쓰는 사람과 아닌 사람의 차이는 모델을 호출하는 능력이 아니라, 필요한 데이터를 찾아 알맞은 맥락으로 넘겨주는 능력에서 갈리기 때문입니다. 답을 잘하는 챗봇, 사내 지식을 찾아 주는 업무 도우미, 논문과 보고서를 뒤지는 서비스. 전부 믿을 만한 검색 기반이 있어야 돌아갑니다. 모델이 아무리 뛰어나도 엉뚱한 문서를 근거로 답하면 사용자는 금방 등을 돌리니까요. 그래서 이 책은 RAG를 데모 수준에서 끝내지 않습니다. 저장과 검색은 물론이고 접근 제어, 백업과 복구, 파티셔닝처럼 실제 운영에서 반드시 만나는 문제까지 함께 생각하게 만듭니다. 관계형 데이터베이스에 익숙한 개발자라면 더 반가울 겁니다. 새 도구를 무작정 들이는 대신, 쓰던 DB 안에서 벡터 기능을 붙이는 방법을 배울 수 있으니까요. 새 기술을 고를 때 필요한 기준과 현실 감각도 덤으로 따라옵니다. 읽고 나면 질문이 바뀝니다 책을 덮고 나면 'AI 서비스 한번 만들어 보고 싶다'는 막연한 말이 훨씬 구체적인 질문으로 바뀝니다. 어떤 데이터를 임베딩할 것인가. 어떤 검색 방식을 고를 것인가. 정형 조건과 의미 검색을 어떻게 섞을 것인가. 검색 결과를 답변 품질로 어떻게 연결할 것인가. AI 개발자만의 이야기가 아닙니다. 데이터 엔지니어, 백엔드 개발자, 기술 기획자에게도 쓸모 있는 관점입니다. 기술 이름을 아는 데서 끝나지 않고, 내 업무와 제품에 어떻게 붙일지를 생각하게 만드니까요. 그리고 한 가지를 더 알게 됩니다. AI 시스템의 성능은 모델 혼자 만드는 게 아니라 데이터의 품질과 검색 구조, 사용자가 실제로 마주하는 경험이 함께 만든다는 사실 말입니다. [벡터 데이터베이스]는 AI 시대의 새로운 검색 방식을 배우게 해 주는 책입니다. 벡터가 낯선 분께는 친절한 입문서가 되고, RAG나 생성형 AI를 이미 실험해 본 분께는 비어 있던 자리를 채워 주는 안내서가 됩니다. 복잡한 기술을 길게 나열하는 대신 왜 이 기술이 필요해졌고 어디에 쓸 수 있는지를 보여 주기 때문에 더 설득력이 있고요. AI가 더 나은 답을 내놓게 만드는 일은, 결국 데이터를 더 정확하고 의미 있게 찾아내는 데서 시작합니다. 그 출발점을 제대로 이해하고 구현 감각까지 챙기고 싶으시다면, 한빛미디어의 [벡터 데이터베이스] 책을 추천합니다. #한빛미디어 #벡터데이터베이스 #aiengineer #ai개발자 #dataengineer |