Pinecone là vector database managed service hàng đầu cho AI application. Hỗ trợ lưu trữ và tìm kiếm embedding nhanh cho RAG, semantic search và recommendation system. Dễ tích hợp với LangChain và OpenAI.
Tạo Index Trên Pinecone Console
Đăng ký tài khoản và tạo một index mới với đúng số chiều vector phù hợp model embedding sẽ dùng.
Vào Pinecone Console > Create Index, đặt tên index, chọn dimension = 1536 (nếu dùng OpenAI text-embedding-3-small) và metric = cosine.
Ghi nhớ đúng dimension của model embedding — sai số chiều sẽ khiến việc ghi dữ liệu thất bại.
Lấy API Key Và Cấu Hình SDK
Lấy API key từ console và khởi tạo client Pinecone trong code ứng dụng.
Cài `pip install pinecone-client`, sau đó khởi tạo `pc = Pinecone(api_key="YOUR_KEY")` và `index = pc.Index("ten-index")`.
Lưu API key trong biến môi trường, không hardcode trực tiếp vào code.
Tạo Embedding Cho Dữ Liệu Sản Phẩm
Chuyển mô tả từng sản phẩm thành vector bằng model embedding trước khi ghi vào Pinecone.
Với mỗi sản phẩm, gọi API embedding (ví dụ OpenAI) để lấy vector, kèm metadata như tên, giá, danh mục.
Gộp tên sản phẩm và mô tả chi tiết vào cùng một đoạn text trước khi tạo embedding để tăng độ chính xác.
Ghi Dữ Liệu Vào Index Theo Batch
Upsert toàn bộ vector sản phẩm vào Pinecone theo từng lô để tránh timeout.
Gọi `index.upsert(vectors=[(id, vector, metadata), ...])` theo batch khoảng 100 sản phẩm mỗi lần.
Dùng ID sản phẩm thật (SKU) làm vector ID để dễ cập nhật lại khi sản phẩm thay đổi.
Truy Vấn Semantic Search Và Kết Hợp Filter
Xây dựng API tìm kiếm nhận câu query của khách, chuyển thành vector và truy vấn Pinecone.
Gọi `index.query(vector=query_embedding, top_k=10, filter={"category": "noi-that"}, include_metadata=True)`.
Kết hợp filter theo metadata (danh mục, khoảng giá) cùng semantic search để kết quả vừa liên quan vừa đúng phạm vi khách cần.
Chưa có đánh giá nào - hãy là người đầu tiên chia sẻ trải nghiệm của bạn.
Đăng nhập để để lại đánh giá.
Ưu Điểm
Nhược Điểm
Một sàn thương mại điện tử ngách chuyên đồ nội thất muốn cho khách tìm sản phẩm bằng câu mô tả tự nhiên thay vì chỉ lọc từ khóa.
Vấn đề
Tìm kiếm theo từ khóa truyền thống bỏ lỡ nhiều sản phẩm phù hợp khi khách gõ mô tả như 'bàn làm việc nhỏ gọn cho phòng ngủ'.
Giải pháp
Dùng Pinecone lưu embedding mô tả sản phẩm, kết hợp semantic search để trả về sản phẩm phù hợp với ý định tìm kiếm thực sự.
Một công ty SaaS B2B cung cấp tính năng chatbot hỏi đáp tài liệu cho nhiều khách hàng doanh nghiệp khác nhau.
Vấn đề
Cần đảm bảo dữ liệu tài liệu của từng khách hàng tách biệt hoàn toàn, không bị lẫn khi truy vấn.
Giải pháp
Dùng namespace riêng trong Pinecone cho mỗi khách hàng, đảm bảo mỗi truy vấn chỉ tìm trong đúng phạm vi dữ liệu của họ.