跳到內容

檢索增強生成

檢索增強生成(RAG)是一種使生成式人工智慧(Gen AI)模型能夠檢索並整合新資訊的技術。它修改了與大型語言模型(LLM)的互動方式,使模型能夠參考指定文件集來回應使用者查詢,並利用這些資訊補充其預先存在的訓練資料。這使得LLM能夠使用特定領域和/或更新的資訊。用例包括提供聊天機器人訪問公司內部資料,或根據權威來源生成響應。

以下是整合: - vLLM + langchain + milvus - vLLM + llamaindex + milvus

vLLM + langchain

先決條件

  • 設定 vLLM 和 langchain 環境
pip install -U vllm \
            langchain_milvus langchain_openai \
            langchain_community beautifulsoup4 \
            langchain-text-splitters

部署

  • 使用支援的嵌入模型啟動 vLLM 伺服器,例如:
# Start embedding service (port 8000)
vllm serve ssmits/Qwen2-7B-Instruct-embed-base
  • 啟動支援聊天完成模型的 vLLM 伺服器,例如
# Start chat service (port 8001)
vllm serve qwen/Qwen1.5-0.5B-Chat --port 8001
python retrieval_augmented_generation_with_langchain.py

vLLM + llamaindex

先決條件

  • 設定 vLLM 和 llamaindex 環境
pip install vllm \
            llama-index llama-index-readers-web \
            llama-index-llms-openai-like    \
            llama-index-embeddings-openai-like \
            llama-index-vector-stores-milvus \

部署

  • 使用支援的嵌入模型啟動 vLLM 伺服器,例如:
# Start embedding service (port 8000)
vllm serve ssmits/Qwen2-7B-Instruct-embed-base
  • 啟動支援聊天完成模型的 vLLM 伺服器,例如
# Start chat service (port 8001)
vllm serve qwen/Qwen1.5-0.5B-Chat --port 8001
python retrieval_augmented_generation_with_llamaindex.py