大模型基础认知—基本概念
大模型基础认知—基本概念
一、基础概念
1、AI (Artificial Inteligence)人工智能
AI, 涉及多个学科(计算机科学、数据分析、统计学、机器工程、语言学神经科学、哲学、心理学等)的一个交叉领域
旨在研究、设计、构建具备智能、学习、推理和行动能力的计算机和机器
2、GAI(Generative AI) 生成式人工智能
让机器能够生成复杂、有结构的物件。例如写论文、脚本
2022年11月 ChatGPT3.5
2025年1月 deepseek R1
3、机器学习
研究让计算机在没有明确编程的情况下,通过对数据进行分析、学习、自动改进其行为或做出预测的学科。
3.1 监督学习
理解为标注学习,对数据进行明确的标注,根据标注信息识别数据
3.2 非监督学习
理解为自学
给它一些完整的数据,通过学习后,能够让它根据现在已提供的信息去补全后面的数据
3.3 强化学习
模型训练好后向它提问,然后我们对它的回答进行一个正反馈,例如点赞或打勾的方式,这样模型下次再遇到相同的问题时,就会更知道哪种回答更好
4、深度学习
深度学习是机器学习的一个分支
4.1 神经网络
对数据进行多维度的分析,提取数据的特征
比如1,2,3,4,5,6,可以从等差数列、最大/小值、音符的多个维度去分析理解
4.2 Transformer
80%的大模型都是基于Transformer架构进行研发
二、应用领域
1、自然语言处理NLP
- 情感分析
- 文本归类
- 信息抽取
- 数学问题
- 角色扮演
- 编程问题
- 创作问题
2、语音处理SLP
3、图像视频处理
4、多模态应用
四、Prompt
1、高质量的prompt
指令具体、信息丰富、尽量少歧义
2、prompt典型构成
- 角色:给AI定义一个最匹配任务的角色
- 指示:对任务进行描述
- 上下文:给出与任务相关的背景信息
- 例子
- 输入:任务的输入信息
- 输出:输出的格式描述
注意:不要固守模板!!!!!!!!!!
3、Prompt基础应用测试
下面是一个基于one-api调用LLM接口,使用langchain框架,模拟实现推荐流量包的智能客服的prompt基础应用测试案例。
案例是借用github NanGePlus编写好的项目案例。GitHub地址: https://github.com/NanGePlus/PromptLangChainTest
接下来梳理一下项目运行的环境准备
3.1 安装python开发环境
- 根据自己的系统平台安装python解释器、我这里使用的是python 3.12
- pycharm IDE工具、社区版、专业版均可;我这里使用的是pycharm 2024 professional
3.2 安装启动one-api
https://github.com/songquanpeng/one-api
根据自己的系统平台下载one-api release版本(启动简单)、我这里是在本地的Linux虚拟机上安装
[root@localhost ~]# mv one-api /usr/local/bin/
[root@localhost ~]# chmod a+x /usr/local/bin/one-api
[root@localhost ~]# nohup one-api --port 3000 --log-dir ./logs > output.log 2>&1 &
[1] 1886
[root@localhost ~]# ps -elf | grep one-api
4 S root 1886 1431 23 80 0 - 468869 futex_ 15:45 pts/0 00:00:01 one-api --port 3000 --log-dir ./logs
0 S root 1896 1431 0 80 0 - 28203 pipe_w 15:45 pts/0 00:00:00 grep --color=auto one-api
启动完成后,可通过虚拟机的3000端口访问one-api。使用默认用户名: root,密码: 123456 登录即可
3.3 在one-api创建渠道
创建渠道,说的直白一点就是指定将来的调用的底层大模型。one-api支持的大模型类型很多,在创建渠道界面通过下拉列表可直观的看到。我这里创建的渠道用的是deepseek
下面是创建渠道的界面。下拉列表根据自己的实际情况选择大模型,下面输入对应的密钥
3.4 在one-api创建令牌
这里创建的令牌,将来用于python代码中,python代码通过该令牌调用one-api。本地部署的one-api,令牌的额度可自定义
4、项目运行测试
整个项目初始化、代码中的变量修改、效果测试可参考项目中的README.MD文件。再次感谢代码提供者
4.1 下载PromptLangChainTest项目
下载项目的zip压缩包,解压到本地
https://gitee.com/NanGePlus/PromptLangChainTest
4.2 pycharm创建python项目
在pycharm中创建python项目,将解压的PromptLangChainTest项目的解压文件拷贝到自己项目本地
4.3 安装项目依赖
(.venv) PS E:\PromptLangChainTest\ pip install -r requirement.txt
4.4 按项目中的README.MD文件中的描述修改项目代码中的变量定义
# 4、项目测试
## 4.1 基础案例:推荐流量包的智能客服测试
### (1)启动main脚本
实现使用langchain框架,模拟实现推荐流量包的智能客服
进入basic文件夹下,在使用python main.py命令启动脚本前,需根据自己的实际情况调整代码中的如下参数:
**调整1:设置langsmith环境变量:** ,可不用设置
os.environ["LANGCHAIN_TRACING_V2"] = "true"
os.environ["LANGCHAIN_API_KEY"] = "这里填写申请的API_KEY"
**调整2:prompt模版设置相关:**
PROMPT_TEMPLATE_TXT_SYS = "prompt_template_system.txt" # 模版文件路径
PROMPT_TEMPLATE_TXT_USER = "prompt_template_user.txt" # 模版文件路径
**调整3:选择使用哪种模型标志设置:**
API_TYPE = "oneapi" # openai:调用gpt模型;oneapi:调用oneapi方案支持的模型(这里调用通义千问)
**调整4:openai模型相关配置 根据自己的实际情况进行调整:**
OPENAI_API_BASE = "这里填写API调用的URL地址"
OPENAI_CHAT_API_KEY = "这里填写LLM模型的API_KEY"
OPENAI_CHAT_MODEL = "gpt-4o-mini"
**调整5:oneapi相关配置(通义千问为例) 根据自己的实际情况进行调整:**
ONEAPI_API_BASE = "这里填写oneapi调用的URL地址"
ONEAPI_CHAT_API_KEY = "这里填写LLM模型的API_KEY"
ONEAPI_CHAT_MODEL = "qwen-plus"
**调整6:API服务设置相关 根据自己的实际情况进行调整:**
PORT = 8012 # 服务访问的端口
### (2)运行apiTest脚本进行检索测试
进入basic文件夹下,在使用python apiTest.py命令启动脚本前,需根据自己的实际情况调整代码中的如下参数,运行成功后,可以查看smith的跟踪情况
**调整1:默认非流式输出 True or False**
stream_flag = False
**调整2:检查URL地址中的IP和PORT是否和main脚本中相同**
url = "http://localhost:8012/v1/chat/completions"
4.5 运行main.py初始化langchain框架
(.venv) PS E:\PromptLangChainTest\basic> python .\main.py
2026-05-12 16:05:29,444 - __main__ - INFO - 在端口 8012 上启动服务器
INFO: Started server process [20548]
INFO: Waiting for application startup.
2026-05-12 16:05:29,478 - __main__ - INFO - 正在初始化模型、提取prompt模版、定义chain...
2026-05-12 16:05:30,631 - __main__ - INFO - 初始化完成
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8012 (Press CTRL+C to quit)
注意: 初始化时,可能会因为windows系统原因报gbk文件解码错误,可在运行main.py脚本前,将项目文件main.py中的以下两行代码指定utf-8字符集
main.py文件152行左右
prompt_template_system = PromptTemplate.from_file(PROMPT_TEMPLATE_TXT_SYS,encoding="utf-8")
prompt_template_user = PromptTemplate.from_file(PROMPT_TEMPLATE_TXT_USER,encoding="utf-8")
4.6 运行apiTest.py测试问答
(.venv) PS E:\PromptLangChainTest\basic> python .\apiTest.py
2026-05-12 16:06:34,544 - __main__ - INFO - 非流式输出,响应内容是: 哈哈,我们这儿最贵的套餐是无限套餐,月费300元,1000G流量,够你随便刷视频、打游戏啦!
(.venv) PS E:\PromptLangChainTest\basic> python .\apiTest.py
2026-05-12 16:06:49,587 - __main__ - INFO - 非流式输出,响应内容是: 您说的是哪个套餐呀?能告诉我名字吗?我帮您查查具体价格~
(.venv) PS E:\PromptLangChainTest\basic> python .\apiTest.py
2026-05-12 16:07:03,324 - __main__ - INFO - 非流式输出,响应内容是: 有的!我们畅游套餐100G流量,月费180元;还有无限套餐,1000G流量月费300元,流量管够!您看哪个更合心意?> python .\apiTest.py
5、大模型短期记忆、长期记忆
5.1 运行测试案例
在项目的withMemoryTest目录下,同样修改main.py中的变量定义,运行main.py启动api,然后在apiTest.py测试对话,可以发现大模型在进行回答时,会参考上下文(也就是相当于有记忆)进行回答。
5.2 功能实现
- 定义get_session_history获取近期历史对话

- 使用langchain中的RunnableWithMessageHistory将历史对话添加到chain中

6、思维链(Chain-of-thought COT)
6.1 说明
让大模型在处理复杂问题时,能够像人的思维一样,一步一步分析处理,从而使结果准确性更高
实际应用:在构建提示词时可以加上【请一步一步分析后再作出回答】
6.2 测试
运行项目下cot目录中的代码
第一次运行,没有启用思维链的方式,模型回答可能不准确
第二次运行,在运行前修改系统提示词,引入思维链,回答时可以看到模型思考的过程,答案会更准确


7、自洽性 (self-consistency)
7.1 说明
自洽性,让大模型对一个问题进行多次回答,然后根据每次回答的准确性,确定最终的答案
像人做数学题一样,进行多次验算,确认最后的结果,让答案更准确
7.2 测试
运行项目下selfConsistency中的代码,可以看到模型回答时会有多次思考的过程
8、思维树(Tree-of-thought ToT)
8.1 说明
思维树是对思维链的一种扩展
传统的思维链在思考问题时,总是线性的,围绕着某一个种可能做深度的分析,最终给出结果
思维树,相当于在思考问题时,要从多种不同的维度进行不停的分析,每种思考的维度就像一个树枝一个,最终形成一个树状的结构。目的最终一样是希望结果更准确更有效率。
8.2 测试
运行项目下tot目录的代码测试
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)