第1章:AI智能体开发之大模型调用

AI Agent工业级项目目录

第1章:AI智能体开发之大模型调用

python环境安装anaconda

  1. ANACONDA 相关资源
  1. UV 相关资源
  1. 基础教程

window电脑安装uv

复制代码
# 1.安装uv
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# 2.检查是否安装成功
uv --version

uv的使用

复制代码
# 1.使用uv创建项目
uv init ai-agent-test

目录结构如下
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        2025/12/20      8:45            109 .gitignore
-a----        2025/12/20      8:45              5 .python-version
-a----        2025/12/20      8:45             91 main.py
-a----        2025/12/20      8:45            159 pyproject.toml
-a----        2025/12/20      8:45              0 README.md

# 2.测试uv,使用uv创建yaml管理
uv add pyyaml

目录结构如下
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        2025/12/20      8:46                .venv
-a----        2025/12/20      8:45            109 .gitignore
-a----        2025/12/20      8:45              5 .python-version
-a----        2025/12/20      8:45             91 main.py
-a----        2025/12/20      8:46            181 pyproject.toml
-a----        2025/12/20      8:45              0 README.md
-a----        2025/12/20      8:46          18786 uv.lock

我们通过观察发现,其多出来了一个.venv文件,也就是一个虚拟环境。

然后我们要uv中配置镜像加速器:

  1. 方法1,在pyproject.toml中添加

    [tool.uv]
    index = [
    { url = "https://mirrors.aliyun.com/pypi/simple/", default = true }
    ]

  2. 方法2,在uv.toml中添加

    [index]
    url = "https://mirrors.aliyun.com/pypi/simple/"
    default = true

智能体开发流程

智能体开发流程和Ollama本地大模型部署

本地大模型调用方法

本地大模型我们需要安装ollama

  • 其是一个开源的本地化大语言模型(LLM)运行和管理的工具;
  • 可以简化大语言模型的部署和使用;
  • 在本地运行模型,无需依赖云端服务,保证数据隐私性。

ollama官方网站:https://ollama.com/

ollama国内网站(阿里):https://registry.ollama.ai/

我们选择的下载的是deepseek-r1:1.5b这个版本

复制代码
ollama run deepseek-r1:1.5b

然后我们要安装langchain-ollama库,才可以使用本地大模型调用

复制代码
uv add langchain-ollama

from langchain_ollama.chat_models import ChatOllama

if __name__ == "__main__":
   llm = ChatOllama(model="deepseek-r1:1.5b")
   resp = llm.invoke("你是谁?")
   print(resp.content)

云端大模型调用

阿里云百炼:https://bailian.console.aliyun.com/

首先我们需要安装openai的依赖

复制代码
uv add openai

测试案例:

复制代码
import os
from openai import OpenAI
client = OpenAI(
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    # 以下是北京地域base_url,如果使用新加坡地域的模型,需要将base_url替换为:https://dashscope-intl.aliyuncs.com/compatible-mode/v1
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
    model="qwen-plus",
    messages=[{'role': 'user', 'content': '你是谁?'}]
)
print(completion.choices[0].message.content)

大模型流式响应

复制代码
from langchain_ollama.chat_models import ChatOllama

if __name__ == "__main__":
   llm = ChatOllama(
      model="deepseek-r1:1.5b",
      stream=True,
   )
   resp = llm.stream("给我介绍一下python学习的路线")
   for chunk in resp:
      print(chunk.content, end="")

LangChain框架

官网地址:https://www.langchain.com/

项目架构

  • 核心层:langchain-core 包含主要的抽象概念、接口和核心功能,这部分代码非常稳定
  • 应用层:langchain 包提供通用代码库,适用于不同接口实现
  • 社区层:langchain-community 包含大量由社区维护的轻量级集成
  • 合作伙伴层:与 Hugging Face、Azure、Ollama、阿里云等企业合作推出专用集成包

LangChain 的核心功能模块包括:

  • 模型(Models):提供统一接口调用各种 LLM,如 OpenAI 的 GPT 系列、Anthropic 的 Claude 系列、Google 的 Gemini 系列,以及 Hugging Face 的开源模型。
  • 提示(Prompts):优化模型输入,提升生成结果的质量,包括 PromptTemplate、ChatPromptTemplate 和 FewShotPromptTemplate 等。
  • 链(Chains):封装多个组件的调用序列,创建复杂的工作流程,如 SimpleSequentialChain 等。
  • 代理(Agents):允许模型自主调用外部工具和组件,实现多步骤任务处理,如 AutoGPT 等。
  • 记忆(Memory):存储和检索对话数据,支持上下文感知的应用,如多轮对话系统。
  • 索引(Indexes):组织和检索文档数据,支持 RAG(检索增强生成)等应用场景。