大型网站开发像天猫类的crm管理系统的好处
- 作者: 五速梦信息网
- 时间: 2026年03月21日 11:29
当前位置: 首页 > news >正文
大型网站开发像天猫类的,crm管理系统的好处,长尾关键词在线查询,衡阳建设学校官方网站一、背景
本文介绍了 2023 年 11 月 OpenAI DevDay 中的一个演讲#xff0c;演讲者为 John Allard 和 Colin Jarvis。演讲中#xff0c;作者对 LLM 应用落地过程中遇到的问题和相关改进方案进行了总结。虽然其中用到的都是已知的技术#xff0c;但是进行了很好的总结和串联…一、背景
本文介绍了 2023 年 11 月 OpenAI DevDay 中的一个演讲演讲者为 John Allard 和 Colin Jarvis。演讲中作者对 LLM 应用落地过程中遇到的问题和相关改进方案进行了总结。虽然其中用到的都是已知的技术但是进行了很好的总结和串联并探索了一条改进 LLM 应用的切实可行的路线提供了一个最佳实践。
对应的 YouTube 视频A Survey of Techniques for Maximizing LLM Performance。
二、概览
创建一个供演示的 LLM 应用 Demo 很简单但是要投入生产环境使用却往往要投入几倍到几十倍的时间因为几乎不可避免地要不断迭代以提升 LLM 应用程序的性能。其中影响 LLM 应用程序性能的因素也有很多比如数据、模型、系统、流程等等此外涉及的技术方案也有很多比如 In-Context Learning、Few-shot Learning、RAG 和 Fine-tuning 等。
如何综合考虑以上的因素并合理利用相关技术是一个比较有挑战的工作其中一种常见的错误是认为这个过程是线性的如下图所示首先 Prompt Engineering再 RAG最后 Finetune按照这个顺序完成 作者认为最好沿着两个轴来考虑这个问题: Context Optimization如果模型没有相应的知识比如一些私有数据。 LLM Optimization如果模型不能产生正确的输出比如不够准确或者不能遵循指令按照特定的格式或风格输出。 在实践中通常是利用各种技术不断地迭代来达到生产部署的需求很多时候这些技术是可以累加的需要找到有效的方法将这些改进组合起来以获得最佳效果。如下图所示为作者总结的优化路线图不过其涉及的优化点依旧没变还是三点 Prompt Engineering包括 Prompt 优化以及增加 Few-shot learning这是最简单的方式不需要额外组件也不用调整 LLM只需控制 LLM 的输入即可。 RAG通过检索的方式查找问题相关内容并扩展到 LLM 的 Prompt 中以供 LLM 参考。此优化需要引入一个检索系统不过当前相关方案已经比较成熟实施代价不高比如 Milvus LangChain。 Fine-tuning通过增强 LLM 本身的能力来提升性能。依旧不需要额外组件但是可能需要大量标注数据来微调模型这个代价也可能比较高。 三、Evaluation
在开始一切工作之前首先要进行的是明确目标、确定评估指标。没有明确地评估指标往往会导致走很多弯路甚至错过一些行之有效的手段。常见的评估有自动化评估和人工评估 自动评估针对一些常见的指标使用常见的评估工具进行评估实现简单评估方便。 精度评估比如常见的 F1 Score召回率精确率等 基于模型评估在 LLM 的场景下将模型作为评委进行评估是非常常见的方式通常可以使用 GPT-4 作为评委但是其成本比较高因此也会折中的使用 GPT-3.5。 A/B Test有些时候也会将 LLM 应用接入线上系统进行 A/B Test 评估不过这个评估往往建立在其他评估已经取得不错结果的基础上。 人工评估有些评估可能比较主观通常需要人工介入比如流畅度、相关性、新颖性等然而人工评估有时需要专业人士评估其代价会比较高。
四、Prompt Engineering
当我们开始优化 LLM 应用时通常首先做的事情是 Prompt Engineering包括以下的几个方面 写一个清晰的指令 将复杂任务拆分为简单的子任务 给 GPT 思考的时间比如经典的 “think step by step” 给定一些参考文本比如当前一些 LLM 的上下文窗口很大甚至可以放下几本书此时可以将其整体作为参考 使用外部的工具比如调用 Python互联网搜索等 虽然说首先要尝试的是 Prompt Engineering但并不是适合所有场景 适合用于 早期测试以及了解需求 与评估结合确定 baseline 并提供后续的优化参考 不适用于 引入新的信息 可靠的复制复杂的样式或方法比如学习新的编程语言 最小化 Token 使用Prompt Engineering 通常会增加输入 Token导致计算量和时延的增加 如下图所示就是一个比较模糊的指令“以结构化方式提取有用的信息”导致最终模型只是简单按照列表输出输出内容也不符合要求。 如下图所示作者提供了更详细的示例给定了清晰的指令加了 “step by step”要求模型不能跳过关键步骤并且进行了任务拆解及格式约定最终模型获得了不错的结果 如下图所示同样可以给定模型一些 few-shot 示例帮助模型更好的理解 评估应该贯穿 LLM 应用开发的整个生命周期不仅是为了衡量每个阶段修改的影响也为后续的改进提供参考。当完成 Prompt Engineering 阶段后需要根据评估判断最可能的提升点是什么判断模型是需要提升短期记忆Short-term Memory还是长期记忆Long-term Memory 短期记忆是指模型在处理单一输入时的临时存储信息这些信息仅在模型处理当前输入时有效一旦输入完成就会遗忘。它负责当前任务的理解和生成能力不会影响模型对未来输入的处理。比如模型缺乏特定的信息来回答问题。 长期记忆是指模型通过训练数据学到的知识这些知识被永久的存储在模型参数中包括语言规则、世界知识和常识等。比如模型不能遵循特定的结构、风格或格式输出。 五、RAG
RAGRetrieval Augmented Generation检索增强生成通过集成外部知识库私有数据、特定领域数据等并使用 ICLIn-Context-Learning上下文学习来解决模型幻觉、知识不足等问题。如下图所示为 RAG 的常见范式这里就不再具体陈述 当然RAG 也不是万能的也有其优势和不足 适合用于 向模型注入新的知识或者更新模型已有知识 通过控制内容减少幻觉 不适用于 嵌入对大范围领域的理解 教模型掌握新的语言或特定格式、风格输出当前模型上下文长度已经到了百万 Token 规模似乎成为了一种可能 减少 Token 使用 如下图所示为一个使用 RAG 的成功案例通过各种手段将 Accuracy 从 Baseline 的 45% 提升到最终的 98% 45% 只使用简单的 Cosine 相似度来检索 65% HyDEHypothetical Document Embeddings如下图所示主要是指利用 LLM 生成一个假设答案然后利用假设答案去检索最终再由 LLM 生成答案。尝试后没有取得很好的效果所以未采用。 微调 Embedding但是代价比较高并且比较慢所以放弃。 RAG 中常用的 Chunking 方案需要实验选择最优的 Chunk 大小取得不错的结果。 85% Re-Ranking 技术这是搜索场景非常常见的手段测试后取得了一定收益。 Classification 技术使用模型对内容进行分类判断内容属于哪个域进而可以缩小检索内容或者在 Prompt 中添加一些额外的 Meta 信息也取得不错的效果。 98% Prompt Engineering经过上述改进之后作者再次尝试了 Prompt Engineering还可以获得一定提升。 使用工具对于一些特定场景允许模型使用工具能获得进一步的提升比如访问 SQL database。 Query 扩展也是搜索场景经常使用的手段可以提升检索出的内容质量进而提升最终的生成质量。 当检索质量不好时LLM 最终生成的结果也可能很差比如有用户使用 GPT RAG 的方式生成内容并且告知模型只能根据用户提供的内容输出然后用户认为模型输出的结果可能是包含了幻觉但最终查看提供的内容时发现检索结果中确实有相关内容。 因此在 RAG 阶段评估时不仅要评估 LLM 生成的性能也要评估 RAG 检索的性能作者介绍了 Ragas 工具GitHub - explodinggradients/ragas: Evaluation framework for your Retrieval Augmented Generation (RAG) pipelines其提供了几个评估维度 生成指标 忠诚度衡量生成的答案在给定上下文中的事实一致性。它是根据答案和检索到的上下文计算得出值范围介于 0 和 1 之间越高越好。 答案相关性侧重于评估生成的答案与给定提示的相关性。对于不完整或包含冗余信息的答案分数较低。该指标是使用问题和答案计算的值范围介于 0 和 1 之间分数越高表示相关性越高。 检索指标 上下文精度用于评估上下文中存在的所有与基于事实相关的条目是否排名更高。理想情况下所有相关块都必须出现在最高排名中。该指标是使用问题和上下文计算的值范围介于 0 和 1 之间分数越高表示精度越高。 上下文召回衡量检索到的上下文与标注答案的一致程度。它是根据 ground truth 和检索到的上下文计算的值范围介于 0 和 1 之间值越高表示性能越好。 六、Fine-tuning
使用 Fine-tuning 主要有两个好处 提升模型在特定领域、特定任务上的性能。 由于可以避免在 Prompt 中加入检索到的内容因此可以降低 Token 数量从而提升效率。此外也可以通过蒸馏的方式把大模型的能力蒸馏到小模型里比如用 70B 的模型蒸馏 13B 的模型。 如下图所示作者提供了一个示例需要提取文档中的结构化信息并按特定格式输出作者提供了复杂的指令并提供了一个示例模型确实按照格式要求输出但是其中有些内容却出错了 如下图所示经过微调后不用输入复杂的指令也不用在 Prompt 中提供示例模型即可生成符合要求的输出 同样Fine-tuning 也不是万能的有其适合的场景也有不适合的场景如果 Prompt Engineering 没有什么效果那么 Fine-tuning 可能不是一个正确的选择 适合用于 激发模型中已有的知识 自定义相应的结构或语气 教会模型非常复杂的指令 不适用于 向 base 模型中注入新知识 快速在新场景验证 作者提供了一个 Canva 的案例该任务要求按照特定的格式输出内容并提供特定字段比如 “Titile”、“Style”、“Hero Image”从结果可以看出经过微调的 GPT-3.5 模型效果优于原始的 GPT-4更优于原始的 GPT-3.5 此外作者也提供了一个失败案例具体可以参考Fine-tuning GPT3.5-turbo based on 140k slack messages · Ross Lazerowitz。用户想要使用 GPT 按照自己的语气和风格自动生成 Twitter 和 LinkedIn 的博文。 用户尝试了各种 Prompt Engineering 手段没有取得很好的效果。 用户还尝试了让 GPT 提取他以往博文的风格比如语气、修辞等可能由于数据太少也没有成功。 用户最后尝试了使用 GPT 3.5 Turbo 进行 Fine-tuning选择的数据是自己过往的 140K Slack 一种国外流行的商务聊天应用可以理解为聊天软件聊天记录并将其规范化为可以训练的数据格式然后使用 GPT-3.5 Turbo 微调。得到的结果如下所示确实很像工作中的聊天场景完全偏离了用户的需求。 虽然上述例子中微调没有满足用户的需求但是微调确实朝着本应该正确的方向前进了种瓜得瓜只是用户的微调数据集偏离了他的需求也因此可以看出数据集的重要性。
如下图为常见的微调流程 Data Preparation非常重要的阶段需要收集、验证、标注高质量的数据并按照要求格式化。 Training需要选择合适的超参理解损失函数等。 Evaluation有各种评估指标此外也要看是否有针对微调任务的测试集也可以使用 GPT-4 等高质量的模型进行评估。 Inference也可以进一步收集数据并标注用于后续迭代。 作者总结了一个微调的最佳实践 从 Prompt Engineering 和 Few-shot Learning 开始这些方案比较简单可以快速验证 建立基线以便了解核心问题及后续更好地评估和对比 数据集收集的代价比较高从小的、高质量的数据集开始可以验证模型是否沿着正确的方向前进此外也可以结合主动学习Active Learning技术不断迭代构建高质量的数据。 七、Fine-tuning RAG
因为 Fine-tuning 和 RAG 是优化的不同方向因此可以将两者结合起来发挥各自的优势比如 Fine-tuning 可以使模型更好地理解复杂指令使模型遵循特定的格式、风格等也就避免了复杂指令的需求降低 Token 的使用为 RAG 提供更大的空间。 RAG 可以将相关知识注入到上下文中增强模型的短期记忆能力。 作者提供了一个典型的 Text-to-SQL 任务案例给定一个自然语言文本以及数据库的 Schema需要生成 SQL 查询并回答问题。如下图所示左侧为对应的 Schema 和自然语言文本右侧为生成的 SQL 语句 如下图所示作者首先尝试了 RAG并逐步使用了各种检索优化技术 如下图所示其中 Baseline 的 69% 是经过了 Prompt Engineering 得到的结果然后经过 RAG 逐步将其提升到 80%但是离目标还有一定距离 如下图所示作者进一步尝试了 Fine-tuning首先通过 FT Reduced Schema 可以将 Accuracy 从 69% 提升到 81.7%进一步使用 Fine-tuning RAG 可以提升到 83.5%基本符合目标 84%。其中使用的都是比较简单的 Prompt Engineering 和 RAG 方案没有采用特别复杂的技术可以看出 Fine-tuning RAG 的潜力。 八、相关链接 https://www.youtube.com/watch?vahnGLM-RC1Y https://humanloop.com/blog/optimizing-llms https://zhuanlan.zhihu.com/p/667938175 https://github.com/explodinggradients/ragas https://rosslazer.com/posts/fine-tuning/
- 上一篇: 大型网站开发团队美工常用网站
- 下一篇: 大型网站空间费用wordpress文章自定义标题
相关文章
-
大型网站开发团队美工常用网站
大型网站开发团队美工常用网站
- 技术栈
- 2026年03月21日
-
大型网站开发团队哈尔滨网站建设赚钱么
大型网站开发团队哈尔滨网站建设赚钱么
- 技术栈
- 2026年03月21日
-
大型网站开发视频网络营销推广岗位
大型网站开发视频网络营销推广岗位
- 技术栈
- 2026年03月21日
-
大型网站空间费用wordpress文章自定义标题
大型网站空间费用wordpress文章自定义标题
- 技术栈
- 2026年03月21日
-
大型网站是用哪种数据库做的小程序开发外包报价表
大型网站是用哪种数据库做的小程序开发外包报价表
- 技术栈
- 2026年03月21日
-
大型网站系统架构python编程软件pc
大型网站系统架构python编程软件pc
- 技术栈
- 2026年03月21日






