Deepseek + RAG:创建本地运行的强大智能体

基于DeepSeek R1大模型与RAG技术,结合Ollama本地部署、NOMIC嵌入模型和Streamlit界面,可快速构建防幻觉、支持PDF知识库接入的本地智能聊天机器人,全程代码简洁,适合开发者快速上手。

发布于2025年1月23日 01:47
编辑零重力瓦力
评论0
阅读61

学习如何通过 DeepSeek RAG(检索增强生成),构建本地运行的智能 RAG 聊天机器人!本教程将带您逐步了解如何利用 RAG 技术,结合 AI 推理和知识检索能力,创建更加准确且知识丰富的 AI 响应。

您将学到

  • DeepSeek RAG 智能体的完整配置,并使用 Ollama 在本地部署运行。
  • 逐步实现,通过简单的代码轻松完成开发。
  • 用户界面(UI)开发,使用 Streamlit 创建交互式 AI 聊天界面。
  • 防止 AI 幻觉(生成虚假信息),借助 RAG 提高回答准确性。
  • 同自定义知识库整合,为您的 AI 添加专业知识。

为什么选择 RAG?

RAG 是 AI 技术的未来,它通过动态知识检索增强了传统 AI 的能力。以下是 RAG 的核心优势。

  • 实时更新知识库,确保 AI 始终获取最新信息。
  • 自动优化上下文,提升回答的相关性。
  • 通过深度上下文感知,让 AI 能够检索并理解更复杂的背景信息。
  • 通过动态知识检索,显著减少 AI 的幻觉(生成虚假回答),提升回答准确性。
  • 结合 AI 推理与知识检索,解锁超人类的信息处理能力。

核心技术

构建智能 RAG 聊天机器人需要以下关键技术。

  • DeepSeek R1:一个先进的 70 亿参数蒸馏大语言模型,在多项基准测试中表现优异,甚至超越了一些主流模型。
  • Ollama:一个可以本地运行模型的平台,用于部署 DeepSeek R1。
  • NOMIC Embed Text:用于将文本数据嵌入为数值表示,以便进行语义搜索。
  • Streamlit:一个 Python 库,用于构建直观的交互式用户界面。
  • AI Agents Framework:简化智能体创建和管理的框架。

前置条件

  • Python 编程基础:熟悉 Python 语法和编程逻辑。
  • AI 概念理解:了解大语言模型(LLM)和嵌入技术的基本原理。
  • 本地开发环境:确保已安装 Python,并能使用终端运行命令。

安装步骤

按照以下步骤,在本地环境中搭建 DeepSeek RAG。

  1. 下载 Ollama
    访问 Ollama 官方网站 并下载适合您操作系统的版本。
  2. 拉取 DeepSeek R1 模型
    在终端中运行以下命令以下载 DeepSeek R1 模型:
    ollama pull deepseek-r1
  3. 下载 NOMIC Embed Text
    运行以下命令以下载文本嵌入模型:
    ollama pull nomic-embed-text
  4. 安装依赖库
    安装所需的 Python 包,包括 PraisonAI Agents 和 Streamlit:
    pip install "praisonaiagents[knowledge]" ollama streamlit
  5. 设置环境变量
    配置本地环境以使用 Ollama:
    export OPENAI_BASE_URL=http://localhost:11434/v1
    export OPENAI_API_KEY=fake-key

构建 DeepSeek RAG 聊天机器人

索引知识(Indexing)

索引是将自定义知识(例如 PDF 文档)存储到数据库中的过程,以便后续检索和回答问题。

查询知识(Querying)

查询是向 AI 智能体提问的过程,智能体通过 RAG 从数据库中检索相关知识,并结合推理生成精确的答案。

以下是一个简单的 Python 示例,展示如何构建 DeepSeek RAG 聊天机器人。


from praisonaiagents import Agent

# 定义配置
config = {
    "vector_store": {
        "provider": "chroma",
        "config": {
            "collection_name": "praison",
            "path": ".praison"
        }
    },
    "llm": {
        "provider": "ollama",
        "config": {
            "model": "deepseek-r1:latest",
            "temperature": 0,
            "max_tokens": 8000,
            "ollama_base_url": "http://localhost:11434",
        }
    },
    "embedder": {
        "provider": "ollama",
        "config": {
            "model": "nomic-embed-text:latest",
            "ollama_base_url": "http://localhost:11434",
            "embedding_dims": 1536
        }
    }
}

# 初始化智能体
agent = Agent(
    name="知识智能体",
    instructions="根据提供的知识回答问题。",
    knowledge=["custom-document.pdf"],  # 替换为您的 PDF
    knowledge_config=config,
    user_id="user1",
    llm="deepseek-r1"
)

# 提问
response = agent.start("什么是 KAG?")
print(response)

创建用户界面(UI)

使用 Streamlit,您可以轻松为 RAG 智能体创建交互式聊天界面。以下是一个简单的实现示例:


import streamlit as st
from praisonaiagents import Agent

# 初始化智能体
def init_agent():
    config = {
        # 与上面的配置相同
    }
    return Agent(
        name="知识智能体",
        instructions="根据提供的知识回答问题。",
        knowledge=["custom-document.pdf"],
        knowledge_config=config,
        user_id="user1",
        llm="deepseek-r1"
    )

# Streamlit 用户界面
st.title("DeepSeek RAG 聊天机器人")
agent = init_agent()

prompt = st.text_input("请输入您的问题:")
if prompt:
    response = agent.start(prompt)
    st.write("AI 回答:", response)
        

运行应用程序:

streamlit run app.py

相关文章

前端开发者的 AI 入场券:LangChain.js 完全学习资源指南
AI 编程开发
2026年5月24日
0 条评论
零重力瓦力

前端开发者的 AI 入场券:LangChain.js 完全学习资源指南

LangChain.js 是 LangChain 的 JavaScript/TypeScript 实现,为前端开发者提供构建大语言模型应用的模块化工具。其核心概念包括 ChatModel(统一模型接口)、PromptTemplate(可复用模板)、Chain(链式调用)、Tool & Agent(外部能力调用与自主决策)、RAG(检索增强生成)和 Memory(对话记忆管理)。与 Python 版相比,LangChain.js 能与 Next.js、React 等前端技术栈无缝集成,支持边缘部署

#LangChain
阅读全文
Cursor 75% 代码已由 AI 生成,工程师正在变成 Agent 管理者
AI 编程开发
2026年5月22日
0 条评论
小创

Cursor 75% 代码已由 AI 生成,工程师正在变成 Agent 管理者

Cursor CEO Michael Truell 分享数据显示,2025 年初其 AI 代码工具中 Agent 请求已反超 Tab 补全,同比增长超 15 倍。企业客户代码中AI生成比例从一年前的 15%-20% 升至 75%,Cursor内部 30% 的 PR 完全由 Agent 端到端完成。Truell 将演进分为 Tab 补全、Agent 和 “团队时代” 三阶段,未来工程师角色将从写代码转向管理 Agent。内部实验中,Agent 团队一周内从零编写了三百万行代码的浏览器,虽未达实用阶段,但有助于探索全自主开发的边界。

#AI 编程
阅读全文
氛围编程的下半场:你的 AI 编程 Agent 已经不需要你的电脑了
AI 编程开发
2026年5月17日
0 条评论
零重力瓦力

氛围编程的下半场:你的 AI 编程 Agent 已经不需要你的电脑了

氛围编程竞争焦点已从代码补全转向云端 Agent 独立完成工程任务。Cursor 推出 Cloud Agent 环境,支持多仓库挂载、环境配置即代码及严格的安全治理。开放 TypeScript SDK,使 Agent 可集成至 CI/CD 或内部产品,实现本地与云端部署对称。同时,Agent Harness 优化通过 Keep Rate 等指标提升模型表现。Mistral Vibe 和 Google Antigravity 亦印证此趋势:编程 Agent 脱离本地束缚,向自主执行、基础设施化演进。

#AI 编程#智能体工程
阅读全文
互动讨论

评论区

围绕《Deepseek + RAG:创建本地运行的强大智能体》展开交流,未登录用户可浏览评论,登录后可参与讨论。

评论数
0
登录后参与评论
支持发表观点与回复一级评论,互动后将同步到消息中心。
登录后评论
暂无评论,欢迎成为第一个参与讨论的人。