LangChain4j从入门到实战(一)

课程链接:黑马程序员LangChain4j从入门到实战项目全套视频课程,涵盖LangChain4j+ollama+RAG,Java传统项目AI智能化升级_哔哩哔哩_bilibili

课程内容:

课程收获:

一、认识AI

1. AI发展史

AI,人工智能(Artificial Intelligence),使机器能够像人类一样思考、学习和解决问题的技术。

其实人工智能并不是一个新的东西,很早以前就有了,最早可以追溯到1950年的图灵测试。在图灵测试中,有两种角色,一种是被测试者,一种是测试者,其中被测试者又分为两种,一种是机器,一种是真人。测试者和被测试者通过文本进行沟通。在真实测试中,被测试者和测试者分别处在不同的房间中,这样测试者事先是无法知道被测试者是人还是机器。在沟通的过程中,测试者需要根据接收到的文本信息,判断发送该文本信息的是机器还是人。假设机器给测试者发送了一段文本,但测试者判断的答案是人,这就说明测试者无法分辨清楚机器与人。这个时候,我们就可以说机器具有了人的智能。

发展阶段

  • 符号主义
  • 连接主义
  • 神经网络

2. AI市场分布

二、大模型使用

1. 大模型部署

|----|---------------|------------|-------------|
| | 云服务器部署 | 本地机器部署 | 他人部署 |
| 优势 | 前期成本低,维护简单 | 数据安全;长期成本低 | 无需部署 |
| 劣势 | 数据不安全,长期使用成本高 | 初期成本高,维护困难 | 数据不安全,长期成本高 |

ollama本机机器部署

Ollama是一种用于快速下载、部署、管理大模型的工具,官网地址:Ollama

①下载安装ollama

②根据自己的显存选择合适的模型 qwen3

比如我这里选了qwen3:4b

bash 复制代码
ollama run qwen3:4b

如果安装模型时出现下面的问题,请安装新版本的ollama

③发送http的方式调用大模型 - Postman

云平台大模型使用 - 阿里云百炼平台

①登录阿里百炼控制台,领取免费额度

②创建API Key

③选择大模型使用:qwen-plus

https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions

2. 大模型调用

使用大模型需要传递的参数,在访问大模型时都需要在请求体中以json的形式进行传递

bash 复制代码
{
    "model": "qwen-plus",
    "messages": [
        {
            "role": "system",
            "content": "你是智能助手小团团"
        },
        {
            "role": "user", 
            "content": "你是谁?"
        },
        {
            "role": "assistant",
            "content": "您好,有什么可以帮助您?"
        }
    ],
    "think": true
    "stream": true, 
    "enable_search": true
}

常见参数:

  • model:告诉平台,当前调用哪个模型
  • messages :发送给模型的数据,模型会根据这些数据给出合适的响应
    • content:消息内容
    • role:消息角色(类型)
      • user:用户消息
      • system:系统消息
      • assistant:模型响应xiao
  • think :是否显示"思考过程"
    • true,输出推理步骤和中间结论
    • false:不输出
  • stream :调用方式
    • true:非阻塞调用(流式调用)
    • false:阻塞式调用(所有结果生成完毕后,一次性返回),默认值
  • enable_search :联网搜索,启用后,模型会将搜索结果作为参考信息
    • true:开启
    • false:关闭(默认)

响应数据

在与大模型交互的过程中,大模型响应的数据是json格式的数据

bash 复制代码
{
    "choices": [
        {
            "message": {
                "role": "assistant",
                "content": "我是通义千问,阿里巴巴..."
            },
            "finish_reason": "stop",
            "index": 0
        }
    ],
    "object": "chat.completion",
    "usage": {
        "prompt_tokens": 22,
        "completion_tokens": 80,
        "total_tokens": 102, 
    },
    "created": 1748068508,
    "system_fingerprint": null,
    "model": "qwen-plus",
    "id": "chatcmpl-99f8d040-0f49-955b-943a-21c83"
}
  • choices:模型生成的内容数组,可以包含一条或多条 内容
    • message:本次调用模型输出的信息
    • finish_reason:自然结束(stop),生成内容过长(length)
    • index:当前内容在choices数组中的索引
  • usage:本次对话过程中使用的token信息
    • prompt_tokens:用户的输入转换成token的个数
    • completion_tokens:模型生成的回复转换成token的个数
    • total_tokens:用户输入和模型生成的总token个数
  • created:本次会话被创建时的时间戳
  • system_fingerprint:固定为null,无需关注
  • model:本次会话使用的模型名称
  • id:本次调用的唯一标识符

Token

在大语言模型中,Token是大模型处理文本的基本单位,可以理解为模型"看得懂"的最小文本片段。用户输入的内容都需要转换为token,才能让大模型更好的处理。

  • 英文:一个token ≈ 4个字符
  • 中文:一个汉字 ≈ 1 ~ 2个token
相关推荐
Geek 研究僧5 小时前
大疆 Osmo 360:双 1 英寸 + 8K/50fps,改写全景相机市场格局
人工智能·数码相机·智能硬件·相机
Wilber的技术分享5 小时前
【大模型实战笔记 1】Prompt-Tuning方法
人工智能·笔记·机器学习·大模型·llm·prompt
liliangcsdn5 小时前
结合prompt分析NodeRAG的build过程
java·服务器·人工智能·数据分析·知识图谱
东方不败之鸭梨的测试笔记5 小时前
LangChain: Models, Prompts 模型和提示词
人工智能·python·langchain
初恋叫萱萱5 小时前
AI驱动开发实战:基于飞算JavaAI的在线考试系统设计与实现
人工智能
yzx9910135 小时前
图像去雾:从暗通道先验到可学习融合——一份可跑的 PyTorch 教程
人工智能·pytorch·学习
博大世界5 小时前
解剖智驾“大脑”:一文读懂自动驾驶系统软件架构
人工智能·机器学习·自动驾驶
大熊猫侯佩5 小时前
苹果 AI 探秘:代号 “AFM” —— “温柔的反叛者”
人工智能·sft·ai 大模型·apple 本地大模型·foundationmodel·苹果智能·applebot
AI Echoes5 小时前
别再手工缝合API了!开源LLMOps神器LMForge,让你像搭积木一样玩转AI智能体!
人工智能·python·langchain·开源·agent
AI Echoes5 小时前
从零构建企业级LLMOps平台:LMForge——支持多模型、可视化编排、知识库与安全审核的全栈解决方案
人工智能·python·langchain·开源·agent