Agent
P01_项目技术一、Function Call 函数调用
1 什么是Function Call【理解】概念:大模型基于具体任务,智能决策何时需要调用某个函数,同时返回符合函数参数的 JSON对象。
能力获得的方式:基于训练来得到的,所以并不是所有大模型都具有Function Call能力。
优势:信息实时性、数据局限性、功能扩展性。
2 Function Call 工作原理【理解】主要步骤:
用户(client)发请求提示词,chat server将提示词和可以调用的函数发送给大模型
GPT模型根据用户的提示词,判断是用普通文本还是函数调用的格式回复我们的服务(chat server)
如果是函数调用格式,那么chat server就会执行这个函数,并且将结果返回给GPT
然后模型使用提供的数据,用连贯的文本响应。
3 Function Call 使用方式3.1 自定义tool结构【熟悉】代码:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515 ...
Agent-Note
Day011、什么是Function Call?概念:大模型基于具体任务,智能决策何时需要调用某个函数,同时返回符合函数参数的 JSON对象。
能力获得的方式:基于训练来得到的,所以并不是所有大模型都具有Function Call能力。
优势:信息实时性、数据局限性、功能扩展性。
2、Function Call 工作原理是什么?主要步骤:
用户(客户端)发送请求和提示词,聊天服务器(Chat Server)将该提示词以及当前可调用的函数列表一并发送给大模型。
大模型根据提示词的内容和上下文,判断应生成普通文本回复,还是以函数调用的格式进行响应。
如果模型决定调用函数,它会返回一个包含函数名称和参数的结构化调用指令;聊天服务器接收到该指令后,执行对应的函数,并将函数的实际执行结果返回给大模型。
模型再根据函数返回的数据,将其整合并生成一段自然、连贯的文本作为最终回复,返回给用户。
3、Function Call的使用方式123456789101112131415161718192021222324252627282930313233343536373839404142434445 ...
RAG
P01_RAG系统项目介绍1 背景介绍【了解】
业务:IT教育的答疑项目
技术:RAG【知识库+LLM】
2 RAG相关介绍【掌握】2.1 RAG概念通⽤的基础⼤模型存在一些问题:
幻觉问题,LLM有时会在回答中⽣成看似合理但实际上是错误的信息
LLM的知识不是实时的,模型训练好后不具备自动更新知识的能力,会导致部分信息滞后
LLM领域知识是缺乏的,大模型的知识来源于训练数据,这些数据主要来自公开的互联网和开源数据集,无法覆盖特定领域或高度专业化的内部知识
RAG是一种将大规模语言模型(LLM)与外部知识源的检索相结合,以改进问答能力的工程框架。 它使用来自私有或专有数据源的信息来辅助文本生成,从而弥补LLM的局限性,特别是在解决幻觉问题和提升时效性方面。
2.2 RAG作用
缓解LLM“幻觉”问题 : LLM在生成文本时有时会“一本正经地胡说八道”,即生成听起来合理但实际上不准确或捏造的信息,这被称为“幻觉”。RAG通过提供外部事实依据,显著减少了这种幻觉现象,让LLM的输出更具 事实性 和 可靠性 。
获取最新信息 :LLM的训练数据通常是静态的,这意味着它们无法获取到训练截 ...
LLM大模型基础
大语言模型LLM一种通过学习大量的文本来预测整个序列或者下一个词的概率,从而理解和生成自然语言的模型。
大模型发展历程基于规则与概率:这类模型主要依赖于人工设计的规则和统计方法。如N-gram模型通过计算词语出现的频率来预测下一个词,但存在稀疏性问题,无法很好地处理未见过的词语组合。
神经网络语言模型引入词向量:NNLM利用神经网络,将词语映射成连续的向量(词嵌入),从而捕捉词语间的语义关系。这解决了稀疏性问题,并能更好地理解上下文。然而,NNLM通常需要针对特定任务进行端到端训练。
预训练语言模型:预训练 + 微调以Transformer架构为核心,PLM(如BERT、GPT-½)通过在海量文本上进行无监督预训练来学习通用语言知识,然后针对下游任务进行微调。这极大提高了模型的泛化能力和任务表现。
大预言模型:规模化与涌现能力,LLM(如GPT-¾、PaLM)在PLM的基础上,进一步扩大模型规模(参数量、数据量),从而展现出涌现能力,可以执行多样的任务,如问答、摘要、代码生成等,甚至不需要微调(in-context learning)。
阶段
代表技术
特点
基于规则与统计 ...
TQ System
Day011、什么是知识图谱?概念:知识图谱是以图的形式来表示实体和实体之间关系的语义网络。
节点:实体、概念
边:关系(外部)、属性(内部)
类型有两种:
实体-关系-实体【通常的说法!!】
实体-属性-属性值
2、项目的技术架构图是怎样的?
数据获取
业务数据:比较规范,一般可以直接使用构建知识图谱
采集数据:形式各异,需要进行清洗和信息抽取工作
信息抽取【核心】
工作:实体抽取、关系抽取、属性抽取
方法:规则匹配、机器学习、深度学习
知识融合
任务:消除冗余、解决冲突、统一表达、知识扩展
技术:指代消解、实体消岐、知识融合(实体对齐、关系对齐)
知识加工
工作:质量评估
图谱搭建
工作:将三元组导入到数据库中
图谱应用
工作:搭建问答系统
3、项目用到了哪些工具?
Doccano(多卡诺)是一种用于文本标注的开源工具,支持多种常见的文本标注任务,如命名实体识别、文本分类、关系抽取等。
Flask 是一个轻量级的 Python Web 框架,它的核心作用是帮助开发者快速构建 Web 应用程序和 API,实现使用URL对函数进行调用 。
Gun ...
Jason Project Demo
b9a2f359a78cc900c6b7b98b312f9de96cddd5fc648725463b269d9e0920823010a16f67b672fb9aa33a00369fc2440082033f3d879376c5c800e98d9ed2e9ebad44dd4c488fca18f56170be0b18b6bc03b58879b7a7255e7e870f3b51c879e01138878f411a4fc3b435990ad55d0d0c9ccbef215b513888d148221d896ffce437a42298530010c061562d72551bc52997cabc8afdba7fa9460417e86b2fe2020f2780fdba3d8c20593bd455f3cbce32acb6e24b200a1ad3c4e487555f6b38fab8c994e0bb27ff944834f063ef9c972c51f90467ec4a3b26ab01bb2b332b708a61da3aad6ccc5f157a0f444b84cb480d881917b2ba4c3ea87 ...
算法公式推导
Latex公式语法传送门
机器学习ID3是采用信息增益作为特征选择度量,而C4.5采用信息增益率、CART基尼指数。
信息熵:$$Ent(D^v) = -\sum_{i=1}^{k}p_i\log_{b}(p_i)$$信息增益(信息熵 - 条件熵):$$g(D,A)=H(D)-H(D|A)$$即:$$Gain(D,a) = Ent(D) - \sum_ {v=1}^{V}{\frac{\left| D^{v} \right|}{\left| D \right|}Ent(D^{v})}$$信息增益率 (信息增益/特征熵):$$\begin{aligned}\text{Gain_Ratio}(D, a) &= \frac{\text{Gain}(D, a)}{IV(a)} \\end{aligned}$$其中,特征熵可以这样理解就是只在本特征(列)中求不同类型特征的熵:$$IV(a)=-\sum_{v=1}^{V}\frac{\left|D^{v}\right|}{|D|}\log_{2} ...
Jason Interview Note
b9a2f359a78cc900c6b7b98b312f9de940487e4c71e5686237aba8cea487ffb86968489818f4f0bc992b2b962786632db594096ffcd643bb959bbe967af06855a530c7929c9273dd8f81030f38bd2639ef0cd6dc35a801d916e3225f6a6a0932aa98d19bf0bd0cde88ed7b953e8535d9c1093d8194cfedc5970eaa5337916579cdfa74e069d9538c8c16d787874e4d27397aa2a395cec62a18518b404638ed0722661484dea55b0c5049d47b3255d9f5b4e021174380a4f88f4cb26c0da5c76f7546f1de06eccecf56ea3b550951bb7028ee16ad1245779cb59c6207c582ed0b6d3be3cdf669857aece5047d04450583dbbd6e718ba026ce9 ...
NLP自然语言处理
NLP
NLP的全称是Natuarl Language Processing,中文意思是自然语言处理,是人工智能领域的一个重要方向。
文本预处理
文本预处理,就是再数据送给模型之前,要做的工作。一般拿到数据,要根据任务组织样本$x$,$y$。比如对于分类任务,标签$y$是几分类、是否样本均衡、样本$x$长度分布如何。所以文本语料的数据分析一般是先要做的工作
文本预处理基本方法分词
将连续的字序列按照一定的规范重新组合成词序列的过程
作用:词作为语言语义理解的最小单元, 是人类理解文本语言的基础
安装方式
取决于你的解析器(interpreter)的位置.但最终应该离不开Anaconda这个工具包,所以要先切换虚拟环境.
12conda activate aipip install jieba -i https://pypi.tuna.tsinghua.edu.cn/simple/
使用方式
模式
⭐️全模式:将句子中所有可以组成词的词语都扫描出来, 速度非常快,但可能会出现歧义
1jieba.cut("语句", cut_all=Tru ...










.png)