OpenAI Embedding API를 Zilliz Cloud와 통합하는 방법
2018년에 Zilliz는 검색과 스토리지를 처리하는 방식을 혁신하기 위해 Milvus 벡터 데이터베이스를 개발했습니다(이전에 임베딩과 벡터 데이터베이스의 영향에 대해 논의한 바 있습니다). 처음에 Milvus는 벡터 데이터베이스에 필수적인 핵심 기능을 제공하는 데 집중했으며, 사용자 경험 개선, 안정성 보장, 성능 및 확장성 향상을 강조했습니다. 이러한 접근 방식은 사용자, 기여자, 스타를 포함한 Milvus 커뮤니티의 상당한 성장으로 이어졌으며, 현재 30,000에 가까워지고 있습니다.
최근, 특히 Milvus 2.4 출시와 함께 커뮤니티는 더 많은 도구, 시각화, 커넥터를 포함하도록 벡터 데이터베이스 생태계를 확장하는 데 강한 관심을 표명했습니다. 핵심 요청 중 하나는 임베딩 모델과의 더 긴밀한 통합이었습니다. 이러한 피드백은 사용자의 변화하는 요구와 벡터 데이터베이스 환경에서 임베딩 모델의 중요성이 커지고 있음을 반영합니다.
임베딩 모델 통합
이러한 증가하는 수요에 대응하기 위해, Milvus 또는 Zilliz Cloud 데이터베이스를 오픈 소스 및 상용 모델 모두와 원활하게 연결할 임베딩 모델 통합을 소개하게 되어 기쁩니다. 이러한 통합은 오늘날 제공되는 다양한 머신 러닝 모델을 수용하도록 설계되었으며, 다양한 데이터 유형과 사용 사례를 지원합니다. 텍스트, 이미지 또는 기타 데이터 유형을 다루고 있든, 이 기능을 통해 임베딩 모델의 강력한 기능을 쉽게 활용하여 의미적 유사성 검색 기능을 향상할 수 있습니다.
임베딩 모델 환경과 사용자 요구의 변화에 대응하여, 우리는 두 가지 병렬 통합 세트를 제공할 예정입니다. 첫 번째 세트는 인기 있는 오픈 소스 임베딩 모델에 중점을 두어, 커뮤니티 주도 솔루션을 선호하는 사용자에게 유연성과 비용 효율성을 제공합니다. 두 번째 세트는 프리미엄 상용 임베딩 모델과의 통합을 포함하여, 보다 전문화된 요구 사항을 가진 사용자에게 고급 기능과 향상된 성능을 제공합니다. 이러한 이중 접근 방식은 모든 사용자가 임베딩 요구 사항이나 예산에 관계없이 Milvus 또는 Zilliz Cloud 데이터베이스를 최적화하기 위한 강력한 도구에 접근할 수 있도록 보장합니다.
Zilliz Cloud와의 통합이 중요한 이유
OpenAI Embedding API를 Zilliz Cloud와 통합하는 것은 자연어 처리와 같은 벡터 검색 기능을 향상하려는 개발자에게 중요합니다. OpenAI의 강력한 사전 학습 임베딩과 Zilliz Cloud의 고성능 벡터 데이터베이스를 결합하면 더 정확하고 효율적인 검색 및 검색 시스템을 만들 수 있습니다. OpenAI의 임베딩은 데이터 내 복잡한 의미적 관계를 포착하는 반면, Zilliz Cloud는 대량의 벡터 데이터를 처리하는 데 필요한 확장성과 속도를 제공합니다. 이 통합을 통해 개발자는 고급 AI 모델을 활용하여 검색 결과의 관련성을 높일 수 있으며, 사용자 쿼리를 더 높은 정확도로 이해하고 응답하는 애플리케이션을 더 쉽게 구축할 수 있습니다.
또한 이 통합은 대규모 데이터셋을 처리하고 검색하는 간소화된 방법을 제공하여 개발 프로세스를 단순화합니다. Zilliz Cloud가 백엔드 인프라를 관리하고 OpenAI의 Embedding API가 정교한 데이터 표현을 제공함으로써, 개발자는 데이터 처리의 복잡성보다는 애플리케이션 구축에 더 집중할 수 있습니다. 이 설정은 성능을 향상할 뿐만 아니라 개발 시간을 줄여, 가능하게 합니다
Zilliz Cloud의 예시
첫 번째 통합 세트는 Milvus와 Zilliz Cloud를 활용하는 POC 준비 완료 예제와 실행 가능한 스크립트 시리즈입니다. 이러한 예제는 소프트웨어 엔지니어가 다양한 사용자 사례 전반에서 애플리케이션을 만들 수 있도록 완전히 커스터마이징 가능한 출발점을 제공하기 위한 것입니다. 이러한 예제 대부분은 업스트림 임베딩 모델과 Milvus SDK를 결합한 상당히 직관적인 스크립트일 것입니다. our notebooks에서 이를 찾을 수 있으며, 각 예제는 다음과 비슷해 보일 수 있습니다(가독성을 위해 크게 단순화됨).
from pymilvus import connections, Collection
import openai
...
connections.connect(uri=URI, user=USER, password=PASSWORD, secure=True)
collection = Collection(name=COLLECTION_NAME, schema=schema)
collection.create_index(field_name="embedding", index_params=index_params)
...
for text in document:
embedding = openai.Embedding.create(
input=text,
engine=OPENAI_ENGINE)["data"][0]["embedding"]
collection.insert([embedding])
...
작은 예제 스크립트는 범용 사용에 적합하지만, 각 스크립트 전반에서 상당한 재사용이 있다는 것을 발견했습니다. 예를 들어 모델 추론과 데이터베이스 쿼리는 거의 모든 예제에서 실행되는 두 가지 작업입니다. 이 반복되는 문제를 해결하기 위해 Milvus 생태계 아래의 Zilliz 프로젝트인 Towhee를 출시했습니다. Towhee는 수백 개의 오픈 소스 모델, 임베딩 API, 사내 모델을 통합하여 ML 실무자가 단 몇 줄의 코드로 Milvus 또는 Zilliz Cloud가 뒷받침하는 엔드투엔드 검색 파이프라인을 조립할 수 있게 합니다. 책 제목을 벡터화하고(OpenAI의 임베딩 API 사용) 이를 Milvus에 삽입하는 샘플 파이프라인은 다음과 비슷할 수 있습니다.
pipeline = (
pipe.input('id', 'text')
.map(
ops.text_embedding.openai(
engine='embedding-engine',
api_key='my-api-key'
)
)
.map(
ops.ann_insert.milvus_client(
host='my-vector-database.url',
port='19530',
collection_name='my-collection'
)
)
.output()
)
Towhee documentation의 전체 가이드와 함께 Milvus bootcamp에서 더 많은 Towhee 예제를 볼 수 있습니다.
저희와 소통하세요
간단히 말해, 지난 5년 동안 많은 진전을 이루었지만 아직 갈 길이 멉니다. Zilliz는 앞으로도 Milvus 프로젝트의 핵심 후원자이자 주요 원동력으로 남을 것이지만, 앞으로는 더 넓은 머신 러닝 생태계와의 통합 및 파트너십에도 집중할 것입니다.
오픈 소스 커미터이고 잠재적 통합에 대해 이야기하고 싶다면 reach out to us 또는 Twitter로 메시지를 보내 주세요. 커뮤니티의 일원으로 함께하시길 기대합니다!
계속 읽기

A Developer's Guide to Exploring Milvus 2.6 Features on Zilliz Cloud
Milvus 2.6 marks a shift from “vector search + glue code” to a more advanced retrieval engine, and it is now Generally Available (GA) on Zilliz Cloud (a managed Milvus service).

Why I’m Against Claude Code’s Grep-Only Retrieval? It Just Burns Too Many Tokens
Learn how vector-based code retrieval cuts Claude Code token consumption by 40%. Open-source solution with easy MCP integration. Try claude-context today.

What Exactly Are AI Agents? Why OpenAI and LangChain Are Fighting Over Their Definition?
AI agents are software programs powered by AI that can perceive their environment, make decisions, and take actions to achieve a goal—often autonomously.



