华为云 Flexus+DeepSeek 征文|搭建部署Dify-LLM推理引擎,赋能AI Agent智能体实现动态联网搜索能力

华为云 Flexus 云服务器 X 实例专门为 AI 应用场景设计。它提供了强大的计算能力,能够满足 DeepSeek 模型以及后续搭建 AI Agent 智能体过程中对于数据处理和模型运行的高要求。在网络方面,具备高速稳定的网络带宽,这对于需要频繁联网搜索信息的 AI Agent 智能体至关重要,能确保快速获取网络数据。并且其具备良好的扩展性,当我们后续需要对智能体进行功能扩展或者处理更大规模数据时,可以方便地进行资源调整。同时,在成本控制上,Flexus 云服务器 X 实例提供了按需和包月等多种计费方式,适合不同规模和预算的开发者与企业。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

graph TD
    A[User Agent] --> B[Dify API Server]
    B --> C[LLM Inference Engine]
    C --> D[Search Plugin]
    D --> E[Google/Bing API]
    C --> F[Knowledge Base]

安装搭建步骤

步骤一:准备华为云 Flexus 云服务器 X 实例

1.1 登录华为云官网,在云服务器产品页面中选择 Flexus 云服务器 X 实例。

1.2 根据实际需求选择合适的配置,包括 CPU、内存、存储等。如果预计处理大量数据和复杂任务,建议选择较高配置以确保运行流畅。

1.3 选择操作系统,如 Ubuntu 20.04 等,因为其对后续软件安装和配置的兼容性较好。

1.4 完成配置选择后,点击创建实例,按照提示完成支付等流程。等待实例创建完成,获取服务器的公网 IP 地址、用户名和初始密码。

步骤二:在 Flexus 云服务器上部署 DeepSeek 模型

2.1 使用 SSH 工具,输入服务器的公网 IP 地址、用户名和密码,登录到 Flexus 云服务器。例如,在 Linux 系统下,可以在终端中执行命令ssh username@server_ip,然后输入密码即可登录。

在这里插入图片描述

2.2 安装必要的依赖软件
根据 DeepSeek 模型的运行要求,安装相应的依赖软件。这可能包括 Python 环境(建议 Python 3.8 及以上版本)、CUDA(如果服务器配备 GPU 且模型支持 GPU 加速)、cuDNN 等。例如,安装 Python 3.8 可以通过以下命令:

sudo apt update
sudo apt install software - properties - common
sudo add - apt - repository ppa:deadsnakes/ppa
sudo apt install python3.8

2.3 下载 DeepSeek 模型
从 DeepSeek 官方网站或者其指定的开源代码托管平台(如 GitHub)下载 DeepSeek 模型的相关文件。确保下载的模型版本与服务器环境和后续使用需求相匹配。下载完成后,将模型文件解压到合适的目录,例如/home/user/deepseek_model。

# For Base Model
git lfs install
git clone https://huggingface.co/deepseek-ai/DeepSeek-V3-Base
# For Chat Model
git lfs install
git clone https://huggingface.co/deepseek-ai/DeepSeek-V3

在这里插入图片描述

2.4 配置 DeepSeek 模型
进入模型解压目录,根据模型提供的配置文件模板,创建并编辑配置文件。配置文件中需要设置模型运行的相关参数,如模型权重文件路径、输入输出格式、是否启用 GPU 加速等。例如,如果使用 GPU 加速,需要在配置文件中正确设置 CUDA 相关参数:

{
    "use_gpu": true,
    "cuda_device": 0,
    "model_path": "/home/user/deepseek_model/model_weights.bin"
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

步骤三:获取API Key

打开浏览器,访问博查 AI 搜索的官方网站open.bochaai.com。
在网站首页,使用微信扫码进行登录。如果没有账号,按照提示进行注册。
登录成功后,点击右上角的 “AP KEY 管理”。
在 AP KEY 管理页面中,点击创建 API KEY。创建成功后,复制生成的 API KEY,后续在配置 AI Agent 智能体联网搜索功能时会用到。

在这里插入图片描述

步骤四:搭建 AI Agent 智能体联网搜索功能

在这里插入图片描述

安装相关框架和库
在 Flexus 云服务器上,使用 pip 安装搭建 AI Agent 智能体所需的框架和库,如 LangChain 等。LangChain 是一个用于开发由语言模型驱动的应用程序的框架,它提供了丰富的工具和接口来连接大模型与各种外部工具,包括 Web Search API。安装命令如下:

pip install langchain

编写代码实现联网搜索功能
使用 Python 编写代码,利用 LangChain 框架将 DeepSeek 模型与博查 Web Search API 进行集成:

在这里插入图片描述

from langchain.llms import CustomLLM
from langchain.tools import BaseTool, StructuredTool, Tool, tool
from langchain.agents import initialize_agent, AgentType
import requests

# 自定义DeepSeek模型调用类
class DeepSeekLLM(CustomLLM):
    def _call(self, prompt, stop = None):
        # 实现调用DeepSeek模型的逻辑,根据模型的API进行请求发送和结果获取
        response = requests.post('http://deepseek_model_api_url', json = {'prompt': prompt})
        return response.json()['answer']

    @property
    def _identifying_params(self):
        return {}

    @property
    def _llm_type(self):
        return "deepseek"

# 定义博查Web Search API工具
@tool
def web_search(query):
    api_key = "your_api_key"
    url = "https://api.bochaai.com/web_search"
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content - Type": "application/json"
    }
    data = {
        "query": query
    }
    response = requests.post(url, headers = headers, json = data)
    if response.status_code == 200:
        return response.json()
    else:
        return "Web search error"

# 初始化DeepSeek模型实例
deepseek_llm = DeepSeekLLM()

# 初始化智能体
tools = [web_search]
agent = initialize_agent(tools, deepseek_llm, agent = AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose = True)

# 测试智能体
result = agent.run("最近有什么重大的科技新闻")
print(result)

在上述代码中,首先自定义了DeepSeekLLM类来调用 DeepSeek 模型,然后定义了web_search工具来调用博查 Web Search API 进行联网搜索,最后使用initialize_agent函数初始化智能体,并将 DeepSeek 模型和联网搜索工具整合在一起。运行代码时,将your_api_key替换为实际获取的博查 Web Search API Key,并根据 DeepSeek 模型的实际 API 地址修改http://deepseek_model_api_url。

步骤五:测试与优化

功能测试
在代码中设置不同的查询问题,如 “最近的人工智能研究进展”“当前热门的科技产品有哪些” 等,运行代码后观察智能体的回答。检查回答是否准确地包含了通过联网搜索获取的最新信息,并且回答的逻辑和内容是否合理。

测试项纯LLM响应联网增强响应
实时股价查询❌ 无法获取✅ 准确结果
最新赛事比分❌ 过时信息✅ 实时更新

性能优化
如果在测试过程中发现智能体的响应速度较慢,可以从以下几个方面进行优化:
检查服务器资源使用情况,确保服务器有足够的 CPU、内存和网络带宽。如果资源不足,可以考虑升级服务器配置或者优化代码中的资源使用方式。
优化博查 Web Search API 的调用参数,例如调整搜索结果的数量、设置合理的搜索时间范围等,以减少不必要的数据获取,提高搜索效率。
对 DeepSeek 模型的配置进行微调,例如调整模型的缓存策略、优化模型的计算资源分配等,以加快模型的推理速度。
错误处理优化
检查代码中的错误处理机制是否完善。例如,当博查 Web Search API 调用失败时,智能体是否能够给出合理的提示信息,而不是返回错误代码或者崩溃。完善错误处理代码,确保智能体在面对各种异常情况时都能稳定运行,并给用户提供友好的反馈。

结尾

通过以上步骤,我们成功地使用华为云 Flexus+DeepSeek搭建了具备联网搜索能力的 AI Agent 智能体,能够为用户提供更全面、及时的信息服务。在实际应用中,可以根据具体需求进一步扩展和优化智能体的功能。

本文联网搜索使用的是开源免费的searxng
github项目开源地址 https://github.com/searxng/searxng

<think>好的,用户想了解如何搭建智能体的工作流,特别是最佳实践和教程。首先,我需要回忆一下之前提供的引用内容,看看有哪些相关的信息可以整合进来。引用[1]提到了MaxKB、Dify、FastGPT、RagFlow、Anything-LLM这些工具,属于低代码智能体框架,应该和搭建工作流相关。引用[2]讨论了构建可扩展的AI代理工作流架构的关键技术和步骤,包括核心概念、算法原理、数学模型等,这部分应该能提供理论支持。引用[3]主要讲云服务器的配置,可能涉及到部署时的资源优化。 首先,我需要确定用户的需求层次。他们可能对智能体工作流的基础概念不太熟悉,所以需要先从定义和核心组成讲起。然后分步骤介绍搭建流程,结合最佳实践,比如模块化设计、数据预处理等。接着需要推荐一些工具,如Dify、FastGPT,这些在引用[1]里提到过,可以引用。此外,可能还需要涉及性能优化,比如引用[3]提到的云服务器配置,如何在成本和性能之间平衡。 接下来,要考虑用户可能的疑问点。比如,如何选择合适的工具,如何设计高效的工作流,如何处理数据,如何测试和优化。在回答中需要覆盖这些方面,并且提供具体的例子或步骤,让用户有可操作的指导。 还要注意引用文献的正确使用。比如在提到模块化设计时,引用[2]中的架构设计部分;在工具推荐时,引用[1]的具体工具名称;在优化资源时,引用[3]的云服务器实例。 需要确保回答结构清晰,分步骤讲解,每个步骤下有小标题,可能还需要代码示例或配置示例,比如YAML文件,这样用户更容易理解。同时,相关问题部分要生成三个相关的问题,覆盖性能优化、工具比较、数据预处理等方面,帮助用户深入探索。 最后,检查是否符合系统级指令:数学公式是否正确使用$...$,独立公式用$$...$$,中文回答,语法正确,生成相关问题,引用标识正确添加。例如,在提到数学模型时,如果有用到公式,需要用正确的LaTeX格式,但当前问题可能不涉及复杂公式,但如果有的话需要处理。 总结,回答的结构应该是:定义与核心组成,搭建步骤(需求分析、工具选择、流程设计、开发与测试、部署优化),最佳实践,工具推荐,案例分析,资源优化,最后相关问题。每个部分引用相应的文献,并确保信息准确有用。</think>### 智能体工作流搭建指南 #### 一、智能体工作流的定义与核心组成 智能体工作流(AI Agent Workflow)是通过模块化设计将AI能力与任务逻辑结合,实现自动化决策与执行的系统架构[^2]。其核心组件包括: 1. **输入处理模块**:处理用户请求(如自然语言解析、数据清洗) 2. **推理引擎**:基于规则或机器学习模型的任务分解 3. **工具调用模块**:集成外部API或数据库 4. **记忆管理**:上下文保持与知识库检索(RAG技术)[^1] 5. **输出生成**:结果整合与格式化响应 #### 二、搭建步骤(以客户服务场景为例) 1. **需求分析与架构设计** - 确定任务类型:问答/决策/流程自动化 - 设计状态转移图: ```mermaid graph TD A[用户输入] --> B(意图识别) B --> C{是否需要外部数据} C -->|| D[知识库检索] C -->|| E[生成响应] D --> F[数据验证] F --> E ``` 2. **工具链选择** - 低代码平台:Dify(可视化流程编排) - 知识管理:MaxKB(文档向量化存储) - 计算资源:Flexus云服务器(动态切换基础/性能模式)[^3] 3. **工作流配置示例(YAML格式)** ```yaml workflow: - step: input_processing tools: - spaCy_ner - sentence_transformers - step: knowledge_retrieval engine: "RAGFlow" params: top_k: 5 similarity_threshold: 0.7 - step: response_generation model: "gpt-4-turbo" temperature: 0.3 ``` 4. **开发与测试** - 单元测试:验证各模块接口 - 集成测试:模拟端到端流程 - 性能测试:使用JMeter模拟并发请求 5. **部署与优化** - 使用Kubernetes进行容器化部署 - 通过Prometheus监控系统性能 - 基于Flexus云服务器的动态扩缩容策略 #### 三、最佳实践 1. **模块化设计原则** - 每个模块保持单一职责 - 接口标准化(输入/输出格式统一) - 错误隔离机制设计 2. **知识增强工作流** - RAG技术实现流程: $$ \text{Response} = f(\text{Query}, \text{Retrieve}(KB, \text{Embed}(\text{Query}))) $$ - 使用混合检索策略(关键词+向量) 3. **性能优化技巧** - 缓存高频查询结果 - 异步执行非关键路径任务 - 使用量化模型加速推理 #### 四、典型工具对比 | 工具 | 适用场景 | 核心优势 | |-------------|----------------|---------------------------| | Dify | 快速原型开发 | 可视化编排+API市场集成 | | FastGPT | 文档处理场景 | 多模态数据处理能力 | | RagFlow | 知识密集型任务 | 混合检索算法优化 | | Anything-LLM | 私有化部署 | 全本地化运行支持 | #### 五、案例:电商客服工作流 1. 用户问"订单123物流状态" 2. 系统提取订单号→查询数据库→调用物流API 3. 生成自然语言响应: ```python def generate_response(data): return f"您的订单{data['order_id']}最新状态:{data['status']},预计{data['eta']}送达" ``` 4. 耗时从传统方案的5秒优化至800ms #### 六、资源优化建议 1. 使用Flexus云服务器的动态模式切换: - 日常流量使用基础模式(成本降低30%) - 大促期间切换性能模式(吞吐量提升3倍)[^3] 2. 通过模型蒸馏技术将LLM体积压缩40%
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值